# [Haskell-cafe] What's this algebraic structure called?

Derek Elkins derek.a.elkins at gmail.com
Mon Oct 27 23:28:06 EDT 2008

On Tue, 2008-10-28 at 15:43 +1300, Richard O'Keefe wrote:
> On 28 Oct 2008, at 2:54 pm, Derek Elkins wrote:
>
> > On Tue, 2008-10-28 at 13:54 +1300, Richard O'Keefe wrote:
> >> Is there a special name for an operator monoid where the
> >> structure that's acted on is an Abelian group?
> >
> > This should just be equivalent to a ring, maybe without
> > distributivity.
> > Maybe missing some other properties depending on what you mean by
> > "operator."
>
> Yes, it's close to a ring, but we have ((M,*,1),(X,+,0,-))
> where (M,*,1) is the monoid and (X,+,0,-) is the Abelian group.
> For what I have in mind the sets M and X are disjoint.
> For a ring they would be identical.
> (This being Haskell-Café, I knew types would come in useful...)

Actually modules more or less come back to rings.  The issue again comes
back to what you mean by "operator".  Let's pick a general notion.  You
haven't provided enough information above because you've given no way to
connect M and X, which I'll call G for clarity.  So let's posit an
operation, a monoid action, M x G -> G to have M operate on G.  M ->
End(G) is isomorphic (via an isomorphism we all know and love.)  End(G)
is at least a non-distributive "ring" with * = o, and + = + (pointwise).
So for a given f : M -> End(G), f(M) ~ H \subset End(G).  H is a
submonoid of End(G) which we can extend with all "sums" of elements in H
into a non-distributive "ring" that is a subset of End(G).  If f(m) for
all m in M does distribute over +, then the extension step is
unnecessary and H is a ring.

This is a bunch of random unchecked math.

At any rate, I don't think there is a specific name for exactly what you
want, though I'm still not sure quite what you want.