Jason (jcreed) wrote,

Went back and reread some bits of Lüth and Ghani's "Composing Monads". Brilliant stuff. I understand it a little better now, but still not completely.

A brief summary of the point of the paper: people have invented a couple different notions of composing monads, e.g. "distributive laws", and "monad transformers". Both of these are (under appropriate assumptions) special cases of what turns out to just be the coproduct in the category of monads. (I think it's actually a category of pointed endofunctors that are also monads, but close enough)

Some tangential remarks, after thinking about weakened versions of their coproduct construction:

For any functor Fthat preserves coproducts and maybe more requirements, there is a monad we might call "1/(1-F)": (by silly analogy with geometric series)

λX. X + FX + F(FX) + F(F(FX)) + ...

η just embeds X into the first summand, and μ's job is to send each summand of the form FmFnX to Fm+nX.

If F is (λX. A × X), then 1/(1-F) is the "output string over alphabet A" monad.
If F is (λX. A → X), then 1/(1-F) is the "input string over alphabet A" monad.

If F is (λX . GX + HX) and G and H preserve coproducts then you get equation (2) in section (3.2) of the paper (well, with TΩ and TΣ instead of G and H) --- not exactly the coproduct of two mondads, but the penultimate step in the construction of it.

The more general situation is when we have some collection S of functors that include the identity and are closed under composition: then λX.&Sigmas∈S s(X) is a monad. I suppose this requires some preservation of coproducts in various places, too...

No, wasn't being careful enough here. Those examples are almost right, but not quite.
Tags: categories, math, monads
  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded