Safety and conservativity of definitions in HOL and Isabelle/HOL

Kunčar, Ondřej and Popescu, Andrei (2018) Safety and conservativity of definitions in HOL and Isabelle/HOL. Proceedings of the ACM on Programming Languages, 2 . 24:1-24:26. ISSN 2475-1421 (doi:10.1145/3158112)

PDF - Final accepted version (with author's formatting)
Download (796kB) | Preview
[img] PDF - Published version (with publisher's formatting)
Restricted to Repository staff and depositor only

Download (809kB)


Definitions are traditionally considered to be a safe mechanism for introducing concepts on top of a logic known to be consistent. In contrast to arbitrary axioms, definitions should in principle be treatable as a form of abbreviation, and thus compiled away from the theory without losing provability. In particular, definitions should form a conservative extension of the pure logic. These properties are crucial for modern interactive theorem provers, since they ensure the consistency of the logic, as well as a valid environment for total/certified functional programming.

We prove these properties, namely, safety and conservativity, for Higher-Order Logic (HOL), a logic implemented in several mainstream theorem provers and relied upon by thousands of users. Some unique features of HOL, such as the requirement to give non-emptiness proofs when defining new types and the impossibility to unfold type definitions, make the proof of these properties, and also the very formulation of safety, nontrivial.

Our study also factors in the essential variation of HOL definitions featured by Isabelle/HOL, a popular member of the HOL-based provers family. The current work improves on recent results which showed a weaker property, consistency of Isabelle/HOL’s definitions.

Item Type: Article
Additional Information: Article Number = 24. Proceedings of the ACM on Programming Languages, Volume 2 Issue POPL, January 2018. The published article is available on open access at:
Research Areas: A. > School of Science and Technology > Computer Science
Item ID: 23359
Notes on copyright: © 2018 ACM. This is the author's version of the work. It is posted here for your personal use. Not for redistribution. The definitive Version of Record was published in Proceedings of the ACM on Programming Languages, Volume 2 Issue POPL, January 2018, Article No. 24 ,
Useful Links:
Depositing User: Andrei Popescu
Date Deposited: 19 Jan 2018 16:11
Last Modified: 31 Jul 2020 23:55

Actions (login required)

Edit Item Edit Item

Full text downloads (NB count will be zero if no full text documents are attached to the record)

Downloads per month over the past year