Talk:Kleisli category
This article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | |||||||||||
|
Non-monadic definition
editHi. I have an alternative description of a Kleisli category which does not rely on monads.
Given a category C <ObjC, HomC, idC, compC>, and a mapping T from ObjC to ObjC (so T is not a functor as it does not go from a category to another one), a Kleisli category over <C, T> is a category <ObjC, λ a b. HomC(a, T b), idK, compK> (so it shares the same objects than C, and its morphisms are defined from those of C) such that
∀ f g h. compK(f, compC(g, h)) = compC(compK(f, g), h).
From that, we can extend T to a functor and define (η X) as (idK X) and (μ X) as (compK(idC (T (T X)), idC (T X))), and show that the monad laws are verified (I did it in the Coq proof assistant).
Kleisli monoid
editIn particular, the Kleisli construction can be applied to monoids. If is a monoid, is a monoid homomorphism, , , , , and , the Kleisli monoid has the same underlying set as but with identity and multiplication . GeoffreyT2000 (talk) 03:10, 17 May 2015 (UTC)
- By monoid you mean a category with 1 object? --Beroal (talk) 18:39, 17 May 2015 (UTC)
Awkward ancient style
editThe whole idea is rather simple, and is embraced by programmers for years now. In this article the whole style is like it's a 100-years old German scientific book. Can we lighten it up, and explain the things clearer? In particular, without using \(Hom\), which belongs to small categories, I guess.