PhD in Computer Science

A PhD in Computer Science enables students to become experts in a technical subfield of computer science. It provides students with tools for performing effective and meaningful original research that advances the state of the art in that subfield. Most PhD students gain practical experience in teaching undergraduate and graduate students. They also become contributing and recognized members of the research community by publishing research papers, giving oral presentations at conferences and research seminars, peer-reviewing scientific work, and performing other participatory activities. Upon completing the PhD program, students are able to set their own research direction, teach and advise students, and work at the forefront of cutting-edge research as faculty in academia or as researchers at an industrial laboratory.

Applicants should have obtained a bachelor’s or master’s degree or show evidence of equivalent preparation in computer science or a related computational science subject.

Learning Outcomes

Students will possess a broad mastery of computer science, across theory of computation, algorithms, software and programming languages, cryptography and information security, systems and networks, data management and processing, machine learning, computer vision, natural language processing, computational  graphics and manufacturing, and more. In addition, students will gain in-depth knowledge and mastery of specific subfields as described above.

Course Requirements

Sixteen semester-long courses (64 credits) approved for graduate study are required. Students that have taken graduate courses elsewhere may be able to transfer course credits, subject to approval. For details, see the GRS Transfer of Credits policy.

In addition, 6 out of the 16 courses must come from the following list of breadth courses. Out of these 6 courses, at least one must be in each of the first four categories (Algorithms, Systems, Software, Theory of Computation), and at least one must be from any one of the remaining categories (AI, Graphics, Cryptography, Data Science).

Students that have learned the material that is covered by any of the breadth courses can  apply for an exemption from the said course for the purpose of breadth coverage. Exemptions will be given based on the material covered and the level of depth in the taken class. (It is stressed that this exemption process is separate from the process of obtaining credit toward the general 16 course requirement.)

Breadth Courses

  • Algorithms (at least one course)
  • Systems (at least one course)
  • Software (at least one course)
  • Theory of Computation (at least one course)
  • At least one course from one of the following:
    • Artificial Intelligence
    • Computer Graphics
    • Cryptography & Security
    • Data Science

    For a full list of approved courses in each area, see the department website.

    The remaining courses will provide a reasonable breadth of background in computer science as well as mastery of the basic tools relevant to the research area selected. A minimum grade of B− is required in all courses. The GPA in the six breadth courses must be 3.5 or higher.

    Language Requirement

    There is no foreign language requirement for this degree.

    Qualifying Examinations

    All PhD candidates must pass a written or oral comprehensive examination administered by the department. In addition, every PhD candidate is required to pass an oral examination in a distinct area of computer science.

    Dissertation and Final Oral Examination

    Candidates shall demonstrate their abilities for independent study in a dissertation representing original research or creative scholarship. The dissertation will be evaluated by an academic examination committee. A prospectus for the dissertation must be approved by the committee ahead of the submission of the dissertation. In addition, candidates must undergo a final oral examination in which they defend their dissertation as a valuable contribution to knowledge in their field and demonstrate a mastery of their field of specialization in relation to their dissertation. All portions of the dissertation and final oral examination must be completed as outlined in the GRS General Requirements for the Doctor of Philosophy Degree.

    Obtaining an MSc

    PhD students may also obtain an MSc. The requirements for an MSc for PhD students are as follows:

    • The course requirements are the same as for a PhD.
    • In addition, candidates shall demonstrate their abilities for independent study in the form of a master’s thesis that describes either original research or a comprehensive study that demonstrates mastery of a technical topic in CS. The thesis will be evaluated by an academic committee who will also perform an oral examination where the candidates will demonstrate mastery of the material presented in the master’s thesis. The master’s thesis work can be used as a foundation for a future PhD thesis; however, research described in the master’s thesis cannot be counted as original research toward fulfillment of the PhD requirements.


    The overall duration of a PhD program is expected to be up to five years for students with no prior graduate degrees. Students with prior graduate degrees may have shorter timelines. Students are expected to complete their breadth course requirements by the end of their second year of study, to pass their qualifying examinations by the end of the third year of study, to submit their dissertation prospectus during their fourth year of study, and to defend their dissertation by the fifth year of study.