Re:A monoid is a category, a category is a monad, a monad is...
by krick on Sunday April 16, 2017 @11:10PM
(#14128997)
Oh, silly me, of course, negation must be defined for every pair of elements. Ok, it's pretty clear about monoids (even though actually it would be better if there was an example, where no "natural" inversion exists at all). But what about everything else in the table? Especially I'm interested in magma which is not a semigroup and groupoid which is not a group.
Re:A monoid is a category, a category is a monad, a monad is...
by nimih on Monday April 17, 2017 @05:17PM
(#14134484)
Binary trees, with the operation being to join two trees at the root, form a magma which should quite clearly be non-associative (and thus not a semigroup).
There are of course other examples of sets equipped with non-associative binary operations (for example, 3-dimensional vectors with the cross product), but those typically have extra structure that you will want to exploit which "non-associative magma" cannot capture, and talking about them as magmas will probably feel somewhat artificial unless you have a good reason for ignoring all that structure.
An example which may speak to a programmer more: the set of functions which take a 32-bit int as argument and return a 32-bit int, where the operation is composition of functions. The identity is the identity function. Since not all functions are invertible, this monoid is not a group.