This is the fourth post in a series on categorical ideas related to formal concept analysis (the other posts are linked below). I want to bring together the ideas of the previous posts and tell you what relations and Galois correspdonences have to do with profunctors and nuclei. To do that I have to tell you what happens when you think of posets as categories enriched over the category of truth values.

Here is a picture of a poset, with x ≤ y x\le y if you can climb up the arrows from x x to y y .

The picture can also be interpreted as representing a thin category, that is a category with at most one morphism between each pair of objects.

Most people who know what a category is know that a thin category is the same thing as a poset; with an arrow x → y x\to y corresponding to the relation x ≤ y x\le y . However, despite being well-known, this fact is also not strictly true. You have to be wary of the antisymmetry axiom.

In a poset the antisymmetry axiom asserts that if a ≤ b a\le b and b ≤ a b\le a then a = b a=b , but this translates in a thin category to having morphisms a → b a\to b and b → a b\to a implying that a = b a=b and that is not true in general, all you can say is that a a is isomorphic to b b .

A poset-without-antisymmetry is called a preorder, and the true fact is that thin categories correspond to preorders (and posets correspond to skeletal, thin categories).

Less well-known than the above not-entirely-true fact, at least according to my unscientific straw poll of mathematicians, is that a category enriched over truth values is the same thing as a preorder. Although this seems, superficially, to be the same as the previous fact, it does have some deeper connotations due to the depths of enriched category theory. It is some of these depths that I want to start to explore here.

This follows on from three previous posts, but doesn’t require you to have read the other ones — unless you want to appreciate the punchline!

In The Nucleus of a Profunctor: Some Categorified Linear Algebra I gave a construction which starts with an enriched profunctor between two enriched categories and gives rise to an adjoint equivalence between certain presheaves and copresheaves on the two enriched categories. This is the nucleus construction. In Formal Concept Analysis I gave a construction which starts with a relation between two sets and gives rise to a Galois correspondence between certain sets of subsets of the two sets. In Classical Dualities and Formal Concept Analysis I gave examples of this construction popping up all over mathematics.

In this post I’ll try to convince you that the second construction is just an example of the first. I’ll do this by explaining what familiar (?!) concepts from ordinary category theory become when you work in categories enriched over truth values. This is summarized in the following dictionary.

category preorder functor order preserving map set of natural transformations domination relation internal hom object in Set logical implication in Truth presheaf downward closed subset (downset) copresheaf upward closed subset (upset) category of presheaves downsets ordered by inclusion category of opcopresheaves upsets ordered by containment category of presheaves on a set powerset of a set ordered by inclusion category of opcopresheaves on a set powerset of a set ordered by containment adjunction Galois connection profunctor relation nucleus of a profunctor Galois correspondence from a relation \array {\arrayopts{ \colalign{left left} \rowlines{solid} } \\ \text{category }&\text{ preorder}\\ \text{functor }&\text{ order preserving map}\\ \text{set of natural transformations}&\text{domination relation}\\ \text{internal hom object in Set }&\text{ logical implication in Truth}\\ \text{presheaf }&\text{ downward closed subset (downset)}\\ \text{copresheaf }&\text{ upward closed subset (upset)}\\ \text{category of presheaves }&\text{ downsets ordered by inclusion}\\ \text{category of opcopresheaves }&\text{ upsets ordered by containment}\\ \text{ category of presheaves on a set }&\text{ powerset of a set ordered by inclusion}\\ \text{ category of opcopresheaves on a set } & \text {powerset of a set ordered by containment}\\ \text{adjunction }&\text{ Galois connection}\\ \text{profunctor }&\text{ relation}\\ \text{nucleus of a profunctor }&\text{ Galois correspondence from a relation}\\ & }

In the rest of this post (which has got quite long) I will just explain how the translation arises. It is basic enriched category theory, so if you already understand the above dictionary you can stop reading now!

Next time I hope to explain when you apply the nucleus construction when you enrich over things more like the real numbers.

The enriching category Truth \mathrm{Truth}

