The course covers topics on grammar, finite automaton,
regular expression, formal language, pushdown automaton, and Turing machine. These
topics form basic models of computation and are the foundation of many branches
of computer science like the compiler, software engineering, and concurrent
systems. The properties of these models and various techniques for analyzing
and comparing them will be studied and discussed by using both formalism and
examples. The course requires a strong background in the fundamentals of
discrete mathematics, data structures, and algorithms. Knowledge of programming languages, programming, and computer architecture will also be helpful.
- Teacher: Maria Besa Joy Ortuyo