Advertisement

Concrete Semantics

With Isabelle/HOL

  • Tobias Nipkow
  • Gerwin Klein

Table of contents

  1. Front Matter
    Pages I-XIII
  2. Isabelle

    1. Front Matter
      Pages 1-2
    2. Tobias Nipkow, Gerwin Klein
      Pages 3-4
    3. Tobias Nipkow, Gerwin Klein
      Pages 5-25
    4. Tobias Nipkow, Gerwin Klein
      Pages 27-36
    5. Tobias Nipkow, Gerwin Klein
      Pages 37-52
    6. Tobias Nipkow, Gerwin Klein
      Pages 53-69
  3. Semantics

    1. Front Matter
      Pages 71-72
    2. Tobias Nipkow, Gerwin Klein
      Pages 73-74
    3. Tobias Nipkow, Gerwin Klein
      Pages 75-94
    4. Tobias Nipkow, Gerwin Klein
      Pages 95-114
    5. Tobias Nipkow, Gerwin Klein
      Pages 115-142
    6. Tobias Nipkow, Gerwin Klein
      Pages 143-178
    7. Tobias Nipkow, Gerwin Klein
      Pages 179-190
    8. Tobias Nipkow, Gerwin Klein
      Pages 191-217
    9. Tobias Nipkow, Gerwin Klein
      Pages 219-280
  4. Back Matter
    Pages 281-298

About this book

Introduction

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.

Keywords

Abstract interpretation Automated reasoning Compilers Denotational semantics Functional programming Hoare logic Induction Isabelle Logic Logical reasoning Program analysis Proof assistant Semantics Type systems

Authors and affiliations

  • Tobias Nipkow
    • 1
  • Gerwin Klein
    • 2
  1. 1.TU München Fak. InformatikGarchingGermany
  2. 2.Kensington Campus, Bldg L5NICTA, Neville Roach LaboratoryKensingtonAustralia

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-319-10542-0
  • Copyright Information Springer International Publishing Switzerland 2014
  • Publisher Name Springer, Cham
  • eBook Packages Computer Science
  • Print ISBN 978-3-319-10541-3
  • Online ISBN 978-3-319-10542-0
  • Buy this book on publisher's site
Industry Sectors
Electronics
IT & Software
Aerospace