View the Computer Science Faculty .
The Computer Science Program
The Computer Science Department offers a Master of Science (M.S.) and a Doctor of Philosophy (Ph.D.) in computer science. In conjunction with faculty from the Mathematics Department, the department also offers a M.S. with a specialization in computational operations research. In addition, the department offers a M.S. and a Ph.D. with a specialization in computational science. The Department provides a strong research program with faculty actively engaged in research in the following areas: algorithms, computer systems and networking, high performance computing, modeling and simulation, programming languages and compilers, software verification, software engineering, graphics, and scientific computing.
Applicants must submit test results for the aptitude portion of the Graduate Record Examination and are encouraged (but not required) to submit results from a suitable subject area. Students from non-English speaking countries must submit TOEFL results.
Admission requirements for the M.S. and Ph.D. in computer science
Students seeking the M.S. or Ph.D. degrees in computer science are expected to have a background that includes the following:
- Mathematics: two calculus courses and one linear algebra course.
- Computer Science: two introductory programming courses (CS1 and CS2 in the standard computer science curriculum) and one course in each of discrete mathematics, data structures, algorithms, and computer organization.
Applicants lacking this background may be admitted provisionally into the M.S. program. In that case, the department will establish a suitable set of qualifying courses at the time of admission. To achieve regular status, provisionally accepted students must earn at least a B in each qualifying course. There is no provisional admission into the Ph.D. program.
Admission requirements for the M.S. with a specialization in Computational Operations Research
Students seeking the M.S. degree with a specialization in computational operations research are expected to have a background in mathematics, science or engineering and the ability to program in a high-level language. Students with insufficient background in computer science may be required to enroll in CSCI 241 and CSCI 303. Applicants lacking an appropriate background may be admitted provisionally.
Admission requirements for the M.S. with a specialization in Computational Science
Students seeking the M.S. degree with a specialization in computational science are expected to have a background in mathematics, science or engineering that includes the following:
- Mathematics: two calculus courses and one linear algebra course
- Computer Science: two introductory programming courses (CS1 and CS2 in the standard computer science curriculum).
Students with insufficient background in data structures, algorithms, computer organization, and systems programming may be required to enroll in CSCI 241, CSCI 303, CSCI 304, and CSCI 415.
Programs and Course Descriptions
Wherever a William and Mary course is specified as a prerequisite, it is understood that appropriate experience or an equivalent course, taken at another institution, may be substituted for the specified prerequisite. Each such substitution must be approved by the instructor of the course for which a substitution is appropriate. Generally, graduate students should also consult with their advisors to verify that they meet all course prerequisites.
Note that 500-level courses are cross-listed as 400-level courses in the undergraduate catalog and will thus be open to undergraduates. In these cross-listed courses, there will be higher expectations and additional requirements for graduate students. Students should consult with the instructor of such a course for further information.
Unless otherwise noted, all courses are graded using standard grading [A, B, C, D, F] scheme (See Grading and Academic Progress in the section entitled 'Graduate Regulations') and may not be repeated for credit (See Repeated Courses requirements in the section entitled 'A&S: Academic Regulations').
See the Open Course List to search for open seats in a term.