|
Main
Page
Graduate
Program
Undergraduate
Program
Course Information
Course
Web Pages
Our
Research
Research
Areas
Technical
Reports
Faculty
Graduate
Students
Research
and Technical Staff
Administrative
Staff
Alumni
Degree
Recipients
Calendars
Computing
Facilities
CS
Talks Mailing List
Yale
Computer Science FAQ
Yale Workstation Support
Computing
Lab
AfterCollege
Job Resource
Graduate
Writing Center
Contact
Us
History
Life in the Department
Life About Town
Directions
Faculty
Positions
City
of New Haven
Yale
Applied Mathematics
Yale
C2: Creative Consilience of

Computing and the Arts
Yale
Faculty of Engineering
Yale
GSAS Staff Directory
Yale
University Home Page
Google Search
Yale Info Phonebook
Internal |
|
Yale University
Department of Computer Science
GRADUATE
HANDBOOK

2011-2012
Edition
| Department Chair |
Associate Professors |
Research Scientists |
| Holly Rushmeier |
Brian Scassellati |
Robert Bjornson |
| |
Yang Richard Yang |
Andrew Sherman |
| Director of Graduate Studies
|
|
|
| Vladimir Rokhlin |
Assistant Professors |
Senior Research Scientists |
| |
Daniel Abadi |
Nicholas Carriero |
| Professors |
Bryan Ford |
Michael Hines |
| Dana Angluin |
|
|
| James Aspnes |
Affiliated Faculty |
|
| Julie Dorsey |
Dirk Bergemann |
|
| Stanley Eisenstat |
Kei Cheung |
|
| Joan Feigenbaum |
Ronald Coifman |
|
| Michael Fischer |
Mark Gerstein |
|
| David Gelernter |
Andreas Savvides |
|
| Paul Hudak |
Sekhar Tatikonda |
|
| Drew McDermott |
|
|
| Vladimir Rokhlin |
|
|
| Holly Rushmeier |
|
|
| Martin Schultz (Emeritus) |
|
|
| Zhong Shao |
|
|
| Abraham Silberschatz |
|
|
| Daniel Spielman |
|
|
| Steven Zucker |
|
|
1. Introduction
2. Research in Computer
Science
3. Graduate Programs
 3.1
The Doctoral Program
 3.1.1.
A Brief Overview of the Doctoral Program
 3.1.2.
Requirements
 3.1.3.
Evaluation of Progress
 3.1.4.
Miscellany
 3.1.5.
The Fast Track
 3.1.6.
Master’s Degrees en Route to the Ph.D.
3.2
The Master's Program
4. Departmental Computing
Facilities
5. Graduate Student Life
 5.1
The McDougal Graduate Student Center
 5.1.1.
Mission
 5.1.2.
Facilities
 5.1.3.
Student Life Programs
 5.1.4.
Graduate Career Services (GCS)
 5.1.5.
