Automata and computability (Undergraduate texts in computer science, 1997)