|
![]() |
|||
|
||||
OverviewFull Product DetailsAuthor: Ganesh GopalakrishnanPublisher: Taylor & Francis Ltd Imprint: CRC Press Weight: 1.140kg ISBN: 9781138552425ISBN 10: 1138552429 Pages: 348 Publication Date: 22 February 2019 Audience: College/higher education , Primary & secondary/elementary & high school , Tertiary & Higher Education Format: Hardback Publisher's Status: Active Availability: In Print ![]() This item will be ordered in for you from one of our suppliers. Upon receipt, we will promptly dispatch it out to you. For in store availability, please contact us. Table of ContentsI Foundations 1 What Machines Think 2 Defining Languages: Patterns in Sets of Strings 3 Kleene Star: Basic Method of defining Repetitious Patterns II Machines 4 Basics of DFAs 5 Designing DFA 6 Operations on DFA 7 Nondeterministic Finite Automata 8 Regular Expressions and NFA 9 NFA to RE conversion 10 Derivative-based Regular Expression Matching 11 Context-Free Languages and Grammars 12 Pushdown Automata 13 Turing Machines III Concepts 14 Interplay Between Formal Languages 15 Post Correspondence, and Other Undecidability Proofs 16 NP-Completeness 17 Binary Decision Diagrams as Minimal DFA 18 Computability using LambdasReviewsI have taught formal languages and automata theory for decades, and I have seen many, perhaps most, students struggle with the material because it is so abstract. I've often thought that computer science students would learn it better by programming it. Indeed, that's how I really learned these topics -- by implementing constructions directly in practical compiler generation and formal verification tools to do my research. Prof. Gopalakrishnan's approach is to have students learn by doing, while still going into greater depth than some purely pencil-and-paper courses. -Prof. David L. Dill, Donald E. Knuth Professor, Emeritus, in the School of Engineering, Stanford University It is probably a safe assumption to make these days that many, if not most, computer science undergraduates have had programming experience, but few of them know the language of mathematics. Professor Gopalakrishnan's book builds on the student's experience in programming and animates the theory of automata, formal languages, and computability with actual programs which the student can easily modify and play with. Doing is the best way of learning. This book should enable the typical computer science student to acquire a more visceral, and therefore in the long run more useful, understanding of the theory. -Dr. Ching-Tsun Chou, Silicon Architecture Engineer, Intel Corporation As a long-time researcher in programming languages and high-performance computing, I find the coverage of Automata and Computability in this book illuminating from a foundational perspective as well as timely from a practical perspective. In addition to classical topics such as automata theory and parsing, it allows a student to interactively study via Jupyter notebooks a wide range of topics including grammar disambiguation, Boolean satisfiability, Post Correspondence and Lambda Calculus --- all important topics for students who aspire to become proficient in c I have taught formal languages and automata theory for decades, and I have seen many, perhaps most, students struggle with the material because it is so abstract. I've often thought that computer science students would learn it better by programming it. Indeed, that's how I really learned these topics -- by implementing constructions directly in practical compiler generation and formal verification tools to do my research. Prof. Gopalakrishnan's approach is to have students learn by doing, while still going into greater depth than some purely pencil-and-paper courses. -Prof. David L. Dill, Donald E. Knuth Professor, Emeritus, in the School of Engineering, Stanford University It is probably a safe assumption to make these days that many, if not most, computer science undergraduates have had programming experience, but few of them know the language of mathematics. Professor Gopalakrishnan's book builds on the student's experience in programming and animates the theory of automata, formal languages, and computability with actual programs which the student can easily modify and play with. Doing is the best way of learning. This book should enable the typical computer science student to acquire a more visceral, and therefore in the long more useful, understanding of the theory. -Dr. Ching-Tsun Chou, Silicon Architecture Engineer, Intel Corporation Author InformationGanesh Gopalakrishnan is a professor in the Computer Science Department at the University of Utah. Tab Content 6Author Website:Countries AvailableAll regions |