Complementation
Each atomic fact has a complement; above I called it its evil twin. The fact that his words were apropos has as its complement the fact that his words were malapropos, and conversely.
Since we are treating the atomic facts as unanalyzed wholes, we cannot define this relationship, but introduce it by means of an operator and a postulate:
Postulate: every atomic fact has a unique complement which is also an atomic fact, and is the complement of its own complement.
The operator ^ maps an atomic fact into its complement:
b^^ = b (idempotent)
Complex facts do not have complements, for there are no disjunctive facts. There is no direct route to defining complementation on propositions. But there is an indirect way.
A direct way would be this: the propositions, which are the closed sets of facts, form (as we found above) a complete distributive lattice — now take on the task of defining a complementation operation on this lattice!
The indirect way that I shall follow is this: I will identify sub-lattices on which there is a well-defined complementation operation, and these will suffice for the semantic analysis of the logic of tautological entailment.
In fact, the clue to this is precisely that the propositions of interest are those expressed by the sentences of a language. It is these that should form (to use the term introduced by Nuel Belnap) an intentionally complemented distributive lattice.
The point about sentences is that they are built up systematically from atomic sentences, in each case from a finite number of atomic sentences. An interpretation of the language which assigns propositions to sentences follows this structure, and so produces a countably generated sub-lattice of the right sort.
Prior to the assignment of propositions to sentences I will associate with each sentence A two bases, its T-base T(A) and its F-base F(A), which are the sets of primary facts that make A true, respectively false.
For each atomic sentence p there is an associated fact e, and T(p) = {e}, F(p) = {e^}. Building on that assignment of atomic facts to the atomic sentences, the definition of the bases follows the recursive definition of the set of sentences of a sentential logic. For all sentences A, B:
- T(~A) = F(A); F(~A) = T(A)
- T(A & B) = T(A) . T(B); F(A & B) = F(A) ∪ F(B)
- T(A v B) = T(A) ∪ T(B); F(A v B) = F(A) . F(B)
where the product X.Y = {e.f: e is in X and f is in Y}.
Next we use this to associate a proposition T*(A) with each sentence A, defining it as the closure of the T-base:
T*(A) = [T(A)].
The theorems about propositions in the previous post apply, so that the meet and join are just intersection and union.
T*(A & B) = T*(A) ∩ T*(B), and T*(A v B) = T*(A) ∪ T*(B)
The following two lemmas show that there exists a complementation operation on these propositions.
Lemma. T*(~~A) = T*(A), F(~~A) = F(A)
Proof. T(~~A) = F(~A) = T(A); and since T(~~A) = T(A) their closures are also the same; similarly for the second part.
Lemma. If T*(A) ⊆ T*(B) then T*(~B) ⊆ T*(~A)
Proof: Suppose that T*(A) ⊆ T*(B). Then all facts subordinate to facts in T(A) are subordinate to facts that are subordinate to facts in T(B). But subordination of facts is transitive, so all facts subordinate to facts in T(A) are subordinate to facts in T(B).
So T*(B) includes both T(A) and T(B), hence also T(A) ∪ T(B), that is, T(Av B). So T*(B) = T*(A v B), since all facts subordinate to facts in T(A) are already included among the ones subordinate to those in T(B).
Hence T*(~B) = T*(~(A v B)) = [F(A vB)] = [F(A).F(B)]. This includes all facts subordinate to facts in F(A), because if e is thus, so is e.f for any fact f.
Hence T*(~B) ⊆ [F(A)] = [T(~A)] = T*(~A).
Definition. The operation ^ is defined on the family of propositions {T*(A): A is a sentence}, and Y = X^ if and only if there is a sentence A such that X = T*(A) and Y = T*(~A).
Theorem. The family {T*(A): A is a sentence} form a countably generated sublattice L+ of the lattice of propositions, which is distributive and intensionally complemented, that is, there is an operation ^ such that for all propositions X in L+, X^^ = A (idempotent) and if X ⊆ Y then Y^ ⊆ X^ (order inverting).
Since the family L+ is closed under both intersection and union it is a lattice, and the proof of distributivity is the same as in the preceding post. But it can only be a sublattice, since each element is a proposition generated by a finite base.
The above lemmas show that the operation ^ is idempotent and order inverting.
The logic of tautological entailment is sound and complete for countably generated intensionally complemented distributive lattices (Nuel Belnap 1967). This guarantees then that this logic is sound under the present interpretation.
The claim of completeness for this logic under our interpretation does not follow in the same way. What is peculiar about the sublattice L+ is that its set of atoms (the propositions which are closest to the zero element) is closed under complementation: [{e}]^ = [{e^}]. That is not typical: for example, if a Boolean lattice has three atoms, the complement of one of them is the join of the other two.
Nevertheless our lattices of propositions suffice for the logic of tautological entailment. We need to take the bull by the horns to prove completeness! I will put that in the Appendix, it is the more technical part.
NOTE. That completeness proof is in my 1969 article “Facts and Tautological Entailment”. What is new in these posts, and continued in the Appendix, is to present this semantic analysis in the form that aligns it with the lattice-theoretic approach which Nuel Belnap introduced. At the same time, by doing this, I can show how it fits into the general framework that I presented in the posts called “An Oblique Look at Propositions”.
APPENDIX
Recall from the first post on Tautological Entailment its basic principle (where an atom is either an atomic sentence or the negation of an atomic sentence):
If A is a conjunction of atoms, and B a disjunction of atoms, then A tautologically entails B if and only if at least one conjunct in A is a disjunct in B.
Definition. A primitive entailment (A, hence B) is an argument whose single premise A is a conjunction of atoms and its conclusion B is a disjunction of atoms.
Theorem. A primitive entailment (A, hence B) is valid if and only if A tautologically entails B.
This means that A =(p(1) & … & p(k)) while B = (q(1) v … v q(m)), with each p(i) and q(j) an atom, and hence each has as its T-base a set containing a single atomic fact. The T-base of A is then a single molecular fact e and the T-base of B is a set containing m atomic facts f(1), … ., f(m). For T*(A) to be included in T*(B) requires that at least one component of e is identical with one of the facts f(j). And this requires that at least one conjunct in A is a disjunct in B.
So what about all the other arguments, that don’t have this simple form? In the full exposition of the logic of tautological entailment by Anderson and Belnap, a number of principles are added, which together guarantee that to check any argument will consist in checking a family of primitive entailments. (“conversion into normal form”)
These principles include the basic lattice laws as well as distribution, which we have already dealt with along the way. In addition of course they include the principles of double negation and De Morgan’s Law, which correspond to the idempotency an order inversion of intensional negation. The only thing that we still have to address then, is De Morgan’s Law, which allows the replacement of ~ (A & B) by (~A v ~ B)) and ~(A v B) by (~A & ~B).
Lemma. T(~(A & B)) = T(~A v ~B); T(~(A vB) = T(~A & ~B)
Proof. T(~(A & B)) = F(A & B) = F(A) ∪ F(B) = F(~~A) ∪F(~~B) = T(~A) ∪ T(~B) = T(A v B). Argument for the second part is similar.