An Introduction to Partition Logic David Ellerman Department of Philosophy U. of California/Riverside May 18, 2013 Abstract Classical logic is usually interpreted as the logic of propositions. But from Boole's and DeMorgan's original development up to modern categorical logic, there has always been the alternative interpretation of classical logic as the logic of subsets of any given (nonempty) universe set. Partitions on a universe set are dual to subsets of a universe set in the sense of the category-theoretic duality of epimorphisms and monomorphisms- which is reflected in the duality between quotient objects and subobjects throughout algebra. Hence the idea arises of a dual logic of partitions. That dual logic is described here. In one sense, the logic of partitions is more non-classical than intuitionistic logic, e.g., partition logic is not distributive, but in another sense it is quite classical. For instance, as in classical subset logic, models are constructed from arbitrary unstructured sets (two or more elements) with no ordering relations, compatibility or accessibility relations, or topologies on the sets. Contents 1 Subset Logic and Partition Logic 2 2 The Elements-Distinctions Duality 3 3 Partitions and Equivalence Relations 5 4 Category-theoretic Duality of Subsets and Partitions 6 5 The Lattice of Partitions 9 6 The Implication Operation on Partitions 14 7 The Negation Operation on Partitions 17 8 The Nand Operation on Partitions 18 1 9 Sixteen Binary Operations on Partitions 20 10 Partition Algebra Π(U) on U and its Dual 23 11 Partition Tautologies 27 12 Boolean subalgebras Bπ of Π(U) for any partition π 30 13 The Boolean Cores and Partition Tautologies 33 14 From Partition Logic to Information Theory 36 15 Concluding remarks 38 1 Subset Logic and Partition Logic In classical propositional logic, the atomic variables and compound formulas are usually interpreted as representing propositions. But in terms of mathematical entities, the variables and formulas may be taken as representing subsets of some fixed universe set U , with the propositional interpretation being identified with the subsets 0 and 1 of a one element set 1. Alonzo Church noted that Boole and DeMorgan originally interpreted logic as a logic of classes. The algebra of logic has its beginning in 1847, in the publications of Boole and De Morgan. This concerned itself at first with an algebra or calculus of classes, to which a similar algebra of relations was later added.(5, pp. 155-156) Today, largely due to the efforts of William Lawvere, the modern treatment of logic was reformulated and generalized in what is now called categorical logic. Subsets were generalized to subobjects or "parts" (equivalence classes of monomorphisms) so that logic has become the logic of subobjects or parts in a topos (such as the category of sets).1 In the basic case of the category of sets, it is again the logic of subsets. The propositional calculus considers "Propositions" p, q, r,... combined under the operations "and","or", "implies", and "not", often written as p ∧ q, p ∨ q, p ⇒ q, and ¬p. Alternatively, if P , Q, R,... are subsets of some fixed set U with elements u, each proposition p may be replaced by the proposition u ∈ P for some subset P ⊂ U ; the propositional connectives above then become operations on subsets; intersection ∧, union ∨, implication (P ⇒ Q is ¬P ∨ Q), and complement of subsets. (19, p. 48) 1See Lawvere and Rosebrugh (17, Appendix A) for a good treatment. For the generalization to topos theory see Mac Lane and Moerdijk (19) and for the category theoretic background, the best references for logicians are Mac Lane (18) and Awodey (1). 2 Sometimes the propositional and subset interpretations are "connected" by taking U as a set of "possible worlds" so that subsets would then be the subsets where some proposition was true. While this may be pedagogically useful to introduce the subset interpretation to someone only familiar with the propositional interpretation of "propositional" logic, it is conceptually misleading. The subset interpretation is unrelated to the philosophical problems in trying to describe and delimit "possible worlds". The universe U is a perfectly general abstract set, and the subset interpretation is quite independent of the problems involved in "possible worlds" semantics. In view of the general subset interpretation, "Boolean logic" would be a less misleading name for what is usually called "propositional logic." Using this subset interpretation of the "propositional" connectives such as join, meet, and implication, then a tautology, herein subset tautology, is any formula such that regardless of what subsets of U are assigned to the atomic variables, the whole formula will evaluate to the universe set U . Remarkably, to define subset tautologies, it is sufficient to restrict attention to the special case of a singleton U which is done, in effect, in the usual propositional interpretation where tautologies are defined as truth table tautologies (which should be a theorem, not a definition, indeed a theorem that extends to valid probability formulas (21)). There is a duality between subsets of a set and partitions on a set. "The dual notion (obtained by reversing the arrows) of 'part' is the notion of partition." (17, p. 85) In category theory, this reverse-the-arrows duality gives the duality between monomorphisms, e.g., injective set functions, and epimorphisms, e.g., surjective set functions, and between subobjects and quotient objects. In view of this duality, the idea naturally arises of a logic of partitions on a universe set. The idea also arises in combinatorial theory where Gian-Carlo Rota always emphasized the seminal analogies between the subsets of a set and the partitions on a set. Just as subsets of a set are partially ordered by inclusion, so partitions on a set are partially ordered by refinement. Both partial orderings are in fact lattices (i.e., have meets and joins) with a top element and a bottom element. The development of partition logic outlined here was inspired by both the category-theoretic treatment of logic with its reverse-the-arrows duality between subsets and partitions and by Rota's program to develop the subset-partition analogies.2 2 The Elements-Distinctions Duality The set-of-blocks definition of a partition on a set U is a set of non-empty subsets ("blocks") of U where the blocks are mutually exclusive (the intersection of distinct blocks is empty) and jointly exhaustive (the union of the blocks is U). If subsets are dual to partitions (in the sense of monomorphisms being dual to epimorphisms), then what is the dual concept that corresponds to the notion of elements of a subset? We will eventually see that in order to directly compare 2For the correctness and completeness theorems for a tableau system for partition logic, see Ellerman (8). 3 the formulas of partition logic to the formulas of subset logic, the notion dual to the elements of a subset is the distinctions of a partition which are the pairs of elements in distinct blocks of the partition. The duality between elements of a subset and distinctions of a partition already appears in the very notion of a function between sets. What binary relations, i.e., subsets R ⊆ X × Y , specify functions f : X → Y ? A binary relation R ⊆ X × Y transmits elements if for each element x ∈ X, there is an ordered pair (x, y) ∈ R for some y ∈ Y . A binary relation R ⊆ X × Y reflects elements if for each element y ∈ Y , there is an ordered pair (x, y) ∈ R for some x ∈ X. A binary relation R ⊆ X × Y transmits distinctions if for any pairs (x, y) and (x , y ) in R, if x = x , then y = y . A binary relation R ⊆ X × Y reflects distinctions if for any pairs (x, y) and (x , y ) in R, if y = y , then x = x . The dual role of elements and distinctions can be seen if we translate the usual characterization of the binary relations that define functions into the elements-and-distinctions language. A binary relation R ⊆ X × Y defines a function X → Y if it is defined everywhere on X and is single-valued. But "being defined everywhere" is the same as transmitting elements, and being single-valued is the same as reflecting distinctions: a binary relation R is functional if it transmits elements and reflects distinctions. What about the other two special types of relations, i.e., those which transmit distinctions or reflect elements? The two important special types of functions are the injections and surjections, and they are defined by the other two notions: a functional relation is injective if it transmits distinctions, and a functional relation is surjective if it reflects elements. In view of the dual role of subsets and partitions (and elements and distinctions), it is interesting to note that many basic ideas expressed using subsets such as the notion of a "function" could just as well be expressed in a dual manner using partitions. The dual to the product X × Y is the coproduct X Y which in the category of sets is the disjoint union. If a binary relation is defined as a subset R of the product X × Y , then a binary corelation would be a partition π on the coproduct X Y . Instead of defining a function as a certain type of binary relation (i.e., which transmits elements and reflects distinctions), a function could just as well be defined as a certain type of binary corelation. Let [u]π denote the block of a partition π containing an element u from the universe set of the partition. Then a binary corelation π (a partition on X Y ) is functional if 1) every element x ∈ X is transmitted to some y-block, i.e., ∃y ∈ Y, x ∈ [y]π, and 2) distinctions on Y are reflected as distinctions of π, i.e., if y = y for y, y ∈ Y , then [y]π = [y ]π. 4 Moreover, this definition of a function is quite familiar (with different terminology) in combinatorial theory. For a functional corelation π, there is one and only one block of the partition for each element y ∈ Y so the blocks [y]π can be thought of as "boxes." Then the elements of X can be thought of as "balls" and then a function is just a distribution of the balls into the boxes. Thus the functional corelation definition of a function is just a "disguised" version of the balls-in-boxes definition of a function used in combinatorial theory (23). A functional corelation is injective if distinctions between balls are transmitted as distinctions between boxes ("different balls to different boxes"), i.e., x = x implies [x]π = [x ]π, and is surjective if each box contains at least one ball (i.e., each y is reflected as an x). Although functions were historically defined as functional binary relations, from the mathematical viewpoint, functions could just as well be defined as functional binary corelations. The duality between the two treatments of functions is clear in category theory. Given the diagram f : X → Y in the category of sets, its limit is the functional relation corresponding to f which is called the graph of f , and its colimit is the functional corelation corresponding to f which is called the cograph of f (17, p. 29). 3 Partitions and Equivalence Relations Partitions are often considered in the guise of equivalence relations so it will be useful to first establish some terminology. An equivalence relation is a binary relation E ⊆ U × U that is reflexive, symmetric, and transitive. Every equivalence relation on a set U determines a partition on U where the equivalence classes are the mutually exclusive and jointly exhaustive blocks of the partition. Conversely, every partition on a set determines an equivalence relation on the set (two elements are equivalent if they are in the same block of the partition). The notions of a partition on a set and an equivalence relation on a set are thus interdefinable. Indeed, equivalence relations and partitions are often considered as the "same" as in the conventional practice (N.B. not used here) of defining the "lattice of partitions" as the lattice of equivalence relations. But for the purposes of partition logic, it is important to consider the complementary type of binary relation. A partition relation R ⊆ U × U is irreflexive (i.e., (u, u) ∈ R for any u ∈ U), symmetric [i.e., (u, u ) ∈ R implies (u , u) ∈ R], and anti-transitive in the sense that if (u, u ) ∈ R, then for any a ∈ U , either (u, a) ∈ R or (a, u ) ∈ R [i.e., U × U − R = Rc is transitive]. Thus as binary relations, equivalence relations and partition relations are complementary. That is, E ⊆ U × U is an equivalence relation if and only if (iff) Ec ⊆ U × U is a partition relation. A partition relation is the set of distinctions of a partition. Since intuitionistic logic is the best known non-classical logic and since the variables in intuitionistic propositional logic, i.e., in a Heyting algebra (10), can be interpreted as open subsets in a topological space, it will be useful to develop some analogous notions ("open subset" and "interior operator") for partition logic. There is a natural ("built-in") closure operation on U × U = U2 which 5 makes it a closure space. The closure operation is "built-in" to U in the sense that no topology, ordering relations, or other structure is assumed on U . A subset C ⊆ U2 is closed if it contains the diagonal Δ = {(u, u) | u ∈ U}, if (u, u ) ∈ C implies (u , u) ∈ C, and if (u, u ) and (u , u ) are in C, then (u, u ) is in C. Thus the closed sets of U2 are precisely the equivalence relations on U . The intersection of any number of closed sets is closed. Given a subset S ⊆ U2, the closure S is the reflexive, symmetric, and transitive closure of S. The formation of the closure S can be divided into two steps. First S∗ is formed from S by adding any diagonal pairs (u, u) not already in S and by symmetrizing S, i.e., adding (u , u) if (u, u ) ∈ S. To form the transitive closure of S∗, for any finite sequence u = u1, u2, ..., un = u with (ui, ui+1) ∈ S∗ for i = 1, ..., n − 1, add (u, u ) and (u , u) to the closure. The result is the reflexive, symmetric, and transitive closure S of S. The complements of the closed sets in U ×U are defined as the open sets. Let O (U × U) be the set of open subsets of U ×U , the partition relations on U . As usual, the interior int(S) of any subset S ⊆ U ×U is defined as the complement of the closure of its complement: int(S) = Sc c . It should, however, be carefully noted that the closure space U ×U is not a topological space, i.e., the closure operation on U2 is not a topological closure operation in the sense that the union of two closed set is not necessarily closed (or, equivalently, the intersection of two open sets is not necessarily open). When equivalence relations and partitions were considered as the "same," then the "lattice of partitions," e.g., Birkhoff (2) or Grätzer (12), was traditionally defined as isomorphic to the lattice of equivalence relations where the partial order was inclusion between the equivalence relations as subsets of U ×U . But since equivalence relations and partition relations are complementary subsets of the closure space U × U , we have two anti-isomorphic lattices with opposite partial orders. Which lattice should be used in partition logic? For the purposes of comparing formulas with ordinary logic (interpreted as applying to sets of elements), it is crucial to take the lattice of partitions as (isomorphic to) the lattice of partition relations (sets of distinctions), the opposite of the lattice of equivalence relations. 4 Category-theoretic Duality of Subsets and Partitions The duality between subsets and partitions in the category of sets extends beyond the usual reverse-the-arrows duality that works in any category. In this section, that more extensive duality, which connects subset logic and partition logic, will be elaborated. It was asserted above that the "dual" notion of elements of a subsets was the distinctions of a partition. How does that emerge in the category of sets? The generic element is "the" singleton 1. The generic distinction is "the" pair 2. It was noted above that functions are the binary relations that preserve 6 or transmit elements and that reflect or backwards-transmit distinctions. The basic property of the generic element 1 (which justifies that name) is that for every element u ∈ U in a set, there exists a function 1 u→ U which transmits "elementness" from the generic element 1 to the element u ∈ U . The basic property of the generic distinction 2 (which justifies that name) is that for pair u = u of distinct elements of U , there exists a function U α→ 2 with backwardstransmits "distinctness" from 2 to the pair u = u . If two functions f, g : X → Y are different, then there exists an element x ∈ X such that f (x) = g (x) gives a distinction of Y . By the basic property of the generic element 1, it is a separator in the sense that if f = g, then there is a map 1 → X such that 1 → X f→ Y = 1 → X g→ Y . By the basic property of the generic distinction 2, it is a coseparator in the sense that if f = g, then there is a map Y → 2 such that X f→ Y → 2 = X g→ Y → 2 (17, pp. 18-19). The product in the category of sets can be characterized (up to isomorphism) by the universal mapping property: a set X × Y with maps pX : X × Y → X and pY : X × Y → Y is a product if for any pair of maps Z f→ X and Z g→ Y from a "test set" Z to X and Y , there is a unique factor map f, g : Z → X×Y such that pX f, g = f and pY f, g = g. The generic element 1 is a sufficient test set for the product in the category of sets in the sense that if any candidate product P with a pair of maps p1 : P → X and p2 : P → Y to X and Y satisfied the universal mapping property for any pair of maps from the test set 1 to X and Y , then it satisfies the UMP for any test set Z so that P would be isomorphic to the usual product X × Y constructed as the Cartesian product of X and Y . This property of 1 as being a sufficient test set extends from the product to all limits in the category of sets. The coproduct in the category of sets can be characterized (up to isomorphism) by the universal mapping property: a set X + Y (or X Y ) with maps iX : X → X + Y and iY : X → X + Y is a coproduct if for any pair of maps X f→ Z and Y g→ Z to a "test set" Z from X and Y , there is a unique factor map f, g : X + Y → Z such that f, g iX = f and f, g iY = g.3 The generic distinction 2 is a sufficient test set for the coproduct in the category of sets in the sense that if any candidate product C with a pair of maps i1 : X → C and i2 : Y → C from X and Y satisfied the universal mapping property for any pair of maps to the test set 2 from X and Y , then it satisfies the UMP for any test set Z so that C would be isomorphic to the usual coproduct X + Y constructed as the disjoint union X Y of X and Y (16, p. 272). This property of 2 as being a sufficient test set extends from the coproduct to all colimits in the category of sets. The dual pullback and pushout constructions allow us to represent each partition as a subset of a product and to represent each subset as a partition on a coproduct. Given a partition as a surjection U → π, the pullback of the surjection with 3There does not seem to be a standard notation for the coproduct factor map so we have indicated the duality with the product factor map f, g by reversing the angle brackets. 7 itself, i.e., the kernel pair (18, p. 71) of U → π, gives the indit set indit (π) as a subset of the product U × U , i.e., as a binary (equivalence) relation on U : indit (π) p2−→ U p1 ↓ ↓ U −→ π Pullback for equivalence relation indit (π). Given a subset as an injection S → U , the pushout of the injection with itself, i.e., the cokernel pair (18, p. 66) of S → U , gives a partition Δ (S) on the coproduct (disjoint union) U U , i.e., a binary corelation which might be called a subset corelation: S −→ U ↓ ↓[u∗] U [u]−→ Δ (S) Pushout for subset corelation Δ (S). The disjoint union U U consists of the elements u ∈ U and the copies u∗ of the elements u ∈ U . The subset corelation Δ (S) is constructed by identifying any u and its copy u∗ for u ∈ S so Δ (S) is the partition on U U whose only non-singleton blocks are the pairs {u, u∗} for u ∈ S. The constructions can also be reversed by viewing the pullback square as a pushout square, and by viewing the pushout square as a pullback square. Equivalently, we can reconstruct π as the coequalizer of the two projection maps p1, p2 from indit (π) ⊆ U × U to U (17, p. 89). indit (π) p1 ⇒ p2 U −→ π α ↓∃! 2 Partition π as coequalizer of indit (π) p1−→ U and indit (π) p2−→ U . Dually, we have the two maps U → Δ (S) given by u → [u]Δ(S) and u → [u∗]Δ(S), and the subset S is reconstructed as their equalizer: 1 ∃! ↓ u S → U ⇒ Δ (S) Subset S as equalizer of [u] : U → Δ (S) and [u∗] : U → Δ (S). These duality relations are summarized in the following table. 8 Dualities Elements & Subsets Distinctions & Partitions Generics Generic element 1 Generic distinction 2 Generic property Each element u ∈ U Each distinction u = u realized by some 1→ U realized by some U → 2 Separating functions 1 is a separator 2 is a coseparator Sufficient test set 1 is sufficient for limits 2 is sufficient for colimits Objects Subsets: monos S −→ U Partitions: epis U −→ π Subsets ↔ Partitions Partition Δ (S) on U U Subset indit (π) of U × U is cokernal pair of S → U is kernel pair of U → π Inverse operation Subset S is equalizer Partition π is coequalizer of [u] , [u∗] : U ⇒ Δ (S) of p1, p2 : indit (π)⇒ U Summary of dual relationships in the category of sets The duality between subsets and partitions is given by the general reversethe-arrows duality applied to the category of sets. But the dual roles of the generic element 1 and the generic distinction 2 uses properties more specific to the category of sets and thus does not follow from the general reverse-thearrows duality. In referring to partition logic as the dual to subset logic, we are referring not only to the general reverse-the-arrows duality but to this more extensive duality in the category of sets. 5 The Lattice of Partitions The set-of-blocks definition of a partition π on a set U is a set {B}B∈π of nonempty subsets or "blocks" B ⊆ U that are disjoint and whose union is U . Just as the usual treatment of the Boolean algebra of all subsets of a universe U assumes that U has one or more elements, so our treatment of the lattice of all partitions on U will assume that U has two or more elements. This avoids the "degenerate" special cases of there being only one subset of an empty U and only one partition on a singleton U . A pair (u, u ) ∈ U × U is a distinction or dit (from DIsTinction) of the partition π if there are distinct blocks B,B ∈ π with u ∈ B and u ∈ B . The set of distinctions of a partition π, its dit set denoted dit (π) ⊆ U × U , is the partition seen as a partition relation: dit (π) = B,B ∈π,B=B B ×B (where it is understood that the union includes both the cartesian products B ×B and B ×B for B = B ). A pair (u, u ) ∈ U ×U is an indistinction or indit (from INDIsTinction) of a partition π if u and u belong to the same block of π. The set of indistinctions of a partition π, its indit set denoted indit (π) = U×U−dit (π), is the complementary equivalence relation: 9 indit (π) = B∈π B ×B = U × U − dit (π) = dit (π)c. In terms of the closure space structure on U × U , the open sets (partition relations), denoted O (U × U), are the dit sets dit(π) of partitions, and the complementary closed sets (equivalence relations) are the indit sets indit (π) of partitions. In spite of the functional duality between subsets and partitions, partitions have a more complex structure than subsets. Indeed, there are at least four ways that partitions and operations on partitions might be defined: 1. the basic set-of-blocks definition of partitions and their operations; 2. the closure space approach using open subsets and the interior operator on U × U ; 3. the graph-theoretic approach where the blocks of a partition on U are the nodes in the connected components of a simple (at most one arc between two nodes and no loops at a node) undirected graph;4 and 4. the approach where the blocks of a partition on U are the atoms of a complete Boolean subalgebra of the powerset Boolean algebra P(U) of subsets of U (20). The lattice of partitions Π(U) on U can be defined using the set-of-blocks definition of a partition. The equivalent definitions in terms of the open subsets O (U × U) of the closure space (i.e., dit sets) will also be given so that we can consider the lattice of partitions as being represented by the lattice O (U × U) of open subsets of the closure space U × U , the dit-set representation of Π(U). The partial order in the lattice is the refinement relation: given two partitions π = {B}B∈π and σ = {C}C∈σ, σ π (read "π refines σ" or "σ is refined by π") if for any block B ∈ π, there is a block C ∈ σ with B ⊆ C.5 The equivalent definition using dit sets (i.e., partition relations) is just inclusion: σ π iff dit (σ) ⊆ dit (π). The lattice of partitions Π(U) is the partition analogue of the powerset Boolean lattice P(U). In the powerset lattice, the partial order is inclusion of elements, and in the partition lattice, it is inclusion of distinctions-which further shows the duality of elements and distinctions. 4 See any introduction to graph theory such as Wilson (25) for the basic notions. 5Note that the opposite partial order is called the "refinement" ordering in the customary "upside down" treatment of the lattice of partitions. Gian-Carlo Rota used to joke that it should be called the "unrefinement" relation. Indeed, in a recent book on Rota-style combinatorial theory, that relation is sensibly called "reverse refinement" (14, p. 30). 10 The join π ∨σ is the partition whose blocks are the non-empty intersections B ∩ C of the blocks of the two partitions. The join in the powerset Boolean algebra is given by the union of the subsets of elements and the equivalent dit-set definition in O (U × U) is simply the union of the sets of distinctions: dit (π ∨ σ) = dit (π) ∪ dit (σ). Recall that the closure operator on the closure space was not topological in the sense that the union of two closed sets is not necessarily closed and thus the intersection of two open sets (i.e., two dit sets) is not necessarily open. Hence the definition of the meet of two partitions requires some more complication. In O (U × U), the dit set of the meet of two partitions is the interior of the intersection of the two dit sets, i.e., dit (σ ∧ π) = int (dit (σ) ∩ dit (π)). In a topological space, the intersection of two open subsets is open so in the topological interpretation of a Heyting algebra, the interior operator is not necessary in the interpretation of the meet. For the set-of-blocks definition of the meet of two partitions {B}B∈π and {C}C∈σ in Π(U), two elements u and u are directly equated, u ∼ u if u and u are in the same block of π or σ so the set of directly equated pairs is: indit (σ)∪ indit (π). Then u and u are equated in the meet of the two partitions if there is a finite sequence u = u1 ∼ u2 ∼ ... ∼ un = u that indirectly equates u and u . The operation of indirectly equating two elements is just the closure operation in the closure space so the set of pairs indirectly equated, i.e., equated in the meet σ ∧ π in Π(U), is: indit (σ ∧ π) = (indit (σ) ∪ indit (π)). The complementary subset of U ×U is the dit set of the meet of the partitions: dit (σ ∧ π) = indit (σ ∧ π)c = (indit (σ) ∪ indit (π))c = int (dit (σ) ∩ dit (π)). That completes the definition of the lattice of partitions Π(U) and its representation as the lattice O (U × U) of open subsets of the product U × U : Π(U) ∼= O (U × U) . Representation of the lattice of partitions Π(U) as the lattice of open subsets O (U × U) The analogies between the lattice of subsets P(U) and the lattice of partitions Π(U) are summarized in the following table. 11 Dualities Boolean lattice of subsets Lattice of partitions "Elements" Elements of subsets Distinctions of partitions Partial order Inclusion of elements Inclusion of distinctions Join Elements of join are Distinctions of join are union of elements union of distinctions Meet Largest subset Largest partition of only common elements of only common distinctions Top Subset U with all elements Partition 1 with all distinctions Bottom Subset ∅ with no elements Partition 0 with no distinctions Elements-distinctions dualities between the Boolean lattice of subsets and the lattice of partitions Due to the complexity of the meet operation on partitions, it might be useful to also give the definitions using graph theory. The graph-theoretic approach allows a very intuitive connection back to the truth tables of classical propositional logic. The truth tables for the classical Boolean propositional connectives can be stated in an abbreviated form using signed formulas such as T (π ∧ σ) or Fσ. The truth table for the Boolean meet π∧σ is abbreviated by saying the Boolean conditions for T (π ∧ σ) are "Tπ and Tσ" while the Boolean conditions for F (π ∧ σ) are "Fπ or Fσ". Thus for the four Boolean operations of join π∨σ, meet π∧σ, implication σ ⇒ π, and Sheffer stroke, not-and or nand σ | π, the table of Boolean conditions is as follows: Signed Formula T (π ∨ σ) F (π ∨ σ) T (σ ⇒ π) F (σ ⇒ π) Boolean Cond. Tπ or Tσ Fπ and Fσ Fσ or Tπ Tσ and Fπ Boolean conditions for ∨ and ⇒, and Signed Formula T (π ∧ σ) F (π ∧ σ) T (σ | π) F (σ | π) Boolean Cond. Tπ and Tσ Fπ or Fσ Fσ or Fπ Tσ and Tπ Boolean conditions for ∧ and |. Given any partition π on U , and any pair of elements (u, u ), we say that Tπ holds at (u, u ) if (u, u ) is a distinction of π, and that Fπ holds at (u, u ) if (u, u ) is not a distinction of π, i.e., if u and u are in the same block of π. Given any two partitions π and σ on U , we can define the partition version of any Boolean connective π ∗ σ by putting an arc between any two nodes u and u if the Boolean conditions for F (π ∗ σ) hold at (u, u ). Then the blocks of the partition operation π ∗σ are the nodes in the connected components of that graph. Thus two elements u and u are in the same block of the partition π ∗ σ if there is a chain or finite sequence u = u1, u 2, ..., un−1, un = u such that for each i = 1, ..., n− 1, the Boolean conditions for F (π ∗ σ) hold at (ui, ui+1). In order for π ∗ σ to distinguish u and u , it has to "cut" them apart in the sense of the graph-theoretic notion of a "cut" which is the graph-theoretic dual to the notion of a chain (22, p. 31). A set arcs in a graph form a cut between the nodes u and u is every chain connecting u and u contain an arc from the set-so that the set of arcs cut every chain connecting the two points. The 12 above graph-theoretic definition of π ∗ σ, i.e., two points are not distinguished if there is chain connecting the points with the Boolean conditions for F (π ∗ σ) holding at each link, can be stated in an equivalent dual form. Two points are distinguished in π ∗σ if the set of arcs where T (π ∗ σ) holds form a cut between the two points. This graph-theoretic approach can be used to uniformly define all the partition logical operations in terms of the corresponding Boolean logical operations, but the case at hand is the meet. The graph constructed for the meet would have an arc between u and u if the Boolean conditions for F (π ∧ σ) held at (u, u ), i.e., if Fπ or Fσ held at (u, u ). But this just means that (u, u ) ∈ indit (σ)∪indit (π), and the nodes in the connected components of that graph are the nodes u and u connected by a finite sequence u = u1, u 2, ..., un−1, un = u where for each i = 1, ..., n − 1, (ui, ui+1) ∈ indit (σ) ∪ indit (π), which is the closure space definition of the meet given above. Example 1 Let σ = {{a, b, c} , {d}} and π = {{a, b} , {c, d}}. In the graph below, all the arcs in the complete graph K4 on four nodes are labelled according to the status of the two endpoints in the two partitions. The Boolean conditions for F (σ ∧ π) are "Fσ or Fπ" . The arcs where those conditions hold are thickened. In the graph with only the thick arcs, there is only one connected component so σ ∧ π = {{a, b, c, d}} = 0. Equivalently, the set of arcs where the Boolean conditions for T (σ ∧ π) hold, i.e., the thin arcs, do not "cut" apart any pair of points. Graph for σ ∧ π For the Boolean subalgebra approach, given a partition π on U , define B (π) ⊆ P(U) as the complete subalgebra generated by the blocks of π as the atoms so that all the elements of B (π) are formed as the arbitrary unions and intersections of blocks of π. Conversely, given any complete subalgebra B of P(U), the intersection of all elements of B containing an element u ∈ U will provide the atoms of B which are the blocks in a partition π on U so that B = B (π). Thus an operation on complete subalgebras of the powerset Boolean algebra will define a partition operation. Since the blocks of the partition meet π ∧ σ are minimal under the property of being the exact union of π-blocks and also the exact union of σ-blocks, a nice feature of this approach to partitions is that: 13 B (π ∧ σ) = B (π) ∩ B (σ). The bottom of the lattice of partitions Π(U) is the indiscrete partition 0 = {U} (nicknamed the "blob") with the null dit set dit(0) = ∅ (no distinctions). The blob distinguishes nothing and is refined by all partitions on U . The top of the lattice of partitions is the discrete partition 1 = {{u} : u ∈ U} where all blocks are singletons and whose dit set is all ordered pairs off the diagonal, i.e., dit(1) = U × U −Δ where Δ = {(u, u) : u ∈ U}. The discrete partition refines all partitions on U . In the analogy between the powerset lattice P(U) and the lattice of partitions Π(U), the top of the lattice of subsets has all the elements and the top of the lattice of partitions has all the distinctions, while the bottom of subset lattice has no elements and the bottom of the partition lattice has no distinctions.6 The powerset Boolean algebra (BA) P(U) is not just a lattice; it has additional structure which can be defined using the binary connective of the set implication: A⇒ B = (U −A) ∪B = Ac ∪B, for A,B ⊆ U . The lattice structure on Π(U) needs to be enriched with other operations such as the binary operation of "implication" on partitions. 6 The Implication Operation on Partitions How might the implication partition σ ⇒ π of two partitions be defined? Some motivation might be extracted from Heyting algebras, or, equivalently, intuitionistic propositional logic. The subset version of intuitionistic propositional logic is explicit in its topological interpretation where the variables are interpreted as open subsets of a topological space U . Given two open subsets A and B, the subset implication A ⇒ B = Ac ∪ B is not necessarily open but the topological interior operator may be applied to arrive at an open subset. The Heyting algebra implication can be defined as: A ⇒ B = int(Ac ∪ B) for open subsets A and B which gives the classical definition if the topology is discrete. Since we have an interior operator on the (non-topological) closure space U×U , this suggests that the implication partition σ ⇒ π might be defined using the closure-space approach by: dit (σ ⇒ π) = int (dit (σ)c ∪ dit (π)). This dit-set definition is easily seen to be equivalent to the graph-theoretic definition. The Boolean conditions for F (σ ⇒ π) are "Tσ and Fπ" so by the graph-theoretic definition, two nodes u and u are in the same block of the partition σ ⇒ π if they are connected by a finite chain of pairs (ui, ui+1) with Tσ and Fπ holding at each pair, i.e., (ui, ui+1) ∈ dit (σ)∩ indit (π). Thus u and u are in the same block by the graph-theoretic definition if (u, u ) ∈ (dit (σ) ∩ indit (π)) = (dit (σ)c ∪ dit (π))c 6For a survey of what is known about partition lattices, see Grätzer (12) where the usual opposite presentation is used. 14 which is precisely the indit set by the closure-space definition: indit (σ ⇒ π) = dit (σ ⇒ π)c = [int (dit (σ)c ∪ dit (π))]c = (dit (σ) c ∪ dit (π))c . Since the dit-set definition of σ ⇒ π involves the interior operator on the closure space U × U and the graph-theoretic definition involves the equivalent consideration of connected components of a graph, it would be very convenient to have a direct set-of-blocks definition of the implication partition σ ⇒ π. From Boolean algebras and Heyting algebras, we can extract one desideratum for the implication σ ⇒ π: if σ ≤ π in the partial order of the Boolean or Heyting algebra, then and only then σ ⇒ π = 1. Hence for any partitions σ and π on U , if σ is refined by π, i.e., σ π in Π(U), then and only then we should have σ ⇒ π = 1 (the discrete partition). The property is realized by the simple set-of-blocks definition of the implication, temporarily denoted as σ ∗⇒ π, that if a block B ∈ π is contained in a block C ∈ σ, then B is "discretized," i.e., replaced by singleton blocks {u} for all u ∈ B, in the implication σ ∗⇒ π and otherwise the block B remains the same. The following proposition says that the dit-set definition is the same as the set-of-blocks definition so that either may be used to define the partition implication σ ⇒ π. Proposition 1 σ ⇒ π = σ ∗⇒ π. Proof: By the two definitions, dit (π) ⊆ dit (σ ⇒ π) and dit (π) ⊆ dit σ ∗⇒ π with the reverse inclusions holding between the indit sets. We prove the proposition by showing that dit σ ∗⇒ π ⊆ dit (σ ⇒ π) and that indit σ ∗⇒ π ⊆ indit (σ ⇒ π) where indit (σ ⇒ π) = (indit (π)− indit (σ)). Now suppose that (u, u ) ∈ indit σ ∗⇒ π where indit σ ∗⇒ π ⊆ indit (π) so that u, u ∈ B for some block B ∈ π. Moreover if B were contained in any block C ∈ σ, then (u, u ) ∈ dit σ ∗⇒ π = indit σ ∗⇒ π c contrary to assumption so B is not contained in any C ∈ σ. If u and u were in different blocks of σ then (u, u ) ∈ indit (σ) so that (u, u ) would not be subtracted off in the formation of indit (σ ⇒ π) = (indit (π)− indit (σ)) and thus would be in indit (σ ⇒ π) which was to be shown. Hence we may assume that u and u are in the same block C ∈ σ. Thus (u, u ) was subtracted off in indit (π)−indit (σ) and we need to show that it is restored in the closure (indit (π)− indit (σ)). Since u, u ∈ B ∩ C but B is not contained in any one block of σ, there is another σ-block C such that B∩C = ∅. Let u ∈ B∩C . Then (u, u ) and (u , u ) are not in indit (σ) since u, u ∈ C and u ∈ C but those two pairs are in indit (π) since u, u , u ∈ B. Hence the pairs (u, u ) , (u , u ) ∈ indit (π)− indit (σ) = indit (π)∩dit (σ) which implies that (u, u )must be in the closure indit (σ ⇒ π) = (indit (π)− indit (σ)). That establishes indit σ ∗⇒ π ⊆ indit (σ ⇒ π). To prove the converse in the form dit σ ∗⇒ π ⊆ dit (σ ⇒ π), assume (u, u ) ∈ dit σ ∗⇒ π . Since dit (π) ⊆ dit (σ ⇒ π), we would be finished if (u, u ) ∈ 15 dit (π). Hence assume (u, u ) ∈ dit (π) so that u, u ∈ B for some π-block B and (u, u ) is one of the new dits added when σ ∗⇒ π is formed from π. Thus B ⊆ C for some σ-block C so that (u, u ) ∈ indit (σ) and (u, u ) is not in the difference indit (π) − indit (σ) = indit (π) ∩ dit (σ) (which is a symmetric relation). It remains to show that it is not in the closure indit (σ ⇒ π) = (indit (π)− indit (σ)). To be in the closure, there would have to be some sequence u = u1, u2, ..., un = u such that (ui, ui+1) ∈ indit (π) − indit (σ) = indit (π) ∩ dit (σ) for i = 1, ..., n − 1. But since all the (ui, ui+1) ∈ indit (π) and u = u1 ∈ B, all the u = u1, u2, ..., un = u ∈ B and B ⊆ C so all the pairs (ui, ui+1) ∈ indit (σ) which contradicts those pairs being in the difference indit (π) − indit (σ) = indit (π) ∩ dit (σ). Hence (u, u ) is not in the closure indit (σ ⇒ π) = (indit (π)− indit (σ)) so (u, u ) is in the complement dit (σ ⇒ π) = indit (σ ⇒ π)c which completes the proof of the proposition. Hence we may drop the temporary notation σ ∗⇒ π and consider the partition implication σ ⇒ π as characterized by the set-of-blocks definition: form σ ⇒ π from π by discretizing any block B ∈ π contained in a block C ∈ σ. The implication partition σ ⇒ π can be interpreted as a Boolean probe for containment between blocks. If B ⊆ C for some C ∈ σ, then the probe finds containment and this is indicated by setting the π-block B locally equal to 1, i.e., by discretizing B, and otherwise B stays locally like 0, i.e., stays as a whole block (or "mini-blob") B. Whenever the refinement relation σ π holds, then all the non-singleton blocks B ∈ π are discretized in σ ⇒ π (and the singleton blocks are already discrete) so that σ ⇒ π = 1 (and vice-versa). Example 2 The equivalent graphical definition of the implication will be used to compute an example. Again let σ = {{a, b, c} , {d}} and π = {{a, b} , {c, d}}. In the graph below, all the arcs in the complete graph K4 have the same labels as in the previous example since σ and π are the same. But the Boolean conditions for F (σ ⇒ π) are "Tσ and Fπ". Only one arc connecting c and d satisfies that condition so it is thickened. In the graph with only the thickened arc, there are three connected components which give the blocks of the implication: σ ⇒ π = {{a} , {b} , {c, d}}. Note that this agrees with the set-of-blocks definition of the partition implication. Since {a, b} ∈ π is the only block of π contained in a block of σ, σ ⇒ π is like π except that {a, b} is discretized. 16 Graph for σ ⇒ π 7 The Negation Operation on Partitions In intuitionistic logic, the negation ¬σ would be defined as the implication σ ⇒ 0 with the consequent taken as the zero element 0, i.e., ¬σ = σ ⇒ 0. In the topological interpretation using open subsets, σ would be an open subset and ¬σ would be the interior of its complement. Adapted to partitions, these give the following dit-set definition of the partition negation (since dit (0) = ∅): dit (¬σ) = int (dit (σ)c) = int (dit (σ)c ∪ dit (0)) = dit (σ ⇒ 0). The graph-theoretic approach can also used for the unary operation of negation. In the truth table for negation, the Boolean condition for F (¬σ) is Tσ so the graph for ¬σ has an arc between u and u if Tσ holds at (u, u ). In graph-theoretic terms, that is the complement of the graph which had an arc between u and u if Fσ held at (u, u ), i.e., u and u were in the same block of σ. By the dit-set definition, indit (¬σ) = {int (dit (σ)c)}c = {dit (σ)cc}cc = {dit (σ)} so the dit-set and graph-theoretic definitions are equivalent. A graph is said to be connected if it has only one connected component, and otherwise disconnected. Thus a simple undirected graph is connected iff the partition given by its connected components is the indiscrete partition or blob 0. If a partition σ is not the blob, then the graph with arcs wherever Fσ holds would be disconnected. It is a standard result of graph theory that the complement of any disconnected graph is connected (25, p. 30). But this means that the graph constructed for the negation ¬σ of any non-blob partition σ must be connected, i.e., ¬σ = 0. If σ = 0, then dit (σ) = ∅ so there are no arcs in the graph for ¬σ and thus the connected components are the singletons, i.e., ¬0 = 1. Thus negation is a rather trivial operation on partitions; the negation of any non-zero partition is zero and the negation of zero is one. There is however one consequence worth noting. If π and σ were both nonzero partitions then their dit sets would be non-empty. If those non-empty dit sets were disjoint then dit (π) ⊆ dit (σ)c so taking interiors, dit (π) = int (dit (π)) ⊆ int (dit (σ)c) = dit (¬σ) = ∅ contrary to the assumption that dit (π) was non-empty. Hence any two nonempty dit sets must have a non-empty intersection. That is, given any two non-zero partitions π and σ on U , there exists a pair u and u that are in distinct blocks of π and are in distinct blocks of σ. Lemma 3 (Common-dits property) All non-empty dit sets have some dits in common. 17 The contrapositive form of the common-dits property is that if the union of two equivalence relations is the universal equivalence relation, i.e., indit (π) ∪ indit (σ) = U ×U , then one of the equivalence relations is already the universal one, i.e., indit (π) = U × U or indit (σ) = U × U . Negation becomes more interesting if we generalize by replacing the blob in the definition ¬σ = σ ⇒ 0 by an arbitrary but fixed partition π. This leads to the notion of the π-negation of a partition σ which is just the implication σ ⇒ π with the fixed partition π as the consequent. We added a π to the negation symbol to represent this negation relative to π: π-negation: π¬σ = σ ⇒ π. The unadorned negation ¬σ is the 0-negation, i.e., ¬σ = σ ⇒ 0. Using this suggestive notation, the partition tautology that internalizes modus ponens, (σ ∧ (σ ⇒ π))⇒ π, is the law of non-contradiction, π¬ σ ∧ π¬σ , for π-negation. While it is useful to establish the notion of partition negation, it need not be taken as a primitive operation. 8 The Nand Operation on Partitions In addition to the lattice operations of the join and meet, and the implication operation, we introduce the Sheffer stroke, not-and, or nand operation σ | τ , with the dit-set definition: dit (σ | τ) = int [indit (σ) ∪ indit (τ)]. For the graph-theoretic definition consider the graph whose nodes are the elements u ∈ U and where there is an arc connecting u and u if the Boolean conditions for F (σ | τ), namely "Tσ and T τ", hold at (u, u ). Thus u and u are in the same connected component if (u, u ) ∈ {dit (σ) ∩ dit (τ)} = [indit (σ) ∪ indit (τ)]c, and thus they are a distinction if and only if they are in the complement of the closure which is the interior: int [indit (σ) ∪ indit (τ)]. Hence this graphtheoretic definition of the nand operation is the same as the dit-set definition. To turn it into a set-of-blocks definition where σ = {C}C∈σ and τ = {D}D∈τ , note that each element u and u is in a unique intersection of blocks from the two partitions. If u ∈ C ∩D and u ∈ C ∩D , then if u ∼ u because C = C and D = D then all the elements of C ∩D and C ∩D are in the same block of the nand σ | τ . But if for any non-empty C ∩ D, there is no other block C ∩D of the join with C = C and D = D , then the elements of C ∩D would not even be connected with each other so they would be singletons in the nand. Hence for the set-of-blocks definition of the nand σ | τ , the blocks of the nand partition are formed by taking the unions of any join blocks C ∩D and C ∩D which differ in both "components" but by taking as singletons the elements of any C ∩D which does not differ from any other join block in both components. 18 Example 4 The equivalent graphical definition of the nand operation will be used to compute an example. Again let σ = {{a, b, c} , {d}} and π = {{a, b} , {c, d}}. The Boolean conditions for F (σ | π) are "Tσ and Tπ" so those arcs are thickened in the following graph. The partition nand is then given as the connected components of the graph with only the thickened arcs: σ | π = {{a, b, d} , {c}}. Graph for σ | π Example 5 If σ = {C,C } where C = {u} and C = U − {u} and τ = {D,D } where D = U − {u } and D = {u }, then σ ∨ τ = {{u} , {u } , U − {u, u }}. Hence u ∈ C ∩D = {u} ∩ (U − {u }) and u ∈ C ∩D = (U − {u}) ∩ {u } so u ∼ u in the graph for σ | τ . But the elements u ∈ C ∩D = U − {u, u } are not connected to any other elements since C ∪D = (U − {u})∪ (U − {u }) = U so they are all singletons in the nand. Hence σ | τ = {{u, u } , {u } , ...}. As in subset logic, negation in partition logic can be defined using the nand: σ | σ = ¬σ. In fact, if σ τ , then σ | τ = ¬σ. For example, since σ is always refined by τ ⇒ σ for any τ , σ | (τ ⇒ σ) = ¬σ. The formula σ | σ = ¬σ is also a special case of the formula (σ | τ) ∧ (σ ⇒ τ) = ¬σ derived in the next section. In subset logic, the "and" and the nand subsets would be complements of one another but the relationship is more subtle in partition logic. We say that two partitions φ and φ which refine a partition π, i.e., π φ,φ , are π-orthogonal if π¬φ ∨ π¬φ = 1. Since all partitions refine 0, two partitions φ and φ are 0-orthogonal or, simply, orthogonal if ¬φ ∨ ¬φ = 1.7 Lemma 6 φ and φ are orthogonal, i.e., ¬φ ∨ ¬φ = 1, iff φ | φ = 1. Proof: If ¬φ∨¬φ = 1, then int (indit (φ))∪ int (indit (φ )) = dit (1) = U2−Δ. Then every possible dit (u, u ) for u = u is in either indit (φ) or indit (φ ) so the two partitions have no dits in common. Hence the graph for φ | φ has no arcs and thus the connected components are singletons so φ | φ = 1. Conversely, if φ | φ = 1, then its graph has no arcs so the partitions have no dits in common. But we saw in the last section that any two non-blob partitions must have a dit in common, so one of the partitions is 0 and ¬0 = 1 so that ¬φ ∨ ¬φ = 1. 7The formula ¬φ ∨ ¬φ = 1 is classically equivalent to φ ∧ φ = 0 which is more familiar as a criterion for orthogonality. 19 Just as the unary negation operation ¬φ is usefully generalized by the binary operation π¬φ = φ ⇒ π, so the binary nand operation σ | τ is usefully generalized by the ternary operation of π-nand defined by: dit (σ |π τ) = int (indit (σ) ∪ indit (τ) ∪ dit (π)). Then a similar argument shows that for π φ,φ : φ and φ are π-orthogonal iff φ |π φ = 1. If two partitions are orthogonal and one of the partitions is non-zero, then the other partition must be zero. If φ and φ are orthogonal, i.e., φ | φ = 1, then φ ∧ φ = 0 follows but not vice-versa. For instance on the three element set U = {a, b, c} with φ = {{a, b} , {c}} and φ = {{a} , {b, c}}, then φ ∧ φ = 0 but φ | φ = {{a, c} , {b}} = 1 as can easily be seen by drawing the graph. Every partition σ and its 0-negation ¬σ are orthogonal since ¬σ∨¬¬σ = 1. In the example above, the meet of σ = {{u} , U − {u}} and τ = {{u } , U − {u }} is σ ∧ τ = 0 and ¬0 = 1 but σ | τ = 1 so the negation ¬ (σ ∧ τ) is not necessarily the same as the nand σ | τ . However, the "and" or meet σ ∧ τ and the "not-and" or nand σ | τ are orthogonal; if one is non-zero, the other must be zero. Thus no pair (u, u ) can be a dit of both and hence: (σ | τ) | (σ ∧ τ) = 1 always holds for any σ and τ , i.e., (σ | τ) | (σ ∧ τ) is a partition tautology. The same example above shows that the nand σ | τ is also not the same as ¬σ ∨ ¬τ (which equals 0 in the example). Although the three formulas are equal in subset logic, in partition logic we only have the following refinement relations holding in general: ¬σ ∨ ¬τ σ | τ ¬ (σ ∧ τ). Since only one direction ¬σ ∨ ¬τ ¬ (σ ∧ τ) holds in general, the "strong" DeMorgan law ¬σ ∨ ¬τ = ¬ (σ ∧ τ) does not hold in partition logic. However, the other "weak" DeMorgan law holds in partition logic even for π-negation, i.e., π¬ (σ ∨ τ) = π¬σ ∧ π¬τ . 9 Sixteen Binary Operations on Partitions What other partition operations might be defined? For binary operations σ ∗ τ on Boolean 0, 1 variables σ and τ , there are four combinations of values for σ and τ , and thus there are 24 = 16 possible binary Boolean operations: 2× 2→ 2. Thinking in terms of subsets S, T ⊆ U instead of Boolean propositional variables, there are the four basic regions in the general position Venn diagram for S and T , namely S∪T , S∪T c, Sc∪T , and Sc∪T c, which are the four possible conjuncts in the conjunctive normal form expression for a formula with two variables. Then there are again 24 = 16 subsets of the set of those four conjuncts, and thus there are sixteen subsets of U defined by taking the intersections of the basic regions in each subset of the four conjuncts (where the empty intersection 20 is all of U). That defines what might reasonably be called the 16 binary logical operations on subsets of U . Now take S = dit (σ) and T = dit (τ) as subsets of U × U and define the 16 subsets of U×U in the same way. Some of these such as S∪T = dit (σ)∪dit (τ) = dit (σ ∨ τ) will be open and thus will be the dit sets of partitions on U . For those which are not already open, we must apply the interior operator to get the dit set of a partition on U . This gives 16 binary operations on partitions that would naturally be called logical since they are immediately paired with the corresponding 16 binary logical operations on subsets. We will use the same notation for the partition operations. For instance, for subsets S, T ⊆ U , the conditional or implication subset is Sc ∪ T = S ⇒ T . When S = dit (σ) and T = dit (τ) as subsets of U ×U , the subset Sc ∪ T is not necessarily open so we must apply the interior operator to get the dit set defining the corresponding implication operation on partitions, i.e., int [dit (σ) c ∪ dit (τ)] = dit (σ ⇒ τ). In both subset and partition logic, there are only two nullary operations (constants), 0 and 1. With unary operations, the situation is still straightforward. There are only four Boolean unary operations, identity and negation (or complementation) in addition to the two nullary operations (seen as constant unary operations). These immediately yield the partition operations of identity and negation in addition to the two partition constant operations. If these partition operations are compounded, then the new unary operation on partitions of double negation is generated. But that is all since the triple negation is the same as the single negation and the constants of 0 and 1 are interchanged under negation. Thus we may reasonably say that there are only five logical unary operations for partitions: 0, 1, σ, ¬σ, and ¬¬σ. The situation for binary partition operations is more complicated. If the sixteen binary operations on subsets are compounded, then the result is always one of the sixteen binary operations. But the presence of the interior operator significantly changes the partition case so the result of compounding any of the sixteen binary operations on partitions may well be a new binary operation. Perhaps there is a Kuratowski-like result (15) showing that there is a certain finite number of binary operations on partitions that could be defined from all the possible combinations of the sixteen binary operations. But for our present purposes, we will settle for being able to define the sixteen binary logical operations on partitions that correspond to the sixteen logical subset binary operations. There are many new binary operations on partitions, e.g., ¬ (σ ∧ τ) and ¬σ ∨ ¬τ (noted in the analysis of σ | τ), obtained by compounding these sixteen operations and they could just as well be called "logical" operations. Which binary operations suffice to define all the sixteen operations? The four operations, the join, meet, implication, and nand, suffice to define the sixteen binary partition operations by using the partition version of conjunctive normal form-which, in turn, is based on the following result. Lemma 7 For any subsets A,B ⊆ U × U , int [A ∩B] = int [int (A) ∩ int (B)]. Proof: Clearly int [int (A) ∩ int (B)] ⊆ int [A ∩B] so to prove the converse, 21 assume (u, u ) ∈ int [A ∩B] = [(A ∩B)c]c which means that (u, u ) is not in the complement which is the closure of (A ∩B)c, i.e., (u, u ) ∈ [Ac ∪Bc]. Now if (u, u ) is not in int [int (A) ∩ int (B)], then (u, u ) ∈ [int (A)c ∪ int (B)c] where int (A) c = (Ac) and similarly for B. A u, u -chain is a finite sequence u = u1, u2, ..., un, un+1 = u of elements of U with u and u as the endpoints. For (u, u ) to be in the closure [int (A) c ∪ int (B)c] means there is a u, u;-chain u = u1, u2, ..., un, un+1 = u such that for i = 1, ..., n, the link (ui, ui+1) is in (Ac) or in (Bc). If, say, (ui, ui+1) ∈ (Ac), then there is similarly a ui, ui+1chain of elements, with each successive pair in Ac, connecting ui and ui+1, and similarly if (ui, ui+1) ∈ (Bc). Replacing each (ui, ui+1) by a finite chain with successive pairs in Ac or in Bc, we arrive at a u, u -chain with each successive pair in Ac ∪ Bc so that (u, u ) ∈ [Ac ∪Bc] contrary to the assumption. Hence int [A ∩B] ⊆ int [int (A) ∩ int (B)] and the result follows. In the subset version of the conjunctive normal form, the 15 non-universal subsets are obtained by taking the intersections of 15 combinations of the four regions: S ∪T , S ∪T c, Sc∪T , and Sc∪T c. Taking S = dit (σ) and T = dit (τ), the interiors of these four basic "conjuncts" are, respectively, the dit sets of: σ ∨ τ , τ ⇒ σ, σ ⇒ τ , and σ | τ . By expressing each of the 15 non-universal subsets of U×U in conjunctive normal form, applying the interior operator, and then using the lemma to distribute the interior operator across the intersections, we express each of the 15 partition operations (aside from the constant 1) as a meet of some combination of the join σ ∨ τ , the implications τ ⇒ σ and σ ⇒ τ , and the nand σ | τ . The constant operation 1 can be obtained using just the implication σ ⇒ σ or τ ⇒ τ . These results and some other easy reductions are given in the following table where the interior of the subset of U ×U in the first column yields the dit set of the binary operation given in the second column.8 15 regions Conjunctive Normal Form Binary operation on partitions (S ∪ T ) ∩ (Sc ∪ T ) ∩ (S ∪ T c) ∩ (Sc ∪ T c) 0 (Sc ∪ T ) ∩ (S ∪ T c) ∩ (Sc ∪ T c) σ∨τ = ¬σ ∧ ¬τ (S ∪ T ) ∩ (S ∪ T c) ∩ (Sc ∪ T c) τ σ = σ ∧ ¬τ (S ∪ T c) ∩ (Sc ∪ T c) ¬τ = τ ⇒ 0 (S ∪ T ) ∩ (Sc ∪ T ) ∩ (Sc ∪ T c) σ τ = ¬σ ∧ τ (Sc ∪ T ) ∩ (Sc ∪ T c) ¬σ = σ ⇒ 0 (S ∪ T ) ∩ (Sc ∪ T c) σ ≡ τ Sc ∪ T c σ | τ (S ∪ T ) ∩ (Sc ∪ T ) ∩ (S ∪ T c) σ ∧ τ (Sc ∪ T ) ∩ (T c ∪ S) σ ≡ τ (S ∪ T ) ∩ (S ∪ T c) σ S ∪ T c τ ⇒ σ (S ∪ T ) ∩ (Sc ∪ T ) τ Sc ∪ T σ ⇒ τ S ∪ T σ ∨ τ Interior of column 1 gives partition operation in column 2 8For notation, we have followed, for the most part, Church (5). 22 Using the lemma, the interior is distributed across the intersections of the subset CNF to give the partition CNF in the following table. Binary operation Partition CNF for 15 binary operations 0 = (σ ∨ τ) ∧ (σ ⇒ τ) ∧ (τ ⇒ σ) ∧ (σ | τ) σ∨τ = ¬σ ∧ ¬τ = (σ ⇒ τ) ∧ (τ ⇒ σ) ∧ (σ | τ) τ σ = σ ∧ ¬τ = (σ ∨ τ) ∧ (τ ⇒ σ) ∧ (σ | τ) ¬τ = τ ⇒ 0 = (τ ⇒ σ) ∧ (σ | τ) σ τ = ¬σ ∧ τ = (σ ∨ τ) ∧ (σ ⇒ τ) ∧ (σ | τ) ¬σ = σ ⇒ 0 = (σ ⇒ τ) ∧ (σ | τ) σ ≡ τ = (σ ∨ τ) ∧ (σ | τ) σ | τ = σ | τ σ ∧ τ = (σ ∨ τ) ∧ (σ ⇒ τ) ∧ (τ ⇒ σ) σ ≡ τ = (σ ⇒ τ) ∧ (τ ⇒ σ) σ = (σ ∨ τ) ∧ (τ ⇒ σ) τ ⇒ σ = τ ⇒ σ τ = (σ ∨ τ) ∧ (σ ⇒ τ) σ ⇒ τ = σ ⇒ τ σ ∨ τ = σ ∨ τ Distributing interior across intersections gives partition CNF In classical subset logic, these 15 binary operations on subsets plus the universe set would be closed under combining the operations so we would have the reduction of all formulas in two variables to conjunctive normal form. But in partition logic, these functions are not at all closed under combinations, e.g., the double negation ¬¬σ is in general distinct from σ and ¬σ, so we have only derived the conjunctive normal form for the 15 binary operations. The point was to show that the 15 functions, and thus all their further combinations, could be defined in terms of the four primitive operations of join, meet, implication, and nand.9 The fourteen non-zero operations occur in natural pairs: ⇒ and , ⇐ and , ≡ and ≡, ∨ and ∨, and ∧ and | in addition to σ and ¬σ, and τ and ¬τ . Except in the case of the join ∨ (and, of course, σ and τ), the second operation in the pair is not the negation of the first. The relationship is not negation but 0-orthogonality. The pairs of formulas σ ⇒ τ and σ τ (and similarly for the other pairs) are 0-orthogonal; if one is non-zero, the other must be zero. Later we see a different pairing of the operations by duality. 10 Partition Algebra Π(U) on U and its Dual The partition lattice of all partitions on U enriched with the binary operations of implication and nand is the partition algebra Π (U) of U . It plays the role for 9There are other combinations which can be taken as primitive since the inequivalence, symmetric difference, exclusive-or, or xor σ ≡ τ can be used to define the nand operation: ((σ ∨ τ)⇒ (σ ≡ τ)) = σ | τ . 23 partition logic that the Boolean algebra P(U) of all subsets of U plays in ordinary subset logic. Dualization in classical propositional logic-when expressed in terms of subsets-amounts to reformulating the operations as operations on subset complements. But since the complements are in the same Boolean algebra, Boolean or classical duality can be expressed as a theorem about a Boolean algebra. We have defined the lattice of partitions (sets of disjoint and mutually exhaustive non-empty subsets of a set) as being isomorphic to the lattice of partition relations on U × U (anti-reflexive, symmetric, and anti-transitive relations). Rather than multiply notations, we have used Π(U) to refer ambiguously to both those isomorphic lattices. The complement of a partition relation is an equivalence relation which is not an element in the same lattice. Hence in partition logic, duality is naturally expressed as a relationship between the partition algebra Π(U) (seen as the algebra of partition relations) and the dual algebra Π(U)op of equivalence relations. Given a formula φ in Boolean propositional logic, the dual formula φd is obtained by interchanging 0 and 1, and by interchanging each of the following pairs of operations: ⇒ and , ∨ and ∧, ≡ and≡,⇐ and , and ∨ and |, while leaving the atomic variables and negation ¬ unchanged (5, p. 106). In partition logic, we use exactly the same definition of dualization except that the atomic variables will now stand for equivalence relations rather than partitions so we will indicate this by adding the superscript "d" to the atomic variables. Hence the dual of the modus ponens formula φ = (σ ∧ (σ ⇒ τ))⇒ τ is φd = σd ∨ σd τd τd . The converse non-implication (to use Church's terminology) would usually be thought of as the difference operation (17, p. 201), i.e., σd τd is the result of subtracting σd from τd so it might otherwise be symbolized as τd\σd or τd−σd. In this notation, the dual to the modus ponens formula is: τd− σd ∨ τd − σd . Similarly the non-implication σd τd, dual to the reverse implication σ ⇐ τ , might otherwise by symbolized as σd\τd or σd − τd. The process is reversible. Starting with a formula φd with superscript "d" on all atomic variables (to indicate they refer to equivalence relations instead of partitions), dualizing means making the same interchanges of operation symbols and constants, and erasing the "d" superscripts so that the dual of the dual is the original formula. We have used the lower case Greek letters π, σ, ... to stand for set-of-blocks partitions while the corresponding binary partition relations were the dit sets dit (π), dit (σ), .... The Greek letters with the superscript "d" stand for binary equivalence relations which take the form indit (π), indit (σ), .... Thus atomic variables such as π dualize to πd and would be interpreted as denoting indit sets indit (π). The operations of the dual algebra Π(U)op of equivalence relations on U could be defined directly but it is more convenient to define them using duality from the partition operations. The top of the dual algebra, usually denoted 1, is 0d = indit (0) = U×U , the universal equivalence relation which identifies everything (like Hegel's night in which all cows are black). The bottom of the dual algebra, usually denoted 0, is 1d = indit (1) = Δ, the diagonal where each element of U is only identified with itself. Given any equivalence relations indit (π) and indit (σ) on U , their meet ∧ is defined via duality as the indit set of the 24 join of the two corresponding partitions: indit (π) ∧ indit (σ) = indit (π ∨ σ) = indit (π) ∩ indit (σ). Using the superscript-d notation, this is: πd ∧ σd = (π ∨ σ)d = indit (π ∨ σ). Similarly the join of two equivalence relations is defined via duality as: indit (π)∨ indit (σ) = indit (π ∧ σ) = {indit (π) ∪ indit (σ)}, so that using the superscript-d notation: πd ∨ σd = (π ∧ σ)d = indit (π ∧ σ). The same pattern is applied to the duals of the other two primitive operations of implication and nand. The difference of two equivalence relations is defined via duality as: indit (π)− indit (σ) = indit (σ ⇒ π) = {dit (σ) ∩ indit (π)}, which in the other notation is: πd − σd = (σ ⇒ π)d = indit (σ ⇒ π). And finally, the nor-or or nor operation on equivalence relations is defined via duality as: indit (π)∨ indit (σ) = indit (π | σ) = {(indit (π) ∪ indit (σ))c}, which gives: πd∨σd = (π | σ)d = indit (π | σ). That completes the definition of the dual algebra Π(U)op of equivalence relations on U with the top 1, bottom 0, and the four primitive operations of meet, join, difference, and nor. The dualization operation φ −→ φd is a purely syntactic operation, but in the partition algebra Π(U) and equivalence relation algebra Π(U)op we reason semantically about partitions and equivalence relations on U . Given a compound formula φ in the language of the partition algebra, it would be interpreted by interpreting its atomic variables as denoting partitions on U and then applying the partition operations (join, meet, implication, and nand) to arrive at an interpretation of φ. Such an interpretation automatically supplies an interpretation of the dual formula φd. If α was an atomic variable of φ and was interpreted as denoting a partition on U , then αd is interpreted as denoting the equivalence relation indit (α). Then the equivalence relation operations (meet, join, difference, and nor) are applied to arrive at an equivalence relation interpretation of the formula φd. The relationship between the two interpretations is very simple. Proposition 2 φd = indit (φ). Proof: The proof uses induction over the complexity of the formulas. If φ is one of the constants 0 or 1, then the proposition holds since: 0d = 1 = indit (0) and 1d = 0 = indit (1). If φ = α is atomic, then it is true by the definition: σd = indit (σ). If φ is a compound formula then the main connective in φ is one of the four primitive partition operations and the main connective in φd is one of the four primitive equivalence relation operations. Consider the case: φ = π ∧ σ so that φd = πd ∨ σd. By the induction hypothesis, πd = indit (π) and σd = indit (σ), and by the definition of the equivalence relation join: φd = πd ∨ σd = indit (π) ∨ indit (σ) = {indit (π) ∪ indit (σ)} = indit (φ). The other three cases proceed in a similar manner. Corollary 1 The map φ −→ indit (φ) is a dual-isomorphism: Π(U)→ Π(U)op between the partition algebra and the dual equivalence relation algebra. Proof: Clearly the mapping is a set isomorphism since each partition φ on U is uniquely determined by its dit set dit (φ), and thus by its complement 25 indit (φ). By "dual-isomorphism," we mean that each operation in the partition algebra is mapped to the dual operation in the equivalence relation algebra. Suppose φ = σ ⇒ π so that φd = πd − σd. By the proposition, this means that indit (φ) = indit (π) − indit (σ) (where we must be careful to note that "−" is the difference operation on equivalence relations which is the closure of the set-difference operation indit (π) ∩ indit (σ)c on subsets of U × U) so that φ −→ indit (φ) maps the partition operation of implication to the equivalence relation operation of difference. The other operations are treated in a similar manner. The previous result, int [A ∩B] = int [int (A) ∩ int (B)] for A,B ⊆ U × U , could also be expressed using the closure operation as [A ∪B] = A ∪B and thus the conjunctive normal form treatment of the 15 binary operations on partitions in terms of the operations of ∨, ∧,⇒, and | dualizes to the disjunctive normal form treatment of the 15 (dual) binary operations on equivalence relations in terms of the dual operations ∧, ∨, −, and ∨, which are the primitive operations in the algebra of equivalence relations Π(U)op. For instance, the CNF expression for the inequivalence or symmetric difference is: σ ≡ τ = (σ ∨ τ) ∧ (σ | τ) so that: dit (σ ≡ τ) = int [int (dit (σ) ∪ dit (τ)) ∩ int (dit (σ)c ∪ dit (τ)c)] = int [(dit (σ) ∪ dit (τ)) ∩ (dit (σ)c ∪ dit (τ)c)] . Taking complements yields: indit (σ ≡ τ) = [(indit (σ) ∩ indit (τ)) ∪ (indit (σ)c ∩ indit (τ)c)] = (indit (σ) ∩ indit (τ)) ∪ (indit (σ)c ∩ indit (τ)c) = [(σd ∧ τd) ∪ (σd∨τd)] = σd ∧ τd ∨ σd∨τd = σd ≡ τd. Thus the equivalence σd ≡ τd of equivalence relations has the disjunctive normal form: σd ≡ τd = σd ∧ τd ∨ σd∨τd in the "dual" logic of equivalence relations. The other operations on equivalence relations can be defined similarly using the disjunctive normal form of the logic of equivalence relations. In referring to the dual logic of equivalence relations, we must keep distinct different notions of duality. Partition logic is dual to subset logic in the sense of the duality between monomorphisms and epimorphisms (or between subsets and quotient sets). But equivalence relation logic is only dual to partition logic in the sense of complementation-analogous to the duality between Heyting algebras and co-Heyting algebras, or between open subsets and closed subsets of a topological space. Since the complement of an open set is a closed set that is not necessarily open, complementation-duality for partition logic and intuitionistic 26 propositional logic is a duality between two types of algebras (partition algebras and equivalence relation algebras in the one case and Heyting and co-Heyting algebras in the other case). But the complement of a general subset is another subset so complementation-duality for subset logic is a duality within a Boolean algebra. 11 Partition Tautologies For present purposes, we may take the formulas of classical propositional logic (i.e., subset logic) as using the binary operations of ∨, ∧, ⇒, and | along with the constants 0 and 1 so that we have exactly the same well-formed formulas in subset logic and partition logic. A classical tautology or subset tautology is a formula that always evaluates to 1 (the universe set U) in the Boolean algebra P(U) regardless of the subsets assigned to the atomic variables. A partition tautology is a formula that always evaluates to 1 (the discrete partition) in the partition algebra Π(U) regardless of the partitions assigned to the atomic variables.10 It is also useful to define a weak partition tautology as a formula that never evaluates to 0 (the indiscrete partition) regardless of the partitions assigned to the atomic variables. Of course, any partition tautology is a weak partition tautology. Moreover, it is easily seen that: Proposition 3 φ is a weak partition tautology iff ¬¬φ is a partition tautology. An immediate question is the relationship of partition tautologies and weak partition tautologies to the classical subset tautologies as well as to the valid formulas of intuitionistic propositional logic (where formulas are assumed to be written in the same language). There is a sense in which results in partition logic can be trivially seen as a generalization of results in ordinary subset logic. This reduction principle (only treated informally here) is based on the observation that any partition logic result holding for all U will hold for |U | = 2 (any two element universe set) where there is an isomorphism between the partition algebra Π (2) on the two-element set and the Boolean algebra P(1) on the one-element set. There are only two partitions, the bottom 0 and top 1 on U where |U | = 2. Moreover, the partition operations of join, meet, implication, and nand in this special case satisfy the truth tables for the corresponding Boolean operations on subsets (using 0 and 1 in the usual manner in the truth tables). For instance, in Π(U) where |U | = 2, we can only substitute 0 or 1 for the atomic variables in σ ⇒ τ . The result is 0 in the case where σ = 1 and τ = 0, and the result in 1 in the other three cases. But that is just the truth table for the Boolean implication operation in P(1). Similarly for the other operations so there is an isomorphism: Π(2) ∼= P (1). Hence if a partition logic result holds for all U , then it holds for 10Needless to say, the constants 0 and 1 are always assigned the bottom and top, respectively, in any evaluation or interpretation of a formula in either P(U) or Π(U). 27 a two-element U where the partition operations on 0 and 1 are isomorphic to the Boolean operations on 0 and 1 where 0 and 1 in the Boolean case stand for the null subset and the universe set of a one-element universe. But if a result in subset logic holds on the one-element universe, i.e., in P(1), then it holds in subset logic. This reduction principle might be summarized in the slogan: Partition logic in a two-element universe is Boolean logic: Π(2) ∼= P (1). For instance, if φ is a weak partition tautology, e.g., φ = σ ∨ ¬σ, then it will never evaluate to 0 in any Π(U) where it is always assumed |U | ≥ 2. For |U | = 2, there are only two partitions 0 and 1, so never evaluating to 0 means always evaluating to 1. Since the Boolean operations in P(U) on subsets 0 (null set) and 1 (universe set) where |U | = 1, are isomorphic to those partition operations Π(U) on the 0 (indiscrete partition) and 1 (discrete partition) where |U | = 2, the Boolean operations would always evaluate to 1. This proves the following proposition. Proposition 4 All weak partition tautologies are subset tautologies. Corollary 2 All partition tautologies are subset tautologies. The converse is not true with Peirce's law, ((σ ⇒ π)⇒ σ) ⇒ σ, accumulation, σ ⇒ (π ⇒ (σ ∧ π)), and distributivity, ((π ∨ σ) ∧ (π ∨ τ))⇒ (π ∨ (σ ∧ τ)), being examples of classical tautologies that are not partition tautologies. There is no inclusion either way between partition tautologies and the valid formulas of intuitionistic propositional logic. For instance, the accumulation and distributivity formulas are valid in both classical and intuitionistic logic but not in partition logic. The ("non-weak") law of excluded middle, σ ∨¬σ, is a weak partition tautology, and the weak law of excluded middle, ¬σ ∨ ¬¬σ, is a ("non-weak") partition tautology that is not intuitionistically valid. In the dual algebra Π(U)op of equivalence relations, the bottom is the smallest equivalence relation 0 = Δ = indit (1) containing only the diagonal pairs (u, u). Dual to the notion of a partition tautology is the notion of an equivalence relation contradiction which is a formula (with the atomic variables written with the "d" superscript) that always evaluates to the bottom 0 of Π(U)op regardless of the equivalence relations substituted for the atomic variables. Similarly, a formula (with the atomic variables written with the "d" superscript) is a weak equivalence relation contradiction if it never evaluates to the top 1 = U × U of Π(U)op. We then have the following duality theorem. Proposition 5 (Principle of duality for partition logic) Given a formula φ, φ is a (weak) partition tautology iff φd is a (resp. weak) equivalence relation contradiction. Proof: Using the dual-isomorphism Π(U) → Π(U)op, a partition formula φ evaluates to the top 1 of Π(U), i.e., dit (φ) = dit (1) = U × U − Δ when any partitions are substituted for the atomic variables of φ iff φd evaluates to the 28 bottom of Π(U)op, i.e., φd = dit (φ) c = indit (1) = 0, when any equivalence relations are substituted for the atomic variables of φd. Similarly for the weak notions. Using the reduction principle, restricting the above proposition and its related concepts to |U | = 2 would yield the usual Boolean duality principle (5, p. 107) that φ is a tautology iff φd is a contradiction (where the weak or "nonweak" notions coincide in the Boolean case and where Π(2) ∼= P (1) ∼= Π(2)op). In the Boolean case, if a formula φ is not a subset tautology, then there is a non-empty universe set U and an assignment of subsets of U to the atomic variables of φ so that φ does not evaluate to 1 (the universe set U). Such a model showing that φ is not a tautology is called a countermodel for φ. In the Boolean case, it suffices to restrict the universe set U to a one-element set. If φ has a countermodel, then it has a countermodel using the two subsets of a one-element set. Analogous questions can be posed in partition logic. Is there a finite number n so that if φ always evaluates to 1 for any partitions on U with |U | ≤ n, then φ is a partition tautology? For instance, if φ is not a partition tautology and is also not a Boolean tautology, then it suffices to take n = 2 since Π(2) ∼= P (1) so a Boolean countermodel in P (1) also provides a partition countermodel in Π(2). Hence the question is only open for formulas φ which are classical tautologies but not partition tautologies. A standard device answers this question in the negative. Proposition 6 There is no fixed n such that if any φ always evaluates to 1 on any universe U with |U | ≤ n, then φ is a partition tautology. Proof: Consider any fixed n ≥ 2. We use the standard device of a "universal disjunction of equations" (12, p. 316) to construct a formula ωn that evaluates to 1 for any substitutions of partitions on U with |U | ≤ n and yet the formula is not a partition tautology. Let Bn be the Bell number, the number of partitions on a set U with |U | = n. Take the atomic variables to be πi for i = 0, 1, ..., Bn so that there are Bn+1 atomic variables. Let ωn be the join of all the equivalences between distinct atomic variables: ωn = {πi ≡ πj : 0 ≤ i < j ≤ Bn}. Then for any substitution of partitions on U where |U | ≤ n for the atomic variables, there is, by the pigeonhole principle, some "disjunct" πi ≡ πj = (πi ⇒ πj) ∧ (πj ⇒ πi) which has the same partition substituted for the two variables so the disjunct evaluates to 1 and thus the join ωn evaluates to 1. Thus ωn evaluates to 1 for any substitutions of partitions on any U where |U | ≤ n. To see that ωn is not a partition tautology, take U = {0, 1, ..., Bn} and let πi be the atomic partition which has i as a singleton and all the other elements of U as a block, i.e., πi = {{0, 1, ..., i− 1, i+ 1, ..., Bn} , {i}}. Then πi ⇒ πj = πj and πj ∧ πi = 0 so that ωn = 0 for that substitution and thus ωn is not even a weak partition tautology. 29 For n = 2, B2 = 2 so that ω2 = (π0 ≡ π1)∨ (π0 ≡ π2)∨ (π1 ≡ π2). Thus ω2 is a Boolean tautology and hence so is any larger join ωn for n > 2. There is no upper bound n so that if any formula has a countermodel, then it has a countermodel with |U | ≤ n. However, it seems likely to the author that if a partition formula has a countermodel, then it has a finite countermodel (i.e., the finite model property) but that question remains open. 12 Boolean subalgebras Bπ of Π(U) for any partition π In any Heyting algebra, the elements of the form ¬σ = σ ⇒ 0 for some σ are the regular elements. They form a Boolean algebra but it is not a subalgebra since the join of two regular elements is not necessarily regular (so one must take the double negation of the join to have the Boolean algebra join). In the topological interpretation, the regular elements of the Heyting algebra of open subsets are the regular open sets (the regular open sets are obtained as the interior of the closure of a subset) and the union of two regular open subsets is open but not necessarily regular open. Following the analogy, we define a partition as being π-regular if it can be obtained as the implication σ ⇒ π for some partitions σ and π. Intuitively, a π-regular partition is like π except that some blocks may have been discretized. Recall that the implication partition σ ⇒ π can be interpreted as a Boolean probe for containment between blocks. If B ⊆ C for some C ∈ σ, then the probe finds containment and this is indicated by setting the π-block B locally equal to 1, i.e., by discretizing B, and otherwise B stays locally like 0, i.e., stays as a whole block (or "mini-blob") B. Hence we might intuitively think of any π-regular partition σ ⇒ π as a function assigning either a 0 or 1 to each block B ∈ π. Hence it would be no surprise if they formed a Boolean algebra. Let Bπ = {σ ⇒ π : for some σ ∈ Π(U)} be the subset of Π(U) of π-regular partitions with the induced partial ordering of refinement. The top is still 1 but the bottom is π = (1⇒ π) itself. The partition operations of meet and join operate on the blocks of π-regular partitions in a completely Boolean manner. Since every π-regular partition is like π except that some blocks may be set locally to 1 while the others remain locally like 0, the meet of two π-regular partitions, say σ ⇒ π and τ ⇒ π, will have no interaction between distinct π-blocks. Each block of the meet will be "truth-functionally" determined by whatever is assigned to B in the two constituents. If either of the B's remains locally equal to 0, then the whole block B survives in the meet, i.e., B is locally equal to 0 in the meet (σ ⇒ π) ∧ (τ ⇒ π). But if both B's were discretized in the constituents, i.e., both are set locally to 1, then B is still discretized in the meet, i.e., B set locally to 1. That local pattern of 0's and 1's is precisely the truth table for the Boolean meet or conjunction. 30 If πns is the set of non-singleton blocks of the partition π, then the π-regular partitions are in one-to-one correspondence with the characteristic functions χ : πns → 2 = {0, 1} where each π-regular partition σ ⇒ π is associated with its local assignments. That is: χ (σ ⇒ π) : πns → 2 takes B ∈ πns to 1 if B is discretized in σ ⇒ π, and otherwise to 0. The argument just given shows that the meet of two π-regular partitions would correspond to the Boolean conjunction of the characteristic functions of local assignments given by the truth table for conjunction: χ ((σ ⇒ π) ∧ (τ ⇒ π)) = χ (σ ⇒ π) ∧ χ (τ ⇒ π). In a similar manner, the blocks in the join of two π-regular partitions, σ ⇒ π and τ ⇒ π, would be the intersections of what is in the B-slots. If B was discretized (set locally to 1) in either of the constituents, then B would be discretized in the join (τ ⇒ π) ∨ (σ ⇒ π) = π¬τ ∨ π¬σ (since the intersection of a discretized B with a whole B is still the discretized B). But if both B's were still whole (set locally to 0) then their intersection would still be the whole block B. This pattern of 0's and 1's is precisely the truth table for the Boolean join or disjunction. In terms of the characteristic functions of local assignments: χ ((τ ⇒ π) ∨ (σ ⇒ π)) = χ (τ ⇒ π) ∨ χ (σ ⇒ π). For the implication (σ ⇒ π) ⇒ (τ ⇒ π) between two π-regular partitions, the result would have B remaining whole, i.e., being set to 0, only in the case where B was whole in the consequent partition τ ⇒ π but discretized in the antecedent partition σ ⇒ π; otherwise B is discretized, i.e., set to 1. This pattern of 0's and 1's is precisely the truth table for the ordinary Boolean implication. In terms of the characteristic functions: χ ((σ ⇒ π)⇒ (τ ⇒ π)) = χ (σ ⇒ π)⇒ χ (τ ⇒ π). To show that Bπ is a Boolean algebra, we must define negation inside of Bπ. The negation of a π-regular element σ ⇒ π would be its implication to the bottom element which in Bπ is π itself. Thus the negation of σ ⇒ π = π¬σ is just the iterated implication: (σ ⇒ π)⇒ π = π¬π¬σ, the double π-negation. It is easily seen that this just "flips" the B-slots to the opposite state. The B's set (locally) to 1 in σ ⇒ π are flipped back to (locally) 0 in (σ ⇒ π)⇒ π, and the B's left whole in σ ⇒ π are flipped to 1 or discretized in (σ ⇒ π) ⇒ π. This pattern of 0's and 1's is just the truth table for the Boolean negation. In terms of the characteristic functions, χ ((σ ⇒ π)⇒ π) = ¬χ (σ ⇒ π). Thus it is easily seen that the set of π-regular elements Bπ is a Boolean algebra, called the Boolean core of the upper interval [π,1] = {τ ∈ Π(U) : π τ 1}, since it is isomorphic to the powerset Boolean algebra P (πns) of the set πns (taking the subsets of πns as being represented by their characteristic functions). Proposition 7 Bπ ∼= P (πns). 31 Unlike the case of the Boolean algebra of regular elements in a Heyting algebra, the Boolean core Bπ is a subalgebra of the partition algebra Π(U) for the "Boolean" operations of join, meet, and implication (N.B. not the nand operation), i.e., the Boolean operations in Bπ are the corresponding partition operations from the partition algebra Π(U). The BA Bπ even has the same top 1 as the partition algebra; only the bottoms are different, i.e., π in Bπ and 0 in Π(U). Any powerset BA P(U) of a nonempty U has a partition representation as a Boolean core on the coproduct U U , which is the dual to the subset representation of Π(U) as the lattice of open subsets O (U × U) of the product U×U . To see this, we might explore some more of the category-theoretic duality between subsets and partitions. Any partition π on U can be expressed as a surjection U → π defined by u −→ [u]π, where each element is taken to its block. In a dual manner, each subset S ⊆ U can be expressed as an injection S → U where each element of S is carried to itself as an element of U . The dual categorical constructions of the pullback and pushout can be applied to these two maps. The pullback of U → π with itself: indit (π) → U ↓ ↓ U → π Pullback for equivalence relation indit (π) yields the indit set indit (π) as a subset of the product U × U . The pushout of S → U with itself: S → U ↓ ↓ U → Δ (S) Pushout for subset corelation Δ (S) yields the partition Δ (S) on the coproduct U U whose only non-singleton blocks are the pairs {u, u∗} where u ∈ S and where u∗ is the copy of u in the disjoint union. The partitions on U U of the form Δ (S) for some subset S ⊆ U might be called the subset corelations. If S = U , then Δ (U) = Δ is the subset corelation on U U whose only blocks are the pairs {u, u∗} for u ∈ U . Taking Δ as the fixed partition π in Π(U U), the Boolean core BΔ, or to make the universe explicit, BΔ (U U), consists precisely of the subset corelations. To model the powerset BA P(U), we associate each subset S ⊆ U with the partition Δ (Sc) where for each u ∈ S, the block {u, u∗} of Δ is discretized. Thus Δ (Sc) acts like the characteristic function for S by locally setting the blocks {u, u∗} ∈ Δ to 1 if u ∈ S and to 0 if u ∈ S. The Δ-negation transforms Δ (Sc) to Δ (S), i.e., Δ¬Δ (Sc) = Δ (Sc) ⇒ Δ = Δ (S), and vice-versa. The assignment S −→ Δ (Sc) gives an isomorphism of Boolean algebras: P(U) ∼= BΔ (U U) . Representation of the Boolean algebra of subsets P(U) as the BA of subset corelations BΔ (U U) 32 The dual constructions of the pullback and pushout associate the binary relation indit (π), i.e., a subset of the product U × U with a partition π on U, and the binary corelation Δ (S), i.e., a partition on the coproduct U U , with a subset S of U . Taking the complements of each gives the subset representation Π(U) ∼= O(U×U) of the partition algebra as well as the partition representation P(U) ∼= BΔ (U U) of the subset BA. That is, the complement of indit (π) is the partition relation, dit (π), and the partition algebra Π(U) is represented by the algebra O(U × U) of partition relations, dit (π), of the product U × U . The complement of Δ (S) is the subset corelation, Δ (Sc) = Δ¬Δ (S), and the subset BA P(U) is represented by the Boolean algebra BΔ (U U) of subset corelations, Δ (Sc), on the coproduct U U . 13 The Boolean Cores and Partition Tautologies Since the Boolean core Bπ = Bπ (U) of the interval [π,1] and the whole partition algebra Π(U) have the same top 1 and the same operations of join, meet, and implication, we immediately have a way to transform any classical tautology into a partition tautology. But we must be careful about the connectives used in the classical tautology. The partition operations of the join, meet, and implication are the same as the Boolean operations in the Boolean core Bπ. But the negation in that BA is not the partition negation ¬ but the πnegation π¬. Similarly, the nand operation in the Boolean algebra Bπ is not the partition nand | but the π-nand defined by the ternary partition operation: dit (σ |π τ) = int [indit (σ) ∪ indit (τ) ∪ dit (π)] which agrees with the usual nand when π = 0. But the nand operation in the BA Bπ can be defined in terms of the other BA operations so we may assume that the classical tautology is written without a nand operation |. Similarly we may assume that negations ¬σ are written as σ ⇒ 0 so that no negation sign ¬ occur in the partition tautology. Given any propositional formula using the connectives of ∨, ∧, and ⇒ and the constants of 0 and 1, its single π-negation transform is obtained by replacing each atomic variable σ by its single π-negation π¬σ = σ ⇒ π and by replacing the constant 0 by π. The binary operations ∨, ∧, and⇒ as well as the constant 1 all remain the same. For instance, the single π-negation transform of the excluded middle formula σ ∨¬σ = σ ∨ (σ ⇒ 0) is the partition tautology of the weak excluded middle for π-negation: (σ ⇒ π) ∨ ((σ ⇒ π)⇒ π) = π¬σ ∨ π¬π¬σ. A formula that is a classical tautology will always evaluate to 1 in a Boolean algebra regardless of what elements of the Boolean algebra are assigned to the atomic variables. The single π-negation transformation maps any formula into a formula for an element of the Boolean core Bπ. If the original formula with the atomic variables σ, τ ,... was a classical tautology, then the single π-negation transform of the formula will evaluate to 1 in Bπ for any partitions (π-regular or not) assigned to the original atomic variables σ, τ , ... with π fixed. But this 33 is true for any π so the single π-negation transform of any classical tautology will evaluate to 1 for any partitions assigned to the atomic variables π, σ, τ ,... . Thus it is a partition tautology. Proposition 8 The single π-negation transform of any classical tautology is a partition tautology. For example, since the law of excluded middle, σ ∨ ¬σ, is a classical tautology, its single π-negation transform, π¬σ ∨ π¬π¬σ, is a partition tautology. This particular example is also intuitively obvious since the blocks B that were not discretized in π¬σ are discretized in the double π-negation π¬π¬σ so all the nonsingleton blocks are discretized in π¬σ ∨ π¬π¬σ (and the singleton blocks were already "discretized") so it is a partition tautology. This formula is also an example of a partition tautology that is not a valid formula of intuitionistic logic (either for π = 0 or in general). We can similarly define the double π-negation transform of a formula as the formula where each atomic variable σ is replaced by its double π-negation π¬π¬σ and by replacing the constant 0 by π. By the same argument, the double πnegation transform of any classical tautology is a partition tautology so there are at least two ways to transform any classical subset tautology into a partition tautology. Proposition 9 The double π-negation transform of any classical tautology is a partition tautology. The double π-negation transform of excluded middle, σ∨¬σ, is the partition tautology π¬π¬σ ∨ π¬π¬π¬σ. Since the π-negation has the effect of flipping the B's back and forth being locally equal to 0 or 1, it is clear that π¬σ = π¬π¬π¬σ so the formula π¬π¬σ ∨ π¬π¬π¬σ is equivalent to π¬π¬σ ∨ π¬σ. We might mention the partition analogue of the Gödel transform (11) that produces an intuitionistic validity from each classical tautology. For any classical formula φ in the language of ∨, ∧, ⇒, and | as well as 0 and 1, we define the Gödel π-transform φg of the formula as follows: • If φ is atomic, then φg = φ ∨ π; • If φ = 0, then φg = π, and if φ = 1, then φg = 1; • If φ = σ ∨ τ , then φg = σg ∨ τg; • If φ = σ ⇒ τ , then φg = σ ⇒ τg; • if φ = σ ∧ τ , then φg = π¬π¬σg ∧ π¬π¬τg; and • if φ = σ | τ , then φg = π¬π¬σg | π¬π¬τg. Then it can be shown that φg is classically equivalent to φ ∨ π, as well as the following: 34 Proposition 10 φ is a classical tautology iff π¬π¬φg is a partition tautology. Thus the Gödel π-transform of excluded middle φ = σ ∨ (σ ⇒ 0) is φg = (σ ∨ π) ∨ (σ ⇒ π) and π¬π¬ [(σ ∨ π) ∨ (σ ⇒ π)] is a partition tautology. Note that the single π-negation transform, the double π-negation transform, and the Gödel π-transform all gave different formulas starting with the classical excluded middle tautology. Moreover, it might be noted that in the case of π = 0, the negation ¬σ = σ ⇒ 0 is unchanged and, for atomic variables φ, φ ∨ 0 = φ so atomic variables can be left unchanged in the Gödel 0-transform. Hence any classical formula φ expressed in the language of ¬, ∨, and ⇒ would be unchanged by the Gödel 0-transform. Corollary 3 For any formula φ in the language of ¬, ∨, and⇒, φ is a classical tautology iff φ is a weak partition tautology iff ¬¬φ is a partition tautology. The Gödel 0-transform of excluded middle σ ∨¬σ is the same formula, σ ∨¬σ, which is a weak partition tautology, and ¬¬ (σ ∨ ¬σ) is a partition tautology. Returning to the Boolean core Bπ of the upper interval [π,1] of Π(U), the universe sets U are assumed to have two or more elements to avoid the degenerate case of a singleton universe where 0 = 1, i.e., the indiscrete and discrete partitions are the same. But in partitions π, singleton blocks cannot be avoided and the same problem emerges locally. For a singleton block B, being locally like 0 (i.e., remaining whole) and being locally like 1 (being discretized) are the same (which is why the universe U is always assumed to have two or more elements). Hence they play no role in the Boolean algebras Bπ. We have seen another Boolean algebra B (π) associated with every partition π on a set U , where B (π) is the complete subalgebra of P(U) generated by the blocks of π. Since each element of B (π) is the union of a set of blocks of π, it is isomorphic to the powerset BA of the set of blocks that make up π, i.e., B (π) ∼= P (π). Since Bπ ∼= P (πns) is isomorphic to the powerset BA of the set of non-singleton blocks of π, and since the introduction of each singleton {u} will have the effect of doubling the elements of P (πns) (with or without the singleton), we can reach P (π) from P (πns) by taking the direct product with the two element BA 2 for each singleton in π. Thus we have the following result which relates the two BAs associated with each partition π. Proposition 11 B (π) ∼= Bπ × {u}∈π 2. Partition lattices are the "standard" examples of non-distributive lattices, but one can do much better than simply say a partition lattice is non-distributive. The Boolean core of each interval [π,1] is, of course, distributive since it is a Boolean algebra using the meet and join operations of the partition lattice. Moreover, each partition in the interval distributes across the Boolean core. To see this, note that one of these distributivity results is essentially due to Oystein Ore. Ore (20) did much of the path-breaking work on partitions. He 35 defined two partitions as being associable if each block in their meet is a block in one (or both) of the partitions.11 Although Ore did not consider π-regular partitions, any two π-regular partitions are associable. Ore showed that any partition joined with the meet of two associable partitions will distribute across the meet. Hence we have the following result for any partitions φ, σ, τ , and π. Lemma 8 (Ore's associability theorem) φ∨ π¬σ ∧ π¬τ = φ ∨ π¬σ ∧ φ ∨ π¬τ . Ore's theorem does not assume that φ is in the interval [π,1] but we can interchange join and meet if we restrict φ to the interval. Lemma 9 ("Dual" to Ore's theorem) If φ ∈ [π,1], then φ ∧ π¬σ ∨ π¬τ = φ ∧ π¬σ ∨ φ ∧ π¬τ . Proposition 12 (Distributivity over the Boolean core) If π φ, φ ∨ π¬σ ∧ π¬τ = φ ∨ π¬σ ∧ φ ∨ π¬τ φ ∧ π¬σ ∨ π¬τ = φ ∧ π¬σ ∨ φ ∧ π¬τ . 14 From Partition Logic to Information Theory Conceptually, the "next step" beyond subset logic was finite probability theory. Historically, Boole presented finite probability theory as the next step beyond subset logic in his Laws of Thought book. The universe U was the finite number of possible outcomes and the subsets were events. Quoting Poisson, Boole defined "the measure of the probability of an event [as] the ratio of the number of cases favourable to that event, to the total number of cases favourable and unfavourable, and all equally possible." (4, p. 253) Hence one obvious next step beyond partition logic is to make the analogous conceptual moves and to see what theory emerges. The theory that emerges is a logical version of information theory. For a finite U , the finite (Laplacian) probability p(S) of a subset ("event") is the ratio: p(S) = |S| / |U |. Analogously, the finite logical entropy (or logical information content) h (π) of a partition π is the relative size of its dit set: h (π) = |dit (σ)| / |U × U |. If U is an urn with each "ball" in the urn being equiprobable, then p(S) is the probability of an element randomly drawn from the urn being in S, and h (π) is the probability that a pair of elements randomly drawn from the urn (with replacement) is a distinction of π. Let π = {B1, ..., Bn} with pi = |Bi| / |U | being the probability of drawing an element of the block Bi. The number of indistinctions (non-distinctions) of π 11Ore actually dealt with the join of equivalence relations but we are using the partition presentation. 36 is |indit (π)| = Σi |Bi|2 so the number of distinctions is |dit (π)| = |U |2−Σi |Bi|2 and thus since Σipi = 1, the logical entropy of π is: h (π) = |U |2 − Σi |Bi|2 / |U |2 = 1− Σip2i = (Σipi) (Σipi)− Σip2i = Σipi (1− pi), so that: Logical entropy: h (π) = Σipi (1− pi) . In Shannon's information theory, the entropy H (π) of the partition π (with the same probabilities assigned to the blocks) is: Shannon entropy: H (π) = Σipi log (1/pi) where the log is base 2. Each entropy can be seen as the probabilistic average of the "block entropies" h (Bi) = 1 − pi and H (Bi) = log (1/pi). To interpret the block entropies, consider a special case where pi = 1/2 n and every block is the same so there are 2n equal blocks like Bi in the partition. The logical entropy of that special equalblock partition, Σipi (1− pi) = (2n) pi (1− pi) = (2n) (1/2n) (1− pi) = 1 − pi, is the: Logical block entropy: h(Bi) = 1− pi . Instead of directly counting the distinctions, we could take the number of binary equal-blocked partitions it takes to distinguish all the 2n blocks in that same partition. As in the game of "twenty questions," if there is a search for an unknown designated block, then each such binary question reduces the number of blocks by a power of 2 so the minimum number of binary partitions it takes to distinguish all the 2n blocks (and find the hidden block no matter where it was) is n = log (2n) = log (1/pi), which is the: Shannon block entropy: H (Bi) = log (1/pi) . To precisely relate the block entropies, we solve each for pi which is then eliminated to obtain: h (B) = 1− 1/2H(B) . The interpretation of the Shannon block entropy is then extended by analogy to the general case where 1/pi is not a power of 2 so that the Shannon entropy H (π) = ΣipiH (Bi) is then interpreted as the average number of binary partitions needed to make all the distinctions between the blocks of π–whereas the logical entropy is the normalized count h (π) = Σipih (Bi) of the distinctions of the partition π. The two notions of entropy boil down to two different ways to count the distinctions of a partition. Thus the concept of a distinction from partition logic provides a logico-conceptual basis for the notion of entropy or information content in information theory.12 12For further development of logical information theory, see Ellerman (7). 37 15 Concluding remarks In conclusion, we might remark on two points: the ambiguity in the contrast of classical and non-classical logic, and the reasons why partition logic has been so late in development. The best known "non-classical" logic is intuitionistic logic. And yet under the topological interpretation, it is the logic of open subsets when the universe set U is endowed with a topology and ordinary subset logic is the special case when the topology is discrete. In many respects, partition logic is even further removed from classical logic since it is not even distributive. But partition logic, like classical subset logic, starts with an unstructured universe set U (two or more elements). The subsets of the powerset Boolean algebra P(U) and the partitions of the partition algebra Π(U) are both defined simply on the basis of the set U with no additional structure Thus subset logic and partition logic are at the same mathematical level, and are based on the category-theoretic dual concepts of subsets and partitions. It would make little conceptual sense to say that the notion of a subset of a set was "classical" while the dual notion of a partition on a set was "non-classical." From that viewpoint, partition logic is non-classical only in a historical sense rather than in some conceptual sense. Finally, we might speculate about why it has taken so long for partition logic to be developed. The subset interpretation of classical logic was there from the beginning in Boole and DeMorgan and in fact antedates the propositional interpretation. And the duality between subsets or subobjects (equivalence classes of monomorphisms) and partitions or quotient objects (equivalence classes of epimorphisms) is at least as old as category theory. There seems to be a cluster of reasons for the retarded development of partition logic. In spite of the precedence of the subset interpretation, it is in fact routinely ignored in most presentations of logic. From the mathematical viewpoint, the propositional interpretation of the atomic variables in subset logic is isomorphic to the subsets-of-1 interpretation which, remarkably enough, is sufficient to determine all subset tautologies. The "propositional" special case has been so important in applications (e.g., model theory for quantified propositions) that the general subset interpretation has been rather overshadowed and neglected. Since propositions and partitions are not "dual," the idea of a dual partition logic has not arisen in the conventional treatment of logic. It is the general subset interpretation-together with the well-known category-theoretic duality of subsets and partitions-that calls for a dual logic of partitions. From the partition side, one reason for the late development of partition logic is simply that the "lattice of partitions" was traditionally defined "upside down" as (isomorphic to) the lattice of equivalence relations rather than its opposite. But the element-distinction duality makes it clear that the lattice of partitions should use the partial ordering given by the set of distinctions (dit set) of a partition rather than its set of indistinctions (just as the lattice of subsets uses the partial ordering given by the set of elements of a subset rather than its set of non-elements). This also allowed the direct comparison of formulas in classical, intuitionistic, and partition logic. 38 Lastly, at least to our knowledge, the implication, nand, and other new binary operations on partitions (aside from the join and meet) have not been previously studied. In a recent paper in a commemorative volume for Gian-Carlo Rota, the three authors remark that in spite of the importance of equivalence relations, only the operations of join and meet have been studied. Equivalence relations are so ubiquitous in everyday life that we often forget about their proactive existence. Much is still unknown about equivalence relations. Were this situation remedied, the theory of equivalence relations could initiate a chain reaction generating new insights and discoveries in many fields dependent upon it. This paper springs from a simple acknowledgement: the only operations on the family of equivalence relations fully studied, understood and deployed are the binary join ∨ and meet ∧ operations. (3, p. 445) Yet the new operations, particularly the implication, are crucial to the whole development. The only partition tautologies with only lattice operations are trivialities such as 1 and 1 ∨ π. Without the non-lattice operations, one can always study identities in the partition lattice such as π π ∨ σ (which corresponds to the tautology π ⇒ π ∨ σ). But it has been shown (24) that partition lattices are so versatile that any formula in the language of lattices (i.e., without the implication or other non-lattice operations) that is an identity in all partition lattices (or lattices of equivalence relations) is actually a general latticetheoretic identity. Hence the logic taking models in all partition algebras Π (U) only became interesting by moving beyond the lattice operations on partitions. Throughout his career, Gian-Carlo Rota emphasized the analogies between the Boolean lattice of subsets of a set and the lattice of equivalence relations on a set. Partition logic, with the heavy emphasis on the analogies with subset logic, should be seen as a continuation of that Rota program. The closest earlier work in the vein of partition logic was indeed by Rota and colleagues [(9), (13)], but it used the "upside down" lattice of equivalence relations and did not define the partition implication (which would be the difference operation on equivalence relations) or other non-lattice operations. It was restricted to the important class of commuting equivalence relations (6) where identities hold which are not general lattice-theoretic identities. In sum, the recasting of "propositional" logic as subset logic (which then engaged the category-theoretic duality between subsets and partitions), the turning of the lattice of partitions "right side up," and the introduction of the implication and other non-lattice partition operations were all important for the development of partition logic. References [1] Awodey, Steve 2006. Category Theory. Oxford: Clarendon Press. 39 [2] Birkhoff, Garrett 1948. Lattice Theory. New York: American Mathematical Society. [3] Britz, Thomas, Matteo Mainetti and Luigi Pezzoli 2001. Some operations on the family of equivalence relations. In Algebraic Combinatorics and Computer Science: A Tribute to Gian-Carlo Rota. H. Crapo and D. Senato eds., Milano: Springer: 445-59. [4] Boole, George 1854. An Investigation of the Laws of Thought on which are founded the Mathematical Theories of Logic and Probabilities. Cambridge: Macmillan and Co. [5] Church, Alonzo 1956. Introduction to Mathematical Logic. Princeton: Princeton University Press. [6] Dubreil, P. and M.-L. Dubreil-Jacotin 1939. Théorie algébrique des relations d'équivalence. J. de Mathématique. 18: 63-95. [7] Ellerman, David 2009. Counting Distinctions: On the Conceptual Foundations of Shannon's Information Theory. Synthese. 168 (1 (May)): 119149. [8] Ellerman, David 2010. The Logic of Partitions: Introduction to the Dual of the Logic of Subsets. Review of Symbolic Logic. 3 (2 June): 287-350. [9] Finberg, David, Matteo Mainetti and Gian-Carlo Rota 1996. The Logic of Commuting Equivalence Relations. In Logic and Algebra. Aldo Ursini and Paolo Agliano ed., New York: Marcel Dekker: 69-96. [10] Fitting, Melvin C. 1969. Intuitionistic Logic, Model Theory, and Forcing. Amsterdam: North-Holland. [11] Gödel, Kurt 1933. Zur intuitionistischen Arithmetik und Zahlentheorie. Ergebnisse eines mathematischen Kolloquiums. 4: 34-38. [12] Grätzer, George 2003. General Lattice Theory (2nd ed.). Boston: Birkhäuser Verlag. [13] Haiman, Mark 1985. Proof Theory for Linear Lattices. Advances in Mathematics. 58: 209-242. [14] Kung, Joseph P.S., Gian-Carlo Rota and Catherine H. Yan 2009. Combinatorics: The Rota Way. New York: Cambridge University Press. [15] Kuratowski, C. 1922. Sur l'operation A de l'Analysis Situs. Fundamenta Mathematicae. 3: 182-199. [16] Lawvere, F. William and Stephen Schanuel 1997. Conceptual Mathematics: A first introduction to categories. New York: Cambridge University Press. [17] Lawvere, F. William and Robert Rosebrugh 2003. Sets for Mathematics. Cambridge: Cambridge University Press. [18] Mac Lane, Saunders 1971. Categories for the Working Mathematician. Verlag, New York. 40 [19] Mac Lane, Saunders and Ieke Moerdijk 1992. Sheaves in Geometry and Logic: A First Introduction to Topos Theory. Springer, New York. [20] Ore, Oystein 1942. Theory of equivalence relations. Duke Mathematical Journal. 9: 573-627. [21] Renyi, Alfred 1976 (orig. 1961). A General Method for Proving Theorems in Probability Theory and Some Applications (Paper 181). In Selected Papers of Alfred Renyi: Vol. 2. Pal Turan ed., Budapest: Akademiai Kaido: 581-602. [22] Rockafellar, R.T. 1984. Network Flows and Monotropic Optimization. New York: John Wiley & Sons. [23] Stanley, Richard P. 1997. Enumerative Combinatorics Vol. 1. New York: Cambridge University Press. [24] Whitman, P.M. 1946. Lattices, equivalence relations, and subgroups. Bull. Am. Math. Soc. 52: 507-522. [25] Wilson, Robin J. 1972. Introduction to Graph Theory. London: Longman.