[FOM] 481:Complementation and Incompleteness
Vaughan Pratt
pratt at cs.stanford.edu
Mon Feb 20 03:23:12 EST 2012
On 2/18/2012 11:15 AM, Michael Lee Finney wrote:
> Category theory has the problem that it is based on functions which
> only exist inside of limited sets. Therefore, trying to apply category
> theory to larger areas has foundational issues. Even if you define
> functions using classes, you only move the problem back a step. There
> are some attempts to use Category theory as the foundations instead of
> Set Theory, but so far as I know they have either not been succesful
> or very awkward. I haven't gotten into category theory much, so I
> can't give you any references here. I only care about it relative to
> foundational issues.
I would say category theory suffers much less from these sorts of
technical problems than from the pedagogical problem of being two steps
removed from logic. These steps are not necessarily easily taken by
those accustomed to thinking of every mathematical object as a set that
is uniquely determined by those entities of the mathematical universe
that belong to it, as the heated debates here back in 1998 about the
relevance to FOM of category theory made clear.
The first step away from quantificational logic is to algebra. This
step shifts the emphasis from truth-valued sentences to mathematical
objects denoted by terms valued in one or more domains of individuals.
Equality emerges as the dominant relation, and functions fill in for
existential quantification.
Syntactically one can always skolemize, but the line between syntax and
semantics is not as sharp in algebra as in logic. Many operations
arising in a given branch of mathematics that we take for granted as
integral to the algebraic language of that branch might just as well be
considered skolem functions derived from a formalization of that branch
based on a logical language consisting of only a few fundamental relations.
The statement that f: A --> B is a bijection is a basic example for set
theory as such a branch of mathematics. In logic this property is
expressed by saying that for all a,a', f(a) = f(a') implies a = a' (f is
injective), and for all b there exists a such that f(a) = b (f is
surjective). Algebra skolemizes the existential quantifier in this
definition of surjectivity by introducing the inverse f': B --> A into
the language as an equal partner with f and restating the bijection
property as the identities f'(f(a)) = a and f(f'(b)) = b.
The second step is from algebra to category theory, which dispenses with
the distinctions between elements and functions and between application
and composition. It is hard to overestimate the value of this
simplification, as I'll try to demonstrate with some examples from topos
theory, which is just a small corner of category theory. My apologies
in advance for the length, but my experience has been that merely
listing the topos axioms conveys the subject about as well as E = mc^2
conveys general relativity.
The bijection example can be simplified to f'f = 1_A: A --> A and ff' =
1_B: B --> B where 1_A and 1_B denote the identity functions on
respectively A and B. Each equation constitutes a commutative diagram
that eliminates elements and application altogether.
But these equations can also be written f'fa = a and ff'b = b where a: S
--> A is understood as an element of A of sort S, and likewise b: T -->
B as an element of B of sort T. This looks more like algebra, except
that a and b are now morphisms at the same level as f and g, application
is realized as composition, and the shorter equations above can be
recovered by canceling a and b on the right of their respective equations.
This way of thinking simplifies the type structure of algebra by
eliminating the element-function distinction and the
application-composition distinction. But it does far more than just
that, by cleanly introducing a notion of sort.
For set theory as a (rather degenerate) branch of mathematics there is
only one sort of element, namely the atom, whose sort can be identified
with the singleton 1. Up to isomorphism every set is simply a sum
(disjoint union, coproduct) of atoms, one for each element.
Graph theory as another branch of mathematics is a slight but very
important extension of set theory. Whereas sets contain only atoms,
graphs contain vertices (which work like atoms) and edges (whose
incidence relations are mediated by vertices). There are sorts V for
vertices and E for edges, identifiable with respectively the one-vertex
graph with no edges and the two-vertex graph with a single edge
connecting them, just as we identified the sort "atom" of set theory
with the singleton set 1. A vertex of G is a morphism v: V --> G while
an edge is a morphism e: E --> G. The two vertices of E manifest as the
two morphisms from V to E, since vertices of G are morphisms from V to G.
As stipulated, V has no edges. Hence there cannot be a morphism from E
to V, making this the category of irreflexive graphs. (To digress for a
moment, for reflexive graphs V would have an edge in the form of a
morphism to it from E, necessarily representing a self-loop in V. This
morphism would have the evident compositions at each end with each of
the two morphisms from V to E, namely the identity function 1_V at one
end and the two non-identity retractions on E at the other.)
But whereas a set is just the disjoint union of its atoms, a graph is
more than just the disjoint union of its vertices and edges. The notion
of incidence in a graph demands some quotienting, namely that G be the
result of identifying certain endpoints of its edges. That is, whereas
the category of sets up to any given size is just the closure of the
category containing the singleton 1 under sums (coproducts) up to that
size, the category of graphs must be the closure of V and E under
colimits, not just coproducts. Unlike coproducts, colimits must take
the possibility of quotienting into consideration or the only graphs we
would obtain would be isolated edges with twice as many vertices as
edges, aka the *free* graphs generated by pairs of sets.
The singleton set 1 of set theory is not forgotten in graph theory
however. It has a counterpart among graphs, namely the *final* graph 1
with one vertex and one edge, a self-loop. For any graph G there is an
evident unique morphism !_G: G --> 1. (For the category of reflexive
graphs, V coincides with 1, but not for that of irreflexive graphs.)
The fact that 1 contains an edge will play a very important role in 11
paragraphs time (apologies that this message is so long).
The identification of elements with functions extends to yet other very
convenient identifications, namely of pairs (more generally n-tuples)
with functions, and likewise subsets with functions.
In the category of sets, an n-tuple of A is simply a morphism from n to
A where n = 1 + 1 + ... + 1 is any n-element set. The elements of n
constitute the coordinates of the n-tuple. A canonical choice of n is
{0,1,...,n-1} as a subset (TBD below) of the set N of natural numbers.
Pairs arise as the case n = 2. Writing Hom(A,B) for the (hom)set of
morphisms from A to B, we have the bijections Hom(1+1, A) ~ Hom(1, A) x
Hom(1, A) ~ Hom(1, AxA) (as a consequence of the homfunctor Hom: C^op x
C --> Set preserving limits in both arguments, bearing in mind that the
colimit 1+1 in C becomes the limit 1x1 in C^op). These two bijections
(however chosen) create a bijection between the elements of A of sort
1+1, i.e. the pairs of A, and the elements of AxA of sort 1, i.e. the
atoms of AxA.
A subset B of A with n elements differs from an n-tuple in two respects:
no element of A can be repeated in B, and order is immaterial (indexing
is disabled).
The first property is easily achieved by taking an n-element subset of A
to be an n-tuple of A, as a morphism from n to A, which is injective
(more generally a monomorphism or monic, as a suitable generalization of
"injective").
The second property is a little more delicate. It can be achieved via
the notion of *subobject* of A as an equivalence class of isomorphic
injections to A. Two injections are isomorphic when their domains and
images are both isomorphic, a condition formalizable with the
appropriate commutative diagram (exercise). A set with m elements has
2^m subobjects, aka subsets, with C(m,n) of them having domains with n
elements where C(m,n) is a binomial coefficient.
Most of this carries over to graphs. It should come as no surprise that
one can form n-tuples of graphs in the obvious way. More interesting is
how subobjects of graphs, aka subgraphs, are formed, by analogy with
subgraphs.
One can form a subset B of A by deleting its complement relative to A.
This process can be expressed via the characteristic function of B,
namely the function χ_B: A --> 2 = {0,1} sending the elements for
deletion to 0.
A subgraph G' of G is not so easily formed. In order to delete any
vertex one must first delete all edges incident on it. The counterpart
of the set 2 = {0,1} for graphs has the same vertices, namely {0,1}, but
the corresponding set of two edges can only exist at vertex 1, since if
either vertex of an edge is missing (the case of vertex 0), there is
only one possibility for the edge, namely that it must be missing too.
It follows that the graph Omega (as we shall call the *subobject
classifier*) playing the role of the set {0,1} has vertices {0,1}, and
one edge between every pair of vertices (denoting a missing edge) except
from 1 to 1, which permits two edges denoting presence or absence of an
edge at the corresponding place in G'. That is, Omega is the directed
clique K_2 with a fifth edge from 1 to 1.
It follows that there are three morphisms from 1 to Omega. The least
one maps the vertex of 1 to the 0 vertex of Omega, and therefore maps
the edge of 1 to the unique edge at that vertex. The other two map the
vertex of 1 to the 1 vertex of Omega, which has two edges to which the
edge of 1 can be mapped, and these are ordered so that absent is below
present for edges, as usual in the inclusion ordering.
These three graph morphisms play the role for graphs that the two
morphisms from the set 1 to the set 2 = {0,1} play for sets. Just as
the latter defines a two-valued logic, so do the former define a
three-valued logic forming a linear order.
The category of graphs is an instance of a presheaf category, which in
turn is an instance of a topos. In any topos the atoms (the 1-sorted
elements, as distinct from the V-sorted and E-sorted elements) of Omega
have an evident ordering by inclusion of subobjects so as to form a
poset. In every topos the atoms of Omega form a Heyting algebra under
this ordering. They constitute the truth values of the internal logic
of that topos.
There is only one Heyting algebra with two elements, namely the
two-element Boolean algebra, corresponding to the idea that the internal
logic of set theory is Boolean. There is likewise only one Heyting
algebra with three elements, and it cannot be a Boolean algebra (which
in the finite case must have cardinality a power of 2), corresponding to
the idea that the internal logic of graph theory, as defined by the
notion of subgraph by analogy with subset, is intuitionistic but not
classical.
Statman has shown that general intuitionistic logic is PSPACE-complete.
The internal logic of graph theory however is essentially no harder
than that of set theory, being coNP-complete. This is because failure
of P = TOP (the topmost of the three truth values) can be witnessed by
assigning one of three values to each variable of P and then evaluating
P in linear time. This does not work for general intuitionistic logic,
for which counterexamples and their truth tables are in general
massively larger.
All this is one tiny little corner of category theory, a very rich and
well-developed subject that comes nowhere near deserving Michael
Finney's characterization of it as: "There are some attempts to use
Category theory as the foundations instead of Set Theory, but so far as
I know they have either not been succesful or very awkward."
Awkwardness is in the eye of the beholder. Active users of category
theory find it far from awkward, combining great conceptual economy with
great expressive power.
Vaughan Pratt
More information about the FOM
mailing list