Courses of Study 2021-2022 
    May 20, 2024  
Courses of Study 2021-2022 [ARCHIVED CATALOG]

Computer Science

In the College of Arts and Sciences .


Course Offerings  

The Department of Computer Science is affiliated with both the College of Arts and Sciences and the College of Engineering. Students in either college may major in Computer Science.



E. Tardos, chair;  R. Agarwal, L. Alvisi, Y. Artzi, K. Bala, S. Belongie, A. Benson, T. Bhattacharjee, D. Bindel, K. Birman, R. Brachman, A. Bracy, C. Cardie, E. Chattopadhyay,  M. Clarkson, R. L. Constable, A. Damle, A. Davis, C. De Sa, K. Ellis, D. Estrin, D. Fan, N. Foster, C. Gomes, D. Greenberg, D. Gries, J. Halpern, B. Hariharan, H. Hirsh, J. Hsu, T. Joachims, A. Juels, J. Kleinberg,  R. Kleinberg, D. Kozen, V. Kuleshov, L. Lee, O. Legunsen, S. Marschner, G. Morrisett, C. Muhlberger, A. Myers, E. Pierson, R. Pass, T. Ristenpart, A. Rush, A. Sampson,  F. B. Schneider, B. Selman, E. Shi, V. Shmatikov, D. Shmoys, A. Silva, E.G. Sirer, N. Snavely, K. Sridharan, N. Stephens-Davidowitz, W. Sun, E. Tardos, I. Trummer, C. Van Loan, R. Van Renesse, Anke Van Zuylen, H. Weatherspoon, K. Weinberger, W. White, R. Zabih.

The Major:

CS majors take courses covering algorithms, data structures, logic, programming languages, systems, and theory. Electives include artificial intelligence, computer graphics, computer vision, databases, networks, and scientific computing. In addition to the major requirements outlined below, all students must meet the college graduation requirements .

Three 4000+ level computer science electives:

(CS 4090 CS 4997 , CS 4998 , and CS 4999  not allowed)

Three 3000+ level technical electives:

that are technical in nature, as determined by the major. (CS 4090 , CS 4997 , CS 4998  are not allowed.)

A three-course “external specialization” in a topic area other than computer science:

all numbered 3000-level or greater

An elective requirement consisting of a single 3+ credit course or a combination of courses coming to 3+ credits total:

Roughly speaking, all academic courses (inside or outside of CS) count. No PE courses, courses numbered 10xx, or ROTC courses below the 3000-level are allowed.

Additional Information:

All the major electives described above must be courses of at least 3 credits, with the exception of the CS project course, which is at least 2 credits, or as otherwise specified, and taken for a letter grade.

The program is broad and rigorous, but it is structured in a way that supports in-depth study of outside areas. Intelligent course selection can set the stage for graduate study and employment in any technical area and any professional area such as business, law, or medicine. With the advisor, the Computer Science major is expected to put together a coherent program of study that supports career objectives and is true to the aims of liberal education.


All potential affiliates are reviewed on a case-by-case basis relative to the following criteria:

  • a grade of C (not C-) or better in all CS courses and math courses
  • an average of 2.5 or better between CS 2110  or CS 2112 *and CS 2800  or CS 2802 .

*alternatively, an average of 2.5 or better in ECE 2400 /ENGRD 2140  and CS 2800 /CS 2802  and CS 3110 .

Courses used in the affiliation GPA computations may be repeated if the original course grade was below a C. The most recent grade will be used for all repeated courses. Qualifying courses must be taken at Cornell.


Departmental honors in Computer Science is granted to students who have maintained a cumulative GPA greater than or equal to 3.5 and completed a set of coherent courses and research activities that satisfy the following requirements.

The program consists of at least 9 credits beyond the minimum required for graduation, as follows:

  • at least one CS course (at least 3 credit hours) at or above the 5000 level with a grade of A– or better; no seminars.
    • Note: CS 5000-level courses that co-meet with a CS 4000-level course are not eligible for honors.
  • at least two 3-credit semesters of  CS 4999 - Independent Reading and Research  with a CS faculty member, with grades of A– or better each semester.

Latin Designations (appended to the degree), awarded by the field of Computer Science for all who qualify as stated above, are based on the final cumulative GPA, as follows:

  • cum laude, 3.50 or above
  • magna cum laude, 3.75 or above
  • summa cum laude, 4.00 or above


Honors courses may not be used to satisfy the CS 4000+ elective requirement, the CS project requirement, the technical electives, or the 3+ credit elective. See the CS undergraduate web site for more information on eligibility:

Computer Science Undergraduate Minor:

The Computer Science Minor is for students who anticipate that computer science will have a prominent role to play in their academic and professional career. It is designed for students in all majors to supplement their primary studies. Computer science is applicable to almost any major and career choice; from Communication, Psychology, and Law to Architecture, Music, and Engineering. The theoretical foundations of information and computation provide students with the appropriate skills for academic and professional careers. Completion of the CS minor, with a well-selected set of classes, can serve as good preparation for further study through our 2-semester CS Masters of Engineering (M.Eng) program or our 4-semester Master of Science program.

The CS Minor is available to Cornell undergraduate students except Computer Science majors and Information Science, Systems, and Technology (ISST) majors. Students should visit the Computer Science website for more information and to view minor requirements.

Game Design Undergraduate Minor:

The Game Design Minor is available for students with a strong interest in Game Design as an extension of their major studies and future academic and professional careers. The core of this Minor is CS 3152 - Introduction to Computer Game Architecture  or INFO 3152 - Introduction to Computer Game Design  and CS 4152 - Advanced Topics in Computer Game Architecture  or INFO 4152 - Advanced Topics in Computer Game Design  or CS 4154 - [Analytics-driven Game Design]  and four additional courses that can range from Graphics and Art, the Psychology of Gaming, and Human-Computer Interaction.

The Game Design Minor is available to all Cornell undergraduate students. Please visit visit the Computer Science website for the most up-to-date description of the minor and its requirements.