Returns the inverse element of a such that (a |+|? a.inverse).get is an identity.
Tests if a is an identity.
Returns the left identity of a.
Returns the right identity of a.
A groupoid is a semigroupoid where inverse are defined for all elements, and thus left and right identity elements such that:
(i) (leftId(g) |+|? g).get === g (ii) (g |+|? rightId(g)).get === g (iii)
a.inverse |+|? aanda |+|? a.inverseare always defined (iv) ifa |+|? b, then((a |+|? b).get |+|? b.inverse).get === aand((a.inverse |+|? a).get |+|? b) === b