CS313: Automata Theory and Formal Languages

The course introduces some fundamental concepts in automata theory and formal languages including grammar, finite automaton, regular expression, formal languages, pushdown automaton, and Turing machines; as well as the applications of these theories in programming languages; compiler design and construction; and software development in general.