Timeline for Kleisli Monad bijection
Current License: CC BY-SA 2.5
15 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Jun 3, 2010 at 13:21 | vote | accept | user6082 | ||
Jun 3, 2010 at 13:21 | answer | added | user6082 | timeline score: 0 | |
May 26, 2010 at 17:30 | answer | added | David Carchedi | timeline score: 1 | |
May 26, 2010 at 12:59 | history | edited | user6082 | CC BY-SA 2.5 |
added 214 characters in body
|
May 26, 2010 at 12:33 | answer | added | Neel Krishnaswami | timeline score: 2 | |
May 26, 2010 at 11:43 | comment | added | user6082 | I thought that * has to be defined on the whole class of morphisms. Even if you restricted it to Hom(A,TB), the initial problem is still there because I might define it differently on Hom(A,TC) but TB=TC. Could you give a precise mathematical definition that makes sense (forget Isabelle for the moment)? | |
May 26, 2010 at 11:33 | comment | added | Neel Krishnaswami | I should add that your difficulty is partly a function of the fact that you are trying to define $*$ on the universal collection of all the morphisms, rather than by considering families of hom-sets indexed by domain and codomain. In a dependent type theory, I would usually try to define Hom to be a type operator dependent upon domain and codomain. Isabelle must have some standard techniques to work around the lack of dependency -- I would look at those. (My previous comment is one way of doing it, but if there's an idiomatic thing you should do that.) | |
May 26, 2010 at 11:32 | comment | added | user6082 | I was thinking about this, but that's a different category, isn't it? | |
May 26, 2010 at 11:27 | comment | added | Neel Krishnaswami | You could just define the morphisms to be triples $(A, B, f : A \to TB)$. Then you would know which $B$ to choose. | |
May 26, 2010 at 11:25 | history | edited | Neel Krishnaswami | CC BY-SA 2.5 |
fixed curly braces for sets
|
May 26, 2010 at 10:23 | history | edited | user6082 | CC BY-SA 2.5 |
added 99 characters in body
|
May 26, 2010 at 10:13 | history | edited | user6082 | CC BY-SA 2.5 |
added 442 characters in body
|
May 26, 2010 at 10:08 | comment | added | user6082 | Maybe I did not make myself clear enough. It is a subtle point (maybe trivial?), and one that I missed until I tried to formally write down a definition in Isabelle. Given a monad $(T,\mu,\eta)$, I need to define $*$ on the class $\{f|\exists A,B \in |\mathbf{C}| . f : A \to T B \}$. If $T$ were an embedding then I could just take $B := T^{-1}(\mathrm{cod}(f))$. What do I do though when $T$ is not an embedding? All I know about the codomain of an element of this class is that it is in the image of $T$. There may be many $B$'s and the $\mu_B$'s may be different! | |
May 26, 2010 at 0:56 | comment | added | Mike Shulman | The objects of the Kleisli category are the objects of the underlying category, not T of them, so the reconstruction of the monad from the Kleisli category is always perfectly well-defined, even though the answer to your first question is probably "no." | |
May 25, 2010 at 21:01 | history | asked | user6082 | CC BY-SA 2.5 |