This course provides an introduction to the
theoretical issues of computer science. Computer science theory
includes the various models of finite state machines, both
deterministic, nondeterministic, and concepts of
decidability and formal language theory.
1. Produce proofs to substantiate selected computer science
topics
2. Perform computations with automata
3. Create automata for various languages and computations
4. Distinguish between regular and context-free languages
5. Construct grammars for programming language constructs
6. Describe properties of various languages classes
7. Distinguish between decidable and undecidable problems