Kleene's three-valued logic as the consistent fragment of Belnap's FOUR #
[Fit94] ("Kleene's Three Valued Logics and Their Children") organizes
Kleene's logics as fragments of Belnap's four-valued bilattice FOUR, sliced by
the conflation − (the knowledge-order involution): the strong Kleene values
are exactly those x with x ≤_k −x — the consistent (non-glut) values.
FOUR and its two orders / negation / conflation are the shared substrate in
Core.Logic.Bilattice. Here we prove the slicing for linglib's Truth3
(Kleene's three-valued logic, [Kle52]): ofTruth3 embeds Truth3 onto the
consistent fragment of FOUR, matching the truth order (Truth3's ≤), the
knowledge order (Truth3.toFlat, i.e. Flat Bool), and negation. So the gap
logic linglib uses for presupposition is the I-free slice; the glut I is what
trivalence excludes. The bilattice route to natural-language entailment,
implicature, and presupposition is [Sch96a] (see Studies.Schoter1996).
Main results #
Fitting1994.ofTruth3— the embeddingTruth3 → FOURFitting1994.ofTruth3_consistent,consistent_range— its image is exactly the consistent fragmenttLE_ofTruth3,kLE_ofTruth3,neg_ofTruth3—Truth3is the consistent fragment ofFOURas a bilattice (both orders + negation)
The embedding of Truth3 (Kleene-3) into FOUR: indet ↦ ⊥, true ↦ T,
false ↦ F. Its image is exactly the consistent fragment.
Equations
Instances For
The image of ofTruth3 is the whole consistent fragment.
Truth-order match: Truth3's truth order is FOUR's, on the fragment.
Knowledge-order match: Truth3's knowledge order (Truth3.toFlat, i.e.
Flat Bool) is FOUR's knowledge order on the fragment.
Negation match: Kleene negation is FOUR-negation on the fragment.