First Year Students

All entering students must prove academic competence in the following areas before being allowed to pursue the core courses. These areas are:

  • Operating Systems
  •  Fundamental Algorithms
  • Object-Oriented Programming
  • Databases
  • Discrete Mathematics
  • Computer Organization
  • Theoretical Computation
  • Programming Languages
  • Probability

Competence is defined as having successfully completed at least an undergraduate course in any area.  Students who are admitted with deficiencies will be required to take certain graduate or undergraduate courses to compensate. Once sufficient academic background in these areas has been demonstrated to the Executive Officer, a student may begin to register for the required core courses.

Entering matriculants are required to take and pass a series of six core courses offered over two semesters. These courses are:

  • CSc 70010   Analysis of Algorithms
  • CSc 75010   Theoretical Computer Science
  • CSc 71010   Programming Languages and Their Implementation
  • CSc 72010   Parallel and Distributed Computing and Advanced Operating Systems
  • CSc 74010   Logical Foundations of Artificial Intelligence
  • CSc 80000   Readings in Computer Science

No student will be advanced to candidacy without successfully passing all the aforementioned core courses.

After completion of this sequence, a student is required to sit for the Program’s First Examination. This examination is offered only once per year, usually in early June. Following Graduate School rules, a student may sit for this exam only twice. Students who fail on their first attempt at this exam are required to audit all courses in the aforementioned sequence during the following academic year and re-take the First Exam at the end of the second sequence. Students who fail their second attempt at the exam are dismissed from the Program.