Skip to main content
  • Textbook
  • © 2014

Concrete Semantics

With Isabelle/HOL

  • Suitable for graduate students and researchers in theoretical computer science and logic
  • Teaches reader the art of precise logical reasoning and the practical use of a proof assistant
  • Represents a formal approach to computer science, not just semantics
  • Includes supplementary material: sn.pub/extras

Buy it now

Buying options

eBook USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 84.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, log in via an institution to check for access.

Table of contents (13 chapters)

  1. Front Matter

    Pages I-XIII
  2. Isabelle

    1. Front Matter

      Pages 1-2
    2. Introduction

      • Tobias Nipkow, Gerwin Klein
      Pages 3-4
    3. Programming and Proving

      • Tobias Nipkow, Gerwin Klein
      Pages 5-25
    4. Case Study: IMP Expressions

      • Tobias Nipkow, Gerwin Klein
      Pages 27-36
    5. Logic and Proof Beyond Equality

      • Tobias Nipkow, Gerwin Klein
      Pages 37-52
    6. Isar: a Language for Structured Proofs

      • Tobias Nipkow, Gerwin Klein
      Pages 53-69
  3. Semantics

    1. Front Matter

      Pages 71-72
    2. Programming and Proving

      • Tobias Nipkow, Gerwin Klein
      Pages 73-74
    3. IMP: A Simple Imperative Language

      • Tobias Nipkow, Gerwin Klein
      Pages 75-94
    4. Compiler

      • Tobias Nipkow, Gerwin Klein
      Pages 95-114
    5. Types

      • Tobias Nipkow, Gerwin Klein
      Pages 115-142
    6. Program Analysis

      • Tobias Nipkow, Gerwin Klein
      Pages 143-178
    7. Denotational Semantics

      • Tobias Nipkow, Gerwin Klein
      Pages 179-190
    8. Hoare Logic

      • Tobias Nipkow, Gerwin Klein
      Pages 191-217
    9. Abstract Interpretation

      • Tobias Nipkow, Gerwin Klein
      Pages 219-280
  4. Back Matter

    Pages 281-298

About this book

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.

Reviews

“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)

Authors and Affiliations

  • TU München Fak. Informatik, Garching, Germany

    Tobias Nipkow

  • Kensington Campus, Bldg L5, NICTA, Neville Roach Laboratory, Kensington, Australia

    Gerwin Klein

About the authors

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 NewSouth Wales. His research interests include interactive theorem proving, software verification, and the semantics of programming languages.

Bibliographic Information

Buy it now

Buying options

eBook USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 84.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access