International Conference on Certified Programs and Proofs

CPP 2013: Certified Programs and Proofs pp 131-146

Lifting and Transfer: A Modular Design for Quotients in Isabelle/HOL

  • Brian Huffman
  • Ondřej Kunčar
Conference paper

DOI: 10.1007/978-3-319-03545-1_9

Volume 8307 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Huffman B., Kunčar O. (2013) Lifting and Transfer: A Modular Design for Quotients in Isabelle/HOL. In: Gonthier G., Norrish M. (eds) Certified Programs and Proofs. CPP 2013. Lecture Notes in Computer Science, vol 8307. Springer, Cham

Abstract

Quotients, subtypes, and other forms of type abstraction are ubiquitous in formal reasoning with higher-order logic. Typically, users want to build a library of operations and theorems about an abstract type, but they want to write definitions and proofs in terms of a more concrete representation type, or “raw” type. Earlier work on the Isabelle Quotient package has yielded great progress in automation, but it still has many technical limitations.

We present an improved, modular design centered around two new packages: the Transfer package for proving theorems, and the Lifting package for defining constants. Our new design is simpler, applicable in more situations, and has more user-friendly automation.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer International Publishing Switzerland 2013

Authors and Affiliations

  • Brian Huffman
    • 1
  • Ondřej Kunčar
    • 2
  1. 1.Galois, Inc.USA
  2. 2.Technische Universität MünchenGermany