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

- All Categories 2.4K
- Chat 503
- 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 75
- Azimuth Code Project 111
- 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 718

## Comments

iirc the finite and cofinite subsets of \(\mathbb{N}\) form a Heyting algebra that isn't complete (for instance the sequence \(\{0\}, \{0, 2\}, \{0,2, 4\}...\) has no join). Setting \(\otimes\) to be the meet would give us a closed monoidal poset that doesn't have arbitrary joins.

`iirc the finite and cofinite subsets of \\(\mathbb{N}\\) form a Heyting algebra that isn't complete (for instance the sequence \\(\\{0\\}, \\{0, 2\\}, \\{0,2, 4\\}...\\) has no join). Setting \\(\otimes\\) to be the meet would give us a closed monoidal poset that doesn't have arbitrary joins.`

@Simon

I think that one works! In this case \(x \multimap y := y - x\)

(EDIT: I had also come up with finite-cofinite sets like Anindya, but he beat me to it!)

`@Simon > How about \\(( (-\infty,\infty), \ge, +, 0)\\)? I think that one works! In this case \\(x \multimap y := y - x\\) (EDIT: I had also come up with finite-cofinite sets like Anindya, but he beat me to it!)`

I have a feeling that if you have a closed monoidal poset \(\mathcal{V}\), you can always 'freely throw in all joins' and get a new closed monoidal poset with all joins. Maybe Simon knows if this is true: I would try to do it by forming \(\mathbf{Bool}^{\mathcal{V}^{\text{op}}}\): a kind of 'free cocompletion', as the experts say.

However, this may destroy the old joins you happened to have. E.g., you may throw in a new bottom element \(\bot\), rendering the old one (if \(\mathcal{V}\) had one) no longer the bottom.

`I have a feeling that if you have a closed monoidal poset \\(\mathcal{V}\\), you can always 'freely throw in all joins' and get a new closed monoidal poset with all joins. Maybe Simon knows if this is true: I would try to do it by forming \\(\mathbf{Bool}^{\mathcal{V}^{\text{op}}}\\): a kind of 'free cocompletion', as the experts say. However, this may destroy the old joins you happened to have. E.g., you may throw in a new bottom element \\(\bot\\), rendering the old one (if \\(\mathcal{V}\\) had one) no longer the bottom.`

Simon wrote:

You're really pushing Matthew hard, Simon!

Matthew proved it today, but yesterday I added a

sketchof a proof to Lecture 63 because this offers two nicely different characterizations of the same structure: a quantale!(Remember, in my lectures a

quantaleis a closed monoidal poset with all joins.)Here's what I wrote:

$$ a \otimes \left( \bigvee_{b\in B} b\right) = \bigvee_{b \in A} (a \otimes b) $$ for every element \(a\) and every subset \(B\) of \(\mathcal{V}\).

Proof Sketch.For every element \(a\) of \(\mathcal{V}\) there is a monotone function$$ a \otimes - \, \colon \mathcal{V} \to \mathcal{V} $$ sending each \(x \in \mathcal{V}\) to \(a \otimes x\) . By the Adjoint Functor Theorem for Posets, this monotone function has a right adjoint iff it preserves all joins. It a right adjoint iff \(\mathcal{V}\) is closed, since \(\mathcal{V}\) being closed says that

$$ a \otimes x \le y \text{ if and only if } x \le a \multimap y $$ for all \(x, y\) in \(\mathcal{V}\), which means that

$$ a \multimap - \, \colon \mathcal{V} \to \mathcal{V} $$ is a right adjoint of

$$ a \otimes - \, \colon \mathcal{V} \to \mathcal{V} $$ On the other hand, \(a \otimes -\) preserves all joins iff

$$ a \otimes \left( \bigvee_{b\in B} b\right) = \bigvee_{b \in B} (a \otimes b) $$ for every element \(a\) and every subset \(B\) of \(\mathcal{V}\). \( \qquad \blacksquare \)

