Theoretical Computer Science
Introduces students to theoretical foundations of computer science including formal languages, compiler construction, machine models, semantics, computability, and complexity theory. Students learn to understand verifiability and ensure security, correctness, and stability of systems.