Arie,

Thanks for your thoughtful reply. Comments in-lined.

Best wishes,

--greg

Date: Thu, 2 Aug 2007 03:06:51 +0200 (CEST)
From: "Arie Peterson" <ariep@xs4all.nl>
Subject: Re: [Haskell-cafe] Re: monads and groups -- instead of loops
To: haskell-cafe@haskell.org
Message-ID: < 5043.213.84.177.94.1186016811.squirrel@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' :-).

Indeed.

> 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

http://biosimilarity.blogspot.com