Topics in Computation
CS 431 explores the mathematical foundation of computation. Through the study of automata of varying
complexity, students explore the bounds of what is and what is not computable. An emphasis is placed on
parsing and recognition of formal languages and grammars by various classes of automata, culminating with an
in-depth coverage of the Turing Machine.
Software Engineering Project
In CS 451 and 452, senior computer science students apply their knowledge to design, create, test, implement,
and maintain a large software system in a team-based environment. Each team’s final product is
tested using a variety of techniques, and students gain experience presenting their final system to their
peers and faculty at the annual Software
Expo. This course provides students excellent practical experience
and has been a tremendous asset to graduates as they encounter similar situations in their careers.