`Simon wrote: > Or maybe even the following is true. > > Suppose \\(\mathcal{V}\\) is a monoidal partial order which has all joins, then \\(\mathcal{V}\\) is closed if and only if the monoidal product distributes over joins. You're really pushing Matthew hard, Simon! Matthew proved it today, but yesterday I added a _sketch_ of a proof to [Lecture 63](https://forum.azimuthproject.org/discussion/2295/lecture-63-chapter-4-composing-enriched-profunctors/p1) because this offers two nicely different characterizations of the same structure: a quantale! (Remember, in my lectures a **quantale** is a closed monoidal poset with all joins.) Here's what I wrote: > **Theorem.** If \\(\mathcal{V}\\) is a monoidal poset with all joins, \\(\mathcal{V}\\) is a quantale if and only if \[ a \otimes \left( \bigvee\_{b\in B} b\right) = \bigvee\_{b \in A} (a \otimes b) \] for every element \\(a\\) and every subset \\(B\\) of \\(\mathcal{V}\\). **Proof Sketch.** For every element \\(a\\) of \\(\mathcal{V}\\) there is a monotone function \[ a \otimes - \, \colon \mathcal{V} \to \mathcal{V} \] sending each \\(x \in \mathcal{V}\\) to \\(a \otimes x\\) . By the [Adjoint Functor Theorem for Posets](https://forum.azimuthproject.org/discussion/2031/lecture-16-chapter-1-the-adjoint-functor-theorem-for-posets/p1), this monotone function has a right adjoint iff it preserves all joins. It a right adjoint iff \\(\mathcal{V}\\) is closed, since \\(\mathcal{V}\\) being closed says that \[ a \otimes x \le y \text{ if and only if } x \le a \multimap y \] for all \\(x, y\\) in \\(\mathcal{V}\\), which means that \[ a \multimap - \, \colon \mathcal{V} \to \mathcal{V} \] is a right adjoint of \[ a \otimes - \, \colon \mathcal{V} \to \mathcal{V} \] On the other hand, \\(a \otimes -\\) preserves all joins iff \[ a \otimes \left( \bigvee\_{b\in B} b\right) = \bigvee\_{b \in B} (a \otimes b) \] for every element \\(a\\) and every subset \\(B\\) of \\(\mathcal{V}\\). \\( \qquad \blacksquare \\)`

Hey John,

We talked about this a long time ago.

For any poset, its

Dedekind completionis the smallest complete lattice that embeds that poset.Since the completion is an embedding, this preserves the bottom and top elements (up to isomorphism), but we can check that if you like.

`Hey John, We talked about this a long time ago. For any poset, its *Dedekind completion* is the smallest complete lattice that embeds that poset. Since the completion is an embedding, this preserves the bottom and top elements (up to isomorphism), but we can check that if you like.`

