Lifting and Transfer: A Modular Design for Quotients in Isabelle/HOL
- 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
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.
Unable to display preview. Download preview PDF.