Maths - Octonion and Clifford Algebra - Code to generate the tables

Here is how I generated the tables for this page.

The tables were generated using this program.

To produce the results the program needs to have an XML input code. Here I have listed this input code next to the output of the program:

 

code program output
<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<varDef name="a" type="oct" sign="0" subAlgebra="all"/>
</outputTable>
</classDef>

Octonion

This is the table often given for octonions:
e e1 e2 e3 e4 e5 e6 e7
e1 -e e4 e7 -e2 e6 -e5 -e3
e2 -e4 -e e5 e1 -e3 e7 -e6
e3 -e7 -e5 -e e6 e2 -e4 e1
e4 e2 -e1 -e6 -e e7 e3 -e5
e5 -e6 e3 -e2 -e7 -e e1 e4
e6 e5 -e7 e4 -e3 -e1 -e e2
e7 e6 e6 -e1 e5 -e3 -e2 -e

analysing commutivity: table does not commute:
for example: e1*e2 != e2*e1

analysing associativity: table does not associate,
for example, (e1* e2)* e3=e4* e3=-e6
is not equal to e1*(e2* e3)=e1*e5=e6

<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<varDef name="a" type="oct2" sign="0" subAlgebra="all"/>
</outputTable>
</classDef>

Octonion (rearranged)

The table can be rearranged to give a table which looks closer to the Clifford algebras for easier comparison:
e e1 e2 e3 e4 e5 e6 e7
e1 -e -e3 e2 -e5 e4 e7 -e6
e2 e3 -e -e1 -e6 -e7 e4 e5
e3 -e2 e1 -e -e7 e6 -e5 e4
e4 e5 e6 e7 -e -e1 -e2 -e3
e5 -e4 e7 -e6 e1 -e e3 -e2
e6 -e7 -e4 e5 e2 -e3 -e e1
e7 e6 -e5 -e4 e3 e2 -e1 -e

analysing commutivity: table does not commute:

for example: e1*e2 != e2*e1

analysing associativity:

table does not associate,
for example, (e1* e2)* e4=-e3* e4=e7
is not equal to e1*(e2* e4)=e1*-e6=-e7

<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<mathTypeMulti name="a" type="4" sign="0" subAlgebra="even"/>
</outputTable>
</classDef>

Multivector 4D Even

table
e e12 e31 e23 e41 e42 e43 e1234
e12 -e e23 -e31 -e42 e41 -e1234 e43
e31 -e23 -e e12 e43 -e1234 -e41 e42
e23 e31 -e12 -e -e1234 -e43 e42 e41
e41 e42 -e43 -e1234 -e -e12 e31 e23
e42 -e41 -e1234 e43 e12 -e -e23 e31
e43 -e1234 e41 -e42 -e31 e23 -e e12
e1234 e43 e42 e41 e23 e31 e12 e

analysing commutivity:

table does not commute: for example: e1*e2 != e2*e1

analysing associativity: table associates

<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<mathTypeMulti name="a" type="4" sign="1" subAlgebra="even"/>
</outputTable>
</classDef>

Multivector 4D Even(1 dimension squares to -ve)

table
e e12 e31 e23 e41 e42 e43 e1234
e12 e -e23 -e31 e42 e41 -e1234 -e43
e31 e23 e e12 -e43 -e1234 -e41 -e42
e23 e31 -e12 -e -e1234 -e43 e42 e41
e41 -e42 e43 -e1234 e -e12 e31 -e23
e42 -e41 -e1234 e43 e12 -e -e23 e31
e43 -e1234 e41 -e42 -e31 e23 -e e12
e1234 -e43 -e42 e41 -e23 e31 e12 -e
analysing commutivity: table does not commute: for example: e1*e2 != e2*e1 analysing associativity: table associates
<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<mathTypeMulti name="a" type="4" sign="3" subAlgebra="even"/>
</outputTable>
</classDef>

Multivector 4D Even(2 dimensions squares to -ve)

table:
e e12 e31 e23 e41 e42 e43 e1234
e12 -e -e23 e31 e42 -e41 -e1234 e43
e31 e23 e e12 -e43 -e1234 -e41 -e42
e23 -e31 -e12 e -e1234 e43 e42 -e41
e41 -e42 e43 -e1234 e -e12 e31 -e23
e42 e41 -e1234 -e43 e12 e -e23 -e31
e43 -e1234 e41 -e42 -e31 e23 -e e12
e1234 e43 -e42 -e41 -e23 -e31 e12 e
analysing commutivity: table does not commute: for example: e1*e2 != e2*e1 analysing associativity: table associates
<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<mathTypeMulti name="a" type="4" sign="7" subAlgebra="even"/>
</outputTable>
</classDef>

Multivector 4D Even(3 dimensions squares to -ve)

table
e e12 e31 e23 e41 e42 e43 e1234
e12 -e -e23 e31 e42 -e41 -e1234 e43
e31 e23 -e -e12 -e43 -e1234 e41 e42
e23 -e31 e12 -e -e1234 e43 -e42 e41
e41 -e42 e43 -e1234 e -e12 e31 -e23
e42 e41 -e1234 -e43 e12 e -e23 -e31
e43 -e1234 -e41 e42 -e31 e23 e -e12
e1234 e43 e42 e41 -e23 -e31 -e12 -e
analysing commutivity: table does not commute: for example: e1*e2 != e2*e1 analysing associativity: table associates
<classDef>
<outputTable type="product" format="html" name="table" analyse="on">
<mathTypeMulti name="a" type="4" sign="15" subAlgebra="even"/>
</outputTable>
</classDef>

Multivector 4D Even(4 dimension squares to -ve)

table
e e12 e31 e23 e41 e42 e43 e1234
e12 -e -e23 e31 e42 -e41 -e1234 e43
e31 e23 -e -e12 -e43 -e1234 e41 e42
e23 -e31 e12 -e -e1234 e43 -e42 e41
e41 -e42 e43 -e1234 -e e12 -e31 e23
e42 e41 -e1234 -e43 -e12 -e e23 e31
e43 -e1234 -e41 e42 e31 -e23 -e e12
e1234 e43 e42 e41 e23 e31 e12 e
analysing commutivity: table does not commute: for example: e1*e2 != e2*e1 analysing associativity: table associates.

go back to original page


metadata block
see also:

 

Correspondence about this page

Book Shop - Further reading.

Where I can, I have put links to Amazon for books that are relevant to the subject, click on the appropriate country flag to get more details of the book or to buy it from them.

cover us uk de jp fr ca Quaternions and Rotation Sequences.

 

Terminology and Notation

Specific to this page here:

 

This site may have errors. Don't use for critical systems.

Copyright (c) 1998-2023 Martin John Baker - All rights reserved - privacy policy.