Interesting. I was talking about monoidal posets, not posets. If we start with a monoidal poset, does its Dedekind completion automatically get a monoidal structure extending that of our original monoidal poset? (Note: I'm not assuming the monoidal structure is \(\wedge\).)

See, in general when you take the 'free cocompletion' of a category \(\mathcal{C}\) you get the presheaf category \(\mathbf{Set}^{\mathcal{C}^{\text{op}}}\), which has all (small) colimits. \(\mathcal{C}\) sits inside \(\mathbf{Set}^{\mathcal{C}^{\text{op}}}\) via the Yoneda embedding. And if \(\mathcal{C}\) is monoidal, \(\mathbf{Set}^{\mathcal{C}^{\text{op}}}\) will become monoidal too, in a manner that extends the monoidal structure on \(\mathcal{C}\): this is called Day convolution. But the colimits that \(\mathcal{C}\) originally had will be broken.

I was thinking it would be fun to something similar for posets, which are \(\textbf{Bool}\)-enriched categories. Colimits in posets are just

joins. And the whole business I just described works for \(\mathcal{V}\)-enriched categories when \(\mathcal{V}\) is sufficiently nice, e.g. \(\textbf{Bool}\). (The link says what 'sufficiently nice' means.)So, for any poset \(\mathcal{C}\) we can form a poset \(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\) whose elements are monotone maps from \(\mathcal{C}^{\text{op}}\) to \(\textbf{Bool}\). This poset should contain \(\mathcal{C}\) in some obvious way, and it should have all joins. And if \(\mathcal{C}\) is monoidal, so will be \(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\).

I'm not sure how this construction is related to the Dedekind completion. Nor am I sure that the joins in \(\mathcal{C}\) are no longer joins in \(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\)!

One way to think about a monotone map from \(\mathcal{C}^{\text{op}}\) to \(\textbf{Bool}\) is to look at the set of elements that map to \(\text{true}\); this is an upper set in \(\mathcal{C}^{\text{op}}\), or a lower set in \(\mathcal{C}\). This seems a bit Dedekind-y; right now I don't even remember how the Dedekind completion of a poset works.

`Interesting. I was talking about monoidal posets, not posets. If we start with a monoidal poset, does its Dedekind completion automatically get a monoidal structure extending that of our original monoidal poset? (Note: I'm not assuming the monoidal structure is \\(\wedge\\).) See, in general when you take the 'free cocompletion' of a category \\(\mathcal{C}\\) you get the presheaf category \\(\mathbf{Set}^{\mathcal{C}^{\text{op}}}\\), which has all (small) colimits. \\(\mathcal{C}\\) sits inside \\(\mathbf{Set}^{\mathcal{C}^{\text{op}}}\\) via the Yoneda embedding. And if \\(\mathcal{C}\\) is monoidal, \\(\mathbf{Set}^{\mathcal{C}^{\text{op}}}\\) will become monoidal too, in a manner that extends the monoidal structure on \\(\mathcal{C}\\): this is called [Day convolution](https://ncatlab.org/nlab/show/Day+convolution#ForMonoidalCategories). But the colimits that \\(\mathcal{C}\\) originally had will be broken. I was thinking it would be fun to something similar for posets, which are \\(\textbf{Bool}\\)-enriched categories. Colimits in posets are just _joins_. And the whole business I just described works for \\(\mathcal{V}\\)-enriched categories when \\(\mathcal{V}\\) is sufficiently nice, e.g. \\(\textbf{Bool}\\). (The link says what 'sufficiently nice' means.) So, for any poset \\(\mathcal{C}\\) we can form a poset \\(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\\) whose elements are monotone maps from \\(\mathcal{C}^{\text{op}}\\) to \\(\textbf{Bool}\\). This poset should contain \\(\mathcal{C}\\) in some obvious way, and it should have all joins. And if \\(\mathcal{C}\\) is monoidal, so will be \\(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\\). I'm not sure how this construction is related to the Dedekind completion. Nor am I sure that the joins in \\(\mathcal{C}\\) are no longer joins in \\(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\\)! One way to think about a monotone map from \\(\mathcal{C}^{\text{op}}\\) to \\(\textbf{Bool}\\) is to look at the set of elements that map to \\(\text{true}\\); this is an [upper set](https://en.wikipedia.org/wiki/Upper_set) in \\(\mathcal{C}^{\text{op}}\\), or a lower set in \\(\mathcal{C}\\). This seems a bit Dedekind-y; right now I don't even remember how the Dedekind completion of a poset works.`

Oh, I just noticed something.

Our friend \(\leq\), being somewhat of a Boolean hom-functor, is adjoint to the Boolean Yoneda embedding,

\[ \leq : \mathcal{P}^{op} \times \mathcal{P} \to \mathbf{Bool} \\ \Leftrightarrow \\ よ : \mathcal{P} \to \mathbf{Bool}^{\mathcal{P}^{op}}. \]

Edit: The symbol よ ["yo"] is Japanese hiragana, coming from the Japanese surname

よねだ /米田 ["yoneda"], of the Japanese mathematician Nobuo Yoneda. Interestingly, the symbols 米田 can also be pronounced as めた ["meta"] in Japanese, which is sort of what the Yoneda lemma and embedding are.`Oh, I just noticed something. Our friend \\(\leq\\), being somewhat of a Boolean hom-functor, is adjoint to the Boolean Yoneda embedding, \\[ \leq : \mathcal{P}^{op} \times \mathcal{P} \to \mathbf{Bool} \\\\ \Leftrightarrow \\\\ よ : \mathcal{P} \to \mathbf{Bool}^{\mathcal{P}^{op}}. \\] Edit: The symbol よ ["yo"] is Japanese hiragana, coming from the Japanese surname **よ**ねだ /米田 ["**yo**neda"], of the Japanese mathematician Nobuo Yoneda. Interestingly, the symbols 米田 can also be pronounced as めた ["meta"] in Japanese, which is sort of what the Yoneda lemma and embedding are.`

Very nice observation, Keith!

Yes, in this lecture we saw that whenever \(\mathcal{V}\) is a commutative quantale, every \(\mathcal{V}\)-enriched category \(\mathcal{C}\) has a hom-functor

$$ \text{hom} : \mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V} $$ In Lecture 64 we saw this gives a \(\mathcal{V}\)-enriched profunctor which is just the identity

