LEADER 05379nam 22006255 450 001 9910520082703321 005 20230810132151.0 010 $a3-030-76908-9 024 7 $a10.1007/978-3-030-76908-6 035 $a(MiAaPQ)EBC6865923 035 $a(Au-PeEL)EBL6865923 035 $a(CKB)20937256800041 035 $a(OCoLC)1293258208 035 $a(DE-He213)978-3-030-76908-6 035 $a(PPN)272261572 035 $a(EXLCZ)9920937256800041 100 $a20220119d2021 u| 0 101 0 $aeng 135 $aurcnu|||||||| 181 $ctxt$2rdacontent 182 $cc$2rdamedia 183 $acr$2rdacarrier 200 10$aIntroduction to Computation $eHaskell, Logic and Automata /$fby Donald Sannella, Michael Fourman, Haoran Peng, Philip Wadler 205 $a1st ed. 2021. 210 1$aCham :$cSpringer International Publishing :$cImprint: Springer,$d2021. 215 $a1 online resource (371 pages) 225 1 $aUndergraduate Topics in Computer Science,$x2197-1781 311 08$aPrint version: Sannella, Donald Introduction to Computation Cham : Springer International Publishing AG,c2022 9783030769079 327 $a1. Sets -- 2. Types -- 3. Simple Computations -- 4. Venn Diagrams and Logical Connectives -- 5. Lists and Comprehensions -- 6. Features and Predicates -- 7. Testing Your Programs -- 8. Patterns of Reasoning -- 9. More Patterns of Reasoning -- 10. Lists and Recursion -- 11. More Fun with Recursion -- 12. Higher-Order Functions -- 13. Higher and Higher -- 14. Sequent Calculus -- 15. Algebraic Data Types -- 16. Expression Trees -- 17. Karnaugh Maps -- 18. Relations and Quantifiers -- 19. Checking Satisfiability -- 20. Data Representation -- 21. Data Abstraction -- 22. Efficient CNF Conversion -- 23. Counting Satisfying Valuations -- 24. Type Classes -- 25. Search in Trees -- 26. Combinatorial Algorithms -- 27. Finite Automata -- 28. Deterministic Finite Automata -- 29. Non-Deterministic Finite Automata -- 30. Input/Output and Monads -- 31. Regular Expressions -- 32 Non-Regular Languages -- Index. 330 $aComputation is a process of calculation involving arithmetic and logical steps, following a given set of rules (an algorithm). This uniquely accessible textbook introduces students to computation using a very distinctive approach, quite rapidly leading them into essential topics with sufficient depth, yet in a highly intuitive manner. The work is anchored in coverage of functional programming (in Haskell), symbolic logic, and finite automata-- each a critical component of the foundations of Informatics, and together offering students a clear glimpse into an intellectual journey beyond mere mastery of technical skills. From core elements like types, Venn diagrams and logic, to patterns of reasoning, sequent calculus, recursion and algebraic data types, the book spans the breadth of key concepts and methods that will enable students to readily progress with their studies in Computer Science. Topics and features: Spans the key concepts and methods that underpin computation Develops symbolic logic, with a view toward honing clarity of thought; and automata, as a foundation for future study of both their applications and related theoretical topics Introduces powerful functional programming ideas that will be useful regardless which programming languages are used later Provides numerous exercises to support a clear and open, accessible approach Offers a dedicated website with resources for instructors and students, including code and links to online information Includes a wide array of marginal notes, empowering readers to "go beyond" the content presented Approaches logic and automata through Haskell code, to bring key concepts alive and foster understanding through experimentation Assuming no formal background in programming, this highly practical and accessible textbook provides the grounding fundamentals of computation for undergraduate students. Its flexible, yet clear expository style also makes the book eminently suitable as a self-study instructional guide for professionals or nonspecialists interested in these topics. Prof. Donald Sannella, Prof. Michael Fourman, and Prof. Philip Wadler are each at the University of Edinburgh's School of Informatics, Edinburgh, UK. Mr. Haoran Peng will soon pursue research interests in machine learning and machine intelligence at Cambridge University, Cambridge, UK. 410 0$aUndergraduate Topics in Computer Science,$x2197-1781 606 $aComputer science 606 $aComputer science$xMathematics 606 $aAlgorithms 606 $aTheory of Computation 606 $aMathematics of Computing 606 $aComputer Science Logic and Foundations of Programming 606 $aDesign and Analysis of Algorithms 615 0$aComputer science. 615 0$aComputer science$xMathematics. 615 0$aAlgorithms. 615 14$aTheory of Computation. 615 24$aMathematics of Computing. 615 24$aComputer Science Logic and Foundations of Programming. 615 24$aDesign and Analysis of Algorithms. 676 $a004.015113 676 $a004.015113 700 $aSannella$b Donald$01074671 801 0$bMiAaPQ 801 1$bMiAaPQ 801 2$bMiAaPQ 906 $aBOOK 912 $a9910520082703321 996 $aIntroduction to computation$92784777 997 $aUNINA