**Overview**

The BA, with its broad, flexible requirements, is ideal for students who want to combine computer science with another discipline, such as mathematics, biology, chemistry, physics, government, psychology, linguistics, or philosophy.

**Program Requirements and Sequence**

In addition to completing the degree requirements for students of Georgetown College, students majoring in computer science must also complete the following requirements:

First Year

- Computer Science I and II (COSC-051, 052)
- Mathematical Methods for Computer Science (COSC-030). Students may elect to take instead Introduction to Proofs and Problem Solving (MATH-200) and Analysis I (MATH-310). MATH-200 must be taken as a pre-requisite to Data Structures (COSC-160).
- Calculus I (MATH-035)

Second Year

- Data Structures (COSC-160)
- Advanced Programming (COSC-150)
- One additional math elective from Calculus II (MATH-036), Multivariable Calculus (MATH-137), Introduction to Mathematical Statistics (MATH-140), Linear Algebra (MATH-150), Abstract Algebra (MATH-203), Number Theory (MATH-211), Numerical Analysis (MATH-212), Combinatorics (MATH-223), Graph Theory (MATH-224), Mathematical Statistics I (MATH-233), Mathematical Statistics II (MATH-234), Optimization (MATH-425) and Symbolic Logic (PHIL-350). Instead of Mathematical Statistics (MATH-140), students can take Probability and Statistics (MATH-040), Economic Statistics (ECON-121), Analysis of Political Data I (GOVT-201), Business Statistics (OPIM-173), or Quatitative Methods for International Politics (IPOL-320)

Third and Fourth Years

- One of the following:
- Computer Hardware Fundamentals (COSC-120)
- Programming Languages (COSC-252)
- Introduction to Algorithms (COSC-240)

- Four electives, which must be COSC courses numbered 100 or higher, except for two possibilities:
- An external elective is a course offered by another department for which credit is given as if it were a Computer Science elective. Such a course must contain significant computational content. Student who want such a course to count as an elective must get approval from the Computer Science Department's Director of Undergraduate Studies. Students are strongly advised to get approval before taking the course to be certain it will count as an elective. At most two external electives can count toward fulfilling the degree requirements.
- A single Computer Science course numbered in the range COSC-001 through COSC-016 may be counted as an elective. This is only allowed if the course was taken before any Computer Science course numbered COSC-051 or higher. Students should check with the Director of Undergraduate Studies to make sure the course will count as an elective.

- Optional: Senior Thesis

The senior thesis consists of enrolling in two semesters of the Senior Thesis Seminar (COSC-305 and COSC-306), attending sixteen department colloquia while enrolled in Senior Thesis Seminar, writing a substantial senior thesis, and presenting the thesis publicly. Students interested in this option must apply to individual faculty members. If accepted, the faculty member serves as thesis advisor and oversees the project. At this point, the student is eligible to enroll in COSC-305 in the fall semester or COSC-306 in the spring semester. The advisor and the student pick a thesis committee consisting of three faculty members, including the advisor. Once completed, the committee determines if the thesis is acceptable. The senior thesis must also be presented to the faculty. If approved by the thesis committee, the thesis is published as a technical report. Senior Thesis Research (COSC-303) is for directed research in support of the thesis project and may substitute for an elective.

BA students matriculating in Fall 2018 must take Introduction to Algorithms (COSC-240) instead of selecting among COSC-240, COSC-120, and COSC-252.

These students can take only one external elective, instead of two. They also can no longer count a course in the range COSC-001 through COSC-016 as an elective.

**Procedure for Undergraduate Curriculum-Related Requests**

Students who have requests relating to curricular matters should first consult with their departmental advisor before forwarding the request to the Director of Undergraduate Studies. Students without a departmental advisor submit their requests directly to the DUS. Such requests include course approvals, course substitutions, tutorial requests, proposals for study abroad, external electives, Consortium courses, and the like. Requests will be forwarded to the department's Curriculum Committee.

- A cover letter, which should include:
- A brief explanation of the request.
- The GU computer science course name(s) and number(s) for which credit is sought.

- External course information:
- University offering course
- Course name and number
- Course description
- Syllabus
- Relevant assignments (optional)