Skip to main content

HOL Zero’s Solutions for Pollack-Inconsistency

  • Conference paper
  • First Online:
Interactive Theorem Proving (ITP 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9807))

Included in the following conference series:

Abstract

HOL Zero is a basic theorem prover that aims to achieve the highest levels of reliability and trustworthiness through careful design and implementation of its core components. In this paper, we concentrate on its treatment of concrete syntax, explaining how it manages to avoid problems suffered in other HOL systems related to the parsing and pretty printing of HOL types, terms and theorems, with the goal of achieving well-behaved parsing/printing and Pollack-consistency. Included are an explanation of how Hindley-Milner type inference is adapted to cater for variable-variable overloading, and how terms are minimally annotated with types for unambiguous printing.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and 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

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Although in hol90, type variable names must start with a single-quote character.

  2. 2.

    We refer here to the “vanilla” version of the HOL language, implemented by all HOL systems except Isabelle/HOL and HOL Omega.

  3. 3.

    Note that, in HOL Zero, numerals are not atoms of primitive syntax, but for illustrative purposes it suffices to treat 5 as an atom in this example.

References

  1. Adams, M.: Proof auditing formalised mathematics. J. Formalized Reasoning 9(1), 3–32 (2016)

    MathSciNet  Google Scholar 

  2. Adams, M., Clayton, P.B.: ClawZ: cost-effective formal verification for control systems. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 465–479. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  3. Arthan, R., Jones, R.: Z in HOL in ProofPower. In: Issue 2005–1 of the British Computer Society Specialist Group Newsletter on Formal Aspects of Computing Science, pp. 39–54 (2005)

    Google Scholar 

  4. Davis, J.: A Self-Verifying Theorem Prover. PhD Thesis, University of Texas at Austin (2009)

    Google Scholar 

  5. Davis, J., Myreen, M.: The reflective Milawa theorem prover is sound. J. Autom. Reasoning 55(2), 117–183 (2015). Springer

    Article  MathSciNet  MATH  Google Scholar 

  6. Hales, T., et al.: A Formal Proof of the Kepler Conjecture. arXiv:1501.02155v1 [math.MG]. arXiv.org (2015)

  7. Gordon, M.: From LCF to HOL: a short history. In: Proof, Language and Interaction, pp. 169–186. MIT Press (2000)

    Google Scholar 

  8. Gordon, M., Melham, T.: Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, Cambridge (1993)

    MATH  Google Scholar 

  9. Harrison, J.: HOL Light: an overview. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) TPHOLs 2009. LNCS, vol. 5674, pp. 60–66. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  10. Klein, G., et al.: seL4: formal verification of an OS Kernel. In: Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles, pp. 207–220. ACM (2009)

    Google Scholar 

  11. Milner, R.: A theory of type polymorphism in programming. J. Comput. Syst. Sci. 17, 348–375 (1978). Elsevier

    Article  MathSciNet  MATH  Google Scholar 

  12. Nipkow, T., Paulson, L.C., Wenzel, M. (eds.): Isabelle/HOL: A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  13. Pollack, R.: How to believe a machine-checked proof. In: Twenty-Five Years of Constructive Type Theory, chap. 11. Oxford University Press (1998)

    Google Scholar 

  14. Slind, K., Norrish, M.: A brief overview of HOL4. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) TPHOLs 2008. LNCS, vol. 5170, pp. 28–32. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  15. Wiedijk, F.: Pollack-inconsistency. Electron. Not. Theoret. Comput. Sci. 285, 85–100 (2012). Elsevier Science

    Article  MATH  Google Scholar 

  16. HOL Zero homepage. http://www.proof-technologies.com/holzero/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mark Adams .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Adams, M. (2016). HOL Zero’s Solutions for Pollack-Inconsistency. In: Blanchette, J., Merz, S. (eds) Interactive Theorem Proving. ITP 2016. Lecture Notes in Computer Science(), vol 9807. Springer, Cham. https://doi.org/10.1007/978-3-319-43144-4_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-43144-4_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-43143-7

  • Online ISBN: 978-3-319-43144-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics