A Heyting algebra is a lattice $L$ which as a poset admits an operation of implication
satisfying the condition (really a universal property)
This is equivalent to the following definition.
A Heyting algebra is a bicartesian closed poset, that is a poset which (when thought of as a thin category) is
finitely cocomplete,
and cartesian closed.
The implication $a\Rightarrow b$ is the exponential object $b^a$.
Insofar as all these properties of a poset are described by universal properties, being a Heyting algebra is a property-like structure on a poset; a poset can be a Heyting algebra in at most one way.
The definition of Heyting algebra may be recast into purely equational form: add to the equational theory of lattices the inequalities $(x \Rightarrow y) \wedge x \leq y$ and $y \leq x \Rightarrow (y \wedge x)$, writing these inequalities in equational form via the equivalence $a \leq b$ iff $a = a \wedge b$. Hence we can speak of an internal Heyting algebra in any category with products.
A Heyting algebra homomorphism is a homomorphism of the underlying lattices that preserve $\Rightarrow$. Heyting algebras and their homomorphisms form a concrete category HeytAlg.
In logic, Heyting algebras are precisely algebraic models for intuitionistic propositional calculus, just as Boolean algebras model classical propositional calculus. As one might guess from this description, the “law of the excluded middle” does not generally hold in a Heyting algebra; see the discussion below.
In a Heyting category, every subobject poset $Sub(A)$ is a Heyting algebra. In particular, this holds for every topos. Furthermore, in a topos, the power object $\mathcal{P}(A)$ is an internal Heyting algebra that corresponds to the external Heyting algebra $Sub(A)$. In a boolean topos, the internal Heyting algebras are all internal boolean algebras. In general, however, the internal logic of a topos (or other Heyting category) is intuitionistic.
One of the chief sources of Heyting algebras is given by topologies. As a poset, the topology of a topological space $X$ is a complete lattice (it has arbitrary joins and meets, although the infinitary meets are not in general given by intersection), and the implication operator is given by
where $U, V$ are open sets, $U^c$ is the set-theoretic complement of $U$, and $int(S)$ denotes the interior of a subset $S \subseteq X$.
Somewhat more generally, a frame (a sup-lattice in which finite meets distribute over arbitrary sups) also carries a Heyting algebra structure. In a frame, we may define
and the distributivity property guarantees that the universal property for implication holds. (The detailed proof is a “baby” application of an adjoint functor theorem.)
Thus frames are extensionally the same thing as complete Heyting algebras. However, intensionally they are quite different; that is, a morphism of frames is not usually a morphism of complete Heyting algebras: they do not preserve the implication operator.
A locale is the same thing as a frame, but again the morphisms are different; they are reversed.
Topologies that are Boolean algebras are the exception rather than the rule; basic examples include topologies of Stone spaces; see Stone duality. Another example is the topology of a discrete space $X$.
In any Heyting algebra $L$, we may define a negation operator
by $\neg x = (x \Rightarrow 0)$, where $0$ is the bottom element of the lattice. A Heyting algebra is Boolean if the double negation
coincides with the identity map; this gives one of many ways of defining a Boolean algebra.
In any Heyting algebra $L$, we have for all $a, b \in L$ the inequality
and another characterization of Boolean algebra is a Heyting algebra in which this is an equality for all $a, b$.
There are several ways of passing back and forth between Boolean algebras and Heyting algebras, having to do with the double negation operator. A useful lemma in this regard is
The double negation $\neg \neg\colon L \to L$ is a monad that preserves finite meets.
The proof can be made purely equational, and is therefore internally valid in any category with products. Applied to the internal Heyting algebra $L = \Omega$ of a topos, that is the subobject classifier, this lemma says exactly that the double negation operator $\neg \neg\colon \Omega \to \Omega$ defines a Lawvere–Tierney topology. Similarly, we get the double negation sublocale of any locale.
Now let $L_{\neg\neg}$ denote the poset of regular elements of $L$, that is, those elements $x$ such that $\neg\neg x = x$. (When $L$ is the topology of a space, an open set $U$ is regular if and only if it is the interior of its closure, that is if it is a regular element of the Heyting algebra of open sets described above.) With the help of the lemma above, we may prove
The poset $L_{\neg\neg}$ is a Boolean algebra. Moreover, the assignment $L \mapsto L_{\neg\neg}$ is the object part of a functor
called Booleanization, which is left adjoint to the full and faithful inclusion
The unit of the adjunction, applied to a Heyting algebra $L$, is the map $L \to L_{\neg\neg}$ which maps each element $x$ to its regularization $\neg\neg x$.
Thus $\neg\neg\colon L \to L_{\neg\neg}$ preserves finite joins and finite meets and implication. In the other direction, we have an inclusion $i\colon L_{\neg\neg} \to L$, and this preserves meets but not joins. It also preserves negations; more generally and perhaps surprisingly, it preserves implications as well.
Regular elements are not to be confused with complemented element?s, i.e., elements $x$ in a Heyting algebra such that $x \vee \neg x = 1$, although it is true that every complemented element is regular. An example of a regular element which is not complemented is given by the unit interval $(0, 1)$ as an element of the topology of $\mathbb{R}$; a complemented element in a Heyting algebra given by a topology is the same as a clopen subset.
Complemented elements furnish another universal relation between Boolean algebras and Heyting algebras: the set of complemented elements in a Heyting algebra $H$ is a Boolean algebra $Comp(H)$, and the inclusion $Comp(H) \to H$ is a Heyting algebra map which is universal among Heyting algebra maps $B \to H$ out of Boolean algebras $B$. In other words, we have the following result.
The assignment $H \mapsto Comp(H)$ is the object part of a right adjoint to the forgetful functor $Bool \to Heyt$.
We prove the lemma and theorems of the preceding section.
Since $\neg \neg$ preserves order, it is clear that $\neg \neg(x \wedge y) \leq \neg \neg x$ and $\neg \neg(x \wedge y) \leq \neg \neg y$, so
follows. In the other direction, to show
we show $(\neg \neg x) \wedge (\neg \neg y) \wedge \neg (x \wedge y) \leq 0$. But we have $\neg (x \wedge y) = (y \Rightarrow \neg x)$, and we also have the general result
Putting $a = y$, $b = \neg x$, $c = 0$, we obtain
and so now
as required.
Since $\neg \neg$ is a monad, and $L_{\neg \neg}$ is the corresponding category (poset) of $\neg \neg$-algebras, the left adjoint $\neg \neg \colon L \to L_{\neg \neg}$ preserves joins. Since this map is epic, this also gives the fact that $L_{\neg \neg}$ has joins. The map $L \to L_{\neg\neg}$ preserves meets by the preceding lemma, and $\neg \neg 1 = \neg 0 = 1$. Thus $L \to L_{\neg\neg}$ is a surjective lattice map, and it follows that $L_{\neg\neg}$ is distributive because $L$ is.
Working in $L_{\neg \neg}$ (where the join will be written $\vee_{\neg\neg}$ and the meet $\wedge_{\neg\neg}$), we have for any $x \in L_{\neg \neg}$ the equations
so that $\neg x$ is the complement of $x \in L_{\neg \neg}$. We have thus shown that $L_{\neg\neg}$ is a complemented distributive lattice, i.e., a Boolean algebra. This calculation also shows that $\neg\neg \colon L \to L_{\neg\neg}$ preserves negation.
To show $L \to L_{\neg\neg}$ preserves implication, we may start from the observation (see the following lemma) that in any Heyting algebra $L$, we have
Then
where the last expression is $(\neg \neg a) \Rightarrow (\neg \neg b)$ as computed in the Boolean algebra $L_{\neg \neg}$, since in a Boolean algebra we have $(x \Rightarrow y) = (\neg x \vee y)$.
Therefore $L \to L_{\neg\neg}$ is a Heyting algebra quotient which is the coequalizer of $1, \neg\neg \colon L \stackrel{\to}{\to} L$. It follows that a Heyting algebra map $L \to B$ to any Boolean algebra $B$ factors uniquely through this coequalizer, and the induced map $L_{\neg \neg} \to B$ is a Boolean algebra map. In other words, $L \to L_{\neg\neg}$ is the universal Heyting algebra map to a Boolean algebra, which establishes the adjunction.
In a Heyting algebra, $\neg(a \Rightarrow b) = (\neg \neg a) \wedge (\neg b)$.
Since $\neg$ is contravariant and $a \Rightarrow -$ is covariant, we have
Since $- \Rightarrow b$ is contravariant, we have
We conclude that $\neg(a \Rightarrow b) \leq (\neg \neg a) \wedge (\neg b).$ On the other hand, we have
whence $(\neg \neg a) \wedge (\neg b) \leq \neg (a \Rightarrow b)$, which completes the proof.
It follows from this lemma that double negation on a Heyting algebra $\neg \neg \colon L \to L$ preserves implication, since
This is important for the double negation translation.
In a Heyting algebra $H$, the elements $0$ and $1$ are clearly complemented. If $x$ and $y$ are complemented, then so is $x \wedge y$ since
By a similar proof, $x \vee y$ is complemented. Finally, $x \Rightarrow y$ has complement $x \wedge \neg y$: writing $x \Rightarrow y = y^x$ for typographical clarity, we have
Thus the complemented elements form a Heyting subalgebra $Comp(H) \hookrightarrow H$. Clearly $Comp(H)$ is a Boolean algebra, and clearly if $B$ is Boolean, then any Heyting algebra map $B \to H$ factors uniquely through $Comp(H) \hookrightarrow H$. This proves the theorem.
An elementary topos is a vertical categorification of a Heyting algebra: the notion of Heyting algebra is essentially equivalent to that of (0,1)-topos. Note that a Grothendieck $(0,1)$-topos is a frame or locale.
For $\mathcal{T}$ a topos and $X \in \mathcal{T}$ any object, the poset $Sub(X)$ of subobjects of $X$ is a Heyting algebra.
In other words, every topos is a Heyting category.
In particular for $X = \Omega$ the subobject classifier, $Sub(\Omega)$ is a Heyting algebra.
In $\mathcal{T} =$ Set for every set $S$ we have that $Sub(S)$ is the Boolean algebra of subset of $S$.
More details and examples are spelled out at internal logic.
A frame $L$ is a Heyting algebra.
By the adjoint functor theorem, a right adjoint $x \Rightarrow -$ to the map $x \wedge -: L \to L$ exists since this map preserves arbitrary joins.
Named after Arend Heyting.