Languages, machines, and classical computation is a new undergraduate course book on the conjoined subjects of Formal Languages and Automata & Computability and Complexity. By new, we mean more than its recent publication:
A vast selection of exercises is a crucial component to this course book, with exercises ranging from simple tasks to research projects and explorations of creative skills.
All the mathematical topics necessary to the satisfactory grasping of the contents discussed are provided in an introductory chapter, making of this a largely self-contained course book.
The present second edition corrects addenda and errata, has both improved and new figures, an additional algorithm, and redesigned exercises.