Foundations of Computer Science Track - Prior to Fall 2019
Objectives
The Foundations of Computer Science track gives students a broad education on foundational concepts, tools, and techniques underlying existing and future areas of computer science.
Required Courses
All track requirements, regardless of department, must be completed with a grade of C or higher.
| Course | Title |
|---|---|
| CS 35200 | Compilers: Principles and Practice |
| CS 38100 | Introduction to the Analysis of Algorithms |
Foundations of Computer Science Track Pre-requisite Flowchart (PDF)
Electives
Choose four courses from the following:
| Course | Title |
|---|---|
| CS 31400 | Numerical Methods |
| CS 33400 | Fundamentals of Computer Graphics |
| CS 35500 | Introduction to Cryptography |
| CS 44800 | Introduction to Relational Database Systems |
| CS 45600 | Programming Languages |
| CS 47100 | Introduction to Artificial Intelligence |
| CS 48300 | Introduction to the Theory of Computation |
| One elective computer course at the 300, 400, 500 level or an independent study course approved by the track chair. |
Last Updated: Jul 15, 2025 2:49 PM