$$ 1_{\mathcal{C}} : \mathcal{C} \nrightarrow \mathcal{C} .$$ We haven't talked about functor categories for enriched categories. But they work okay in this context. We can feed the \(\mathcal{V}\)-enriched functor

$$ \text{hom} : \mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V} $$ an object of \(\mathcal{C}\) and it will give back a functor from \(\mathcal{C}^{\text{op}} \) to \( \mathcal{V} \), which is an object of \( \mathcal{V}^{ \mathcal{C}^{\text{op}} } \).

So, one can check, we get a functor

$$ Y : \mathcal{C} \to \mathcal{V}^{ \mathcal{C}^{\text{op}} } $$ which is called the

Yoneda embedding.So the Yoneda embedding, the identity profunctor

$$ 1_{\mathcal{C}} : \mathcal{C} \nrightarrow \mathcal{C} $$ and the hom-functor

$$ \text{hom} : \mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V} $$ are all just different views of the same thing!

`Very nice observation, Keith! Yes, in this lecture we saw that whenever \\(\mathcal{V}\\) is a commutative quantale, every \\(\mathcal{V}\\)-enriched category \\(\mathcal{C}\\) has a hom-functor \[ \text{hom} : \mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V} \] In [Lecture 64](https://forum.azimuthproject.org/discussion/2298/lecture-64-chapter-5-the-category-of-enriched-profunctors/p1) we saw this gives a \\(\mathcal{V}\\)-enriched profunctor which is just the identity \[ 1_{\mathcal{C}} : \mathcal{C} \nrightarrow \mathcal{C} .\] We haven't talked about functor categories for enriched categories. But they work okay in this context. We can feed the \\(\mathcal{V}\\)-enriched functor \[ \text{hom} : \mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V} \] an object of \\(\mathcal{C}\\) and it will give back a functor from \\(\mathcal{C}^{\text{op}} \\) to \\( \mathcal{V} \\), which is an object of \\( \mathcal{V}^{ \mathcal{C}^{\text{op}} } \\). So, one can check, we get a functor \[ Y : \mathcal{C} \to \mathcal{V}^{ \mathcal{C}^{\text{op}} } \] which is called the **Yoneda embedding**. So the Yoneda embedding, the identity profunctor \[ 1_{\mathcal{C}} : \mathcal{C} \nrightarrow \mathcal{C} \] and the hom-functor \[ \text{hom} : \mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V} \] are all just different views of the same thing!`

I don't know the answer.

I know in lattice theory, for any poset \((X, \le)\) then if we consider the set \(X^\uparrow\) of \(X\)'s upper sets, this set forms a complete lattice under arbitrary joins and meets. This lattice is called an Alexandrov Topology. In fact \(\bullet^\uparrow\) extends to a functor. A monotone function \(f: X \to Y\) can be lifted to \(f^\uparrow : X^\uparrow \to Y^\uparrow\) as follows: if \(u \in X^\uparrow\) then \(f^\uparrow (u) := f_!(u)\) following the notation from Lecture 9 in chapter 1. In fact \(f_!\) is a