The category of truth values, Truth \mathrm{Truth} , has two objects: true \mathrm{true} and false \mathrm{false} . The morphisms correspond to ‘logical entailment’ which is what working mathematicians would usually refer to as ‘implication’ but logicians reserve ‘implication’ for logical operation, we’ll see this below. Entailment is written ⊢ \vdash (pronounced ‘entails’), so we have false ⊢ true \mathrm{false}\vdash \mathrm{true} corresponds to the only non-identity morphism in Truth \mathrm{Truth} . So the category can be simply pictured as follows. false ⟶ true \mathrm{false}\longrightarrow \mathrm{true} We can make this category of truth values into a monoidal category by using logical ‘and’ as the monoidal product; I’ll write this as ∧ \wedge .

Categories

A category enriched over Truth \mathrm{Truth} , 𝒞 \mathcal{C} , consists of a set ob 𝒞 \text {ob}\mathcal{C} and for each c , c ′ ∈ 𝒞 c,c'\in \mathcal{C} we have the ‘hom-object’ 𝒞 ( c , c ′ ) ∈ { true , false } \mathcal{C}(c,c')\in \{ \mathrm{true}, \mathrm{false}\} . We should think of 𝒞 ( c , c ′ ) \mathcal{C}(c,c') as being the truth of a relation c ≤ c ′ c\le c' . We need composition morphisms in this category, so for each triple, c , c ′ , c ″ ∈ ob 𝒞 c,c',c''\in \text {ob}\mathcal{C} we need a morphism in truth values 𝒞 ( c ′ , c ″ ) ⊗ 𝒞 ( c , c ′ ) → 𝒞 ( c , c ″ ) ; \mathcal{C}(c',c'')\otimes \mathcal{C}(c,c')\to \mathcal{C}(c,c''); in this context it means we have an entailment 𝒞 ( c ′ , c ″ ) ∧ 𝒞 ( c , c ′ ) ⊢ 𝒞 ( c , c ″ ) , \mathcal{C}(c',c'')\wedge \mathcal{C}(c,c')\vdash \mathcal{C}(c,c''), or, in other words, if c ≤ c ′ c\le c' and c ′ ≤ c ″ c'\le c'' then c ≤ c ″ c\le c'' . So we have a transitive relation. We also need an identity for each c ∈ 𝒞 c\in \mathcal{C} , generally speaking this means we need a morphism (where 1 1 is the monoidal unit) 1 → 𝒞 ( c , c ) ; 1\to \mathcal{C}(c,c); in this context it means true ⊢ 𝒞 ( c , c ) , \mathrm{true}\vdash \mathcal{C}(c,c), or, in other words, c ≤ c c\le c . So the relation is also reflexive. Thus we have a preorder.

Conversely, a preorder gives rise to a Truth \mathrm{Truth} category.

Slogan: Truth \mathrm{Truth} -categories correspond to preorders.

Functors

There is a notion of an enriched functor which we can look at in this context. If we have two Truth \mathrm{Truth} -categories 𝒞 \mathcal{C} and 𝒟 \mathcal{D} then a Truth \mathrm{Truth} -functor consists of a function F : ob 𝒞 → ob 𝒟 F\colon \text {ob}\mathcal{C}\to \text {ob}\mathcal{D} and, for each pair c , c ′ ∈ ob 𝒞 c,c'\in \text {ob}\mathcal{C} , a morphism in Truth \mathrm{Truth} 𝒞 ( c , c ′ ) → 𝒟 ( F ( c ) , F ( c ′ ) ) ; \mathcal{C}(c,c')\to \mathcal{D}(F(c),F(c')); using square brackets to mean ‘the truth value of’ this is the same as [ c ≤ c ′ ] ⊢ [ F ( c ) ≤ F ( c ′ ) ] , [c\le c']\vdash [F(c)\le F(c')], or, in other words, F F preserves the order.

Slogan: Truth \mathrm{Truth} -functors correspond to order preserving maps.

Natural transformation objects

Enriched category theory is richer if we enrich over a complete closed, symmetric monoidal category. If the category is complete then we means that we can make the collection of enriched functors between two enriched categories into an enriched category. If we have F , G : 𝒞 → 𝒟 F,G\colon \mathcal{C}\to \mathcal{D} then we have a hom-object [ 𝒞 , 𝒟 ] ( F , G ) [\mathcal{C},\mathcal{D}](F,G) and this is given by an end [ 𝒞 , 𝒟 ] ( F , G ) = ∫ c 𝒟 ( F ( c ) , G ( c ) ) . [\mathcal{C},\mathcal{D}](F,G)=\int _{c} \mathcal{D}(F(c),G(c)). In the context of enriching over Truth \mathrm{Truth} , this end is just a big ‘and’, or a ‘for all’, if you prefer. [ 𝒞 , 𝒟 ] ( F , G ) = ⋀ c 𝒟 ( F ( c ) , G ( c ) ) . [\mathcal{C},\mathcal{D}](F,G)=\bigwedge _{c} \mathcal{D}(F(c),G(c)). Rewriting this is terms of truth values of the relations we get that this means [ F ≤ G ] ≔ ⋀ c [ F ( c ) ≤ G ( c ) ] . [F\le G] \coloneqq \bigwedge _{c} [F(c)\le G(c)]. In other words, given preorders 𝒞 \mathcal{C} and 𝒟 \mathcal{D} , there is a canonical preorder on the set of order preserving functions 𝒞 → 𝒟 \mathcal{C}\to \mathcal{D} , and this is F ≤ G F\le G if and only if F ( c ) ≤ G ( c ) F(c)\le G(c) for all c c . We can say that F F is dominated by G G if F ≤ G F\le G .

Slogan: The Truth \mathrm{Truth} -natural transformation object corresponds to the domination relation.

The closed structure

If the enriching category is closed then it can be considered as a category enriched over itself. There is a small problem here with type checking and we should be more precise. If 𝒱 \mathcal{V} is closed then there is an internal hom functor [ − , − ] : 𝒱 op × 𝒱 → 𝒱 [-,-]\colon \mathcal{V}^{\mathrm{op}}\times \mathcal{V}\to \mathcal{V} . We form a 𝒱 \mathcal{V} -category 𝒱 ¯ \overline{\mathcal{V}} with the same objects as 𝒱 \mathcal{V} but with the hom-object given by the internal hom 𝒱 ¯ ( v , w ) : = [ v , w ] \overline{\mathcal{V}}(v,w):=[v,w] . People often use the same notation for 𝒱 \mathcal{V} and 𝒱 ¯ \overline{\mathcal{V}} ; this is potentially confusing, but so you should do this with some care.

The category of truth values, Truth \mathrm{Truth} , is closed and the internal hom is given by ‘logical implication’: [ a , b ] : = a ⇒ b [a,b]:=a\Rightarrow b . Here implication is understood in the logical operation sense and not the deductive sense (that’s what we are using entails for). So, using brackets purely for clarity, ( true ⇒ true ) = true ; ( true ⇒ false ) = false ; ( false ⇒ true ) = true ; ( false ⇒ false ) = true . \begin{aligned} (\mathrm{true}\Rightarrow \mathrm{true}) &=\mathrm{true};& (\mathrm{true}\Rightarrow \mathrm{false})&=\mathrm{false};\\ (\mathrm{false}\Rightarrow \mathrm{true})&=\mathrm{true};& (\mathrm{false}\Rightarrow \mathrm{false})&=\mathrm{true}. \end{aligned}

Slogan: Internal hom for Truth \mathrm{Truth} is implication.

We know that Truth \mathrm{Truth} -categories are the same as preorders, so this gives a natural preorder on the set { true , false } \{ \mathrm{true},\mathrm{false}\} .

Slogan: The Truth \mathrm{Truth} -category structure on Truth \mathrm{Truth} corresponds to the preorder false ≤ true \mathrm{false}\le \mathrm{true} .

Presheaves and copresheaves

As we are considering a closed enriching category 𝒱 \mathcal{V} , we can think of 𝒱 \mathcal{V} as a 𝒱 \mathcal{V} -category and consider 𝒱 \mathcal{V} -functors into 𝒱 \mathcal{V} . This is like considering scalar valued functions on a vector space.

A presheaf on 𝒞 \mathcal{C} is a 𝒱 \mathcal{V} -functor P : 𝒞 op → 𝒱 P\colon \mathcal{C}^{\mathrm{op}}\to \mathcal{V} and a copresheaf is a 𝒱 \mathcal{V} -functor Q : 𝒞 → 𝒱 Q\colon \mathcal{C}\to \mathcal{V} . In the context of preorders and truth values, a presheaf is an order-reversing function P : 𝒞 → { true , false } P\colon \mathcal{C}\to \{ \mathrm{true},\mathrm{false}\} and a copresheaf is an order-preserving function Q : 𝒞 → { true , false } Q\colon \mathcal{C}\to \{ \mathrm{true},\mathrm{false}\} .

Knowing a function to { true , false } \{ \mathrm{true},\mathrm{false}\} is the same as knowing the preimage of true \mathrm{true} , so we can identify a function P : 𝒞 → { true , false } P\colon \mathcal{C}\to \{ \mathrm{true},\mathrm{false}\} with the subset P ˜ = P − 1 ( true ) ⊆ 𝒞 \tilde{P}=P^{-1}(\mathrm{true})\subseteq \mathcal{C} . The order reversing condition if c ≤ c ′ then P ( c ′ ) ≤ P ( c ) \text {if }\, c\le c' \, \text { then } \, P(c')\le P(c) translates into if c ≤ c ′ and c ′ ∈ P ˜ then c ∈ P ˜ . \text {if }\, c\le c'\, \text { and }c'\in \tilde{P}\, \text { then }\, c\in \tilde{P}. So P ˜ \tilde{P} is a downward closed subset of the preorder 𝒞 \mathcal{C} and all downward closed subsets arise in this way.

Similarly if Q : 𝒞 → Truth Q\colon \mathcal{C}\to \mathrm{Truth} is a copresheaf then it corresponds to an upward closed subset Q ˜ = Q − 1 ( true ) \tilde{Q}=Q^{-1}(\mathrm{true}) .

Because presheaves are Truth \mathrm{Truth} -functors, we canonically have the domination relation between them. Given presheaves P , P ′ : 𝒞 op → Truth P,P'\colon \mathcal{C}^{\mathrm{op}}\to \mathrm{Truth} then P ≤ P ′ if and only if P ( c ) ≤ P ′ ( c ) for all c ∈ 𝒞 , P\le P'\quad \text {if and only if}\quad P(c)\le P'(c)\text { for all }c\in \mathcal{C}, which when translated to downward closed sets becomes P ≤ P ′ if and only if P ˜ ⊆ P ′ ˜ . P\le P'\quad \text {if and only if}\quad \tilde{P}\subseteq \tilde{P'}.

Slogan: The poset of presheaves on a preorder can be identified with the set of downward closed subsets equipped with the subset ordering.

Similarly, the domination relation on copresheaves corresponds to inclusion of the associated upward closed subsets. However, it is usually the opposite of the category of copresheaves that crops up, so this has the opposite relation.

Slogan: The poset of opcopresheaves on a preorder can be identified with the set of upward closed subsets equipped with the superset ordering.

Sets can be thought of as discrete posets, that is to say, where c ≤ c ′ c\le c' if and only if c = c c=c . In that case all subsets are both upward closed and downward closed. In this case, then, the set of copresheaves and the set of presheaves can both be identified with the powerset of the original set.

Slogan: The poset of presheaves on a set is the powerset with the subset ordering; the poset of opcopresheaves on a set is the powerset with the superset ordering

Adjunctions

An enriched adjunction consists of a pair of enriched functors F : 𝒞 ⇆ 𝒟 : G F\colon \mathcal{C}\leftrightarrows \mathcal{D}\colon G together with an isomorphism in 𝒱 \mathcal{V} , natural in c ∈ 𝒞 c\in \mathcal{C} and d ∈ 𝒟 d\in \mathcal{D} 𝒟 ( F ( c ) , d ) ≅ 𝒞 ( c , G ( d ) ) . \mathcal{D}(F(c),d)\cong \mathcal{C}(c,G(d)). This means that when we enrich over the category of truth values we get a Truth-adjunction being a pair of order-preserving maps between posets F : 𝒞 ⇆ 𝒟 : G F\colon \mathcal{C}\leftrightarrows \mathcal{D}\colon G with the condition that F ( c ) ≤ d if and only if c ≤ G ( d ) . F(c)\le d \, \text { if and only if }\, c\le G(d). In other words we have the following slogan.

Slogan: A Truth-adjunction is precisely a Galois connection between preorders.

Then the adjoint equivalence induced on the fixed sets is precisely the Galois correspondence induced on the fixed set of the Galois connection.

Profunctors

A profunctor between 𝒱 \mathcal{V} -categories 𝒞 \mathcal{C} and D D is an a 𝒱 \mathcal{V} -functor I : 𝒞 op ⊗ 𝒟 → 𝒱 . I\colon \mathcal{C}^{\mathrm{op}}\otimes \mathcal{D}\to \mathcal{V}. We should remind ourselves what the definition of the tensor product of 𝒱 \mathcal{V} -cateogries is. The set of objects of 𝒜 ⊗ ℬ \mathcal{A}\otimes \mathcal{B} is the set of ordered pairs ob 𝒜 × ob ℬ \text {ob}\mathcal{A}\times \text {ob}\mathcal{B} and the hom-sets are given by 𝒜 ⊗ ℬ ( ( a , b ) , ( a ′ , b ′ ) ) : = 𝒜 ( a , a ′ ) ⊗ ℬ ( b , b ′ ) . \mathcal{A}\otimes \mathcal{B}((a,b),(a',b')):=\mathcal{A}(a,a')\otimes \mathcal{B}(b,b'). It is perhaps worth noting that in order to define composition we will need that 𝒱 \mathcal{V} has some extra structure such as being symmetric or braided.

When enriching over truth values, this means that for preorders 𝒜 \mathcal{A} and ℬ \mathcal{B} the preorder on 𝒜 × ℬ \mathcal{A}\times \mathcal{B} is given by ( a , b ) ≤ ( a ′ , b ′ ) if and only if a ≤ a ′ and b ≤ b ′ . (a,b)\le (a',b')\quad \text { if and only if }\quad a\le a' \, \, \text {and}\, \, b\le b'. A profunctor in the Truth \mathrm{Truth} case can then be identified with a subset of 𝒞 × 𝒟 \mathcal{C}\times \mathcal{D} which is upward closed. Writing c ⪯ d c\preceq d for I ( c , d ) I(c,d) , we have: if c ⪯ d and ( c , d ) ≤ ( c ′ , d ′ ) then c ′ ⪯ d ′ . \text {if}\, \, c\preceq d\, \, \text {and}\, \, (c,d)\le (c',d')\, \, \text {then}\, \, c'\preceq d'. This can make more sense if we expand it out: if c ′ ≤ c ⪯ d ≤ d ′ then c ′ ⪯ d ′ . \text {if}\, \, c'\le c\preceq d \le d' \, \, \text {then}\, \, c'\preceq d'. Slogan: Profunctors between preorders correspond to relations extending the preorders

Nuclei

In the first post in this sequence I showed that a profunctor I I gives rise to an adjunction between presheaves and opcopresheaves, and thus to an adjoint equivalence between the fixed sets of the adjunction.

In the third post I showed how a relation between sets gives rise to a Galois connection between the powersets and thus to a Galois correspondence between the sets of closed subsets. I also gave several examples of correspondences around different areas of maths that arise in this way.

I will leave it to the interested reader to show that the Galois correspondence construction is what you get when you apply the profunctor nucleus construction to the situation of discrete Truth \mathrm{Truth} -categories. It should drop out from the dictionary.

Slogan: The nucleus of a profunctor between discrete categories corresponds to the Galois correspondence between the closed subsets coming from a relation between two sets.

That’s not a very snappy slogan to end with, I grant you.

Next time

In the next post I will show how costructing the nucleus of a profunctor when you enrich over something like the real numbers instead of truth values gives rise to some dualities in other areas of maths.