It looks like you're new here. If you want to get involved, click one of these buttons!

- All Categories 2.3K
- Chat 502
- Study Groups 21
- Petri Nets 9
- Epidemiology 4
- Leaf Modeling 2
- Review Sections 9
- MIT 2020: Programming with Categories 51
- MIT 2020: Lectures 20
- MIT 2020: Exercises 25
- Baez ACT 2019: Online Course 339
- Baez ACT 2019: Lectures 79
- Baez ACT 2019: Exercises 149
- Baez ACT 2019: Chat 50
- UCR ACT Seminar 4
- General 72
- Azimuth Code Project 110
- Statistical methods 4
- Drafts 10
- Math Syntax Demos 15
- Wiki - Latest Changes 3
- Strategy 113
- Azimuth Project 1.1K
- - Spam 1
- News and Information 148
- Azimuth Blog 149
- - Conventions and Policies 21
- - Questions 43
- Azimuth Wiki 715

## Comments

As structured sets with no required element, the empty set is also the empty preorder is the initial object.

`As structured sets with no required element, the empty set is also the empty preorder is the initial object.`

Hey Chris,

I think you are right!

In a former life I had to do a lot of lattice theory and FOL model theory, and I don't always feel comfortable with these empty objects...

`Hey Chris, I think you are right! In a former life I had to do a lot of lattice theory and FOL model theory, and I don't always feel comfortable with these empty objects...`

They are weird, very useful though. It's part of a general maxim in CS that you start counting at 0. I.e. that you want to include the trivial or even pathological cases.

A empty space with no sand is still a heap of sand, at least in CS.

`They are weird, very useful though. It's part of a general maxim in CS that you start counting at 0. I.e. that you want to include the trivial or even pathological cases. A empty space with no sand is still a heap of sand, at least in CS.`

Hey Chris,

I've been mulling over how to extend the exponential object construction I read about in the Awodey lecture notes to a any suitable category of \(\mathcal{V}\)-enriched category functors.

No matter what \(\mathcal{V}\) is, we can define \((\mathcal{X} \times \mathcal{Y})((a,b),(c,d)) := \mathcal{X}(a,c) \otimes \mathcal{Y}(b,d)\). In the case of \(\mathcal{V} = \mathbf{Bool}\) this is just product orders.

Any ideas what properties \(\mathcal{V}\) needs to have to make the set of functors \(\lbrace F: \mathcal{X} \to \mathcal{Y} \mid F \text{ is a } \mathcal{V}\text{-functor}\rbrace\) a \(\mathcal{V}\)-category?

`Hey Chris, > They are weird, very useful though. It's part of a general maxim in CS that you start counting at 0. I.e. that you want to include the trivial or even pathological cases. > > A empty space with no sand is still a heap of sand, at least in CS. I've been mulling over how to extend the exponential object construction I read about in the Awodey lecture notes to a any suitable category of \\(\mathcal{V}\\)-enriched category functors. No matter what \\(\mathcal{V}\\) is, we can define \\((\mathcal{X} \times \mathcal{Y})((a,b),(c,d)) := \mathcal{X}(a,c) \otimes \mathcal{Y}(b,d)\\). In the case of \\(\mathcal{V} = \mathbf{Bool}\\) this is just product orders. Any ideas what properties \\(\mathcal{V}\\) needs to have to make the set of functors \\(\lbrace F: \mathcal{X} \to \mathcal{Y} \mid F \text{ is a } \mathcal{V}\text{-functor}\rbrace\\) a \\(\mathcal{V}\\)-category?`

Well we want to construct something sort of like a natural transformation, I am pretty sure we need closure, but even with it exactly what we want to do is vague to me.

Well we can do it with monotonic functions, just using forall. So maybe for cost it would be sum or maximum of the distance from F(x) to G(x) is the cost from F to G?

`Well we want to construct something sort of like a natural transformation, I am pretty sure we need closure, but even with it exactly what we want to do is vague to me. Well we can do it with monotonic functions, just using forall. So maybe for cost it would be sum or maximum of the distance from F(x) to G(x) is the cost from F to G?`

I think you right! In the case I gave, we have:

$$ \begin{align} \forall x. f(x) \leq_{\mathcal{X}} g(x) & \iff \forall x\in \mathrm{Ob}(\mathcal{X}). \mathcal{X}(f(x), g(x)) \\ & \iff \bigwedge_{x\in \mathrm{Ob}(\mathcal{X})} \mathcal{Z}(f(x), g(x)) \end{align} $$ Hence, it looks like \(\mathcal{X}^\mathcal{Y}(f,g) = \bigwedge_{x\in \mathrm{Ob}(\mathcal{X})} \mathcal{X}(f(x), g(x))\).