Office of Teacher Preparation
5.2
Life in the Department
5.3
Life About Town
6. Graduate Admissions
and Financial Aid
6.1
Admissions Procedures
6.2
Financial Aid Policy
7. Graduate Courses
8. Personnel
8.1
Advanced Students
8.2
Recent Graduates
9. Graduate School Calendar
1. Introduction
The Yale Department of Computer Science was founded in 1969 as a small
Ph.D. program. It now includes 21 regular faculty members, and more than
50 graduate students, including a thriving population of Master's-degree
students.
The Ph.D. degree program in computer science stresses original research.
To this end, the course requirements are minimal and students normally
begin research by the fall term of their second year of graduate study.
The terminal M.S. degree program in computer science brings students to
the cutting edge of the field and provides them with a solid foundation
on which to build their future careers.
In 2001, Yale celebrated its 300th anniversary. The Department of Computer
Science is almost an order of magnitude younger, reaching its 32nd birthday
in the same year. But its influence on the university, within the research
community, and on society as a whole, belies its young age. Computers
are a dominant presence in almost every walk of life, and it is becoming
increasingly difficult for people to answer the question, “How did
we ever live without them?”
The Department of Computer Science was founded by people who had a vision.
This vision was how computer science would fit into the unique spirit
of Yale University, an institution oriented to an unusual degree around
undergraduate education and close interdepartmental collaboration. The
Department has always had close ties to mathematics and engineering, but
has increasingly experienced collaborations with other disciplines important
to Yale, including art, architecture, biology, psychology, economics,
business, statistics, linguistics, music, medicine, physics and more.
2. Research in Computer Science
An academic research effort in any field is supposed to establish outer
boundaries. Commercial efforts demonstrate what is profitable; academic
efforts show what is possible. In physics, mathematics and the other large,
long-established areas, most research gains lead to relatively small changes
in the character and perimeter of the field. Computer science is different.
It’s brand new. When a few researchers parachuted into this field
in the 1940’s, they had no territory to extend. They invented computer
science from scratch, more or less. They faced basic questions in science,
algorithms, design, and philosophy; and by answering them, they established
the intellectual basis of the field. What does “computable”
mean? How do we classify computations, distinguish practical from impractical
from impossible? How should programming languages be designed, and what
difference do they make? Is it possible in principle to build a mind out
of software? And so on.
When the Department of Computer Science was founded in 1969, the fledgling
field was viewed as consisting of four primary areas: theory of computation,
artificial intelligence, numerical analysis, and systems. Over the years,
these areas have developed so quickly in both depth and breadth that each
now consists of many sub-areas. Within artificial intelligence, areas
such as machine learning, knowledge acquisition systems, robotics, computer
vision, neural networks, and more have grown. Systems research now includes
graphics, databases, operating systems, networking, and the entire sub-field
of programming languages, which includes formal semantics, compilers,
programming environments, software engineering, and object-oriented, functional,
and logic programming. Similarly, theory of computation now includes computability,
complexity theory, design and analysis of algorithms, cryptography, distributed
computing, discrete mathematics, and more. Each of these many new areas
now boast their own conferences, journals, federal research programs,
and so on.
Each of these areas also has developed into both theoretical and experimental
disciplines. For example, security theory establishes the correctness
and robustness of idealized cryptographic protocols, but real systems
need to be built and fielded to ensure that the protocols withstand realistic
attacks. Type theory and category theory help establish the foundations
of programming languages, but real languages need to be designed and built
to ensure that programmers can use them productively. And learning and
planning theory tells us what the limits of automated intelligence are,
but robots need to be built to demonstrate the viability of these results.
At Yale, both theoretical research and applied research are valued highly.
Computer science has also grown beyond its own bounds to become a multi-disciplinary
field that touches many other sciences as well as arts and humanities.
Aside from the obvious overlaps with engineering and mathematics, there
are natural connections with physics, economics, law, management, psychology,
biology, medicine, music, philosophy, and linguistics. Indeed, members
of the computer science faculty have engaged in collaborations with each
of these areas. These efforts have affected our curriculum through the
establishment of cross-listed courses, interdisciplinary majors (such
as cognitive science), special “tracks” and dual majors, and
the creation of the Applied Math program. They have also led to interdisciplinary
research centers, such as the Center for Scientific Computing (CS, Math),
the Center for Computational Vision and Control (CS, EE, and Medicine)
and the Center for Internet Studies (CS, SOM, and Law). Most recently,
the C2 Initiative (Creative Consilience of Computing and the Arts) provides
students with opportunities to apply mathematical, computational, and
technological tools to problems inspired by the arts (Art, Art History,
Music, Theater Studies, and Architecture).
Of course, with such diversity and depth, it has become increasingly difficult
for any Department of Computer Science to cover all areas, and no one
really tries. The many changes that are taking place in the field have
led the Department to pursue a vision for the future a bit different from
the original structure upon which it was founded. At Yale, the current
focus of computer science is in these specific areas: algorithms and complexity
theory, databases, distributed computing, machine learning, programming
languages and compilers, scientific computing and applied math, graphics,
vision and robotics, and security and cryptography, and Computing and
the Arts.
3. Graduate Programs
The Department offers two graduate programs: a doctoral program leading
to a Doctor of Philosophy (Ph.D.) degree, and a terminal master’s
program leading to a Master of Science (M.S.) degree. The doctoral program
is intended for students preparing for a career in teaching and/or research.
The terminal Master’s degree program is intended for students who
want advanced study in computer science but do not intend to go on for
the Ph.D.
A student may apply to either the doctoral program or to the terminal
master’s program. A student seeking the Ph.D. should apply directly
to the doctoral program, even though he or she intends to obtain a Master’s
degree along the way. A student who has completed the Master’s program
and decides to go on for a Ph.D. is not guaranteed admission to the doctoral
program and must apply in the normal way.
3.1 The Doctoral Program
The Doctoral Program of graduate study leads to the Ph.D. degree and
is normally completed in 4-5 years. The M.S. and the M.Phil degrees are
granted to qualified students in the Ph.D. program who wish intermediate
degrees. (See 3.1.6.)
3.1.1. A Brief Overview of the Doctoral
Program
Here is how a Ph.D. student's career goes.
In the first year, the student is expected to take courses and familiarize
himself or herself with the activities of the various research groups
in the Department. By the end of the year, the student must have teamed
up with a research advisor, a faculty member who takes primary
responsibility for the student's progress. Hence every student should
be engaged in negotiations with professors they might want to work with
starting well before the end of the second term in order to identify a
faculty advisor.
After the first year, the student comes under the direction of a supervisory
committee, consisting of the advisor and two or three other faculty
members who monitor and mentor the student. Usually the committee forms
“automatically” and consists of faculty working in the same
area as the advisor, but there are many exceptions, especially when the
student's work crosses disciplinary or departmental boundaries. In particular,
if the day-to-day advisor's primary appointment is not in the Department
of Computer Science, the committee must have an “advisor of record”
in the Department.
Once a student has selected a supervisory committee, any changes to the
committee require consultation among the director of graduate studies,
the old committee, and the proposed new one, and often require the approval
of the entire faculty.
In the second year, the student continues taking courses, completing a
total of ten courses by the end of the year. Two of these must be the
CPSC-690 and CPSC-691 sequence, which are just a convenient rubric for
the student's research project.
Each student must serve as a teaching assistant (TA) for two terms as
a key part of academic training. First-year students are not normally
eligible as TAs, so this requirement becomes relevant in the second year.
However, it is not necessary to satisfy the teaching requirement entirely
in that year.
The end of the second year is the culmination of two years of study and
research. The student passes an area exam demonstrating breadth of knowledge
in the research area of the 690 project, and finishes the 690 project
itself, presenting the results to the faculty as a written “690
report.”
By the start of the third year, the student begins dissertation research,
usually under the direction of the same supervisory committee. However,
if the student or the committee believes that the research is not going
well, this is a good time to pick a new advisor and research topic.
By the end of the third year, the student should have satisfied all requirements
for admission to candidacy, including writing a thesis prospectus that
describes the general area and direction of the dissertation research.
The student is then admitted to candidacy by vote of the faculty. The
Graduate School will not allow a student to register for a fourth year
of study until this step has been completed.
After admission to candidacy, the student’s position in the Department
is secure, subject only to continued satisfactory progress toward completion
of the dissertation. When the dissertation is complete, it is defended
before the faculty and approved by a committee of readers. It is turned
into the Graduate School and the readers file reports approving it. The
faculty then vote to recommend that a degree be granted based on the reader
reports. The requirements for the Ph.D. have then been met and the degree
is granted.
3.1.2. Requirements
The milestones along the way to the Ph.D. are described in detail below.
The course requirements, examinations, and 690 project should be completed
by the end of the second year, and all requirements for admission to candidacy
must be completed by the end of the third year (May).
The dissertation and defense must be completed no later than the end of
the sixth year. Exceptions to these rules require approval of the director
of graduate studies, the faculty, and/or the Graduate School.
Course Requirements:
Students are required to pass ten courses, satisfying the following constraints:
Two of the courses must be CPSC-690 and CPSC-691, independent project.
These courses introduce the student to research. Grade requirement: CPSC-690
must be passed with a grade of SAT and CPSC-691 must be passed with a
grade of HIGH PASS or HONORS. Two of the remaining courses must be passed
with a grade of HONORS; the rest must be passed with a grade of at least
HIGH PASS. Depth requirement: by the end of the second year, each student
must pass three advanced courses in a particular field.
The following rules govern which courses may be counted towards the course
requirements:
General constraints:
No course with number 499 or below can be used to satisfy a course
requirement. Any 500-level course can be used to satisfy the 10-course
requirement and the depth requirement. For example, if a theory student
takes a 500-level theory course, it simultaneously counts toward both
requirements.
The CS-690 and CS-691 course sequence counts only toward the 10-course
and research requirements.
A 600-, 700-, or 800-level course can count towards the 10-course and
depth requirements, but only if it involves regular meetings with a faculty
member and tangible written work that can be evaluated, and results in
a regular grade of HONORS or HIGH PASS. In practice, some but not all
600-level courses will count, while 700- and 800-level courses normally
will not count towards any requirements.
Non-CS Department courses: A student can count a graduate-level
course outside the Department towards the 10-course and depth requirements
if it is relevant to the student’s program of study. This determination
is made by the director of graduate studies, possibly in consultation
with the student’s advisor.
Distribution constraints:
In these constraints, we use a pattern notation to indicate course classes.
Every course has a three-digit number, Kdn. K must be greater
than or equal to 5 (see above); n is arbitrary; the digit d
is the most reliable indicator of the subject area of the course.
Two of the six courses must be in theoretical computer science, currently
including 555, 557, 561, 562, 563, 565, 567, 568 and 569. Two must be
in programming languages and systems, currently including 521, 522, 526,
527, 528, 530, 533, 534, 535 537 and 538. Two must be in "applications,"
currently including 524, 531, 532, 536, 540, 545, 570, 573, 575, 578,
579, and 752.
At least one course taken at Yale must be a Computer Science course designated
as "programming intensive," with a workload whose goal is to
produce several thousand lines of code at a high level of proficiency.
The programming-intensive courses currently are 521, 522, 526, and 527.
Other constraints:
All the courses should contain substantial material beyond what the student
has learned before coming to Yale. If a student is unable to find courses
satisfying the requirements above, the DGS will usually accept courses
from other departments that are in similar topic areas. Seminars may be
acceptable, too. These are courses presented on an ad-hoc basis and that
may consist mainly of paper presentation and discussion. (Their numbers
usually have d=7.) The DGS will approve such a course to satisfy
the distribution requirement if a student has already studied deeply in
a research area, and is strongly motivated to explore it further.
Official Graduate Student Talks
In order to keep the faculty apprised of research progress, each student
must give a public talk on the progress of his or her research twice during
his career, once after completing a 690 project, and once after filing
a dissertation prospectus. These talks are known as official graduate
student talks (OGSTs). They are open to the public, and all members of
the Department are welcome. OGSTs are good opportunities to practice giving
talks, and, for incoming students, to learn how to give a talk —
and what can go wrong! They are scheduled in the fall by the Department
student coordinator on a first-come-first-served basis.
The student must announce the talk at least a week in advance on the appropriate
e-mail lists (currently grad-students@cs.yale.edu
and faculty-cs@cs.yale.edu).
The announcement should be repeated as the date draws near. All OGST announcements
should indicate the student’s year of study and the current 690
project advisor or thesis advisor. Students who have been admitted to
candidacy should also list their reading committee and expected date of
completion.
690 Project
The student must submit a written report on his or her 690 project to
his or her supervisory committee, which grades it for (a) quality of the
work, (b) quality of the technical writing, and (c) quality of the English.
The grade and a one-page abstract must be transmitted to the director
of graduate studies.
Please note that the course grades for CS-690 and CS-691 are not the same
as the grade for the 690 report. The advisor files a grade of “SAT”
or “UNSAT” for CS-690 and HONORS or HIGH PASS for CS-691,
indicating whether the student is making satisfactory progress toward
completing the research and the report. If not, the supervisory committee
and faculty should be notified. The course grade is submitted at the end
of the term, with other course grades. The grade on the 690 report is
submitted after the supervisory committee has read it and agreed on a
grade, which may occur before or after the course grade is submitted.
Area Examination
The student must pass an Area Examination by the end of the second year.
The purpose of the area exam is to demonstrate proficiency in scholarship
over a subject area that includes the area of the 690 project, but is
broader. The exam is formulated and administered by the student’s
supervisory committee. The committee will decide whether the same exam
should be given simultaneously to a cohort of students, as opposed to
giving each student his or her own exam.
The exam typically includes something like the following: A written or
oral test of in-depth knowledge of the research area test of the capacity
to learn a topic from research literature (e.g., an extended oral presentation
and critique of one or more research papers); presentation of the 690
report and fielding of questions about it. This in-depth examination by
the supervisory committee is not the same as the OGST, which is required
of every student after acceptance of the 690 report, and is aimed at a
more general audience.
Thesis Advisor A regular faculty member must agree to
direct the student’s dissertation, thereby certifying that the student
is capable of doing original research. Meeting this requirement does not
automatically follow from the student’s receiving a grade of HONORS
or HIGH PASS on the 690 project. The advisor may be a ladder faculty member
from another Yale department, if the student’s supervisory committee
and the DGS approve. It is generally unproductive for a student to attempt
a dissertation in an area not covered by the faculty’s interests;
faculty members will normally require a student to work in areas they
care about. The thesis advisor must be chosen by the beginning of the
third year.
Thesis Prospectus A thesis prospectus must be filed
with the director of graduate studies and the Graduate School by the end
of the 3rd academic year, this being a written summary (about 3 or 4 pages
long) of the nature and scope of the thesis research and a tentative title
of the dissertation. The prospectus must also include a proposed committee
of readers (see below) and be signed by the advisor.
Admission to Candidacy The faculty will vote to admit
the student to candidacy when all of the requirements described above
have been satisfied: course requirements, 690 Project and Report, first
OGST, area examination, thesis advisor, and a thesis prospectus. It is
required that a student will be admitted to candidacy by the end of the
third year. Because the prospectus is usually the last piece to fall into
place, the prospectus must be done by then so that the department faculty
can certify the student. If the requirements have not been satisfied by
the beginning of the fourth year, the Graduate School will not allow the
student to register for classes or to be paid, as a research assistant
or teaching fellow. Undoing the damage requires negotiations with the
Computer Science Department that usually result in the student being placed
on probation for a term, assuming he or she is finally admitted to candidacy
before the end of that tern. This language should not be taken as implying
that the “real” deadline is August 31. Rather the end of the
academic year is considered to be May.
The Dissertation The most important part of the Ph.D.
program is research training, culminating in the writing of a dissertation.
The dissertation should be concluded no later than the end of the student’s
sixth year. The dissertation demonstrates the student’s ability
to perform original research. Thus, it must demonstrate technical mastery
of the subject and must contain conclusions that modify or enlarge what
has previously been known. Because Yale is a university, dedicated to
the dissemination of knowledge, all results of research, including the
dissertation, must be made public. Access may not be restricted for any
reason, commercial or governmental.
Thesis Defense The student must give an oral defense
of the thesis research when the student’s committee is satisfied
that the work is complete and the student has a complete draft of the
dissertation ready to submit to the Graduate School. To ensure the latter,
one copy of the dissertation must be given to the departmental registrar
and made available to the Department faculty at least one week before
the defense takes place. The dissertation must also be placed on the Department's
web site on the “Internal/Faculty Use” page or in some more
publicly accessible place.
The defense consists of a one-hour public presentation of the results
followed by a 15-minute question and discussion period, which is open
to the entire department and its guests. The faculty and outside readers
then conduct an oral examination in closed session.
At least three readers must be present at the defense, although as technology
improves virtual presence becomes more of a possibility. It is not necessary
for the external reader to attend if plenty of internal ones are available.
In order to give all interested faculty the opportunity to attend, the
defense must be scheduled with the director of graduate studies and announced
to the faculty at least one month in advance. Thesis defenses are normally
held at 3:45 on Wednesdays. An arrangement to hold one at another time
must be made in agreement with the computer science faculty, as coordinated
by the DGS.
Dissertation Submission The dissertation should be submitted
to the Graduate School as soon as the thesis defense has been passed and
any final corrections to the dissertation have been made. This must be
completed within one month of passing the defense, or the student must
defend again. A copy of the final draft must also be given to the departmental
registrar. After the dissertation is submitted, copies are sent to the
members of the reading committee (see below), who each read the thesis
and complete a “reader’s report” form. When all reader
reports are in, they are made available to the faculty, who then meet
and vote whether to recommend the degree. The recommendation is forwarded
along with the reader reports to the Graduate School, which reviews the
recommendation. Finally, the entire graduate faculty votes to approve
the degree.
In order to allow time for these steps to be completed in a timely fashion,
the Graduate School requires that the dissertation be submitted by October
1 for a December degree and by March 15 for a May degree. These deadlines
are strictly enforced.
Dissertation Readers The dissertation must be read by
a committee of four readers, which is a distinct entity from the supervisory
committee (although it normally overlaps with it). Three readers must
be internal and one must be external. An internal reader may be any faculty-level
person with a close affiliation to the Yale Department of Computer Science,
including regular faculty, visiting faculty, research scientists, and
associate research scientists. An external reader may be any qualified
person who is not closely affiliated with the Computer Science Department.
In addition, the reading committee must conform to the following rules:
• At least
two Internal Readers must be regular ladder faculty in the Yale Department
of Computer Science;
• All Internal
Readers are normally expected to attend the student’s OGST's and
the Thesis Defense;
• At least
three Readers must attend the Thesis Defense.
Exceptions to these rules require approval of the Director of Graduate
Studies. For the purposes of these regulations, “close affiliation”
status is conferred by any extended visit in the Department or any kind
of departmental appointment or title, including affiliate and adjunct
titles. Occasional short-term visits or research collaborations do not
constitute close affiliation. Once conferred, the status of “close
affiliation” persists for a period of two years after the affiliation
terminates. Thus, a faculty member who takes a position elsewhere may
continue to serve as an internal reader for two years after leaving and
may not serve as an external reader during that same period. The above
notwithstanding, the reading committee must always include at least one
current regular ladder faculty member in the Yale Department of Computer
Science. In addition, if the advisor leaves Yale, the Graduate School
may require that a current Yale faculty member serve as acting advisor.
The rules concerning the composition of the reading committee must be
satisfied when the committee is first formed, at the time of the thesis
defense, and at any time that the committee is changed.
3.1.3 Evaluation of Progress
Students must maintain a satisfactory rate of progress toward the Ph.D.
in order to remain in good standing in the program. During the first year,
progress is measured by formal course work. To remain in good standing,
at least six courses must be completed with a grade of HIGH PASS or better.
After the first year, rate of progress is monitored by the student’s
supervisory committee. The committee looks at grade records, exam results,
the 690 report, and research progress. The committee is also expected
to attend the student’s required OGST’s in order to see first-hand
how the student is doing. Students beyond the first year receive written
annual evaluations of their progress, drafted by the supervisory committee.
A copy of this evaluation is placed in the student’s file. A decision
that the student is not making satisfactory progress toward the Ph.D.
may be made at any time by the supervisory committee.
Whenever a student is determined not to be in good standing, either by
failing to achieve required milestones or by recommendation of his or
her supervisory committee, the student and the faculty will be notified.
All information regarding the student, including course grades, research
performance, and performance on exams, will be made available to the faculty
as a whole, which will then determine a course of action for the student.
Possibilities at this stage can include continuation in the program with
revised expectations, academic probation, or dismissal from the graduate
program. The director of graduate studies will inform the student in writing
of the faculty’s determination and, in case continuation in the
program is permitted, of conditions that must be fulfilled to return or
remain in good standing.
In cases where the sole reason for the student’s trouble is apparent
inability to do research under the supervision of his or her current committee,
the usual expectation is that a new committee will be formed and will
give him or her an appropriate period of time (a term or a summer) to
demonstrate ability to conduct a research project successfully. The committee
will report to the faculty at the end of this period, so that a new decision
can be made.
If the committee determines that the student has not yet passed one of
the designated requirements, then the committee should report at that
time, and as necessary in subsequent terms, on how the student is progressing
towards satisfying the requirements, and what its recommendation is. The
recommendation can range from “the student should be terminated”
to “the student has satisfied all the requirements for admission
to candidacy.” One possible recommendation is that the student change
research area, under the direction of a new supervisory committee. This
recommendation is not routine, and should not be considered the normal
consequence of failing an area exam.
The supervisory committee’s evaluation is particularly crucial at
the end of the second year, when the results of the 690 project and area
exam become available. At this time, the supervisory committee is expected
to report in writing to the faculty as a whole (as well as to the student)
on the student’s status. This notification should be given by the
middle of May, and a special faculty meeting will be held toward the end
of May to act on any recommendations.
3.1.4. Miscellany
In order to gain teaching experience, all graduate students are required
to serve as a teaching assistant for two terms during their first three
years of study. Teaching performed in order to meet the obligations of
financial aid packages can also be used to satisfy this requirement. Students
who perform teaching not required by a financial aid package may receive
additional compensation. (See 6.2)
The Graduate School requires that a Ph.D. student spends a minimum of
three years in residence and that full tuition be paid for four years.
If the student graduates in fewer than four years, with no leaves of absence,
then any additional tuition is waived.
Whether a student is in good standing is independent of whether there
are funds to support him or her.
If a student’s advisor leaves Yale, then what happens depends on
the student’s state of progress toward a Ph.D. A student who has
not completed the three-year residency requirement and been admitted to
candidacy will normally be expected to find a new advisor or go with the
departing faculty member and enroll in another Ph.D. program. An advanced
student normally finishes his or her dissertation while continuing under
the technical supervision of the departed advisor and receives a Yale
degree. In this case, the Graduate School may require that a current Yale
faculty member agree to act as official advisor. Such a student will have
two years to finish his or her dissertation before the Department will
no longer be bound to accept it. The thesis defense must still be held
at Yale, according to the usual rules.
Students can expect to have office space in Arthur K. Watson Hall, subject
to availability, for their first six years.
3.1.5. The Fast Track
Fast-track status enables students whose computer science education is
already well under way when they enter the Ph.D. program (e.g., after
receiving a Master’s degree in CS from another institution) to take
fewer courses and to get started sooner on research.
A student who wants to get onto the fast track must discuss the issue
with the DGS upon admission to the program. The status becomes official
if, by the end of the first year of study, the student has taken CS690
(i.e., found an advisor and begun research) and passed six courses with
grades of HIGH PASS or HONORS. The DGS will examine the student’s
academic history to decide which courses already taken satisfy which distribution
requirements, and which requirements remain to be satisfied.
Students who expect to qualify as “fast track” may, with
permission of the director of graduate studies, begin the 690 project
in the first or second term of study. It may also be granted in those
cases where the intended area examination covers work done for the 690
project (which is now the case in programming languages and systems).
Such an early start on research will not affect the eventual attainment
of fast-track status nor the number of courses that will be waived, both
of which are determined as described above.
Here in detail is the procedure that is now required to certify that
a student is taking the fast track: A table must be prepared showing which
Yale courses are obviated by which graduate-numbered courses at the institution
where the student earned their M.S. All of these courses must have been
taken during the student’s post-graduate education, after the award
of the Bachelor’s degree or equivalent. A theory course here must
be paired with a theory course there, and so forth. However, the titles
of the two courses do not have to be identical, or even similar, provided
that in the judgment of the DGS the two courses occupy the same "ecological
niche." That is, if Yale offered a course on that topic, it would
be classified as a course that satisfied the same clause of the distribution
requirement as the Yale course it is paired with. (Example: Suppose Yale
offers a course on distributed sensor networks and the M.S. institution
offers a course on mobile computing. These can be paired, because if Yale
had a course on mobile computing it would satisfy the systems requirement.)
The DGS prepares a certificate incorporating this table and sends it
to the Dean of the Graduate School, who must approve waiving the courses
proposed by the Department of Computer Science. No more than three courses
may be waived.
3.1.6. Master’s Degrees en Route
to the Ph.D.
A student in the Doctoral Program can earn a Master of Science
(M.S.) degree and/or a Master of Philosophy (M.Phil.) degree en route
to the Ph.D. The requirements for the M.S. degree are described in 3.2
below. The requirements for the Master of Philosophy (M.Phil.) degree
are the same as for the Ph.D. except for requirements having to do with
the dissertation. Why anyone would want two Master's degrees is a mystery,
but many students do.
3.2 The Master’s Program
The terminal Master’s Program of graduate study is normally
completed in one year, but may be spread over as long as four years. To
qualify for the Master of Science degree, the student must pass eight
courses at the 500-level or above. These must satisfy the same "general
constraints" as for Ph.D. students (see section 3.1.2.). An average
grade of at least HIGH PASS is required, with at least one grade of HONORS.
A one-term Independent Project course (CS-690) may be applied towards
the Master’s degree with prior permission of the Director of Graduate
Studies, provided that a faculty member is willing to supervise the project,
applying the same standards as for a Ph.D. student. The faculty is under
no obligation to supervise independent projects for Master’s students.
Advanced graduate courses in other departments that involve concepts from
computer science and are particularly relevant to an individual program
may, with permission of the Director of Graduate Studies, be counted towards
the degree. Generally at most two such courses may be used to satisfy
the requirements of the Master’s Program. Here an advanced course
is generally one with at least one intermediate course as a prerequisite
and an intermediate course is generally one with at least one (introductory)
course as a prerequisite. But five courses must be in computer science.
4. Departmental Computing Facilities
The faculty, researchers, and students in the Department of Computer
Science have access to a wide variety of ever-changing state-of-the-art
computing resources, ranging from laptops, conventional PC’s and
scientific workstations to high-powered compute-servers and workstation
clusters used as parallel computers.
All of the computer systems are interconnected by a switched Ethernet
local network, which is connected to the Internet via fiber optic technology
to the campus backbone. Also recently installed is a wireless network
permitting instant laptop access to the Internet anywhere in the building
and many places on campus.
All faculty and Ph.D. students are equipped with a personal workstation
or advanced-technology PC, all running some variant of the Linux or Windows
operating systems. The computing needs of undergraduate and master’s
students are met through the "Zoo", an educational laboratory
with approximately 36dual-processor Linux workstations which allow for
remote as well as on-site access.
Individual research groups have additional specialized equipment for robotics,
computer vision, computer music, networking, and other research efforts.
Students in computer science, both graduate and undergraduate, have liberal
access to all of these facilities. In this way students play a vital role
in contributing to our understanding of theoretical and experimental issues
in computer science. The Department’s computing resources are professionally
managed by Workstation Support Services (WSS), a unit of the Yale office
of Information and Technology Services (ITS). WSS staff follow the policy
set by a faculty oversight committee in providing first-class responsive
service to all departmental users.
5. Graduate Student Life
5.1 The McDougal Graduate Student Center
Much of the graduate student life is based in the various departments
and in dormitories or apartment complexes. The new McDougal Center is
a place where graduate students from across the campus regularly meet
and share interests. It is located in the Hall of Graduate Studies (HGS),
320 York Street (432-2583), mcdougal.center@yale.edu,
http://www.yale.edu/mcdougal.
5.1.1 Mission
A generous gift from Mr. Alfred McDougal, a Yale alumnus, and his wife,
Ms. Nancy Lauter, enabled Yale to create the McDougal Graduate Student
Center in 1997. The McDougal Center provides space and program funding
for building intellectual, cultural, and social life, and for facilitating
professional development activities across the departments of the Graduate
School of Arts and Sciences. The McDougal Center warmly welcomes the participation
of students from other Yale Graduate and Professional Schools, postdoctoral
fellows, faculty, staff, alumni/ of the Graduate School, and members of
the larger Yale community. Its website (http://www.yale.edu/mcdougal)
provides all kinds of information relating to graduate student life. The
Center provides members of the graduate student community with a place
of their own on campus.
5.1.2 Facilities
The facilities of the McDougal Center enhance student life in many ways.
The magnificently restored Common Room has been transformed into a lounge
with comfortable furnishings, internet ports, newspapers and magazines,
and a student- run café serving coffee and light food throughout
the day. In an adjacent wing on the first floor of HGS the Center has
a large multi-purpose Program Room (HGS 119) with a portable stage, seating
for up to 100, and advanced video and sound projection equipment. The
Program Room provides space for lectures, conferences, performances, film
series, workshops and other events by and for students. The Center also
has smaller conference and meeting rooms. Graduate student groups and
departments may request to reserve space by contacting the center office
at 432-2583, stopping by HGS 123, or filling out a request online at www.yale.edu/mcdougal/facilities.
There is a public computer cluster supported by Academic Computing Services,
a public copy machine, a public phone, bulletin boards and information
kiosks as well. The lower floor also offers offices for the Assembly of
Graduate Students, graduate student organizations, rooms for Teaching
Fellows to meet with students, lockers for graduate student use and vending
machines. The McDougal Center is open days, evenings, and weekends.
5.1.3 Student Life Programs
The Center offers a variety of activities open to the graduate and professional
community. These include weekly movies on the really big screen, coffeehouse
musical evenings, happy hours, poetry readings, students' research presentations,
health and wellness workshops, teas with campus and community figures,
and service opportunities such as blood drives. It hosts activities organized
by student groups and departments, including cultural festivals, movies,
lectures, receptions, and conferences. Activities are publicized in campus
publications, in McDougal Notes calendar, on the website, and via email
lists. Find out what’s going on at your Center today! Lisa Brandes,
Director, Graduate Student Life, 123 HGS, 432-2583.
5.1.4 Graduate Career Services (GCS)
Graduate Career Services was established to guide and educate graduate
students about academic and non-academic career opportunities and job
search strategies. The office offers programs such as professional career
development workshops, seminars, resume/CV reviews, individual counseling,
on-campus interviews, dossier service and current job listings. Victoria
Blodgett, 122 HGS, 432-7375 .
5.1.5 The Office of Teacher Preparation
The Office of Teaching Fellow Preparation and Development provides a
wide variety of services and resources for graduate student teachers at
Yale. In addition to coordinating teacher training and teaching resources
in the graduate school, the office serves to facilitate departmental and
faculty involvement in the development of Yale’s Teaching Fellows.
Contact Judith Hackman, Director, 432-7702, 123 HGS.
5.2 Life in the Department
The Department of Computer Science at Yale is a stimulating environment
in which new ideas, experimental designs, and concrete artifacts are plentiful.
In trying to shape the very nature of computer science, it is not enough
to ask why things are, nor to ask how things will be — but rather,
to ask how things should be now and in the future. How should computers
be used in our society, and why? How should we design software, algorithms,
new theories of computation? How should computer science be taught? What
should the legacy of our efforts be?
The Department runs a Colloquium Series in which distinguished researchers
from other universities are invited throughout the year to speak to a
general CS audience. Individual research groups also host talks for more
focused audiences.
5.3 Life About Town
Yale is the focal point for much of the intellectual and cultural life
of New Haven. Yale offers two symphony orchestras, a symphonic wind ensemble,
a jazz ensemble, the Yale Repertory Theater, the Yale Art Gallery, the
British Art Center, and more than a thousand informal concerts, recitals,
and theatrical productions each year. Many of these events are presented
by undergraduate members of Yale College; others are presented by the
Schools of Fine Art, Drama, and Music.
Beyond the campus is a small Yankee town of 124,000. Birthplace of the
cotton gin, the modern telephone exchange, and pizza, New Haven dates
back to 1638. In the midst of a busy urban center, several areas of the
city still retain the atmosphere of earlier days. Several clubs in the
area feature jazz and rock bands. Late-night coffee houses near campus
allow you to sit for hours over a cup of the best espresso south of Boston.
Nearby is a 24-hour bookstore, a haven for fantasy and alternative literature
enthusiasts. There are many movie theaters in the area, several featuring
art films and retrospective shows.
Indeed, New Haven has a rich cultural life independent of that provided
by the University. There is an excellent resident theater company, the
Long Wharf Theatre, which produces plays from the standard repertoire
and one or two new works each season. The historic Shubert Theater and
the Palace present a wide selection of musical theater and drama. New
Haven also has its own professional symphony orchestra, chamber ensembles,
and a small ballet company. The town is also host of the widely acclaimed
International Festival of Arts and Ideas. Every June, world-class theater,
film, and dance productions, art and photography exhibits, panel discussions
and poetry readings, and many musical events turn the city into a cultural
and intellectual Mecca.
New Haven boasts a wide variety of culinary establishments, from the mundane
to the exotic. Available at just about any hour is the “sub”
sandwich and pizza, but a variety of other fare is also available at restaurants
within walking distance of the central campus: Italian, Chinese, Mexican,
Japanese, Thai, Indian, Cuban, and “natural".
For outdoor and sports enthusiasts, New Haven boasts professional hockey
and baseball teams, the Connecticut Tennis Center (host of the annual
Pilot Pen Tennis Tournament), and over 800 acres of beautiful trails and
fields at nearby East and West Rock Parks for jogging and biking enjoyment.
Yale’s famous Payne Whitney Gymnasium is open to students at no
charge during the academic year and for a nominal fee in the summer. Students
also have the opportunity to participate in numerous intramural sports
activities during the year as well as individual sports activities such
as golf, tennis, and figure skating. Sailing, rowing, and canoeing are
also available at Yale facilities in nearby towns.
And of course New Haven, Connecticut is part of New England, and is thus
in proximity to all of New England’s great resources; from its quaint
towns, beautiful beaches and seaports to its mountain peaks and lakes
for hiking, swimming, skiing, and mountaineering. It is also easy to reach
the big city experience: New Haven is only 75 miles from New York and
100 miles from Boston, and both are connected by frequent and convenient
train service.
6. Graduate Admissions and Financial Aid
6.1 Admissions Procedures
Students are admitted for entrance in the Fall term only. An applicant
should have strong preparation in mathematics, engineering, or science.
He or she should be competent in programming but needs no computer science
beyond the basic level. The Graduate Record Examination Aptitude Test
and some pertinent Advanced Achievement Tests are required (GRE General
and Subject).
Application for admission in the Fall of 2012 should begin in the Fall
of 2011. Forms may be obtained from:
http://www.yale.edu/graduateschool/admissions
Contact Information for the Graduate School is:
Graduate School Admissions
Yale University
117 Hall of Graduate Studies
320 York Street
New Haven, Connecticut 06511
Telephone: 203.432.2771
An application to the Graduate School is an online process only.
Note that the Graduate School does not accept faxed copies of letters
of recommendations, transcripts or other supplemental material.
Prospective students can obtain further Information by sending email
to
graduate.admissions@yale.edu
The deadline for completed applications, including all letters of recommendation
and test scores, is January 2, 2012.
Applicants will be notified of action concerning admission as soon as
the decision has been made, generally between March 15 and April 1. Those
who are undergraduates at the time of admission must present evidence
of having satisfactorily completed the Bachelor’s degree or its
equivalent in order to register. Those who are in graduate school must
present transcripts giving evidence of satisfactory completion of the
current year’s work prior to registration.
There is a non-refundable application fee of $100. Applicants from countries
under exchange restrictions should seek the help of their state banks
or of friends already in the United States for payment of this fee.
Applicants should arrange to take the GRE’s no later than October
testing.The results of later testing are usually not available before
admissions decisions are made. Remember that ETS will report scores only
by mail and only at the written request of the student. Address inquiries
to:
GRE-ETS
P.O. Box 6000
Princeton, NJ 08541-7670
609-771-7650
www.ets.org
Except by prearrangement with the Dean’s office, foreign applicants
whose native language is not English must present evidence of proficiency
in English by satisfactorily completing the Test of English as a Foreign
Language, administered in foreign countries by the Educational Testing
Service. TOEFL scores must be received by December 15th. Address inquiries
to:
TOEFL/TSE Services - ETS GRE-ETS
P.O. Box 6000
Princeton, NJ 08541-7670
609-771-7650
www.ets.org
www.toefl.org
6.2 Financial Aid Policy
The Department tries to find financial support for every student
who needs it, for at least the first four years of study. During the first
year, support is usually provided by a University Fellowship.
After the first year, students often receive research assistantships in
their field of specialization or other forms of support. These may also
be supplemented by teaching fellowships. The standard teaching fellowship
in this department is at the level of a Teaching Fellow 2 and requires
approximately 10 hours of work per week. Advanced students are sometimes
supported through a combination of a University Fellowship and a teaching
fellowship.
Only in exceptional cases is financial aid available after the fourth
year. However, the lack of support is mitigated by the fact that a nominal
“Continuous Registration Fee” (currently $680.00 per term)
replaces the tuition requirement after the fourth year. (See the Graduate
School “Programs and Policies” book for more information on
the tuition policy.)
Applicants seeking financial aid must complete the forms included in the
application packet sent out by the Graduate School.
7. Graduate Courses
Prerequisites that are part of the core of the undergraduate
major are not listed. If you are not sure that your background is adequate,
please speak to the instructor.
CPSC 521a Compilers and Interpreters.
(Not taught in 2011-2012)
Compiler organization and implementation: lexical analysis, formal syntax
specification, parsing techniques, execution environment, storage management,
code generation and optimization, procedure linkage, and address binding.
The effect of language-design decisions on compiler construction.
CPSC 522b Operating Systems.
(Not taught in 2011-2012)
The design and implementation of operating systems. Topics include synchronization,
deadlock, process management, storage management, file systems, security,
protection, and networking.
CPSC 524b Parallel Programming Techniques, Andrew Sherman
T TH 2:30-3:45
Practical introduction to parallel programming, emphasizing techniques
and algorithms suitable for scientific and engineering computations. Aspects
of processor and machine architecture. Techniques such as multithreading,
message passing, and data parallel computing using graphics processing
units. Performance measurement, tuning, and debugging of parallel programs.
Parallel file systems and I/O. (Not taught every year.)
CPSC 526a Building Decentralized Systems.
(Not taught in 2011-2012)
An exploration of the challenges and techniques for building decentralized
computing systems, in which many networked computers need to cooperate
reliably despite failures and without assuming centralized management.Topics
include: decentralized storage systems, mobile and remote execution, hosting
untrusted code, [byzantine] fault tolerance, naming, capabilities, information
flow control, distributed shared memory, distributed hash tables, content
distribution, practical uses of cryptography. This course is programming-intensive.
CPSC 527a Object-oriented Programming. Michael Fischer
TTH 2:30-3:45
Object-oriented programming as a means to efficient, reliable, modular,
reusable code. Use of classes, derivation, templates, name-hiding, exceptions,
polymorphic functions, and other features of C++.
CPSC 528b Language-Based Security.
(Not taught in 2011-2012)
Basic design and implementation of language-based approaches for increasing
the security and reliability of systems software. Topics include proof-carrying
code; certifying compilation; typed assembly languages; runtime checking
and monitoring; high-confidence embedded systems and drivers; and language
support for verification of safety and liveness properties.
CPSC 530a Formal Semantics, Zhong Shao
MW 1:00-2:15
Introduction to formal approaches to programming language design and implementation.
Topics include the lambda-calculus, type theory, denotational semantics,
type-directed compilation, higher-order modules, and application of formal
methods to systems software and Internet programming. (Not taught every
year.)
CPSC 531a Computer Music – Algorithmic and Heuristic Composition
(Not taught in 2011-2012)
Study of the theoretical and practical fundamentals of computer-generated
music, with a focus on high-level representations of music, algorithmic
and heuristic composition, and programming languages for computer
music generation. Theoretical concepts are supplemented with pragmatic
issues expressed in a high-level programming language. (Taught in alternate
years.)
CPSC 532b Computer Music – Sound Representation and Synthesis,
Paul Hudak
MW 2:30-3:45
Study of the theoretical and practical fundamentals of computer-generated
music, with a focus on low-level sound representation, acoustics and sound
synthesis, scales and tuning systems, and programming languages for computer
music generation. Theoretical concepts are supplemented with pragmatic
issues expressed in a high-level programming language. (Taught in alternate
years)
CPSC 533b Computer Networks, Richard Yang
TTH 1:00-2:15
An introduction to the design, implementation, analysis, and evaluation
of computer networks and their protocols. Topics include layered network
architectures, applications, transport, congestion, routing, data link
protocols, local area networks, performance analysis, multimedia networking,
network security, and network management. Emphasis on protocols used in
the Internet. (Taught in alternate years.)
CPSC 534b Mobile Computing and Wireless Networking.
(Not taught in 2011-2012)
An introduction to the principles of mobile computing and its enabling
technologies. Topics include principles of mobile computing; wireless
systems; information management; location-independent/dependent computing
models; disconnected and weakly connected operation models; human-computer
interactions; mobile applications and services; security; power management;
and sensor networks. (Taught in alternate years.)
CPSC 535b Internet-scale Applications.
(Not taught in 2011-2012)
An introduction to the design and implementation of Internet-scale applications
and services. Topics include: service-oriented software design; cloud
computing paradigms; infrastructure scalability and reliability; adaptive,
open clients; protocol specification; performance modeling; debugging
and diagnosis; and deployment and licensing. (Not taught every year.)
CPSC 536a Networked Embedded Systems and Sensor Networks, Andreas Savvides
(Not taught in 2011-2012)
Introduction to the fundamental concepts of networked embedded systems
and wireless sensor networks, presenting a cross-disciplinary approach
to the design and implementation of smart wireless embedded systems. Topics
include embedded systems programming concepts; low-power and power-aware
design; radio technologies; communication protocols for ubiquitous computing
systems; and mathematical foundations of sensor behavior. Laboratory work
includes programming assignments on low-power wireless devices.
CPSC 537a Introduction to Databases, Avi Silberschatz
MW 2:30-3:45
An introduction to database systems. Data modeling. The relational model
and the SQL query language. Relational database design, integrity constraints,
functional dependencies, and normal forms. Object-oriented databases.
Database data structures: files, B-trees, hash indexes.
CPSC538b Database System Implementation and Architectures, Daniel Abadi
MW 2:30-3:45
A study of systems programming techniques, with a focus on database systems.
Half the course is spent studying the design of a traditional DBMS, supplemented
by a hands-on exercise where students build various components (e.g.,
a catalog-manager, a buffer-manager, and a query execution engine) of
a DBMS prototype. The other half is spent on non-traditional architectures
(parallel databases, data warehouses, stream databases, Web databases).
CPSC 540b Numerical Computation I, Vladimir Rokhlin
TTH 1:00-2:15
Algorithms for numerical problems in the physical, biological, and social
sciences: solution of linear and nonlinear systems of equations, interpolation
and approximation of functions, numerical differentiation and integration,
optimization.
CPSC 545a Introduction to Data Mining, Vladimir Rokhlin
MW 1:00-2:15
A study of algorithms and systems that allow computers to find patterns
and regularities in databases, to perform prediction and forecasting,
and to improve their performance generally through interaction with data.
CPSC 555a/ECON 563a Economics and Computation, Joan Feigenbaum
T TH 2:30-3:45
A mathematically rigorous investigation of the interplay of economic theory
and CS with an emphasis on the relationship of incentive-compatibility
and algorithmic efficiency. Particular attention will be paid to the formulation
and solution of mechanism-design problems that are relevant to data networking
and Internet-based commerce. (Not taught every year).
CPSC 557a Sensitive Information in a Wired World, Joan Feigenbaum
T TH 1:00-2:15
Issues of ownership, control, privacy, and accuracy of the huge amount
of sensitive information about people and organizations that is collected,
stored, and used by today's ubiquitous information systems. Readings consist
of research papers that explore both the power and the limitations of
existing privacy-enhancing technologies such as encryption and trusted
platforms. (Not taught every year.) Prerequisites: After or concurrently
CPSC 365 and 467.
CPSC 561b Foundations of Cryptography.
(Not taught in 2011-2012)
Foundations of modern cryptography and their application to computer and
network security. Topics include randomized models of computation, indistinguishability,
computationally hard problems, one-way and trapdoor functions, pseudorandom
generators, zero-knowledge, secure computation, and probabilistic proofs.
CPSC 562a /AMTH 562a Graphs and Networks.
(Not taught in 2011-2012)
A mathematical examination of graphs and their applications in the sciences.
Families of graphs include social networks, small-world graphs, Internet
graphs, planar graphs, well-shaped meshes, power-law graphs, and classic
random graphs. Phenomena include connectivity, clustering, communication,
ranking, and iterative processes.
CPSC 563b Introduction to Machine Learning.
(Not taught in 2011-2012)
Paradigms and algorithms for learning classification rules and more complex
behaviors from examples and other kinds of data. Topics may include version
spaces, decision trees, artificial neural networks, Bayesian networks,
instance-based learning, genetic algorithms, reinforcement learning, inductive
logic programming, the MDL principle, the PAC model, VC dimension, sample
bounds, boosting, support vector machines, queries, grammatical inference,
and transductive and inductive inference.
CPSC 565a Theory of Distributed Systems, James Aspnes
M WF 11:35-12:25
Models of asynchronous distributed computing systems. Fundamental concepts
of concurrency and synchronization, reliability, topological and geometric
constraints, time and space complexity, and distributed algorithms. (Taught
in alternate years.)
CPSC 567b Cryptography and Computer Security, Michael Fischer
MW 1:00-2:15
A survey of such private and public key cryptographic techniques as DES,
RSA, and zero-knowledge proofs, and their application to problems of maintaining
privacy and security in computer networks. Focus on technology, with consideration
of such societal issues as balancing individual privacy concerns against
the needs of law enforcement, vulnerability of societal institutions to
electronic attack, export regulations and international competitiveness,
and development of secure information systems.
CPSC 568a Computational Complexity.
(Not taught in 2011-2012)
Introduction to the theory of computational complexity. Basic complexity
classes, including Polynomial Time, Nondeterministic Polynomial Time,
Probabilistic Polynomial Time, Polynomial Space, Logarithmic Space, and
Nondeterministic Logarithmic Space. The roles of reductions, completeness,
randomness, and interaction in the formal study of computation.
CPSC 569b Randomized Algorithms.
(Not taught in 2011-2012)
Beginning with an introduction to tools from probability theory including
some inequalities like Chernoff bounds, the course will cover randomized
algorithms from several areas: graph algorithms, algorithms in algebra,
approximate counting, probabilistically checkable proofs, and matrix algorithms.
(Taught in alternative years.)
CPSC 570a Artificial Intelligence. Drew McDermott
MWF 10:30 – 11:20
An introduction to artificial intelligence research, focusing on reasoning
and perception. Topics include knowledge representation, predicate calculus,
temporal reasoning, vision, robotics, planning, and learning.
CPSC 572b Advanced Artificial Intelligence. Drew McDermott
MWF 11:35 – 12:35
Automated Planning, the problem of finding, for some sort of agent acting
in some sort of environment, structures of actions and other commitments
to achieve some goal and/or optimize some objective function while possibly
avoiding violating constraints. Topics include representations for classical
planning; complexity of classical planning; state-space planning; plan-space
planning; planning-graph techniques; propositional satisfiability techniques;
constraint satisfaction techniques; heuristics in
planning; space applications; and planning for manufacturability analysis.
(Not taught every year).
CPSC 573b Intelligent Robotics. Brian Scassellati
MWF 10:30-11:20
An introduction to the construction of intelligent, autonomous systems.
Sensory-motor coordination and task-based perception. Implementation techniques
for behavior selection and arbitration, including behavior-based design,
evolutionary design, dynamical systems, and hybrid deliverative-reactive
systems. Situated learned and adaptive behavior.
CPSC 575a Computational Vision and Biological Perception.
MW 2:30-3:45 Steven Zucker
An overview of computational vision with a biological emphasis. Suitable
as an introduction to biological perception for computer science and engineering
students, as well as an introduction to computational vision for mathematics,
psychology, and physiology students.
CPSC 578b Computer Graphics, Holly Rushmeier
MW 1:00-2:15
An introduction to the basic concepts of two- and three-dimensional computer
graphics. Topics include affine and projective transformations, clipping
and windowing, visual perception, scene modeling and animation, algorithms
for visible surface determination, reflection models, illumination algorithms,
and color theory. Assumes solid C or C++ programming skills and a basic
knowledge of calculus and linear algebra.
CPSC 579a Advanced Topics in Computer Graphics. Julie Dorsey
T TH 1:00-2:15
An in-depth study of advanced algorithms and systems for rendering, modeling,
and animation in computer graphics. Topics vary and may include reflectance
modeling, global illumination, subdivision surfaces, NURBS, physically-based
fluids systems, and character animation. (Not taught every year).
CPSC 662a/AMTH561a Spectral Graph Theory.
(Not taught in 2011-2012)
An applied approach to Spectral Graph Theory. The combinatorial meaning
of the eigenvalues and eigenvectors of matrices associated with graphs.
Applications to optimization, numerical linear algebra, error-correcting
codes, and testing graph isomorphism. (Not taught every year.)
CPSC 690a or b Independent Project By arrangement with Faculty
Individual research for students in the PhD program. Requires a faculty
supervisor and the permission of the director of graduate studies.
CPSC 691a or b Independent Project By arrangement with Faculty
Continuation of CPSC 690b or a.
CPSC 692a or b Independent Project By arrangement with Faculty
Individual research for students in the MS program. Requires a faculty
supervisor and the permission of the director of graduate studies.
CPSC752b Bioinformatics: Practical Application of Simulation and
Data Mining. Mark Gerstein
MW 1:00-2:15
Bioinformatics encompasses the computational analysis of gene sequences,
macromolecular structures and functional genomics data on a large scale.
It represents a major practical application for modern techniques in data
mining and simulation. Specific topics to be covered include sequence
alignment, large-scale processing next-generation sequencing data, comparative
genomics, phylogenetics, biological database design, geometric analysis
of protein structure, molecular-dynamics simulation, biological networks,
normalization of micro array data, mining of functional genomics data
sets, and machine learning approaches for data integration.
CPSC 820a Directed Readings in Programming Languages and Systems By arrangement
with Faculty
CPSC 840a Directed Readings in Numerical Analysis By arrangement with
Faculty
CPSC 860a Directed Readings in Theory By arrangement with Faculty
CPSC 870a Directed Readings in Artificial Intelligence
By arrangement with Faculty
CPSC 991/ MATH 991 Ethical Conduct of Research Igor Frenkel
Related Courses in Other Departments
ENAS 525a Optimization I.
ENAS 530a Optimization Techniques
ENAS 563a Fault-Tolerant Computer Systems
ENAS 875a Introduction to VLSI Systems Design
ENAS 912a Biomedical Image Processing and Analysis
ENAS 944a Digital Communication Systems
PHIL 567a Mathematical Logic I
PHIL 568b Mathematical Logic II
STAT 541a Probability Theory
STAT 542b Theory of Statistics
STAT 551b Stochastic Processes
STAT 664B//ENAS954b Information Theory
STAT 665b Data Mining and Machine Learning
8. Personnel
8.1 Advanced Students
Amittai Aviram
RESEARCH AREA: Systems/Deterministic Parallelism
Justin Hart
RESEARCH AREA: Robotic Models of Self
Elizabeth Kim
RESEARCH AREA: Human-robot interaction for social skills therapy in autism,
and discourse
Daniel Leyzberg
RESEARCH AREA: Inferring Skill Competency In Human-Robot Interaction
Patrick Paczkowski
RESEARCH AREA: Sketching Architectural Designs in Context
Nicholas Ruozzi
RESEARCH AREA: Graphical Models and Message Passing Algorithms
Antonios Stampoulis
RESEARCH AREA: Programming Languages and Theorem Proving
Xueyuan Su
RESEARCH AREA: Algorithms for Large Scale Cloud Storage and Computing
Alexander Vaynberg
RESEARCH AREA: Abstraction Methods for Static Software Verification
Andreas Voellmy
RESEARCH AREA: Systems/Programming Languages
Hongzhi Wu
RESEARCH AREA: Computer Graphics
Ye Wang
RESEARCH AREA: Quality of Service as a Service
8.2 Recent Graduates
Richard Alimi, Software Engineer, Google
Thesis: A Dual-System Approach to Realistic Evaluation of
Large-Scale Networked Systems, 2010
Cristopher Crick, Postdoctoral Research Associate, Brown
University
Thesis: Intention from Motion, 2009
Samuel Daitch, Software Engineer, Google
Thesis: Efficient Graph-Based Algorithms for Linear
Equations, Network Flows, and Machine Learning, 2009
Ramzi Dakdouk, Software Engineer, Google
Thesis: Theory and Application of Extractable Functions, 2009
Pavel Dimitrov, Research Specialist, Exxon Mobil Upstream
Thesis: Three Principles for Plant Geometry: How
Vein Pattern Formation in Leaves Informs Plant
Growth, 2008
Jiang Du, Associate, J.P. Morgan
Thesis: Integrated Analysis of Partial Sampling Techniques
In Bioinformatics, 2010
Rodrigo Barbato Ferriero, Director of Technology, Self Employed
Thesis: Memory Consistency and Program Verification, 2010
Aaron Johnson, Post Doctoral Researcher, University of Texas
At Austin
Thesis: Design and Analysis of Efficient Anonymous-
Communication Protocols, 2009
Edo Liberty, Post-Doc Fellow, Yale University
Thesis: Accelerated Dense Random Projections, 2009
Hai Liu, Research Scientist, Intel
Thesis: The Theory and Practice of Causal
Commutative Arrows, 2011
Jianye Lu, Program Manager, Microsoft
Thesis: Studies in Texture Generation of Weathered
Appearance from Captured Data, 2009
Lev Reyzin, Postdoctoral Fellow, Georgia Institute of Technology
Thesis: Active Learning of Interaction Networks, 2009
Felipe Saint-Jean, CTO, Mobitelio
Thesis: Implementation and Evaluation of Privacy-Preserving Protocols,
2010
Jeffrey Sarnat,
Thesis: Syntactic Finitism in the Metatheory of Programming
Languages, 2010
Nikhil Srivastava, Post Doc, the Institute for Advanced Study
Thesis: Spectral Scarification and Restricted Invertibility
2010
Hao Wang, Software Engineer, Google
Thesis: Efficient and Robust Traffic Engineering in a Dynamic Environment,
2009
Yinghua Wu, Strategist, Morgan Stanley
Thesis: Fast Construction Algorithms for Overlay Networks, 2009
Haiyong Xie, Professor, University of Science & Technology, China
Thesis: Explicit Communications for Cooperative
Internet Traffic Control, 2009
Chen Xu, Senior Member of Technical Staff, Oracle Inc.
Thesis: Acquiring the Shape and Appearance of
Physical Scenes, 2011
Songhua Xu, Post Doctoral Associate, Yale University
Thesis: A New Biomedical Image Search and Visual
Literature Navigation System, 2010
Yitong Yin, Assistant Professor, Nanjing University
Thesis: Hashing, Contention, and Cell-Probe Proofs, 2009
Yuk-Lap Yip, Post-doc, Yale University
Thesis: Computational Reconstruction of Biological
Networks, 2009
9. Graduate School Calendar
Schedule of Academic Dates and Deadlines 2011–2012
Fall Term 2011
Aug 22 New student orientation week begins
Aug 23 Oral Performance Assessment for international
Students in Ph.D. programs.
Aug 25 Matriculation ceremony.
Aug 26 Fall-term On Line Course Selection (OCS) begins.
Aug 29 Orientation for all new Teaching Fellows.
Aug 31 Fall-term classes begin, 8:20 a.m.
Sept 2 Final day to pick up registration materials from
Academic departments.
Sept 5 Labor Day. Administrative offices closed. Classes meet
Sept 9 Final day to apply for a fall-term personal
leave of absence.
The entire fall-term tuition charge or continuous
registration fee (CRF) will be canceled for students
who withdraw from the Graduate School on or
before this date or who are granted a leave of
absence effective on or before this date.
Sept 14 Fall-term On Line Course Selection (OCS) ends.
Final day for registration. A fee of $25 is assessed
for course schedules accepted after this date.
Sept 16 Deadline for students to notify department of the intention to
submit a dissertation for conferral of the Ph.D. in December
Sept 23 One-half of the fall-term full-tuition charge will be
canceled for students who withdraw from the
Graduate School on or before this date or who are
granted a medical leave of absence effective on or
before this date (The CRF is not prorated.)
Oct 3 Final date for the faculty to submit grades to replace
Temporary Incompletes (TI’s) awarded during the
previous academic year.
Due date for dissertations to be considered by the
Degree Committees for award of the Ph.D. in
December.
Final day to file petitions for degrees to be awarded
in December.
Oct 21 Midterm.
One-quarter of the fall-term tuition charge will be
canceled for students who withdraw from the
Graduate School on or before this date or who are
granted a medical leave of absence effective on or
before this date. The CRF is not prorated.
Teaching appointments will not appear on the
transcripts of students who withdraw from the
assignment on or before this date.
Oct 28 Final day to change enrollment in a fall-term course
from Credit to Audit or from Audit to Credit.
Final day to withdraw from a fall-term course.
Oct 31 Readers’ Reports are due for dissertations to be
considered by the Degree Committees for award
of the Ph.D. in December.
Nov 4 Departmental recommendations are due for
candidates for December degrees.
Final day to withdraw a degree petition for degrees
to be awarded in December.
Nov 10 Oral Proficiency Assessment for international
students in degree programs.
Nov 18 Fall recess begins, 5:20 p.m.
Nov 28 Classes resume, 8:20 a.m.
Dec 1 Final day to submit petitions for extended
registration and Dissertation Completion
status for the spring term.
Dec 9 Classes end, 5:20 p.m.
Dec 17 Fall term ends; winter recess begins.
Spring Term, 2012
Jan 4 Final grades for fall-term courses due.
Jan 6 Oral Performance Assessment for international
students in Ph.D. programs.
Jan 9 Registration and spring ID validations begins.
Spring-term classes begin, 8:20 a.m.
Jan 10 Spring Teaching at Yale Day: orientation for all new Teaching
Fellows
Jan 13 Friday classes do not meet. Monday classes
meet instead.
Jan 16 Martin Luther King Jr. Day. Administrative
offices closed. Classes do not meet.
Jan 18 Final day to apply for a spring-term personal
leave of absence.
The entire spring-term tuition charge or CRF will be
canceled for students who withdraw from the
Graduate School on or before this date or who are
granted a leave of absence effective on or before
this date.
Jan 20 Registration and spring ID validation end. Spring-
term On Line Course Selection (OCS) ends.
Final day for registration. A fee of $25 is assessed for
forms accepted after this date.
Feb 3 One-half of the spring-term full-tuition charges
will be canceled for students who withdraw from the
Graduate School on or before this date or who are
granted a medical leave of absence effective on or
before this date. The CRF is not prorated.
Mar 1 Deadline for students to notify departments of the intention to
submit a dissertation for conferral of the Ph.D. in May
Mar 2 Midterm
Spring recess begins, 5:20 p.m.
One-quarter of the spring-term full-tuition charge
will be canceled for students who withdraw from the
Graduate School on or before this date or who are
granted a medical leave of absence effective on or
before this date. The CRF is not prorated.
Teaching appointments will not appear on the
transcripts of students who withdraw from the
assignment on or before this date.
Mar 15 Due date for dissertations to be considered by the
Degree Committees for award of the PhD in May.
Final day to file petitions for degrees to be
awarded in May.
Mar 19 Classes resume, 8:20 a.m.
Mar 26 Final day to change enrollment in a spring-term
course from Credit to Audit or from Audit to
Credit.
Final day to withdraw from a spring-term course.
Apr 6 Good Friday. Administrative offices closed. Classes meet
Apr 16 Readers’ Reports are due for dissertations to be
considered by the Degree Committees for award
of the Ph.D. in May.
Apr 19 Oral Proficiency Assessment for international
students in degree programs.
Apr 23 Monday classes do not meet. Friday classes meet instead.
Final day to withdraw a degree petition for
degrees to be awarded in May.
Apr 25 Departmental recommendations are due
for candidates for May degrees.
Apr 30 Classes end, 5:20 p.m.
Final day to submit Dissertation Progress
Reports.
May 1 Final day to submit petitions for extended
registration and Dissertation Completion
status for the subsequent academic year.
May 8 Spring term ends.
May 10 Oral Performance Assessment for international
students in Ph.D. programs.
May 11 Final grades for spring-term courses are due
for candidates for terminal M.A. and M.S.
degrees to be awarded at Commencement.
May 20 Graduate School Convocation.
May 21 University Commencement.
June 1 Final grades for spring-term courses and
Full-year courses are due.
Inquiries concerning the contents of this handbook may be referred to:
Director of Graduate Studies
Department of Computer Science
Yale University
P.O. Box 208285
New Haven, CT 06520-8285
Email: graduate.admissions@yale.edu
Phone: 203-432-1283
Last Revised: August 2011

|
 |