Here we look at various types of structure:
Groups
This consists of:
- A finite or infinite set
- An operation on the set
- An inverse operation

Groups are discussed on these pages.
Rings

Rings have two operations (see this page).
Fields and Vector Space over a Field

Fields are more specific than rings, they can be scalars when multiplied by vectors.
Specific Algebras
In order to program 3D simulations, games, etc. it is useful to be able to work with different algebras such as,
- Integers,
- Real Numbers,
- Vectors,
- Complex Numbers
- Quaternions,
- Matrices
- Multi Vectors (Clifford Algebra, Geometric Algebra)
Most of these algebras have operations on them such as addition and multiplication. We may be familiar with real number algebra, but when we are working with different algebras different rules may apply, therefore it is useful to explicitly define the rules.
Commutative
An operation is commutative if the order of its operands can be reversed without affecting the result. This is usually expressed in terms of arbitrary elements of the algebra (here denoted x and y).
| ( |
x * y = y * x |
This says that for all values of x and y then x * y is always equal to y * x. Below we will see that there are ways to express this without having to use arbitary variables.
Addition is commutative but multiplication may, or may not be, commutative. See table below. For example matricies and quaternions don't have commutative multiplication.
Associative
An operation is associative if the order of doing multiple operations is not important. For example:
| ( |
x * (y * z) = (x * y) * z |
Distributive
When there are two operations in this algebra say, + and *, then * is said to be distributive over + if:
| ( |
x * (y + z) = (x * y) + (x * z) |
Other Ways To Represent These Properties
So far we have described these algebraic axioms in terms of arbitrary variables named x,y and z. This is the easiest way to intuitivly understand the axioms, however when working with computers it may be better if we can find an altenative notation which eleminates these arbitrary variables, also this may help us to generalise to any structure which has a given system of axioms (see algebraic variety), that is we want to seperate the structure from the objects the structure works on.
To do this we need to abstract (lift) up a level and describe these properties in terms of its external properties. There are two mathematical subject areas on this site which take this approach:
- Category Theory - see functors and here.
- Combinatory Logic
Commutative Law
For instance in combinatory logic the commutative law, which we defined above:
| ( |
x + y = y + x |
We change + as a prefix rather than an infix operator:
| ( |
+(x,y) = +(y,x) | |
| +(x,y) = (C+)(x,y) |
Where C means: swap functions as explained on the combinatory logic page.
So we can cancel out the elements (x,y) and just represent the commutative axiom as:
+ = C(+)
So using operators we don't have to describe axioms in terms of arbitrary elements.
Associative Law
We can also 'lift' the associative law, on the category theory pages the associative law, which we defined above:
| ( |
x * (y * z) = (x * y) * z |
On this page we changed * which acts as an infix operator to μ which acts as a prefix function and so we get:
| μ(x,μ(y,z)) = μ(μ(x,y),z) | prefix version of above |
| μ(id×μ)(x,y,z) = μ(μ×id)(x,y,z) | rearrage to make function of (x,y,z) |
| μ•(id×μ) = μ•(μ×id) | 'lift' that is cancel out (x,y,z) |
Algebras
| * distributive over + | Multiplication commutative | Multiplication associative | |
| Real Numbers | yes | yes | yes |
| Complex Numbers | yes | yes | yes |
| Quaternions | yes | no | yes |
| Octonions | yes | no | no |
| Vectors | yes | no | no |
| Matricies | yes | no | yes |
| Multi Vectors | yes | no | no |
For further information see group theory.
Other Algebra Concepts to be Covered
- Sets
- Numbers - infinite sets, ordered sets
- Functions (mappings) - between elements, between groups or rings
- Binary operations
How do I design an Algebra?
These different algebras listed above all use the same addition and multiplication operations, the difference seems to be the number of dimensions and the way that these dimensions interact.
In all the above cases addition just adds the terms from corresponding dimensions.
Multiplication combines numbers across dimensions, if it did not then we might as well treat each dimension independently. So it is multiplication which differs between each of the above algebras and gives each its own 'flavor'.
In fact, in many cases when applying these algebras in practical cases, we may use only the multiplication operation (see group theory) for example, quaternions when applied to 3D rotations.
So it seems to me that we can define these algebras by a table showing how the multiplication operator combines each dimension with each other dimension.
Some of the key factors seem to be:
- Number of dimensions.
- Result of squaring a dimension (+1 or -1)
- Does the operation conserve distance (this seems very geometry oriented for pure algebra?)
From what I can tell the commutative and associative laws for multiplication would be determined from the table