continuousfunction between the two topologies. We also have the map \(\uparrow \lbrace x\rbrace := \lbrace y \mid x \le y \rbrace\) is an injective monotone function.This might be the free cocompletion you are thinking of, or perhaps its dual.

The Dedekind-MacNeil completion is similar. Say \(\uparrow X := \lbrace y \mid \forall x \in X. a \leq y\rbrace \) and \(\downarrow X := \lbrace y \mid \forall x \in X. y \leq x\rbrace .\) A set \(A \subseteq P \) is in the Dedekind-MacNeil completion of \(P\) if and only if \(A = \downarrow (\uparrow A) .\)

The question now is if these things are preserving a monoidal poset.

• If \(A\) and \(B\) are upper sets, then is \(A \bar{\otimes} B = \lbrace a \otimes b \mid a \in A \text{ and } b \in B \rbrace \) an upper set?

• If \(A\) and \(B\) are in the Dedekind-MacNeil completion of \(P\), then is \(A \bar{\otimes} B\) also in the completion too?

Hopefully I can find the time tomorrow to dig into this.

`> Interesting. I was talking about monoidal posets, not posets. If we start with a monoidal poset, does its Dedekind completion automatically get a monoidal structure extending that of our original monoidal poset? I don't know the answer. > So, for any poset \\(\mathcal{C}\\) we can form a poset \\(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\\) whose elements are monotone maps from \\(\mathcal{C}^{\text{op}}\\) to \\(\textbf{Bool}\\). This poset should contain \\(\mathcal{C}\\) in some obvious way, and it should have all joins. And if \\(\mathcal{C}\\) is monoidal, so will be \\(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\\). > I'm not sure how this construction is related to the Dedekind completion. Nor am I sure that the joins in \\(\mathcal{C}\\) are no longer joins in \\(\mathbf{Bool}^{\mathcal{C}^{\text{op}}}\\)! > One way to think about a monotone map from \\(\mathcal{C}^{\text{op}}\\) to \\(\textbf{Bool}\\) is to look at the set of elements that map to \\(\text{true}\\); this is an [upper set](https://en.wikipedia.org/wiki/Upper_set) in \\(\mathcal{C}^{\text{op}}\\), or a lower set in \\(\mathcal{C}\\). This seems a bit Dedekind-y; right now I don't even remember how the Dedekind completion of a poset works. I know in lattice theory, for any poset \\((X, \le)\\) then if we consider the set \\(X^\uparrow\\) of \\(X\\)'s upper sets, this set forms a complete lattice under arbitrary joins and meets. This lattice is called an [Alexandrov Topology](https://en.wikipedia.org/wiki/Alexandrov_topology). In fact \\(\bullet^\uparrow\\) extends to a functor. A monotone function \\(f: X \to Y\\) can be lifted to \\(f^\uparrow : X^\uparrow \to Y^\uparrow\\) as follows: if \\(u \in X^\uparrow\\) then \\(f^\uparrow (u) := f_!(u)\\) following the notation from [Lecture 9](https://forum.azimuthproject.org/discussion/1931/lecture-9-chapter-1-adjoints-and-the-logic-of-subsets/p1) in chapter 1. In fact \\(f_!\\) is a *continuous* function between the two topologies. We also have the map \\(\uparrow \lbrace x\rbrace := \lbrace y \mid x \le y \rbrace\\) is an injective monotone function. This might be the free cocompletion you are thinking of, or perhaps its dual. The Dedekind-MacNeil completion is similar. Say \\(\uparrow X := \lbrace y \mid \forall x \in X. a \leq y\rbrace \\) and \\(\downarrow X := \lbrace y \mid \forall x \in X. y \leq x\rbrace .\\) A set \\(A \subseteq P \\) is in the Dedekind-MacNeil completion of \\(P\\) if and only if \\(A = \downarrow (\uparrow A) .\\) The question now is if these things are preserving a monoidal poset. • If \\(A\\) and \\(B\\) are upper sets, then is \\(A \bar{\otimes} B = \lbrace a \otimes b \mid a \in A \text{ and } b \in B \rbrace \\) an upper set? • If \\(A\\) and \\(B\\) are in the Dedekind-MacNeil completion of \\(P\\), then is \\(A \bar{\otimes} B\\) also in the completion too? Hopefully I can find the time tomorrow to dig into this.`

