Module docstring
{"# Heyting algebras
This file defines Heyting, co-Heyting and bi-Heyting algebras.
A Heyting algebra is a bounded distributive lattice with an implication operation ⇨ such that
a ≤ b ⇨ c ↔ a ⊓ b ≤ c. It also comes with a pseudo-complement ᶜ, such that aᶜ = a ⇨ ⊥.
Co-Heyting algebras are dual to Heyting algebras. They have a difference \\ and a negation ¬
such that a \\ b ≤ c ↔ a ≤ b ⊔ c and ¬a = ⊤ \\ a.
Bi-Heyting algebras are Heyting algebras that are also co-Heyting algebras.
From a logic standpoint, Heyting algebras precisely model intuitionistic logic, whereas boolean algebras model classical logic.
Heyting algebras are the order theoretic equivalent of cartesian-closed categories.
Main declarations
GeneralizedHeytingAlgebra: Heyting algebra without a top element (nor negation).GeneralizedCoheytingAlgebra: Co-Heyting algebra without a bottom element (nor complement).HeytingAlgebra: Heyting algebra.CoheytingAlgebra: Co-Heyting algebra.BiheytingAlgebra: bi-Heyting algebra.
References
- [Francis Borceux, Handbook of Categorical Algebra III][borceux-vol3]
Tags
Heyting, Brouwer, algebra, implication, negation, intuitionistic
","### Notation ","In this section, we'll give interpretations of these results in the Heyting algebra model of
intuitionistic logic,- where ≤ can be interpreted as \"validates\", ⇨ as \"implies\", ⊓ as \"and\",
⊔ as \"or\", ⊥ as \"false\" and ⊤ as \"true\". Note that we confuse → and ⊢ because those are
the same in this logic.
See also Prop.heytingAlgebra. "}