THE Computer Science Ph.D. Program AT Carnegie Mellon
THE Computer Science Ph.D. Program AT Carnegie Mellon
COMPUTER SCIENCE
PH.D. PROGRAM
AT
CARNEGIE MELLON
January 2010
edited by
Mor Harchol-Balter
Frank Pfenning
1
Contents
1 Introduction 3
4 Advisors 6
5 Directed Research 6
6 Course Requirements 7
6.1 Five Area Star Courses . . . . . . . . . . . . . . . . . . . . . . . 7
6.2 Thirty-Six Elective Units . . . . . . . . . . . . . . . . . . . . . . 8
6.2.1 Project Unit . . . . . . . . . . . . . . . . . . . . . . . . . 9
6.2.2 Fahlman Teaching Unit . . . . . . . . . . . . . . . . . . . 10
6.2.3 V Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6.3 Placing Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
7 Teaching Requirement 11
11 Community Spirit 19
13 Masters Degrees 20
14 Student Support 21
14.1 Academic Year Support . . . . . . . . . . . . . . . . . . . . . . . 21
14.2 Summer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
14.3 Travel Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
14.4 Consulting and Outside Employment . . . . . . . . . . . . . . . . 22
2
15 Leave of Absence 22
17 Problems? 25
17.1 Points of Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
17.2 The Doctoral Review Committee . . . . . . . . . . . . . . . . . . 25
17.3 The Ombudsperson . . . . . . . . . . . . . . . . . . . . . . . . . . 25
18 University Policies 26
B Time Estimates 29
C Ph.D. Specializations 30
C.1 Algorithms, Combinatorics, and Optimization . . . . . . . . . . . 30
C.2 Neural Basis of Cognition Training Program . . . . . . . . . . . . 30
C.3 Pure and Applied Logic . . . . . . . . . . . . . . . . . . . . . . . 31
3
1 Introduction
Carnegie Mellon’s Computer Science Ph.D. program aims to produce well-
educated researchers, teachers, and future leaders in Computer Science. The
Ph.D. degree is a certification by the faculty that the student has a broad edu-
cation in Computer Science and has performed original research in the area.
This document is an informal description of the Computer Science Ph.D. pro-
gram; herein “we” refers to all the faculty and staff involved in the Ph.D. pro-
gram. Currently, the Department Head is Randal Bryant, Interim Chair; the
Director of Graduate Programs is Mor Harchol-Balter and the Graduate Pro-
grams Administrator is Deb Cavlovich;.
To complete the Ph.D. degree, we require that each student
• Participate in directed research
4
The entire faculty meet twice a year to evaluate each student’s progress.
A student demonstrates progress by passing courses, doing directed research,
teaching, fulfilling the skills requirements, and doing thesis work. While stu-
dents are encouraged to shape an educational program to suit their needs, fi-
nancial support and/or permission to continue in the Ph.D. program depends
on satisfactory progress each semester along at least some of these categories.
Twice, usually during the first three or four years, the student serves as
a teaching assistant. While teaching or taking courses, we expect students to
spend at least half their time doing directed research.
5
Our environment provides a myriad of opportunities for students to hone
their writing and speaking abilities and to maintain their programming finesse.
We expect students to satisfy their communications skills requirements within
their first three years.
Each 12-unit course should require no more than a quarter of the student’s
time during any one semester. So, typically a student tries to complete all
coursework by the end of two years, at which point the student becomes involved
in full-time research and starts thinking about research directions for a thesis.
As the student’s thesis research direction becomes clear, the student writes a
thesis proposal and assembles a thesis committee with help from the student’s
advisor. The student then completes and defends the thesis, and graduates.
Students, especially those who are about to finish, are encouraged to attend
Emigration Course events. Participation is completely voluntary.
For students who have a strong desire to teach, we offer a special Gradu-
ate Teaching Fellow program. Students who opt to complete this program are
rewarded with a special letter of commendation signed by the Department Head.
All requirements in the Ph.D. program must be fulfilled by work actually
carried out at Carnegie Mellon University, with the exception of the dual degree
program with several Portuguese universitites. Work done elsewhere cannot be
accepted for satisfying CSD requirements; rare exceptions must be approved by
the Director of Graduate Programs.
The Ph.D. program provides each student with a periodic evaluation of his
or her progress. Continuation in the Ph.D. program is contingent on making
satisfactory progress.
6
4 Advisors
Except during their first month in the program, each student has a faculty ad-
visor charged with guiding the education and monitoring the progress of the
student through the program. This personal student-advisor relationship en-
sures that every student receives the necessary faculty mentoring. Throughout
the program, the advisor is responsible for guiding the student’s research and
education. Early in the program, the advisor guides the student along some
research initiative and helps with strategic planning for courses and other ed-
ucational activities. Later, the advisor helps to focus the student’s research
interests towards a thesis topic. Toward the end of the program, the advisor
chairs the student’s thesis committee, and helps to select the other members of
the committee. The advisor also provides the student with career advice.
How are advisors initially chosen? After a little over a month at CMU, en-
tering students are matched with faculty advisors by the “handshake” process.
Students list faculty preferences and faculty list student preferences; a commit-
tee then matches each student with a faculty member, taking into consideration
each of their preferences and other factors. Students base their faculty prefer-
ences on research interests. They can learn about an individual faculty member’s
research interests by attending the faculty’s research presentation during the IC,
by reading the Department’s annual Faculty Research Guide, and from meeting
individually with different faculty members during their first month here.
There is flexibility in the kind of relationship a student has with his or her
advisor. Some students work more closely with their advisors than any other
faculty member, and some students work more closely with another faculty
member on a particular research project. A few students have two co-advisors.
While it must be approved by the Director of Graduate Programs, a request
to switch advisors is routine and almost always granted for a student in good
standing, especially during the early part of the degree program. It often results
from an evolution of the student’s research interests.
A student may be advised by any SCS teaching or research faculty member.
Some faculty from outside SCS may also have advising privileges which are
granted by the Department Head.
5 Directed Research
During a student’s first two years, he or she should be doing directed research
at least half time; once all coursework is completed and before doing thesis
research, full time (except when teaching). Different students, and different
advisors, have different ideas of what directed research means and how progress
can be demonstrated. It is the responsibility of both the student and his or
her advisor to formulate for each semester a set of reasonable goals, plans, and
criteria for success in conducting directed research.
At each semi-annual graduate student review meeting, the faculty assess the
student’s previous semester’s research progress and the student’s next semester’s
7
research plans to ensure that the student is making satisfactory progress. The
evaluation of a student’s progress in directed research often depends on the
student having produced some tangible result; examples include the implemen-
tation of pieces of a software system, a written report on research explorations,
an annotated bibliography in a major area, or, as part of preparation for doing
research, a passing grade in a graduate course (beyond the required 96 required
units).
Advisors are individually responsible for adequately supervising this portion
of the Ph.D. program.
6 Course Requirements
The purpose of completing 96 university units worth of graduate courses is to
cover breadth across many areas in and beyond computer science. By taking five
star courses, one per five areas, students acquire breadth through exposure to
basic knowledge, concepts, and skills in five different areas in computer science.
Through the equivalent of three elective courses, students typically choose to
gain more depth in the student’s particular area of research. Some students use
electives to gain more breadth by specialized exposure to an area outside of the
student’s research area and even outside of computer science.
Syllabi for all courses are monitored by the Doctoral Review Committee
(DRC). Homework and exams in each course are limited to its prerequisite
material and topics covered by its syllabus.
• Computer Systems
• Programming Languages
• Software Systems
Each area lists from one to three star courses offered for the year. Each star
course is 12 university units.
Star courses differ from non-star courses in that (1) they assume an un-
dergraduate background in the relevant area—no more and no less; (2) they
are meant to be accessible to all Computer Science graduate students, not just
those in the area; and (3) they are offered on a regular basis so students can
plan ahead.
Through these star courses we expect students not only to learn a breadth of
technical material in Computer Science, but also to learn about and appreciate
8
the different areas’ research styles. The problems of interest, approaches to
solving them, and analyses of their solutions differ across areas; often someone
working in one area can be inspired by following an approach from a different
area.
We attempt to schedule these courses so that students can complete all five
in a one-year period; however, since we expect students to be engaged in directed
research at least half-time, a typical student should plan to complete their five
star courses over a two-year period.
Below is a list of the star courses we offer; this list is subject to change over
time and may not always reflect current status.
• Artificial Intelligence
∗ Advanced AI Concepts
∗ Machine Learning
∗ Planning, Execution, and Learning
• Computer Systems
∗ Computer Architecture
∗ Optimizing Compilers for Modern Architecture
• Programming Languages
9
topic. Students may also use electives to gain additional breadth of knowledge
in an area outside of the student’s research area.
Though students typically take courses to satisfy the elective units require-
ment, there are three other means of passing these units: doing an internal
project, carrying out an external project, or teaching a graduate course. For
students in some areas such as algorithms, it might make more sense to take
advanced courses; for students in other areas such as software systems, it might
make more sense to do a project. For those who like to reinforce knowledge
by teaching, we provide the opportunity to obtain elective credit by being a
teaching assistant.
We strongly advise students to choose electives in consultation with their ad-
visor. The student and his or her advisor are both responsible for making sure
that through these 36 elective units the student gains new knowledge, perhaps
to fill gaps or to prepare for thesis research. They are also responsible for bal-
ancing how a student fulfills these units (through courses, projects, or teaching),
taking into consideration the student’s career goals, and the student’s strengths
and weaknesses in research, teaching, communication skills, and programming
ability.
Students are free to take more than the required number of elective units.
10
To get a project approved for elective credit, a student submits a short (1-
2 page) description of the project, written with the guidance of the project
advisor. The proposal should clearly explain how the proposed work addresses
the educational goals of the student.
Every project must be approved by two faculty members and the Director
of Graduate Programs. The two faculty members are the project advisor and
the student’s regular advisor. In the case that the regular advisor is also the
project advisor, the student and advisor need to select some other appropriate
faculty member to evaluate the proposed work independently.
6.2.3 V Unit
A third way to obtain elective unit credit is to carry out an external project,
exploring, for example, the role of computer science in society, or articulating a
vision for new multi-disciplinary research involving computer science. A V Unit
must be preceded by a proposal, to be approved by a faculty advisor and the
Director of Graduate Programs. More information on the V Unit can be found
at http://www.cs.cmu.edu/~vunit.
11
The mechanism for substitution is to obtain approval from the relevant in-
structors in charge of both courses and from the Area Advocate. Each year the
DRC identifies an Area Advocate, someone who is not the course instructor, for
each of the five areas. We use the term “Advocate” because, like a lawyer, he
or she speaks on behalf of the student who desires to place out. Requests for
substitution should mostly be granted. Currently, the area advocates are
• Artificial Intelligence: Tuomas Sandholm
• Algorithms: Danny Sleator
• Computer Systems: Seth Goldstein
7 Teaching Requirement
The ability to teach is an important skill for all scientists, not only for those
who plan to teach after completing their degrees. Teaching skills include the
ability to communicate technical material ranging from elementary to advanced,
and to communicate technical material to audiences ranging from general to
specialized. Thus, we expect students to develop and exercise teaching skills as
part of their graduate education.
Students have ample opportunities to present advanced material while work-
ing on research projects, by participating in research seminars and by giving
practice conference talks. To gain experience in presenting more elementary
12
material, we require that all graduate students help teach two courses. The
norm is for students to teach one introductory-level undergraduate course and
one advanced-level undergraduate course. Current policy (which is subject to
change from semester to semester) is that graduate star courses in the Com-
puter Science Department with an enrollment of 20 or more are also eligible for
TA credit. In particular, star courses in other units in the School of Computer
Science, or advanced graduate courses are not eligible for satisfying the teaching
requirement.
It is important that all teaching that is to count towards the teaching require-
ment must be assigned and approved in advance by the responsible administra-
tor, which is the Assistant Dean for Undergraduate Education for undergraduate
courses (currently Mark Stehlik), and the Director of Graduate Programs for
graduate courses (currently Mor Harchol-Balter). Students’ preferences will be
taken into account, but cannot always be honored.
We encourage students to teach more than twice. At the semi-annual eval-
uation of students the faculty give special recognition to those who do an out-
standing job as a TA and to those who teach beyond the required load. The
School of Computer Science offers a TA workshop which we encourage students
to take advantage of.
13
• A submitted, accepted, or published conference or journal paper (rejected
papers may count since sometimes conference program committees and
journal editorial boards have their own agendas)
• A document written to satisfy a course requirement (e.g., a course project’s
final report)
• The thesis
The student should iterate with at least one faculty member, not neces-
sarily the advisor, in writing this document. To determine whether the writ-
ing requirement has been satisfied, the student eventually must get at least
two faculty members and one graduate student to read the document, to pro-
vide written feedback by filling out a Writing Review Form (available from the
Graduate Program Adminstrator or at http://www.cs.cmu.edu/~csd-grad),
to meet and discuss this feedback, and to give final approval by signing the
form accordingly. The student then gives these three (or more) signed forms to
the Graduate Program Administrator who keeps copies in the student’s file and
indicates in the student’s records that the requirement has been satisfied.
Students are responsible for asking the appropriate faculty members and
graduate student to help them with satisfying their writing requirement.
We expect students to be able to satisfy this requirement within their first
three years and prior to their thesis proposal.
Computer Science Ph.D. students are welcome to enroll in the undergradu-
ate communications course, required of undergraduate majors, to enhance their
writing skills; however, taking it does not serve to satisfy the written commu-
nication skills requirement.
• Research area seminar series (AI, CS, Logic, POP, PS, Theory)
• Research unit seminar series (MLD, HCII, LTI, Robotics)
• Regular lunchtime talks (e.g., SDI lunch, Graduate Student Seminar Se-
ries)
14
• Research area group meetings (e.g., Machine Learning, SSSG, Multicom-
puter)
• Oral presentations in regular graduate courses or as part of a project
course (see Section 6.2.1)
15
9 The Thesis Process
The thesis must describe a significant piece of original research work. It is evi-
dence of proficiency, high attainment, and ability to do research in a specialized
area of computer science.
A more extensive checklist with specific information on the thesis proposal
and thesis defense is available at http://www.cs.cmu.edu/~csd-grad. Every
student must read and adhere to these more detailed process rules.
• A technical report
• A survey of the field
16
• An annotated bibliography
Any included list of references or bibliography should serve the purpose of
supporting the assessment of the state of the art and the student’s personal
qualifications.
To provide ample notice to the public, at least one week in advance of the
oral presentation, students should provide the Graduate Program Administra-
tor with one hardcopy of the thesis proposal, an on-line copy of the proposal’s
abstract, and a list of the thesis committee members, including the external
member. The Graduate Programs Administrator posts the public announce-
ment of the thesis proposal presentation.
Please remember that at least three thesis committeee members (including
the Chair) must be physically present for the thesis proposal.
Upon completion of the thesis proposal the student must complete a Doctoral
Candidate Contractual Agreement Form provided by the Graduate Programs
Administrator.
17
9.3 Thesis Committee
The student’s advisor chairs the thesis committee. All other committee mem-
bers, including the external member, should be agreed upon before the thesis
proposal presentation. Members of the student’s committee must accept the
responsibility of meeting with the student regularly to ensure that the research
is progressing in the right direction. The thesis committee should be composed
of at least three members who are on the SCS faculty and one member from
outside. Normally at least two members are CSD faculty. The external member
may be from another department at Carnegie Mellon, or (typically) from outside
the University. All thesis committees are subject to departmental approval.
Please remember that at least three thesis committeee members (including
the Chair) must be physically present for the thesis proposal and defense.
9.4 Thesis
The thesis must describe a piece of original research work and must describe it
well. It is on this basis that the Department certifies the qualifications of the
new Ph.D. Furthermore, it is the most important basis on which the scientific
community judges the initial achievement and potential of that individual.
18
• To approve without corrections
• To approve subject to minor changes, to be approved later by the thesis
chair only
• To require a resubmission after major changes and reapproval of the entire
committee
• Not to approve the thesis
All members of the committee are required to sign a Final Oral Examination
card, indicating that the student has passed the thesis oral examination. In
addition, the thesis committee chair, the Department Head, and the Dean sign
a final certification sheet when the student submits the final version of the thesis.
19
11 Community Spirit
Our sense of community is well-known as a distinguishing aspect of doing com-
puter science at Carnegie Mellon. It is one of the reasons many students choose
to come here. The Computer Science Department is proud of our strong commu-
nity spirit, which we foster through close working relationships between students
and advisors, among faculty, and among students. Many working relationships
turn into friendships for life.
Luckily, our community works. People volunteer their time, energy, intellect,
talent, and other skills to do many of the things that keep our environment run-
ning smoothly. These efforts include organizing seminars, maintaining software
packages, serving on departmental committees, grading for a graduate course,
planning and running social activities, giving tours, and hosting visitors.
We are initiating a new web-based mechanism to provide a way for students
to volunteer for activities they enjoy doing and to inform the community of
the activities that need volunteers. See http://www.grad.cs.cmu.edu/. This
“SCS Community Page” serves the entire School of Computer Science and is
open to all graduate students in the school. This service is run entirely by
students.
20
experience may take the place of one semester of the normal teaching re-
quirement, though in many cases it is expected that this experience will
be carried out as an additional semester of teaching.
(a) For course content, the Teaching Fellow should be personally involved
(typically jointly with a Lecturer or Professor) in the creation of
a significant number of the course topics and materials, including
elements such as the syllabus, lecture notes, homework assignments,
projects, and exams. Any materials written by the Teaching Fellow
may be submitted to the Monitor for review.
(b) For course delivery, the Teaching Fellow should give a significant
number of lectures/recitations in the course. At least two of the
lectures/recitations must be observed and reviewed by the Center
for Teaching.
(c) For course management, the Teaching Fellow should be involved in
a significant number of management activities, e.g., organizing and
directing of other teaching assistants and graders, calculating mid-
semester or final grades, and arranging for special classroom or lab-
oratory facilities. If the Teaching Fellow is acting as a teaching as-
sistant to an instructor, the instructor will be asked to comment on
the management activities of the Teaching Fellow, for review by the
Monitor.
13 Masters Degrees
A student may petition the faculty for a Masters degree, which may be granted
at the faculty’s discretion. A student who has passed all 96 course units, passed
at least one of the two communication skills requirements, and taught at least
once is usually granted a degree.
21
14 Student Support
14.1 Academic Year Support
The Department aims to allow students as much freedom as is possible in choos-
ing research directions, subject to the interests and expertise of the faculty who
are available to oversee the work. Thus, the Ph.D. program generally decides
which funding source to use to support a student after the student has chosen an
advisor or research area. On occasion, the Ph.D. program is able to obtain an
individual fellowship for a student through external sources. We also encourage
students to seek their own external funding since often the award is prestigious
(e.g., NSF or Hertz) or the source provides an opportunity to make professional
connections (e.g., an industrial fellowship). The Department supplements the
stipends of students with an outside fellowship to meet (and usually exceed)
the stipends of students with internal funding. To any student whose spouse
or qualifying domestic partner earns less than $200 per month, the Department
pays a dependency allowance that is 10% of the student’s SCS monthly stipend
per dependent.
22
number is filled in!), or (ii) state that no funds are available from any research
or discretionary account.
If no faculty support is available, the student should submit the signed form
to the Graduate Programs Administrator for approval of departmental spon-
sorship. The maximum to be reimbursed will be $200 plus the registration
fee, if only attending the conference or workshop; $600 plus registration fee, if
presenting a paper.
15 Leave of Absence
Students who wish to leave the program temporarily may request a leave of ab-
sence by submitting a request to the Graduate Programs Administrator. Leaves
are initially granted for a period of no more than one year, but an extension
of up to one additional year may be granted under exceptional circumstances.
When an extension is granted, the conditions for return must be negotiated with
the advisor and the Director of Graduate Programs prior to returning to the
program. Students must be in good standing in order to be granted a leave of
absence.
Students on leave of absence should contact the Graduate Programs Admin-
istrator two months prior to the end of the leave to indicate their plans. While
a leave can in principle start at any time, university regulations allows students
to return only at the beginning of a semester (usually late August or January).
23
students, to make support decisions, and to write recommendations to potential
employers.
The faculty meet at the end of each semester to make a formal evaluation
of each student in the Ph.D. program. For historical reasons this meeting is
called “Black Friday.” The purpose of having all the faculty meet together to
discuss all the students is to ensure uniformity and consistency in evaluating
across all the different areas, by all the different advisors, throughout the years
of the Ph.D. program in CSD as it inevitably changes. The meeting consists
of two parts, one in which subsets of the faculty from different research areas
(Artificial Intelligence, Computer Systems, Programming Languages, Software
Systems, and Theory) meet, and the other in which the entire faculty meet.
The faculty measure each student’s progress against the goal of completing
the Ph.D. program in a reasonable period of time. The evaluation considers all
components of the program using indicators and information sources described
below. Through a Black Friday letter the faculty inform students of the results
of this evaluation, which may include specific recommendations for future work
or requirements that must be met for continued participation in the program.
The faculty’s primary source of information about the student is the stu-
dent’s advisor. The advisor is responsible for assembling the above information
and presenting it at the faculty meeting. The student should make sure the
advisor is informed about participation in activities and research progress made
during the semester. Each student is asked to submit a summary of this infor-
mation to the advisor at the end of each semester—the Student Statement for
24
Black Friday at https://blackfriday.cs.cmu.edu. This statement is used as
student input to the evaluation process and as factual information on activities
and becomes part of the internal student record. It is strongly recommended
that the student and advisor meet prior to the faculty meeting to review the
information provided in this statement.
16.2 Recommendations
Based on the above information, the faculty decide whether a student is making
satisfactory progress in the Ph.D. program. If so, the faculty usually suggest
goals for the student to achieve over the next semester. If not, the faculty make
more rigid demands of the student; these may be long-term (e.g., finish your
thesis within 1-1/2 years) or short-term (e.g., select and complete one or more
specific courses next semester; prepare a thesis proposal by next Black Friday).
Ultimately, permission to continue in the Ph.D. program is contingent on
whether or not the student continues to make satisfactory progress toward the
degree. If a student is not making satisfactory progress, the faculty may choose
to drop the student from the program.
The faculty also decide whether support should be continued for each stu-
dent. Termination of support does not always mean termination from the pro-
gram.
16.3 Grades
Since the Ph.D. program is not based solely on conventional academic courses,
it is difficult to associate grades with a student’s accomplishments. Also, for
students who complete the program, grades are largely irrelevant; graduates
are judged primarily on their professional achievements and the experience they
have gained during the program, and on the basis of recommendations from
members of the faculty.
The Ph.D. program keeps an internal record of various information about
a student’s performance, such as final grades given in some graduate courses.
This information is used at the Black Friday meeting. This information does
not go on the student’s university transcript.
Once the required coursework is completed, students register only for a blan-
ket course (e.g., “Reading and Research”) covering all their program activities
for that semester, for which they receive a Pass/No Pass grade.
CSD Ph.D. students may formally register for graduate or undergraduate
courses in other departments, in which case they are subject to the grading
policies of the University and the department offering the course. A form to re-
quest pass/fail grading is available from the Graduate Programs Administrator.
25
17 Problems?
17.1 Points of Contact
Students and advisors enjoy a close working relationship in our program. If
students have problems, whether related to their research or not, they should
feel free to speak to their advisors. If doing so is awkward or if students simply
want a second opinion, they should feel free to discuss their problems with
either the Director of Graduate Programs (currently Mor Harchol-Balter) or
the Graduate Programs Administrator (currently Deb Cavlovich).
26
approaching either of the Graduate Programs Administrators about it, then the
ombudsperson would be the perfect person to turn to.
Currently, the ombudsperson is Aaron Roth.
18 University Policies
All policies not explicitly covered in this document adhere to university policies
as stated in the Graduate Student Handbook. These policies include the status
of All But Dissertation (ABD) and In Absentia students, academic disciplinary
actions, and grievance procedures.
27
A Prerequisites to the Area Star Courses
Although there are no formal prerequisites for admission to the doctoral pro-
gram, the area star courses make certain assumptions about a student’s prior
knowledge. Each topic listed below is accompanied by an indication of the level
of proficiency that is assumed. In general, this amounts to the ability to use
fundamental concepts and techniques in technical discussions.
A student deficient in one or more of these subjects could take or audit
undergraduate courses to learn the material.
28
• Logic: Including propositional calculus, quantifiers, and the ability to
manipulate and evaluate logical formulas, as in Chapters 1, 2, and 4 of
The Science of Programming by Gries.
• Probability and Statistics: Basic probability and statistics as in Chap-
ter 6 of Algorithms by Cormen, Leiserson, and Rivest, Chapters 1-7 of
Probability and Statistics by Morris de Groot, or Chapters 1-7 of Intro-
duction to Probability by Grinstead and Snell.
• Formal Languages: Regular sets, finite automata, regular expressions,
nondeterminism, push-down automata, context-free languages, Turing ma-
chines, polynomial-time (P and NP) to the level of Introduction to Au-
tomata Theory, Languages, and Computation by Hopcroft and Ullman.
29
B Time Estimates
The following table indicates estimates for approximately when students should
have finished each requirement. Overall, we expect students to complete the
program within 5–6 years, depending on background, research area, and disser-
tation research.
These figures are meant to be suggestive, not prescriptive. We present them
so that all faculty and students can develop a shared image of the expectations
of the program.
30
C Ph.D. Specializations
Students admitted to the Ph.D. Program in Computer Science may choose to
further specialize in one of three tracks: Algorithms, Combinatorics, and Op-
timization (ACO); Neural Basis of Cognition (NBC); and Pure and Applied
Logic (PAL). These students must also be separately admitted to those pro-
grams; they fulfill the same basic requirements as regular Ph.D. students in
Computer Science but have additional requirements to fulfill.
31
at the University of Pittsburgh are Mathematics, Neurobiology, Neuroscience,
and Psychology.
The CNBC option for Computer Science Ph.D. students allows them to
combine intensive training in CS with a broad exposure to cognitive science,
neural computation, and other disciplines that touch on problems of higher
brain function.
Course of Study: CS/CNBC students are admitted through their home
department (Computer Science) and fulfill the normal CS Ph.D. program re-
quirements. In addition, they take a sequence of CNBC core courses in neu-
rophysiology, systems neuroscience, computational neuroscience, and cognitive
neuroscience. The CNBC core courses take the place of the three elective course
unit requirement in CS. CS/CNBC students also participate in a research sem-
inar series and experience a lab rotation.
Because of the extra time required to complete the CNBC requirements, stu-
dents may apply for one year of financial support from the CNBC. In addition,
CS/CNBC students are given an annual travel allowance to help them attend
conferences and workshops.
Completion of all degree requirements earns the student a Ph.D. in Computer
Science plus an additional certificate in the “Neural Basis of Cognition.” More
information about the CNBC option is available at http://www.cnbc.cmu.
edu/.
32
Completion of all degree requirements earns the student a Ph.D. in Computer
Science plus an additional certificate in “Pure and Applied Logic”. More infor-
mation about the PAL program is available at http://www.cs.cmu.edu/~pal.
33
D Dual Degree Program with Portugal
Since Fall 2007 the department also offers a dual degree program in cooperation
with several Portuguese universities. The regulations are essentially the same
as given in this document, except that some requirements can be fulfilled in an
affiliated program in Portugal. For more information, see
http://www.csd.cs.cmu.edu/education/phd/portugal.html.
34
E Self-Defined Interdisciplinary Ph.D. Programs
We encourage students to follow their interests and to pursue interdisciplinary
contacts as appropriate for their program of research and study. The doctoral
program is broad and flexible, so usually we can find ways to accommodate
these interests. However, there are times when a student’s research goes so far
afield that an interdisciplinary Ph.D. would be more appropriate. The depart-
ment accommodates these students by allowing a self-defined interdisciplinary
Ph.D. program.
A student interested in a self-defined Ph.D. sets it up between Computer
Science and another academic department. The student must draw up a de-
scription of the area in which he or she wishes to work and a proposed academic
plan, which typically includes coursework, a description of the qualifier (if any),
and how the thesis will be approved. The student then must put together a
program committee consisting of people from both departments who will agree
to oversee the student’s progress through the program; this committee acts as
the student’s department. Finally, the program must be approved by the DRC
and by the equivalent committee of the other department.
The process of setting up an interdisciplinary Ph.D. is not easy and can
easily take a year or two. The process by which an interdisciplinary Ph.D. is
created is unfamiliar to most other departments and is not well-defined by the
university itself, so it may take significant effort to define an interdisciplinary
degree and have it be recognized in all participating departments. It is therefore
in most students’ interests to stay within the Computer Science program; once
coursework is done, there are few limitations on a Computer Science Ph.D. stu-
dent’s course of study, thereby giving the student nearly the same flexibility
achievable through a self-defined program.
35