I believe they do preserve monoidal structure.

Upper sets preserve joins, while down sets preserve meets (Or maybe it's backward).

Basically, upper and down sets are like presheaves and copresheaves in my head (or at least what I think are (co)presheaves).

In fact, given John Baez's earlier comments, I'm pretty sure a decategorized presheaf gives a quantale.

`I believe they do preserve monoidal structure. Upper sets preserve joins, while down sets preserve meets (Or maybe it's backward). Basically, upper and down sets are like presheaves and copresheaves in my head (or at least what I think are (co)presheaves). In fact, given John Baez's earlier comments, I'm pretty sure a decategorized presheaf gives a quantale.`

@John wrote:

We can generalise this surely: any \(\mathcal{V}\)-profunctor \(\Phi : \mathcal{C} \nrightarrow \mathcal{D}\) corresponds to a unique \(\mathcal{V}\)-functor \(\mathcal{D} \to \mathcal{V}^{C^\text{op}}\), and vice versa. Which I suppose gives another perspective on what profunctors "are".

`@John wrote: > So the Yoneda embedding, the identity profunctor \\(1_{\mathcal{C}} : \mathcal{C} \nrightarrow \mathcal{C}\\) and the hom-functor \\(\mathcal{C}^{\text{op}} \times \mathcal{C} \to \mathcal{V}\\) are all just different views of the same thing! We can generalise this surely: any \\(\mathcal{V}\\)-profunctor \\(\Phi : \mathcal{C} \nrightarrow \mathcal{D}\\) corresponds to a unique \\(\mathcal{V}\\)-functor \\(\mathcal{D} \to \mathcal{V}^{C^\text{op}}\\), and vice versa. Which I suppose gives another perspective on what profunctors "are".`

@Keith

I appreciate the vote of confidence, Keith, but having slept on this I don't think \(A \bar{\otimes} B = \lbrace a \otimes b \mid a \in A \text{ and } b \in B \rbrace \) works.

Consider any bounded poset \(P\) with more than two elements. Call the initial object \(\bot\) and the terminal object \(\top\). Define:

$$ a \bullet b := \begin{cases} a & \text{if } b = \top \\ b & \text{if } a = \top \\ \bot & \text{otherwise} \end{cases} $$ We can see \((P, \bullet, \top)\) forms a monoid. We also need to check that \((P, \leq, \bullet, \top)\) is a monoidal partial order. This boils down to checking \(a \leq b\) and \(c \leq d\) then \(a \bullet c \leq b \bullet d\). This could be done by checking the 16 cases where \(a = b = c = d = \top\), \(a = b = c = \top\) and \(d \neq \top\), etc.

If \(A\) and \(B\) are upper sets, then \(A\; \bar{\bullet}\; B\) may not be an upper set. Consider the case where \(P = \mathcal{P}(\lbrace a,b \rbrace)\), ordered by inclusion. We have \(X = \lbrace \lbrace a \rbrace, \lbrace a, b \rbrace \rbrace\) is an upper set. But \(X\; \bar{\bullet}\; X = \lbrace \varnothing, \lbrace a \rbrace, \lbrace a, b \rbrace \rbrace\) which is

notan upper set.I am not sure if this is broken for the Dedekind-MacNeil completion, but I suspect it may be.

`@Keith > I believe they do preserve monoidal structure. > > Upper sets preserve joins, while down sets preserve meets (Or maybe it's backward). > > Basically, upper and down sets are like presheaves and copresheaves in my head (or at least what I think are (co)presheaves). I appreciate the vote of confidence, Keith, but having slept on this I don't think \\(A \bar{\otimes} B = \lbrace a \otimes b \mid a \in A \text{ and } b \in B \rbrace \\) works. Consider any bounded poset \\(P\\) with more than two elements. Call the initial object \\(\bot\\) and the terminal object \\(\top\\). Define: \[ a \bullet b := \begin{cases} a & \text{if } b = \top \\\\ b & \text{if } a = \top \\\\ \bot & \text{otherwise} \end{cases} \] We can see \\((P, \bullet, \top)\\) forms a monoid. We also need to check that \\((P, \leq, \bullet, \top)\\) is a monoidal partial order. This boils down to checking \\(a \leq b\\) and \\(c \leq d\\) then \\(a \bullet c \leq b \bullet d\\). This could be done by checking the 16 cases where \\(a = b = c = d = \top\\), \\(a = b = c = \top\\) and \\(d \neq \top\\), etc. If \\(A\\) and \\(B\\) are upper sets, then \\(A\; \bar{\bullet}\; B\\) may not be an upper set. Consider the case where \\(P = \mathcal{P}(\lbrace a,b \rbrace)\\), ordered by inclusion. We have \\(X = \lbrace \lbrace a \rbrace, \lbrace a, b \rbrace \rbrace\\) is an upper set. But \\(X\; \bar{\bullet}\; X = \lbrace \varnothing, \lbrace a \rbrace, \lbrace a, b \rbrace \rbrace\\) which is *not* an upper set. I am not sure if this is broken for the Dedekind-MacNeil completion, but I suspect it may be.`

A question Matt: Why are you defining the monoidal product in that way?

It seems unnecessary.

`A question Matt: Why are you defining the monoidal product in that way? It seems unnecessary.`

I defined \(a \bullet b\) as a counter example to the idea that the upper set embedding and Dedekind-MacNeil embedding preserve monoidal products.

Regarding the definition of \(A \; \bar{\otimes} \; B = \lbrace a \otimes b \mid a \in A \text{ and } b \in B \rbrace\), it seems natural. Maybe you can think of something else?

If we want to embed some mathematical object \(\mathfrak{M} \hookrightarrow \mathfrak{N}\), then if \(\mathfrak{M}\) has a tensor \(\otimes\) (or an order relation, or whatever) then \(\mathfrak{N}\) has to have one too.

`> A question Matt: Why are you defining the monoidal product in that way? I defined \\(a \bullet b\\) as a counter example to the idea that the upper set embedding and Dedekind-MacNeil embedding preserve monoidal products. Regarding the definition of \\(A \; \bar{\otimes} \; B = \lbrace a \otimes b \mid a \in A \text{ and } b \in B \rbrace\\), it seems natural. Maybe you can think of something else? If we want to embed some mathematical object \\(\mathfrak{M} \hookrightarrow \mathfrak{N}\\), then if \\(\mathfrak{M}\\) has a tensor \\(\otimes\\) (or an order relation, or whatever) then \\(\mathfrak{N}\\) has to have one too.`

I honestly don't know why this matters, but I'll give you the benefit of the doubt.

However, it's clear to me now that downsets preserve meets (\(\land\)), and uppersets preserve joins (\(\lor\)).

Proof:

A downset is defined to be a set \[ \downarrow_{x} := \lbrace y \mid y \leq x \rbrace \]

Given two downsets, \(\downarrow_{\lbrace x \rbrace},\downarrow_{\lbrace y \rbrace}\) we will say \(\downarrow_{\lbrace x \rbrace} \subseteq \downarrow_{\lbrace y \rbrace} \) if, and only if, \(x \leq y\).

Then clearly meets are preserved, since if

\[ x_1 \leq y \]

and,

\[ x_1 \leq y \]

and,

\[ x_1 \land x_2 \] is the meet of \(x_1\) and \(x_2\), ie

\[ x_1 \land x_2 \leq x_1 \]

and, \[ x_1 \land x_2 \leq x_2 \]

then,

\[ x_1 \land x_2 \leq y \]

and,

\[ x_1 \land x_2 \leq x_1 \leq y \Rightarrow \\ \downarrow_{\lbrace x_1 \land x_2 \rbrace} \subseteq \downarrow_{\lbrace x_1 \rbrace} \subseteq \downarrow_{\lbrace y \rbrace} \]

and,

\[ x_1 \land x_2 \leq x_2 \leq y \Rightarrow \\ \downarrow_{\lbrace x_1 \land x_2 \rbrace} \subseteq \downarrow_{\lbrace x_2 \rbrace} \subseteq \downarrow_{\lbrace y \rbrace} \]

furthermore, this is monoidal with,

\[ \downarrow_{\lbrace x_1 \land x_2 \ \rbrace} = \downarrow_{\lbrace x_1 \rbrace} \cap \downarrow_{\lbrace x_2 \rbrace}. \]

\(\blacksquare\)

The proof with upper sets and joins proceeds similarity.

`I honestly don't know why this matters, but I'll give you the benefit of the doubt. However, it's clear to me now that downsets preserve meets (\\(\land\\)), and uppersets preserve joins (\\(\lor\\)). Proof: A downset is defined to be a set \\[ \downarrow\_{x} := \lbrace y \mid y \leq x \rbrace \\] Given two downsets, \\(\downarrow\_{\lbrace x \rbrace},\downarrow\_{\lbrace y \rbrace}\\) we will say \\(\downarrow\_{\lbrace x \rbrace} \subseteq \downarrow\_{\lbrace y \rbrace} \\) if, and only if, \\(x \leq y\\). Then clearly meets are preserved, since if \\[ x\_1 \leq y \\] and, \\[ x\_1 \leq y \\] and, \\[ x\_1 \land x\_2 \\] is the meet of \\(x\_1\\) and \\(x\_2\\), ie \\[ x\_1 \land x\_2 \leq x\_1 \\] and, \\[ x\_1 \land x\_2 \leq x\_2 \\] then, \\[ x\_1 \land x\_2 \leq y \\] and, \\[ x\_1 \land x\_2 \leq x\_1 \leq y \Rightarrow \\\\ \downarrow\_{\lbrace x\_1 \land x\_2 \rbrace} \subseteq \downarrow\_{\lbrace x\_1 \rbrace} \subseteq \downarrow\_{\lbrace y \rbrace} \\] and, \\[ x\_1 \land x\_2 \leq x\_2 \leq y \Rightarrow \\\\ \downarrow\_{\lbrace x\_1 \land x\_2 \rbrace} \subseteq \downarrow\_{\lbrace x\_2 \rbrace} \subseteq \downarrow\_{\lbrace y \rbrace} \\] furthermore, this is monoidal with, \\[ \downarrow\_{\lbrace x\_1 \land x\_2 \ \rbrace} = \downarrow\_{\lbrace x\_1 \rbrace} \cap \downarrow\_{\lbrace x\_2 \rbrace}. \\] \\(\blacksquare\\) The proof with upper sets and joins proceeds similarity.`

Keith,

You are only preserving \(\wedge\), but a monoidal preorder can have a different monoidal operation such as \(+\) in \(\mathbf{Cost}\) or my example of \(\bullet\).

This is exactly what John was concerned about when he said to me:

`Keith, You are only preserving \\(\wedge\\), but a monoidal preorder can have a different monoidal operation such as \\(+\\) in \\(\mathbf{Cost}\\) or my example of \\(\bullet\\). This is exactly what John was concerned about when he said to me: > Interesting. I was talking about monoidal posets, not posets. If we start with a monoidal poset, does its Dedekind completion automatically get a monoidal structure extending that of our original monoidal poset? (Note: I'm not assuming the monoidal structure is \\(\wedge\\).)`