These requirements are for students who matriculated prior to 2012. Current BS requirements can be found here.

Prerequisites:

COMPSCI 6 (or 6L or 6X) |
Introduction to Program Design & Analysis I (or equvalent) |

MATH 31 | Introductory Calculus I |

MATH 32 | Introductory Calculus II |

MATH 103 | Intermediate Calculus |

MATH 104 | Linear Algebra and Applications |

Major Requirements:

Core Courses:

COMPSCI 100 | Program Design and Analysis II |

COMPSCI 104 | Computer Organization and Programming |

COMPSCI 108 | Software Design and Implementation |

COMPSCI 110 | Introduction to Operating Systems |

COMPSCI 130 | Introduction to the Design and Analysis of Algorithms |

COMPSCI 140 | Mathematical Foundations of Computer Science |

COMPSCI 150 | Introduction to Numerical Methods and Analysis |

One of the following three combinations:

(1) | COMPSCI 102 | Discrete Math for Computer Science |

(2) | MATH 135 | Probability |

MATH 124 | Combinatorics | |

(3) | MATH 135 | Probability |

MATH 187 | Introduction to Mathematical Logic |

Three Electives:

One COMPSCI Elective |
100- or 200-level Computer Science course (not an independent study course) |

Two Electives | 100- or 200-level electives in Computer Science, Electrical Engineering, Mathematics, Statistics, or in a related area approved by the Director of Undergraduate Studies. |