Computer Science, PhD

This is the first version of the 2026–27 General Catalog. Please check back regularly for changes. The final edition and the historical PDF will be published during the fall semester.
The Doctor of Philosophy program in computer science emphasizes preparation for research and teaching in academic settings or for research in private, industrial, or government laboratories.
Current and prospective graduate students should consult the Graduate Handbook, available from the department's office and the Graduate Advising page on the department's website. The handbook provides detailed information about specific degree requirements and graduate study policies.
Learning Outcomes
Students gain:
- broad, up-to-date knowledge of computer science;
- fluency in reading, analyzing, synthesizing, and communicating research;
- a thorough understanding of a research area and its major open problems;
- awareness of computing research ethics; and
- experience performing original research advancing the state of knowledge in an area of computer science.
The Doctor of Philosophy (PhD) in computer science requires a minimum of 72 s.h. of graduate credit, four examinations (qualifying, comprehensive, dissertation proposal, and final), and a written dissertation. Students must maintain a UI cumulative grade-point average of at least 3.00.
Didactic Requirements
Students complete a minimum of eight didactic computer science graduate-level courses numbered 4300 or above, excluding CS:4980, CS:5110, CS:5980, CS:5990, CS:6000, CS:6990, and CS:7990. However, the director of graduate studies may designate a section of CS:4980 or CS:5980 as a didactic computer science graduate-level course if it consists predominantly of lectures by the instructor of record, graded assignments, and a project or exams. If so designated and approved by the director of graduate studies, that section of CS:4980 or CS:5980 may be counted as a didactic CS graduate-level course that counts towards the eight course requirement.
At least six of the eight didactic computer science graduate-level courses must meet one of the core, breadth, or depth requirements that follow.
Core Requirement
| Course # | Title | Hours |
|---|---|---|
| This course: | ||
| CS:5350 | Design and Analysis of Algorithms | 3 |
Breadth and Depth Requirements
Students complete five courses from the following categories (algorithms, artificial intelligence and machine learning, computational logic and programming languages, computing in context, and systems) for a total of 15 s.h.
To meet the breadth requirement, students take courses from at least three of the categories.
To meet the depth requirement, students take at least three courses from a single category or at least two courses in each of two different categories.
Algorithms
| Course # | Title | Hours |
|---|---|---|
| CS:4980 | Topics in Computer Science II (if section approved by director of graduate studies) | 3 |
| CS:5340 | Limits of Computation | 3 |
| CS:5360 | Randomized Algorithms | 3 |
| CS:5370 | Computational Geometry | 3 |
| CS:5620 | Distributed Systems and Algorithms | 3 |
| CS:5980 | Topics in Computer Science III (if section approved by director of graduate studies) | 3 |
Artificial Intelligence and Machine Learning
| Course # | Title | Hours |
|---|---|---|
| CS:4420 | Advanced Artificial Intelligence | 3 |
| CS:4980 | Topics in Computer Science II (if section approved by director of graduate studies) | 3 |
| CS:5430 | Machine Learning | 3 |
| CS:5980 | Topics in Computer Science III (if section approved by director of graduate studies) | 3 |
Computational Logic and Programming Languages
| Course # | Title | Hours |
|---|---|---|
| CS:4980 | Topics in Computer Science II (if section approved by director of graduate studies) | 3 |
| CS:5810 | Formal Methods in Software Engineering | 3 |
| CS:5850 | Programming Language Foundations | 3 |
| CS:5980 | Topics in Computer Science III (if section approved by director of graduate studies) | 3 |
Computing in Context
| Course # | Title | Hours |
|---|---|---|
| CS:4500 | Research Methods in Human-Computer Interaction | 3 |
| CS:4510 | Human-Computer Interaction for Computer Science | 3 |
| CS:4980 | Topics in Computer Science II (if section approved by director of graduate studies) | 3 |
| CS:5560 | Privacy Law and Technology | 3 |
| CS:5980 | Topics in Computer Science III (if section approved by director of graduate studies) | 3 |
Systems
| Course # | Title | Hours |
|---|---|---|
| CS:4630 | Mobile Computing | 3 |
| CS:4640 | Computer Security | 3 |
| CS:4700 | High Performance and Parallel Computing | 3 |
| CS:4980 | Topics in Computer Science II (if section approved by director of graduate studies) | 3 |
| CS:5980 | Topics in Computer Science III (if section approved by director of graduate studies) | 3 |
Colloquium
Students must earn at least 4 s.h. in the following.
| Course # | Title | Hours |
|---|---|---|
| CS:6000 | Research Seminar: Colloquium Series (taken at least four times for 1 s.h. each) | 4 |
Responsible Conduct of Research Requirement
Students must complete this course within their first two years; it is offered in spring semesters.
| Course # | Title | Hours |
|---|---|---|
| CS:5980 | Topics in Computer Science III (when topic is responsible conduct of research) | 1 s.h. |
Electives
Students fill their remaining semester hours with a combination of thesis hours, directed readings, computer science graduate courses numbered 4300 or above, and graduate courses outside of the Department of Computer Science, approved by their advisor.
Qualifying Exam
Students are required to pass a qualifying examination by the end of their second year of graduate study. Once students select a topic in consultation with their advisor, they are assigned a three-member faculty examination panel by the department. Then they prepare a written prospectus for review by the committee, followed by an oral presentation.
Comprehensive Exam
The comprehensive examination is an evaluation of a student's mastery of a research area near completion of formal coursework and before the preparation of the dissertation. The exam may be written, oral, or both, at the department's discretion, and is administered by a faculty committee. The comprehensive exam typically should be completed by the end of a student's third year and no later than the end of the fourth year in the PhD program.
Dissertation Proposal
At least six months prior to the final exam, a student must form a dissertation committee and circulate a formal thesis proposal to the committee. The proposal should describe the research performed to date and related work, and outline the expected thesis results. A student must argue the originality and significance of the expected results to the committee in a manner consistent with the advisor's counsel, which may or may not include an oral presentation.
Possible outcomes of a thesis proposal are that the committee finds the proposal satisfactory; the committee suggests modifications, and within a few weeks after the proposal defense, the student and committee reach a consensus by email or in face-to-face meetings on a modified set of expected thesis results; or the committee asks the student to redo their proposal, likely with a fresh proposal document and oral presentation, giving the student enough time to address the committee's concerns.
Dissertation
Each student must write a dissertation, a significant, original contribution to the field of computer science. The dissertation must be prepared in accordance with the format specified on the Graduate College Thesis and Dissertation website.
Final Oral Examination
Once the dissertation is complete and has been reviewed by the student's committee, a final oral examination is administered. This examination must take place no sooner than the semester following the successful completion of the comprehensive examination and no later than five years after completion of the comprehensive exam.
Graduate education prepares students with advanced knowledge and skills in specialized fields. At the University of Iowa, the Graduate College advocates for student-centered graduate education and supports equitable application of rules and policies across graduate programs.
Academics
University of Iowa graduate credentials are regulated by policies and requirements found in the Graduate College Manual of Rules and Regulations. This includes minimum grade-point average (GPA) requirements for academic standing and degree conferral. The Graduate College sets the minimum requirement. Individual graduate programs may establish higher GPA requirements.
Admissions
Graduate student applicants must meet admission requirements for both the Graduate College and the program to which they have applied. University of Iowa graduate admission requirements are published by the Graduate College and on the Graduate Admissions website.
Financial Support
Graduate students might be eligible for financial support. Several contingencies apply, including degree program and award type, satisfactory progress toward degree, satisfactory completion of all duties related to an appointment, and availability of funding. Graduate students should inquire directly with their program for more information about funding availability. The Graduate Student Employment Standards govern the employment relationship between the University of Iowa and all graduate teaching and research assistants in all matters except wages, which are covered by an existing collective bargaining agreement or the conditions of an applicable federal grant.
Admission decisions are based on prior academic performance, letters of reference, and the applicant's statement about background and purpose. Scores on the Graduate Record Examination (GRE) General Test are considered if applicants choose to include them. Students need not have a master's degree to begin the PhD program. Students admitted without a master's degree may choose to be granted an MS or the MCS while working toward the doctorate.
Applicants must meet the admission requirements of the Graduate College; see the Manual of Rules and Regulations on the Graduate College website.
Many graduates obtain positions in industry research laboratories, such as Amazon, Disney, Google, Samsung, and Yahoo, or in government research laboratories. Others pursue research and teaching careers in higher education, with some starting their careers in postdoctoral positions at universities before seeking employment in tenure-track positions, and some are employed as faculty with more teaching-oriented positions. A few recent PhD graduates have founded or joined start-up companies.
Sample Plan of Study
Sample plans represent one way to complete a program of study. Actual course selection and sequence will vary and should be discussed with an academic advisor. For additional sample plans, see MyUI.
Computer Science, PhD
| Academic Career | ||
|---|---|---|
| Any Semester | Hours | |
| 72 s.h. must be graduate level coursework; up to 33 s.h. of graduate transfer credits allowed upon approval. More information is included in the General Catalog and on department website. a, b | ||
| Graduate College program GPA of at least 3.00 is required. c | ||
| Hours | 0 | |
| First Year | ||
| Fall | ||
| CS:6000 | Research Seminar: Colloquium Series d | 1 |
| CS:6990 | Readings for Research e | 3 |
| Breadth or depth requirement course f | 3 | |
| Breadth or depth requirement course f | 3 | |
| Hours | 10 | |
| Spring | ||
| CS:5350 | Design and Analysis of Algorithms | 3 |
| CS:5980 | Topics in Computer Science III g | 1 |
| CS:6990 | Readings for Research e | 3 |
| Breadth or depth requirement course f | 3 | |
| Hours | 10 | |
| Second Year | ||
| Any Semester | ||
| Doctoral Qualifying Exam h | ||
| Hours | 0 | |
| Fall | ||
| CS:6000 | Research Seminar: Colloquium Series d | 1 |
| CS:6990 | Readings for Research e | 3 |
| Breadth or depth requirement course f | 3 | |
| Breadth or depth requirement course f | 3 | |
| Hours | 10 | |
| Spring | ||
| CS:6000 | Research Seminar: Colloquium Series d | 1 |
| CS:6990 | Readings for Research e | 3 |
| Breadth or depth requirement course (or other elective course) e, f | 3 | |
| Breadth or depth requirement course (or other elective course) e, f | 3 | |
| Hours | 10 | |
| Third Year | ||
| Any Semester | ||
| Exam: Doctoral Comprehensive Exam i | ||
| Hours | 0 | |
| Fall | ||
| CS:6000 | Research Seminar: Colloquium Series d | 1 |
| CS:6990 | Readings for Research e | 3 |
| Elective course e | 3 | |
| Elective course e | 3 | |
| Hours | 10 | |
| Spring | ||
| CS:6990 | Readings for Research e | 3 |
| Elective course e | 3 | |
| Elective course e | 3 | |
| Hours | 9 | |
| Fourth Year | ||
| Fall | ||
| CS:7990 | Research for Dissertation | 7 |
| Dissertation Proposal Defense j | ||
| Hours | 7 | |
| Spring | ||
| CS:7990 | Research for Dissertation | 6 |
| Exam: Doctoral Final Exam k | ||
| Hours | 6 | |
| Total Hours | 72 | |
- a
- Students complete a minimum of eight didactic computer science graduate-level courses numbered 4300 or above, excluding CS:4980, CS:5110, CS:5980, CS:5990, CS:6000, CS:6990, and CS:7990. At least six of the eight didactic computer science graduate-level courses must meet one of the core, breadth, or depth requirements.
- b
- Students must complete specific requirements in the University of Iowa Graduate College after program admission. Refer to the Graduate College website and the Manual of Rules and Regulations for more information.
- c
- Graduate College program GPA is comprised of all courses that are approved degree requirements. If a student takes more than the minimum required number of semester hours to complete the degree, but all courses taken are eligible to count toward the degree, those courses will be included in the Graduate College program GPA.
- d
- Students must enroll four times for 1 s.h. each semester and attend at least 80% of scheduled talks for a satisfactory grade.
- e
- Students fill their remaining semester hours with a combination of thesis hours, directed readings, computer science graduate courses numbered 4300 or above, and graduate courses outside of the Department of Computer Science, approved by their advisor.
- f
- Students complete five courses (15 s.h.) from the following categories: algorithms, artificial intelligence and machine learning, computational logic and programming languages, computing in context, and systems. Take courses from at least three of these categories to satisfy the breadth requirement. Take at least three courses from a single category or at least two courses in each of two different categories to satisfy the depth requirement. See the General Catalog for lists of approved courses.
- g
- Students must complete this course during first two years; typically offered in spring semesters. Note: this course does not count toward degree requirements.
- h
- Taken before the end of second year; see the General Catalog and department website for specifics.
- i
- Typically taken before the end of third year; see the General Catalog and department website for specifics.
- j
- Usually takes place six months prior to doctoral final exam.
- k
- Oral dissertation defense.