000 05553nam a22005895i 4500
001 978-3-030-76908-6
003 DE-He213
005 20240423125524.0
007 cr nn 008mamaa
008 220119s2021 sz | s |||| 0|eng d
020 _a9783030769086
_9978-3-030-76908-6
024 7 _a10.1007/978-3-030-76908-6
_2doi
050 4 _aQA75.5-76.95
072 7 _aUYA
_2bicssc
072 7 _aCOM014000
_2bisacsh
072 7 _aUYA
_2thema
082 0 4 _a004.0151
_223
100 1 _aSannella, Donald.
_eauthor.
_4aut
_4http://id.loc.gov/vocabulary/relators/aut
245 1 0 _aIntroduction to Computation
_h[electronic resource] :
_bHaskell, Logic and Automata /
_cby Donald Sannella, Michael Fourman, Haoran Peng, Philip Wadler.
250 _a1st ed. 2021.
264 1 _aCham :
_bSpringer International Publishing :
_bImprint: Springer,
_c2021.
300 _aXVI, 366 p. 284 illus., 13 illus. in color.
_bonline resource.
336 _atext
_btxt
_2rdacontent
337 _acomputer
_bc
_2rdamedia
338 _aonline resource
_bcr
_2rdacarrier
347 _atext file
_bPDF
_2rda
490 1 _aUndergraduate Topics in Computer Science,
_x2197-1781
505 0 _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.
520 _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 clearexpository 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.
650 0 _aComputer science.
650 0 _aComputer science
_xMathematics.
650 0 _aAlgorithms.
650 1 4 _aTheory of Computation.
650 2 4 _aMathematics of Computing.
650 2 4 _aComputer Science Logic and Foundations of Programming.
650 2 4 _aDesign and Analysis of Algorithms.
700 1 _aFourman, Michael.
_eauthor.
_4aut
_4http://id.loc.gov/vocabulary/relators/aut
700 1 _aPeng, Haoran.
_eauthor.
_4aut
_4http://id.loc.gov/vocabulary/relators/aut
700 1 _aWadler, Philip.
_eauthor.
_4aut
_4http://id.loc.gov/vocabulary/relators/aut
710 2 _aSpringerLink (Online service)
773 0 _tSpringer Nature eBook
776 0 8 _iPrinted edition:
_z9783030769079
776 0 8 _iPrinted edition:
_z9783030769093
776 0 8 _iPrinted edition:
_z9783030769109
830 0 _aUndergraduate Topics in Computer Science,
_x2197-1781
856 4 0 _uhttps://doi.org/10.1007/978-3-030-76908-6
912 _aZDB-2-SCS
912 _aZDB-2-SXCS
942 _cSPRINGER
999 _c178863
_d178863