Skip Navigation

Computer Science

  • Program Overview

    Computer Science

    The Department of Computer Science offers an M.S. and a Ph.D. in Computer Science.

    The M.S. program in Computer Science is designed primarily to train students with professional goals in business, industry, or government, requiring a detailed knowledge of computer science concepts and applications. The program concentrates primarily on applied computer science, emphasizing software development, programming, computer systems, and applications. Each student is given the experience of working on a large-scale software or hardware development project involving analysis, design, evaluation, and implementation. Students in the M.S. program can obtain a Concentration in Data Science and Engineering while fulfilling the requirements for their M.S. degree.

    The Ph.D. program in Computer Science is for students interested in obtaining academic or research positions in colleges and universities or in government or commercial research laboratories. The program gives students a rigorous and thorough knowledge of a broad range of theoretical and practical research subject areas and develops the ability to recognize and pursue significant research in computer science. The first two years of graduate study are devoted to coursework. By the end of the second year the research phase of the student’s graduate career should be underway, with participation in advanced study and preliminary research work. The final years of graduate study are devoted to dissertation research.

    The primary areas of departmental research interests include, among others, theoretical computer science, algorithms, logic, concurrency, model checking, databases, languages, artificial intelligence, machine learning, computer vision, computer graphics, visualization, cyber-security, operating systems, networking, and computer architecture.

    Information in this Bulletin concerning the M.S. and the Ph.D. programs in Computer Science is an abbreviated version of the Graduate Program Handbook found at the Computer Science Department’s web site. Students must refer to the Handbook for further details and the up-­to­-date information. Additional information about the graduate program in Computer Science can be found on the department’s Web site at

    Computer Science Department

    Samir Das, New Computer Science Building 203G (631) 632-1807

    Graduate Program Director for M.S. and Ph.D. Programs in Computer Science
    CR Ramakrishnan, New Computer Science Building 233, (631) 632-8218 
    Michalis Polychronakis, New Computer Science Building 355, (631) 632-2463

    Graduate Program Admissions Administrators for M.S. and Ph.D. Programs in Computer Science
    Lourdes Hartwell, New Computer Science Building 139, Email Contact Preferred:
    Allison Katz, New Computer Science Building 203A, Email Contact Preferred:

    Degrees Awarded
    M.S. in Computer Science; Ph.D. in Computer Science


  • Admissions

    Admission to the M.S. and Ph.D. in Computer Science

    Admission to the M.S. and Ph.D. programs are handled separately by the departmental admissions committee. The requirements for admission to graduate study in computer science include:

    A. Bachelor's Degree: A bachelor’s degree, usually in a science or engineering discipline or in mathematics, is required. The transcript should show a grade average of at least B (3.0/4.0) in all undergraduate coursework, and in the science, mathematics, and engineering courses.

    B. Basic Mathematics: Two semesters of college-level calculus, plus a course in linear algebra. Also desirable is a course in either probability theory or probability and statistics.

    C. Minimal Background in Computer Science: As a measure of that background, the student must satisfy five of the following proficiency requirements:  The student must have at least undergraduate level proficiency in the core computer science areas. If the student does not have a degree in computer science, he/she must demonstrate this proficiency via junior/senior undergraduate level coursework or relevant job/project experience preferably in the following core computer science areas: discrete mathematics, theory of computing, algorithms, programming languages or compilers, computer organization/architecture and operating systems. If exposure is lacking in one or two of the above areas, similar level of exposure in the following areas may be acceptable instead: computer networks, artificial intelligence, databases, computer security or computer graphics. Note that mere programming experience is usually not considered sufficient.

    D. All applicants to the M.S. or Ph.D. program must submit Graduate Record Examination (GRE) scores for the general aptitude tests. Applicants are encouraged to submit GRE test scores for the advanced examination in Computer Science as well.

    E. Acceptance by the Computer Science Department and Graduate School.

    More information on the application process can be found on our Web site:

  • Degree Requirements

    Requirements for the M.S. Degree in Computer Science

    Students in the M.S. degree program may choose between three options, M.S. with thesis, M.S. with advanced project, and the M.S. with special project. The course requirements depend on the option chosen.

    A. Registration
    Students must register for at least one graduate credit in the semester in which the diploma is awarded.

    B. Language Requirement
    There is no foreign language requirement.

    C. Course Requirements
    Students are required to complete 31 graduate credits in the Computer Science Department. There are no specific courses required other than a thesis or project.  Students should complete at least one course in  3 of 4 breadth areas, each of which comprise of 5-6 graduate courses.  Breadth areas are described in the Graduate Student handbook, which is accessible from the CS graduate program website Students can take up to 4 credits of CSE 587 (at most two courses) to fill in any missing CS proficiency identified at the time of admission to the program.   A list of graduate courses is provided in the course compendium at the end of this section.

    D. Grade Point Average
    To be certified for graduation a cumulative graduate grade point average of 3.0/4.0 or better is required.

    E. Concentration in Data Science and Engineering
    Students in the M.S program can complete a concentration in Data Science and Engineering by taking a specific set of courses related to the study of Data Science, which also fulfill a part of the M.S. degree requirements.  The set of courses eligible for this concentration are described in the Graduate Student handbook, at  Students may request this concentration, if the requirements are met, at the time of graduation from the M.S. program.

    F. Advanced Project Option
    Students choosing the advanced project option are required to take the courses CSE 523/CSE 524, Laboratory in Computer Science. The two courses may not be taken in the same semester. These courses provide students with the experience of dealing with large-scale, computer-oriented problems such as those encountered in commercial, industrial, or research environments. Students taking CSE 523/CSE 524 may not use any CSE 599 (M.S. Thesis Research) credits toward their M.S. degree.

    G. Special Project Option
    Students choosing the special project option are required to take the courses CSE 522, Basic Project in Computer Science and one credit in research, teaching, or industrial experience that may be satisfied with CSE 698, CSE 596, Computer Science seminars (excluding CSE 600), Special Topics courses, or regular 3 credit technical Computer Science graduate courses. Students choosing this option may not use credits from CSE 523, CSE 524, or CSE 599 credits toward their M.S. degree.  Moreover, at most 6 credits from CSE Special Topics (CSE 590/591/592/593/594/595) and CSE 6XX-level courses may be used toward their M.S. degree.

    I. Thesis Option
    A student choosing the thesis option must select a project (or thesis) advisor by the end of the second semester in the program. The role of the advisor is to guide the student through the M.S. studies, formulate a project or thesis topic, and supervise the student towards completion of the assigned task. The thesis must be approved by a departmental faculty committee of no less than three members appointed by the graduate program director. At the discretion of the committee, the student may be required to present a seminar on the topic of his or her thesis. A student registers for CSE 599 when writing a thesis. No more than nine credits of this course can be applied towards the 31 credits required for the M.S. degree.

    H. Switching Between the M.S. and Ph.D. Programs
    An M.S. student who wishes to advance to the Ph.D. program must take the Qualifying Examination. Regular applications to the Ph.D. program will not be considered from current M.S. students. Please refer to the Graduate Program Handbook for further details.

    Requirements for the Ph.D. Degree in Computer Science

    A. Residence
    The student must complete two consecutive semesters of full-time graduate study. Full-time study is 12 credits per semester until 24 graduate credits have been earned. Students who have earned 24 graduate credits at another school may be assigned advanced status and are required to take only nine credits per semester for full-time status.

    B. Qualifying Examination
    Students must pass the written Qualifying Examination to demonstrate their ability to undertake the course of study leading to the Ph.D. degree. Qualifying examinations are given twice a year: in May (usually the week after the finals period) and in early January. Students must refer to the Web page at for further details and the up-to-date information on the qualifying examination. The following is a short summary of the contents of this examination.

    The exam consists of three parts, 3 hours each, based on undergraduate material as described below. Undergraduate Stony Brook courses covering that material are listed in parentheses. An appropriate way for students who have already taken an undergraduate course in a particular area to prepare for the exam is to take a graduate course in that area. Questions test not just routine knowledge but also the student’s ability to use that material in a creative way.

    Theory and Mathematics:

    Theory of Computation, Languages and Automata Analysis of Algorithms, and Logic. The examination is based on the following courses: CSE 303, CSE 371, CSE 213, and CSE 373.


    Programming Languages, Compilers, Databases, and Graphics. The examination is based on CSE 304, CSE 305, CSE 307, and CSE 328.


    Networks and Communications, Operating Systems, Computer Architecture, and Computer Organization. The examination is based on CSE 310, CSE 306, CSE 320, and CSE 220.

    The results of the written examination will be communicated to each student individually following a meeting of the faculty, which evaluates the results of the examination along with the student’s ability to do research and the likelihood of completing the program.

    C. Course Requirements
    In the first year, a student seeking the Ph.D. degree will normally register for a full-time load of courses selected in conjunction with an advisor in order to prepare for the Qualifying Examination. By the time of graduation, each student is required to accumulate at least 20 credits of full (regular lecture) courses, internship, special topics courses or seminars. At most five credits of seminars and internship can be included in the 20 credits required for graduation; generic courses such as CSE 593, CSE 587, CSE 600, CSE 698, and CSE 699 cannot be included. In addition, the following requirements should be noted:

    M.S.-specific courses: Students in the Ph.D. program may not enroll in CSE 523/CSE 524 or CSE 599. These courses are specific to the M.S. program.

    Ongoing research seminar: The student must register and complete two semesters of CSE 600. Credits earned in this course cannot be used towards the 20 credits required for the Ph.D. program.

    Internship, CSE 696: At most two credits of Internship in Research can be counted toward the 20 credits required for the Ph.D. program.

    Dissertation Research, CSE 699: The Dissertation Research course can be taken only by Ph.D. students who have been advanced to candidacy (have G5 status). Prior to the advancement, students conduct research and participate in projects by taking CSE 593: Independent study. G4 students can register for up to 9 credits of CSE 593 in any semester. G3 students can register for only up to 3 credits of CSE 593.

    Teaching requirement: University policy requires that all doctoral students participate in an appropriately structured teaching practicum. This can be CSE 698 in conjunction with a TA in the first year.

    D. Research Proficiency Examination (RPE)
    The purpose of the Research Proficiency Examination is to ascertain the breadth and depth of the student’s preparation to undertake a significant original research investigation.

    By the end of the third semester since admission into the Ph.D. program, an RPE Committee will have been formed for each student and an agreement reached on a research project. (M.S. students who were admitted to the Ph.D. program after passing the qualifying examination must form the RPE committee by the end of their first semester in the Ph.D. program.)

    By the end of the fourth semester (at the latest) the student will take the RPE.6 (M.S. students who switched to Ph.D. must take the RPE by the end of their second semester in the Ph.D. program.)

    Having passed both the qualifying examination and the RPE the student is advanced to candidacy. This status, called G5, is conferred by the Dean of the Graduate School upon recommendation of the Department. Note that unlike the change from G3 to G4, the change from G4 to G5 is not automatic—the student must request to be advanced to candidacy by notifying the Computer Science Graduate Secretary.

    Students must advance to candidacy at least one year before defending their dissertations. The graduate school requires G5 students to register for 9 credits, which can be research or other graduate courses relevant to their dissertation. Courses outside of the major require the approval of the dissertation advisor and Graduate Director. Failure to complete the research proficiency examination within the specified time frame and obtain the G5 status is considered evidence of unsatisfactory progress.

    E. Thesis Proposal Requirement
    After the student has completed the requirements in subsections C and D, and with the approval of the student’s research advisor, the student will present a thesis proposal. The purpose of the thesis proposal is to assess student’s progress towards the Ph.D. thesis. The proposal must be submitted to the student’s Thesis Committee within 18 months of the time the student had passed the research proficiency examination. Failure to fulfill this requirement by that time without a formal extension may be considered evidence of unsatisfactory progress toward the Ph.D. degree. The major requirements of the thesis proposal are as follows:

    (1) The student must be thoroughly familiar with the background and current status of the intended research area.

    (2) The student must have clear and well-defined plans for pursuing the research objectives.

    (3) The student must offer evidence of progress in achieving these objectives.

    The student will present the thesis proposal to the thesis committee in a seminar presentation. It is limited to members of the committee, invited computer science faculty, and invited graduate students. Faculty members are free to question the student on any topics they feel are in any way relevant to the student’s objectives and career preparation. Most questions, however, will be directed toward verifying the student’s grasp of the intended specialty in depth. The student will be expected to show complete familiarity with the current and past literature of this area.

    The findings of the committee will be communicated to the student as soon as possible and to the Graduate School within one week of the presentation of the proposal. If the committee finds the thesis proposal unsatisfactory, the student will submit an improved proposal, if such resubmission is approved by the Dean of the Graduate School.

    F. Dissertation
    An important requirement of the Ph.D. program is the completion of a dissertation, which must be an original scholarly investigation. The dissertation shall represent a significant contribution to the scientific literature, and its quality shall be compatible with the publication standards of appropriate reputable scholarly journals.

    G. Approval and Defense of Dissertation
    The dissertation must be orally defended before a dissertation examination committee, and the candidate must obtain approval of the dissertation from this committee. The oral defense of the dissertation is open to all interested faculty members and graduate students. The final draft of the dissertation must be submitted to the committee no later than three weeks prior to the date of the defense.

    H. Satisfactory Progress and Time Limit
    A student who does not meet the target dates for the Qualifying Examination, the Research Proficiency Examination, and the Thesis Proposal, or who does not make satisfactory progress toward completing thesis research may lose financial support. The candidate must satisfy all requirements for the Ph.D. degree within seven years after completing 24 credit hours of graduate courses in the Department of Computer Science at Stony Brook. In rare instances, the dean of the Graduate School will entertain a petition to extend this time limit, provided it bears the endorsement of the department’s graduate program director. A petition for extension must be submitted before the time limit has been exceeded. The dean or the department may require evidence that the student is still properly prepared for the completion of work.

    I.   Part Time Students
    Students admitted into the Ph.D. program for part time study are bound by all the rules set out henceforth. In particular, part time students should adhere to the schedule for the Qualifying Examination, Research Proficiency Examination, and Thesis Proposal, as explained in Sections 4.3.4, 4.3.5, and 4.3.6, unless a different schedule has been approved in writing by the Graduate Director.

    J. Obtaining an M.S. Degree on the Way to Ph.D.
    A Ph.D. student who has passed the Research Proficiency Examination can complete the requirements for an M.S. degree by satisfying the proficiency requirements and completing 31 credits of course work.

    Passing the qualifying examination is considered to have satisfied the proficiency requirements. (Another way to satisfy these requirements is, of course, to take the required courses.)

    At most 9 credits of seminars (excluding CSE 600), special topics courses, or CSE 593 (Independent study) can be included in the required 31 credits. A student who has switched from the M.S. program to the Ph.D. program can in addition use the previously earned credits of CSE 523/CSE 524 toward the aforesaid 9 credits. These 9 credits together with the RPE are considered to be equivalent to the Thesis Option in the M.S. program. The remaining 22 credits required for the M.S. degree must be satisfied by taking technical graduate courses in computer science (i.e., excluding courses such as CSE 523/CSE 524, CSE 587, CSE 593, CSE 596, CSE 599, CSE 696, CSE 698, CSE 699, seminars, and special topics).

  • Facilities

    Facilities of Computer Science Department

    The Computer Science Department is composed of a number of special interest labs (Visualization, Experimental Systems, Logic Modeling, Security Systems, File systems, Human Interface with Computers, Wireless Networking and Multimedia) connected by a multi-gigabyte backbone. Typical systems are PCs running FreeBSD, Linux, MS Windows, and Sun Sparc systems. There are numerous multiprocessor/large memory systems including a graphics cluster of Linux and MS Windows PC’s. General access labs provide Unix and MS Windows systems, and each office desktop is equipped with a workstation. The department maintains its own dial-up service and wireless network. The Stony Brook campus is connected to the Internet via multiple OC3 connections.

  • Faculty

    Faculty of Computer Science Department



  • Contact

    Computer Science Department

    Samir Das, New Computer Science Building 203G (631) 632-1807

    Graduate Program Director for M.S. and Ph.D. Programs in Computer Science
    CR Ramakrishnan, New Computer Science Building 233, (631) 632-8218 
    Michalis Polychronakis, New Computer Science Building 355, (631) 632-2463

    Graduate Program Admissions Administrators for M.S. and Ph.D. Programs in Computer Science
    Lourdes Hartwell, New Computer Science Building 139, Email Contact Preferred:
    Allison Katz, New Computer Science Building 203A, Email Contact Preferred:

    Degrees Awarded
    M.S. in Computer Science; Ph.D. in Computer Science