Foundations of Computer Science Track
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
| Course | Title |
| CS 35200 | Compilers: Principles and Practice |
| CS 38100 | Introduction to the Analysis of Algorithms |
All track requirements, regardless of department, must be completed with a grade of C or higher (effective Fall 2011).
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 |


