[Haskell-cafe] Re: monads and groups -- instead of loops

Greg Meredith lgreg.meredith at biosimilarity.com
Thu Aug 2 02:09:10 EDT 2007


Thanks for your thoughtful reply. Comments in-lined.

Best wishes,


Date: Thu, 2 Aug 2007 03:06:51 +0200 (CEST)
> From: "Arie Peterson" <ariep at xs4all.nl>
> Subject: Re: [Haskell-cafe] Re: monads and groups -- instead of loops
> To: haskell-cafe at haskell.org
> Message-ID: < 5043. at webmail.xs4all.nl>
> Content-Type: text/plain;charset=iso-8859-1
> Math alert: mild category theory.
> Greg Meredith wrote:
> > But, along these lines i have been wondering for a while... the monad
> laws
> > present an alternative categorification of monoid. At least it's
> > alternative to monoidoid.
> I wouldn't call monads categorifications of monoids, strictly speaking.
> A monad is a monoid object in a category of endofunctors (which is a
> monoidal category under composition).

Sorry, i was being as fast and loose with the term as the rest of the
communities concerned with 'categorification' seem to be.

What do you mean by a 'monoidoid'? I only know it as a perverse synonym of
> 'category' :-).


> In the spirit of this thought, does anyone know of an
> > expansion of the monad axioms to include an inverse action? Here, i am
> > following an analogy
> >
> > monoidoid : monad :: groupoid : ???
> First of all, I don't actually know the answer.
> The canonical option would be a group object in the endofunctor category
> (let's call the latter C). This does not make sense, however: in order to
> formulate the axiom for the inverse, we would need the monoidal structure
> of C (composition of functors) to behave more like a categorical product
> (to wit, it should have diagonal morphisms diag :: m a -> m (m a) ).

It seems to me that there are two basic possibilities, here. One is that the
ambient categories over which one formulates computational monads are almost
always some type of Linear-Cartesian situation. So, you can possibly exploit
the additional structure there. That's certainly been the general flavor of
the situation that motivates me. Otherwise, you can go the route of trying
to excavate structure that might give meaningful interpretations. This has
appeal in that it is more general and might actually uncover something, but
as you observe it's not immediate.

i haven't wrestled with the idea in anger, yet, because i thought it such an
obvious thing to try that someone would have already done the work and was
hoping just to get a reference. Your note suggests that it might be worth
digging a little. i wonder... does a Hopf algebra-like structure do the job?

Maybe there is a way to get it to work, though. After all, what we (in FP)
> call a commutative monad, is not commutative in the usual mathematical
> sense (again, C does not have enough structure to even talk about
> commutativity).
> > My intuition tells me this could be quite generally useful to computing
> in
> > situation where boxing and updating have natural (or yet to be
> discovered)
> > candidates for undo operations. i'm given to understand reversible
> > computing
> > might be a good thing to be thinking about if QC ever gets real... ;-)
> If this structure is to be grouplike, the inverse of an action should be
> not only a post-inverse, but also a pre-inverse. Is that would you have in
> mind?
> (If I'm not making sense, please shout (or ignore ;-) ).)
> Greetings,
> Arie

L.G. Meredith
Managing Partner
Biosimilarity LLC
505 N 72nd St
Seattle, WA 98103

+1 206.650.3740

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20070801/0b9dd62f/attachment-0001.htm

More information about the Haskell-Cafe mailing list