This course provides an introduction to the foundations of computer science through the study of abstract machines. In this course, computational models of increasing power are analyzed: finite automata, pushdown automata and Turing Machines. Repeated: No Prerequisite Course(s): CSCI 3302 and CSCI 3333