This is exactly the max distance between \(f\) and \(g\) in \(\mathbf{Cost}\).

So we just need the category to have arbitrary meets if we want to define \(\mathcal{X}^\mathcal{Y}\). For big-boy enriched categories, using monoidal categories rather than monoidal preorders for \(\mathcal{V}\), then I suspect if they are

completethere's an analogue to the construction above.We can always find a terminal \(\mathcal{V}\)-enriched category for any monoidal preorder \(\mathcal{V}\). Let \(\mathrm{Ob}(\top) = \mathrm{Ob}(\mathcal{V})\) an \(\top(x,y) = I\), where \(I\) is the identity element of \(\mathcal{V}\). We can make a functor \(T_{\mathcal{X}} : \mathcal{X} \to \mathbf{Top}\) from any \(\mathcal{V}\)-category \(\mathcal{X}\) to \(\top\) by using \(x \mapsto I\).

`> So maybe for cost it would be sum or maximum of the distance from F(x) to G(x) is the cost from F to G? I think you right! In the case I gave, we have: \[ \begin{align} \forall x. f(x) \leq_{\mathcal{X}} g(x) & \iff \forall x\in \mathrm{Ob}(\mathcal{X}). \mathcal{X}(f(x), g(x)) \\\\ & \iff \bigwedge_{x\in \mathrm{Ob}(\mathcal{X})} \mathcal{Z}(f(x), g(x)) \end{align} \] Hence, it looks like \\(\mathcal{X}^\mathcal{Y}(f,g) = \bigwedge_{x\in \mathrm{Ob}(\mathcal{X})} \mathcal{X}(f(x), g(x))\\). This is exactly the max distance between \\(f\\) and \\(g\\) in \\(\mathbf{Cost}\\). So we just need the category to have arbitrary meets if we want to define \\(\mathcal{X}^\mathcal{Y}\\). For big-boy enriched categories, using monoidal categories rather than monoidal preorders for \\(\mathcal{V}\\), then I suspect if they are *complete* there's an analogue to the construction above. We can always find a terminal \\(\mathcal{V}\\)-enriched category for any monoidal preorder \\(\mathcal{V}\\). Let \\(\mathrm{Ob}(\top) = \mathrm{Ob}(\mathcal{V})\\) an \\(\top(x,y) = I\\), where \\(I\\) is the identity element of \\(\mathcal{V}\\). We can make a functor \\(T\_{\mathcal{X}} : \mathcal{X} \to \mathbf{Top}\\) from any \\(\mathcal{V}\\)-category \\(\mathcal{X}\\) to \\(\top\\) by using \\(x \mapsto I\\).`

Matthew almost wrote:

That sounds right. Say I want a \(\mathcal{V}\)-enriched category \(\mathcal{Y}^\mathcal{X}\). The objects should be \(\mathcal{V}\)-enriched functors and there's no problem defining the set of those if \(\mathcal{X}\) and \(\mathcal{Y}\) are small (i.e. have a set of objects, rather than a proper class). But then given two \(\mathcal{V}\)-enriched functors \(F, G : \mathcal{X} \to \mathcal{Y}\) we need to define the \(\mathcal{V}\)-object of all \(\mathcal{V}\)-natural transformations from \(F\) to \(G\). That's where the fun starts.

Starting naively, note that a \(\mathcal{V}\)-natural transformation from \(F\) to \(G\) assigns to each object \(x \in \mathrm{Ob}(\mathcal{X})\) a morphism from \(F(x)\) to \(G(x)\), in a such a way that a bunch of naturality squares commute. These naturality square equations can be imposed by taking a limit in \(\mathcal{V}\) - since you can impose a bunch of equations using a bunch of equalizers, and 'a bunch of equalizers' is an example of a limit.

But less naively, we don't want to talk about 'a \(\mathcal{V}\)-natural transformation from \(F\) to \(G\)' because we're not shooting for a

setof these: we're trying to get a \(\mathcal{V}\)-object of these. To build this \(\mathcal{V}\)-object we start by taking the product over all \(x \in \mathrm{Ob}(\mathcal{X})\) of \(\mathcal{Y}(F(x),G(x))\). Then we impose the naturality square equations by taking a suitable limit. That picks out a subobject of$$ \prod_{x \in \mathrm{Ob}(\mathcal{X})} \mathcal{Y}(F(x),G(x)) $$ and this will be our object

