Introduction to Automata