Object identity via interactions

Cen­tral to the mind­set of cat­e­gory the­ory is the idea that we don’t re­ally care what an ob­ject is; we only care about the in­ter­ac­tions be­tween them. But if we don’t care what an ob­ject is, how can we tell even the most ba­sic prop­er­ties of the ob­jects? For in­stance, how can we even tell two ob­jects apart? But we can do it, and we do it by look­ing at the in­ter­ac­tions with other ob­jects.

How to tell sets apart

If we’re al­lowed to look at maps be­tween sets, but not at the struc­ture of the sets them­selves, how can we tell whether two sets are the same? We aren’t al­lowed to look at the el­e­ments of the set di­rectly, so it would be very op­ti­mistic to hope to do bet­ter than tel­ling the sets apart “up to iso­mor­phism”; in­deed, it turns out not to be pos­si­ble to tell whether two sets are liter­ally iden­ti­cal with­out look­ing at their el­e­ments.

But how about tel­ling whether there is a bi­jec­tion be­tween two sets or not? That is the next best thing, be­cause a bi­jec­tion be­tween the sets would tell us that they “be­have the same in all rea­son­able ways”.

It turns out we can do this! Let \(A\) and \(B\) be two sets; we want to tell if they’re differ­ent or not.

Let’s make a clever choice: we’ll pick a kind of “an­chor” set, such that the maps in­volv­ing \(A\), \(B\) and the “an­chor” set are enough to de­ter­mine whether or not \(A\) and \(B\) are the same. It will turn out that \(\{1\}\) works.

Con­sider all pos­si­ble maps \(\{1\} \to A\) and \(\{1\} \to B\). A map from \(\{1\}\) to \(A\) is just a func­tion \(f\) which takes the in­put value \(1\) (there’s no choice about that) and re­turns a value in \(A\). So we can think of it as be­ing “a mappy way of spec­i­fy­ing an el­e­ment of \(A\)“: for ev­ery el­e­ment of \(A\), there is one of these func­tions, while ev­ery one of these func­tions de­notes an el­e­ment of \(A\).

So \(A\) is iso­mor­phic to this col­lec­tion of maps, and the key thing is that we don’t need to know about \(A\)’s el­e­ments to say this! If we only have ac­cess to the maps and we know noth­ing about the in­ter­nal struc­ture of \(A\), we can still say \(A\) is iso­mor­phic to the set of all the maps from \(\{1\}\) to \(A\).

Let \(A = \{ 5, 6 \}\).

Then the func­tions \(\{1\} \to A\) are pre­cisely the two fol­low­ing:

  • \(f: 1 \mapsto 5\);

  • \(g: 1 \mapsto 6\).

So we have the “mappy” way of view­ing \(5 \in A\): namely, \(f\). Similarly, we have the “mappy” way of view­ing \(6 \in A\): namely, \(g\).

And \(A\) is iso­mor­phic to the set \(\{ f, g \}\). So we’ve speci­fied \(A\) up to iso­mor­phism with­out hav­ing to look at its el­e­ments! <div><div>

Given ac­cess to the maps, then, we have worked out what \(A\) is (up to iso­mor­phism, which is the best we can do if we’re not al­lowed to look into the in­ter­nal struc­ture of \(A\)); and we can similarly work out what \(B\) is by look­ing at the maps \(\{1\} \to B\).

an­other ex­am­ple, us­ing f: {2} \to A as “pair from A”

Less structure

That pre­vi­ous con­struc­tion was rather con­trived, and it doesn’t seem at all prac­ti­cal.

prac­ti­cal example

ex­am­ple in Set, where there is a sep­a­ra­tor: {1}, and a cosep­a­ra­tor: {0,1}. Don’t define these words, or if we do, do it in pass­ing. Re­mem­ber to note that this doesn’t pick out the set uniquely, but it does pick it out up to iso­mor­phism. Often we only care about things up to iso­mor­phism; ex­plain this

ex­am­ple in Top, where there is a sep­a­ra­tor {1}, and a cosep­a­ra­tor: the closed in­ter­val 0,1. This is a non­triv­ial fact, and it is known as Uryson’s Lemma.

ex­am­ple in Groups, where Z is a separator

“the en­tire cat­e­gory” to­gether makes a cosep­a­rat­ing class, so we can tell ob­jects apart if we are given the free­dom to look at ev­ery other object


  • Category theory

    How math­e­mat­i­cal ob­jects are re­lated to oth­ers in the same cat­e­gory.