\[ \mathcal{Y}^\mathcal{X} (F,G) \]

namely, the object of all \(\mathcal{V}\)-natural transformations from \(F\) to \(G\).

We still need to define composition and such to make \(\mathcal{Y}^\mathcal{X} \) into an enriched category. But that should be 'routine'. The key realization is that we need \(\mathcal{V}\) to have limits to get \(\mathcal{Y}^\mathcal{X} \) up and running, together with whatever assumptions we needed to define \(\mathcal{V}\)-categories in the first place. So, assuming \(\mathcal{V}\) to be symmetric monoidal and complete sounds good.

(Monoidal may be enough, 'symmetric' may not be necessary here, but in the classic introductions like Kelly's book I don't think they try to remove this particular leg from the centipede. Hmm, now that I think about it, we need \(\mathcal{V}\) to be symmetric or at least braided to make the

productof \(\mathcal{V}\)-categories into a \(\mathcal{V}\)-category. Since we are now trying to define the exponential \(\mathcal{Y}^\mathcal{X} \), which is adjoint to the product, I wouldn't be surprised if \(\mathcal{V}\) need to be braided here too! Doing the 'routine' work I mentioned may require moving some objects of \(\mathcal{V}\) past each other.)`<img width = "100" src = "http://math.ucr.edu/home/baez/mathematical/warning_sign.jpg"> Matthew almost wrote: > So we just need the category to have arbitrary meets if we want to define \\(\mathcal{Y}^\mathcal{X}\\). For big-boy enriched categories, using monoidal categories rather than monoidal preorders for \\(\mathcal{V}\\), then I suspect if they are *complete* there's an analogue to the construction above. That sounds right. Say I want a \\(\mathcal{V}\\)-enriched category \\(\mathcal{Y}^\mathcal{X}\\). The objects should be \\(\mathcal{V}\\)-enriched functors and there's no problem defining the set of those if \\(\mathcal{X}\\) and \\(\mathcal{Y}\\) are small (i.e. have a set of objects, rather than a proper class). But then given two \\(\mathcal{V}\\)-enriched functors \\(F, G : \mathcal{X} \to \mathcal{Y}\\) we need to define the \\(\mathcal{V}\\)-object of all \\(\mathcal{V}\\)-natural transformations from \\(F\\) to \\(G\\). That's where the fun starts. Starting naively, note that a \\(\mathcal{V}\\)-natural transformation from \\(F\\) to \\(G\\) assigns to each object \\(x \in \mathrm{Ob}(\mathcal{X})\\) a morphism from \\(F(x)\\) to \\(G(x)\\), in a such a way that a bunch of naturality squares commute. These naturality square equations can be imposed by taking a limit in \\(\mathcal{V}\\) - since you can impose a bunch of equations using a bunch of equalizers, and 'a bunch of equalizers' is an example of a limit. But less naively, we don't want to talk about 'a \\(\mathcal{V}\\)-natural transformation from \\(F\\) to \\(G\\)' because we're not shooting for a _set_ of these: we're trying to get a \\(\mathcal{V}\\)-object of these. To build this \\(\mathcal{V}\\)-object we start by taking the product over all \\(x \in \mathrm{Ob}(\mathcal{X})\\) of \\(\mathcal{Y}(F(x),G(x))\\). Then we impose the naturality square equations by taking a suitable limit. That picks out a subobject of \[ \prod_{x \in \mathrm{Ob}(\mathcal{X})} \mathcal{Y}(F(x),G(x)) \] and this will be our object \\[ \mathcal{Y}^\mathcal{X} (F,G) \\] namely, the object of all \\(\mathcal{V}\\)-natural transformations from \\(F\\) to \\(G\\). We still need to define composition and such to make \\(\mathcal{Y}^\mathcal{X} \\) into an enriched category. But that should be 'routine'. The key realization is that we need \\(\mathcal{V}\\) to have limits to get \\(\mathcal{Y}^\mathcal{X} \\) up and running, together with whatever assumptions we needed to define \\(\mathcal{V}\\)-categories in the first place. So, assuming \\(\mathcal{V}\\) to be symmetric monoidal and complete sounds good. (Monoidal may be enough, 'symmetric' may not be necessary here, but in the classic introductions like [Kelly's book](http://www.tac.mta.ca/tac/reprints/articles/10/tr10.pdf) I don't think they try to [remove this particular leg from the centipede](https://en.wikipedia.org/wiki/Centipede_mathematics). Hmm, now that I think about it, we need \\(\mathcal{V}\\) to be symmetric or at least braided to make the _product_ of \\(\mathcal{V}\\)-categories into a \\(\mathcal{V}\\)-category. Since we are now trying to define the exponential \\(\mathcal{Y}^\mathcal{X} \\), which is adjoint to the product, I wouldn't be surprised if \\(\mathcal{V}\\) need to be braided here too! Doing the 'routine' work I mentioned may require moving some objects of \\(\mathcal{V}\\) past each other.)`

Matthew wrote

So that's how you use the Adjoint Functor Theorem. How useful! It is a tool to use when determining the existence of adjoints.

While going through this I realized my understanding of the Adjoint Functor Theorem was very weak. I can see how the repaired \(F(x)\) doesn't preserve arbitrary joins since \(4 \leq x \leq 6\) and \(6 \leq x\) both map to 2. But for \(G\) I am not sure but maybe it's not preserving the top element which is \(\infty\) and instead setting 6 as the top element?

`Matthew wrote >This argument I just gave to prove there is no companion used two things: \\(\hat{F} = \check{G} \iff F \dashv G\\) and the [Adjoint functor theorem for posets](https://forum.azimuthproject.org/discussion/2031/lecture-16-chapter-1-the-adjoint-functor-theorem-for-posets/p1). I did not explicitly invoke the adjoint functor theorem, however, just thought about it. So that's how you use the Adjoint Functor Theorem. How useful! It is a tool to use when determining the existence of adjoints. >The adjoint functor theorem says that the \\(G\\) you gave, if it is a right adjoint, must preserve all arbitrary meets. Can you see a meet it doesn't preserve? While going through this I realized my understanding of the Adjoint Functor Theorem was very weak. I can see how the repaired \\(F(x)\\) doesn't preserve arbitrary joins since \\(4 \leq x \leq 6\\) and \\(6 \leq x\\) both map to 2. But for \\(G\\) I am not sure but maybe it's not preserving the top element which is \\(\infty\\) and instead setting 6 as the top element?`

Michael wrote:

Right. We can use the adjoint functor theorem to check an a candidate to see if it is really an adjoint.

This is also right. Here's the meet \(G\) is not preserving: \(\bigwedge \varnothing = \top\). The idea is that arbitrary joins follow the rule \(\left(\bigwedge A\right) \wedge \left(\bigwedge B\right) = \bigwedge (A \cup B)\). Using that rule it's pretty easy to prove that \(\bigwedge \varnothing = \top\).

By the adjoint functor theorem if \(G\) has a left adjoint then \(G \left( \bigwedge \varnothing\right) = \bigwedge \varnothing\). In the case of \(\lbrace 0,1,2\rbrace\), \(\bigwedge \varnothing = 2\). So we want \(G ( 2) = \bigwedge \varnothing\). But \(\bigwedge \varnothing = \top\), and we know there's no top element of \([0,\infty)\). So there we see that's the meet \(G\) is not preserving.

`Michael wrote: > I can see how the repaired \\(F(x)\\) doesn't preserve arbitrary joins since \\(4 \leq x \leq 6\\) and \\(6 \leq x\\) both map to 2. Right. We can use the adjoint functor theorem to check an a candidate to see if it is really an adjoint. > But for \\(G\\) I am not sure but maybe it's not preserving the top element which is \\(\infty\\) and instead setting 6 as the top element? This is also right. Here's the meet \\(G\\) is not preserving: \\(\bigwedge \varnothing = \top\\). The idea is that arbitrary joins follow the rule \\(\left(\bigwedge A\right) \wedge \left(\bigwedge B\right) = \bigwedge (A \cup B)\\). Using that rule it's pretty easy to prove that \\(\bigwedge \varnothing = \top\\). By the adjoint functor theorem if \\(G\\) has a left adjoint then \\(G \left( \bigwedge \varnothing\right) = \bigwedge \varnothing\\). In the case of \\(\lbrace 0,1,2\rbrace\\), \\(\bigwedge \varnothing = 2\\). So we want \\(G ( 2) = \bigwedge \varnothing\\). But \\(\bigwedge \varnothing = \top\\), and we know there's no top element of \\([0,\infty)\\). So there we see that's the meet \\(G\\) is not preserving.`

Matthew

Thanks for the explanation. Not only do I have a better understanding of conjoint and companions but also of the adjoint functor theorem!

`Matthew Thanks for the explanation. Not only do I have a better understanding of conjoint and companions but also of the adjoint functor theorem!`