Breadth Requirement


Analysis of Algorithms is the core of Computer Science, which unites the many disparate subfields.  All doctoral students are expected to complete an acceptable lecture course (graduate or upper-level undergraduate) in Analysis of Algorithms, with grade B+ or higher, prior to entering the program.  However, we permit students who have not already satisfied the Analysis of Algorithms prerequisite prior to enrollment to take CSOR 4231 at Columbia as part of the Breadth Requirement.  The prerequisite must be completed by the end of the first year in the program. Note the only course offered here that satisfies this requirement is CSOR 4231.

[Instituted by full faculty vote April 23, 2014, modified by full faculty vote September 16, 2015.]


Every doctoral student must complete a distribution requirement consisting of four graduate lecture courses taken here at Columbia.   There must be one course each from the approved course lists for Theory, Systems, and AI & Applications, plus one additional course chosen from any of the three approved course lists.  In the case where a student takes the Analysis of Algorithms prerequisite here (CSOR 4231) rather than at another institution prior to enrollment, then it satisfies the Theory distribution requirement.  Doctoral students may complete any or all of the distribution courses via only the course’s cumulative final exam, if it has one, without formally enrolling in the course.  Instructors are not obligated to provide a cumulative final exam suitable for students not enrolled in the course.

Approved distribution courses:

Area Approved Courses
AI & Applications All COMS 47xx courses except { COMS 4721 and COMS 4776 }
All COMS 416x and COMS 417x
CBMF 4761 
Systems All COMS 41xx courses except { COMS 4121, COMS 416x and COMS 417x }
All COMS 48xx courses
COMS 4444
CSEE 4119, CSEE 4823, CSEE 4824, CSEE 4840, CSEE 4868
EECS 4340 
Theory All COMS 42xx courses
CSOR 4231 (not CSOR 4246)

*IMPORTANT NOTE: The only joint-CS courses permitted are as specified, all other distribution courses must be strictly “COMS”. Regardless of the course number, courses labeled “certificate only” or named “xxx for Data Science”, or similar, may not be applied to the doctoral breadth requirement.

[Instituted by full faculty vote, 4/4/14, to replace the core.  Effective in Fall 2014.  Students who first enrolled in Spring 2014 or earlier may substitute the old “core” for the distribution requirement. ]


In addition to the distribution requirement, all doctoral students must pass a total of six (6) elective graduate (4000 level or above) lecture courses, each three (3) or more points.  Most COMS or jointly offered with COMS (e.g., CSEE, , CSOR, EECS, MECS, STCS) courses are acceptable as CS electives.  At most two (2) electives may be outside CS, and only CS courses may be “imported” from another institution rather than taken at Columbia.  All electives require the advisor’s approval.

Some other departments at Columbia offer graduate courses on the same subjects as Computer Science courses.  Students cannot apply two courses on the same subject to the ten course requirement whether taken in the Computer Science Department or in another department.

Courses labeled “certificate only” or named “xxx for Data Science”, or similar, may not be applied to the breadth requirement.

[Revised by full faculty vote, 11/6/13. Effective immediately.]


The minimum passing grade for doctoral students in both distribution and elective courses is B+; the average grade across all ten courses must be A- or higher.  The PhD Pass threshold applies to both Columbia courses and imported electives. Courses may be retaken in a later semester, or a different course substituted, with the highest grades used to compute the average.


Satisfactory progress towards fulfilling the breadth requirement is defined as at least 2*N breadth course/exam passes, where N is the number of semesters enrolled thus far in the program, until the breadth requirement has been completed.

[Revised by full faculty vote on 12/18/08.]

A doctoral student who has not made satisfactory progress towards the breadth requirement is normally placed on probation at the end of the first and/or subsequent semesters that he/she “falls behind”. The student can be immediately dismissed from the program at the end of any such unsatisfactory semester unless the full faculty accepts a petition from the advisor for one semester’s grace.


Completion of the Analysis of Algorithms prerequisite together with all four distribution courses constitutes completion of “the qualifier”.

[Added by full faculty vote, September 16, 2015.]


Last updated on September 18, 2020.