Concrete Semantics - Tobias Nipkow, Gerwin Klein

Concrete Semantics

With Isabelle/HOL
Buch | Softcover
XIII, 298 Seiten
2016 | 1. Softcover reprint of the original 1st ed. 2014
Springer International Publishing (Verlag)
978-3-319-35759-1 (ISBN)
53,49 inkl. MwSt

Part I of this book is a practical introduction to working with the Isabelle proof assistant. It teaches you how to write functional programs and inductive definitions and how to prove properties about them in Isabelle's structured proof language. Part II is an introduction to the semantics of imperative languages with an emphasis on applications like compilers and program analysers. The distinguishing feature is that all the mathematics has been formalised in Isabelle and much of it is executable. Part I focusses on the details of proofs in Isabelle; Part II can be read even without familiarity with Isabelle's proof language, all proofs are described in detail but informally.

The book teaches the reader the art of precise logical reasoning and the practical use of a proof assistant as a surgical tool for formal proofs about computer science artefacts. In this sense it represents a formal approach to computer science, not just semantics. The Isabelle formalisation, including the proofs and accompanying slides, are freely available online, and the book is suitable for graduate students, advanced undergraduate students, and researchers in theoretical computer science and logic.

Prof. Tobias Nipkow received his Ph.D. in Manchester, after which he taught and carried out research at MIT and in Cambridge. He took up a professorship in 1992 at the Technische Universität München where he holds the Chair for Logic and Verification. He was one of the developers of Isabelle, a generic proof assistant, and he coauthored the related LNCS tutorial. He also coauthored the textbook "Term Rewriting and All That", and he is the Editor-in-Chief of the Journal of Automated Reasoning. His research interests include automatic and interactive theorem proving, formal verification, formalizing programming languages, type systems, semantics, rewriting and unification, and the lambda-calculus. Assoc. Prof. Gerwin Klein received his Ph.D. in Computer Science from the Technische Universität München. He is a Senior Principal Researcher/Research Leader at National ICT Australia (NICTA) and an adjunct professor in the School of Computer Science and Engineering, University of New South Wales. His research interests include interactive theorem proving, software verification, and the semantics of programming languages.

Introduction.- Programming and Proving.- Case Study: IMP Expressions.- Logic and Proof Beyond Equality.- Isar: A Language for Structured Proofs.- IMP: A Simple Imperative Language.- Compiler.- Types.- Program Analysis.- Denotational Semantics.- Hoare Logic.- Abstract Interpretation.- App. A, Auxiliary Definitions.- App. B, Symbols.- References.

"The book is highly recommended for learning and teaching theorem proving and semantics, picking up a lot of useful knowledge on higher-order logic along the way. The book is well-structured and written to support learning about the two main themes. It may also help to make formal methods more approachable to a larger number of students by offering the possibility to follow the book with a software tool, inviting the students to experiment and succeed in (automatically assisted) formal proof." (Stefan Hallerstede, Formal Aspects of Computing, Vol. 30, 2018)

“The book is highly recommended for learning and teaching theorem proving and semantics, picking up a lot of useful knowledge on higher-order logic along the way. The book is well-structured and written to support learning about the two main themes. It may also help to make formal methods more approachable to a larger number of students by offering the possibility to follow the book with a software tool, inviting the students to experiment and succeed in (automatically assisted) formal proof.” (Stefan Hallerstede, Formal Aspects of Computing, Vol. 30, 2018)

Erscheinungsdatum
Zusatzinfo XIII, 298 p. 87 illus., 1 illus. in color.
Verlagsort Cham
Sprache englisch
Maße 155 x 235 mm
Themenwelt Informatik Theorie / Studium Compilerbau
Schlagworte Abstract Interpretation • automated reasoning • Compilers • Compilers and interpreters • Computer architecture and logic design • Computer programming / software engineering • Computer Science • Denotational Semantics • Functional Programming • hoare logic • Induction • Isabelle • Logic • logical reasoning • Logics and meanings of programs • Mathematical logic and formal languages • Mathematical theory of computation • program analysis • Programming and scripting languages: general • Programming languages, compilers, interpreters • Proof assistant • Semantics • Type Systems
ISBN-10 3-319-35759-X / 331935759X
ISBN-13 978-3-319-35759-1 / 9783319357591
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen und Anwendungen

von Hanspeter Mössenböck

Buch | Softcover (2024)
dpunkt (Verlag)
29,90
a beginner's guide to learning llvm compiler tools and core …

von Kai Nacke

Buch | Softcover (2024)
Packt Publishing Limited (Verlag)
49,85