CS 503: Foundations of Computer Science

Department
Credits 3.0
This is the study of mathematical foundations of computing. Topics include finite automata and regular languages, pushdown automata and context-free languages, Turing machines and decidability, and an introduction to computational complexity.
Prerequisites

Knowledge of discrete mathematics and algorithms at the undergraduate level, and some facility with reading and writing mathematical proofs