Courses of Study 2017-2018 
    
    Mar 29, 2024  
Courses of Study 2017-2018 [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. For details, visit our website at www.cs.cornell.edu/ugrad.

Faculty


F. B. Schneider, chair;  R. Agarwal, L. Alvisi, E. Andersen, Y. Artzi, G. Bailey, K. Bala, S. Belongie, D. Bindel, K. Birman, R. Brachman, A. Bracy, C. Cardie, M. Clarkson, R. L. Constable, D. Estrin, D. Fan, N. Foster, M. George, C. Gomes, D. Greenberg, D. Gries, J. Halpern, D. Hauagge, H.Hirsh, J. E. Hopcroft, D. Huttenlocher, T. Joachims, A. Juels, J. Kleinberg,  R. Kleinberg,  R. Knepper, D. Kozen, L. Lee,  S. Marschner, G. Morrisett, A. Myers, M. Naaman, R. Pass, T. Ristenpart, A. Sampson,  F. B. Schneider, B. Selman, E. Shi, V. Shmatikov, D. Shmoys, E.G. Sirer, N. Snavely, K. Sridharan, D. Steurer, E. Tardos, R. Tate, T. Teitelbaum, I. Trummer, C. Van Loan, 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. Requirements include:

Note:


CS 1114   and CS 1115  are honors-level substitutes for CS 1112  and CS 2112  is an honors level substitution for CS 2110 .

Three 4000+ level computer science electives:


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

Three 3000+ level courses:


(only one of ENGRD 2700  or MATH 2930  may be counted) that are technical in nature, as determined by the major.

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.

Additionally, students’ course selections must satisfy the requirements of at least one “vector” or CS-centric specialization, defined by the department. The set of vectors at the time of this writing include artificial intelligence, computational science and engineering, graphics, network science, programming languages, software engineering, systems/databases, theory, and a broad “Renaissance” vector. See www.cs.cornell.edu/undergrad for the requirements of each vector.

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.

Admission:


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

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.

Honors:


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.
  • 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

Note:


Honors courses may not be used to satisfy the CS 4000+ elective requirement, the CS project requirement, the technical electives, the 3+ credit elective, or a student’s first vector. See the CS undergraduate web site for more information on eligibility: www.cs.cornell.edu/undergrad.

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 students in the College of Arts and Sciences, CALS, AAP, Engineering, Hotel Administration, Human Ecology, and ILR. Students should visit www.cs.cornell.edu/undergrad for the most up-to-date description of the minor and its requirements.

Computing in the Arts Undergraduate Minor:


A minor in Computing in the Arts with an emphasis on computer science is available both to Computer Science majors and to students majoring in other subjects. For more information, see Computing in the Arts Undergraduate Minor .

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 students in the College of Arts and Sciences, CALS, AAP, Engineering, Hotel Administration, Human Ecology, and ILR. Students should visit www.cs.cornell.edu/undergrad for the most up-to-date description of the minor and its requirements.