Associative operation taking which combines two values.
Associative operation taking which combines two values.
Return the identity element for this monoid.
Return the identity element for this monoid.
Find the inverse of a
.
Find the inverse of a
.
combine(a, inverse(a))
= combine(inverse(a), a)
= empty
.
Given a sequence of as
, sum them using the monoid and return the total.
Given a sequence of as
, sum them using the monoid and return the total.
Given a sequence of as
, combine them and return the total.
Given a sequence of as
, combine them and return the total.
If the sequence is empty, returns None. Otherwise, returns Some(total).
Return a
appended to itself n
times.
Tests if a
is the identity.
Tests if a
is the identity.
Remove the element b
from a
.
Remove the element b
from a
.
Equivalent to combine(a, inverse(a))
Return a
combined with itself more than once.
Return a
combined with itself more than once.
A group is a monoid where each element has an inverse.