Advertisement

HOL Zero’s Solutions for Pollack-Inconsistency

  • Mark Adams
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9807)

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.

Keywords

Formal Proof Type Inference Concrete Syntax Interactive Proof Type Annotation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Adams, M.: Proof auditing formalised mathematics. J. Formalized Reasoning 9(1), 3–32 (2016)MathSciNetGoogle Scholar
  2. 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)CrossRefGoogle Scholar
  3. 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. 4.
    Davis, J.: A Self-Verifying Theorem Prover. PhD Thesis, University of Texas at Austin (2009)Google Scholar
  5. 5.
    Davis, J., Myreen, M.: The reflective Milawa theorem prover is sound. J. Autom. Reasoning 55(2), 117–183 (2015). SpringerMathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Hales, T., et al.: A Formal Proof of the Kepler Conjecture. arXiv:1501.02155v1 [math.MG]. arXiv.org (2015)
  7. 7.
    Gordon, M.: From LCF to HOL: a short history. In: Proof, Language and Interaction, pp. 169–186. MIT Press (2000)Google Scholar
  8. 8.
    Gordon, M., Melham, T.: Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, Cambridge (1993)zbMATHGoogle Scholar
  9. 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)CrossRefGoogle Scholar
  10. 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. 11.
    Milner, R.: A theory of type polymorphism in programming. J. Comput. Syst. Sci. 17, 348–375 (1978). ElsevierMathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Nipkow, T., Paulson, L.C., Wenzel, M. (eds.): Isabelle/HOL: A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)zbMATHGoogle Scholar
  13. 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. 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)CrossRefGoogle Scholar
  15. 15.
    Wiedijk, F.: Pollack-inconsistency. Electron. Not. Theoret. Comput. Sci. 285, 85–100 (2012). Elsevier ScienceCrossRefzbMATHGoogle Scholar
  16. 16.

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Proof Technologies LtdWorcesterUK
  2. 2.Radboud UniversityNijmegenThe Netherlands

Personalised recommendations