This is a compulsory part of the curriculum for many Computer Science and Electrical Engineering students. The coure material typically covers DFA (Deterministic Finite Automata), NFA (Non-deterministic finite automata), Regular Expressions, Parsing, Context-Free-Grammars and Complexity classes. Understanding Automata is mandatory for someone who'd be interested in implementing programming languages (Compilers, Interpreters). Lexical Analysis, Parsing, developing the grammar: all of these stages in Compiler Design are based on principles of Automata. Here are a few popular book recommendations for Automata, in case you'd be interested in taking a look at them on Amazon.com.
Computer Science >