Category of left R -modules
This functionality does not run in MATLAB.
Cat::LeftModule(R) represents the category of left R-modules.
A Cat::LeftModule(R) is an Abelian group together with a rng R (a ring without unit) and a left multiplication * (_mult).
The left multiplication is an operation taking an element of rng R and a module element and returning a module element.
Given ring elements a, b and module elements x, y the following 3 distibutive laws must hold:
(a b) x = a (b x),
(a + b) x = a x + b x,
a (x + y) = a x + a y.
Beware: The operation of a non-Abelian semi-group is also written as * (_mult). The method "_mult" must handle the situation if a left module is also a non-Abelian semi-group. In such a case it must both implement the group operation and the left multiplication by elements of the rng.
A domain which must be from the category Cat::Rng.