Options

Lecture 66 - Chapter 4: Collaborative Design

2»

Comments

  • 51.

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

    Comment Source:As structured sets with no required element, the empty set is also the empty preorder is the initial object.
  • 52.

    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...

    Comment Source: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...
  • 53.

    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.

    Comment Source: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.
  • 54.

    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?

    Comment Source: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?
  • 55.

    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?

    Comment Source: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?
  • 56.
    edited August 2018

    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\).

    Comment Source:> 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\\).
  • 57.
    edited August 2018

    image

    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 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 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.)

    Comment Source:<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.)
  • 58.

    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. 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?

    Comment Source: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?
  • 59.
    edited August 2018

    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.

    Comment Source: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.
  • 60.

    Matthew

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

    Comment Source:Matthew Thanks for the explanation. Not only do I have a better understanding of conjoint and companions but also of the adjoint functor theorem!
Sign In or Register to comment.