HOL Light

HOL Light is a proof assistant for classical higher-order logic. It is a member of the HOL theorem prover family. Compared with other HOL systems, HOL Light is intended to have relatively simple foundations. HOL Light is authored and maintained by the mathematician and computer scientist John Harrison. HOL Light is released under the simplified BSD license.[1]

Logical foundations

HOL Light is based on a formulation of type theory with equality as the only primitive notion. The primitive rules of inference are the following:

t = t {\displaystyle {\cfrac {\qquad }{\vdash t=t}}} REFL reflexivity of equality
Γ s = t Δ t = u Γ Δ s = u {\displaystyle {\cfrac {\Gamma \vdash s=t\qquad \Delta \vdash t=u}{\Gamma \cup \Delta \vdash s=u}}} TRANS transitivity of equality
Γ f = g Δ x = y Γ Δ f ( x ) = g ( y ) {\displaystyle {\cfrac {\Gamma \vdash f=g\qquad \Delta \vdash x=y}{\Gamma \cup \Delta \vdash f(x)=g(y)}}} MK_COMB congruence of equality
Γ s = t Γ ( λ x . s ) = ( λ x . t ) {\displaystyle {\cfrac {\Gamma \vdash s=t}{\Gamma \vdash (\lambda x.s)=(\lambda x.t)}}} ABS abstraction of equality ( x {\displaystyle x} must not be free in Γ {\displaystyle \Gamma } )
( λ x . t ) x = t {\displaystyle {\cfrac {\qquad }{\vdash (\lambda x.t)x=t}}} BETA connection of abstraction and function application
{ p } p {\displaystyle {\cfrac {\qquad }{\{p\}\vdash p}}} ASSUME assuming p {\displaystyle p} , prove p {\displaystyle p}
Γ p = q Δ p Γ Δ q {\displaystyle {\cfrac {\Gamma \vdash p=q\qquad \Delta \vdash p}{\Gamma \cup \Delta \vdash q}}} EQ_MP relation of equality and deduction
Γ p Δ q ( Γ { q } ) ( Δ { p } ) p = q {\displaystyle {\cfrac {\Gamma \vdash p\qquad \Delta \vdash q}{(\Gamma -\{q\})\cup (\Delta -\{p\})\vdash p=q}}} DEDUCT_ANTISYM_RULE deduce equality from 2-way deducibility
Γ [ x 1 , , x n ] p [ x 1 , , x n ] Γ [ t 1 , , t n ] p [ t 1 , , t n ] {\displaystyle {\cfrac {\Gamma [x_{1},\ldots ,x_{n}]\vdash p[x_{1},\ldots ,x_{n}]}{\Gamma [t_{1},\ldots ,t_{n}]\vdash p[t_{1},\ldots ,t_{n}]}}} INST instantiate variables in assumptions and conclusion of theorem
Γ [ α 1 , , α n ] p [ α 1 , , α n ] Γ [ τ 1 , , τ n ] p [ τ 1 , , τ n ] {\displaystyle {\cfrac {\Gamma [\alpha _{1},\ldots ,\alpha _{n}]\vdash p[\alpha _{1},\ldots ,\alpha _{n}]}{\Gamma [\tau _{1},\ldots ,\tau _{n}]\vdash p[\tau _{1},\ldots ,\tau _{n}]}}} INST_TYPE instantiate type variables in assumptions and conclusion of theorem

This formulation of type theory is very close to the one described in section II.2 of Lambek & Scott (1986).

References

  1. ^ "Jrh13/Hol-light". GitHub. 13 October 2021.
  • Lambek, J; Scott, P. J. (1986), Introduction to Higher Order Categorical logic, Cambridge University Press, ISBN 9780521356534

Further reading

External links

  • Official website
  • v
  • t
  • e
ML programming
Software
Implementations,
dialects
Caml
  • OCaml°
    • Eff
    • F*°
    • F#°
    • JoCaml°
    • Reason°
Standard ML
Dependent ML
  • ATS°
Programming tools
Theorem provers,
proof assistants
Community
Designers
  • Lennart Augustsson (Lazy ML)
  • Damien Doligez (OCaml)
  • Gérard Huet (Caml)
  • Xavier Leroy (Caml, OCaml)
  • Robin Milner (ML)
  • Don Sannella (Extended ML)
  • Don Syme (F#)
  • Italics = discontinued
  • ° = Open-source software
    Book Category:Family:ML Category:Family:OCaml Category:Software:OCaml