Belnap's four values #
Belnap's four values are the diagonal product Bool ⊙ Bool: a value records whether a
proposition has been told true and whether it has been told false. Arieli and Avron develop their
logic as a bilattice, and FOUR is the literature's name for it. The consistent values, those
without a glut, are Kleene's three: SignType.orderIsoConsistent identifies SignType with them,
carrying Strong Kleene negation, conjunction and disjunction to FOUR's negation and truth meet
and join, and the knowledge order of SignType.toFlat to FOUR's.
Main definitions #
Bilattice.FOUR:Bool ⊙ Bool, with the valuesU(neither),T,FandI(both).SignType.toFour: Kleene's values insideFOUR.
Main results #
Bilattice.FOUR.isConsistent_iff,Bilattice.FOUR.isExact_iff: the consistent values are those other thanI, and the exact values areFandT.SignType.orderIsoConsistent:SignTypeis the consistent part ofFOUR.SignType.toFour_neg,SignType.toFour_inf,SignType.toFour_sup,SignType.toFour_kLE_toFour: the identification respects the connectives and both orders.
References #
Belnap's four-valued bilattice FOUR = Bool ⊙ Bool records whether a proposition has been told
true and whether it has been told false ([Bel77]).
Equations
- Bilattice.FOUR = Bilattice.Product Bool Bool
Instances For
The gap ⊥, told neither true nor false.
Equations
- Bilattice.FOUR.U = Bilattice.Product.mk false false
Instances For
The glut ⊤, told both true and false.
Equations
- Bilattice.FOUR.I = Bilattice.Product.mk true true
Instances For
Kleene's three values inside FOUR, sending 0, 1 and -1 to U, T and F.
Equations
- SignType.zero.toFour = Bilattice.FOUR.U
- SignType.pos.toFour = Bilattice.FOUR.T
- SignType.neg.toFour = Bilattice.FOUR.F
Instances For
The exact values among Kleene's are the defined ones ([Fit94] §3).
The knowledge order of SignType is FOUR's on Kleene's values.