## `Cat::LeftModule` -- the category of left `R`-modules

#### Introduction

``Cat::LeftModule`(R)` represents the category of left `R`-modules.

#### Generating the category

`Cat::LeftModule(R)`

#### Parameters

`R` | - | A domain which must be from the category `Cat::Rng`.

#### Categories

`Cat::AbelianGroup`

#### Details

- 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:
  1. (a b) x = a (b x),
  2. (a + b) x = a x + b x,
  3. 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.

#### Method _mult: left multiplication by a rng element

- `_mult(R r, dom x)`
- - Must return the left multiplication of `x` by the rng element `r`.

#### Changes

- no changes

Do you have questions or comments?
Copyright © SciFace Software GmbH & Co. KG 2000