Foundations of HOL
Table of Contents
1. Introduction
The foundations underlying HOL vary depending on implementation, but they are all variations on the same theme. Basically:
- a simply-typed lambda calculus with:
- two base types (
bool
andind
for truth-values and non-logical constants, resp.), and - some primitive symbols (like
/\
[conjunction],\/
[disjunction],==>
[implies],<=>
[logical equivalence], quantifiers — at least universal quantification).
- two base types (
We sometimes find type variables in the literature, but these are in the metalanguage and not HOL itself.