Required Courses in Current Curriculum
Freshman year courses
- Introduction to Computing
- Introduction to Programming
- Understanding and Constructing Proofs
Sophomore year courses
- Control and Concurrency
- Modeling and Design
- Knowledge Representation and Programming
- Instruction Set Architecture and Machine-level Programming
Junior year courses
- Introduction to Automata
- Design and Analysis of Algorithms
- Programming Language Concepts
- Software Engineering