Preface
Published online by Cambridge University Press: 05 June 2012
Summary
Goals of this book
This is a textbook for a second course on formal languages and automata theory.
Many undergraduates in computer science take a course entitled “Introduction to Theory of Computing,” in which they learn the basics of finite automata, pushdown automata, context-free grammars, and Turing machines. However, few students pursue advanced topics in these areas, in part because there is no really satisfactory textbook.
For almost 20 years I have been teaching such a second course for fourth-year undergraduate majors and graduate students in computer science at the University of Waterloo: CS 462/662, entitled “Formal Languages and Parsing.” For many years we used Hopcroft and Ullman's Introduction to Automata Theory, Languages, and Computation as the course text, a book that has proved very influential. (The reader will not have to look far to see its influence on the present book.)
In 2001, however, Hopcroft and Ullman released a second edition of their text that, in the words of one professor, “removed all the good parts.” In other words, their second edition is geared toward second- and third-year students, and omits nearly all the advanced topics suitable for fourth-year students and beginning graduate students.
Because the first edition of Hopcroft and Ullman's book is no longer easily available, and because I have been regularly supplementing their book with my own handwritten course notes, it occurred to me that it was a good time to write a textbook on advanced topics in formal languages.
- Type
- Chapter
- Information
- A Second Course in Formal Languages and Automata Theory , pp. ix - xiiPublisher: Cambridge University PressPrint publication year: 2008