This textbook by John C. Martin enables students to grasp all the essential concepts of the theory of computation while ensuring the connection to practical computer science applications. This edition comes with around 750 unsolved and solved problems.
Summary Of The Book
The world of computation is much more than the 'input-processing-output' definition. And for all those students embarking on a deeper quest of computing knowledge, Introduction To Languages And The Theory Of Computation is a comprehensive guide to understand the basics of computing theory and languages. It highlights computability, abstract models of computation, automata, and formal languages. An understanding of these topics helps kindle more interesting questions in students, as an answer to which, the author brings out further material addressing various technologies that have continuing effects on real-world computation.
This induction to the basics of the languages and the theory of computation is done in 6 parts that consist of 14 chapters altogether. The book starts with two chapters on Mathematical Notation and Techniques and continues to cover various topics like regular languages, context free languages, pushdown automata and classifying complexity. It also provides an introduction to NP-completeness and computational complexity.
The gradual and gentle introduction to the required mathematical tools which prepares students for the other chapters is a highlight of the book.
The author uses the precision and clarity of the language of mathematics to help students absorb the subject better. He also provides a lot of examples and discussions to make it comprehensible for beginners and even those who are looking to brush up their skills.
All the chapters, like in the previous editions of the book, are explained in a very detailed manner and are organized well in keeping with the flow of the subject matter. Martin has made it easy for the instructors too by including an ample amount of exercises, both solved and unsolved. And, there are a number of challenging problems that demand keen understanding of the text's theoretic content. These aid the students in working with the fundamental concepts taught in the book.
About John C. Martin
John C. Martin is an American professor.
He is a Mathematics graduate from Rice University. He also holds a Ph.D and has taught at the University of Hawaii for 2 years. He currently works as an associate professor at the North Dakota State University where he teaches computer science.
PART 1: Mathematical Notation and Techniques
Chapter 1: Basic Mathematical Objects
Chapter 2: Mathematical Induction and Recursive Definitions
PART II: Regular Languages and Finite Automata
Chapter 3: Regular Expressions and Finite Automata
Chapter 4: Nondeterminism and Kleene?s Theorem
Chapter 5: Regular and Nonregular Languages
PART III: Context- Free Languages and Pushdown Automata
Chapter 6: Context-Free Grammars
Chapter 7: Pushdown Automata
Chapter 8: Context-Free and Non-Context- Free Languages
PART IV: Turning Machines and Their Languages
Chapter 9: Turning Machines
Chapter 10: Recursively Enumerable Languages
PART V: Unsolvable Problems and Computable Functions
Chapter 11: Unsolved Problems
Chapter 12: Computable Functions
PART VI: Introduction and Classifying Complexity
Chapter 13: Measuring and Classifying Complexity
Chapter 14: Tractable and Intractable Problems
Index of Notation
16 Dec, 2014
Worth every penny
20 Jun, 2017