# Maths - Cayley Table 4D - Program to generate tables

The tables were generated using this program.

The output of this program is shown below. To produce the results the program needs to have an XML input code. At the bottom of this page I have listed this input code.

### Table for: D x D

 + + + + + + + + + - + - + - + -

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### Table for: D x C

 + + + + + - + - + - + - + + + +

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: C x D

 + + + + + + + + + - - + + - - +

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: C x C

 + + + + + - + - + - - + + + - -

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: D x D (i and j commute)

 + + + + + + + + + + + + + + + +

analysing commutivity: table commutes

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: D x C (i and j commute)

 + + + + + - + - + + + + + - + -

analysing commutivity: table commutes

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: C x D (i and j commute)

 + + + + + + + + + + - - + + - -

analysing commutivity: table commutes

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: C x C (i and j commute)

 + + + + + - + - + + - - + - - +

analysing commutivity: table commutes

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: D x D (left hand anticommute)

 + + + + + + - - + + + + + + - -

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables isomorphic for combination=2

### Table for: D x C (left hand anticommute)

 + + + + + - - + + + + + + - - +

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: C x D (left hand anticommute)

 + + + + + + - - + + - - + + + +

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: C x C (left hand anticommute)

 + + + + + - - + + + - - + - + -

analysing commutivity: table does not commute: for example: i*j != j*i

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: G 2,0,0

 + + + + + + + + + - + - + - + -

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables isomorphic for combination=0

### Table for: G 1,1,0

 + + + + + - + - + - + - + + + +

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: G 1,1,0

 + + + + + + + + + - - + + - - +

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: G 0,2,0

 + + + + + - + - + - - + + + - -

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: G+ 3,0,0

 + + + + + - - + + + - - + - + -

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: G+ 2,1,0

 + + + + + + + + + - + - + - + -

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables isomorphic for combination=0

### Table for: G+ 1,2,0

 + + + + + - + - + - + - + + + +

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables not isomorphic

### Table for: G+ 0,3,0

 + + + + + - + - + - - + + + - -

analysing commutivity: table does not commute: for example: 1*2 != 2*1

analysing associativity: table associates

### comparing tables:

tables not isomorphic

## XML input code

To produce the results the program needs to have an XML input code listed here:

<classDef>
<outputTable type="product" format="html" name="quaternion" analyse="on" enableLabels="off" content="sign">
<mathTypeHypercomplex name="b" label="quaternion" type="complex" elementLabels="1,i,j,k">
<mathTypeHypercomplex name="c" label="complex" type="complex" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="complex containing double" type="complex" elementLabels="1,i,j,k">
<mathTypeHypercomplex name="c" label="doubl" type="doubl" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="double containing complex" type="doubl" elementLabels="1,i,j,k">
<mathTypeHypercomplex name="c" label="complex" type="complex" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="double containing double" type="doubl" elementLabels="1,i,j,k">
<mathTypeHypercomplex name="c" label="doubl" type="doubl" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>

<mathTypeHypercomplex name="b" label="quaternion i and j commute" type="complex" elementLabels="1,i,j,k" commute="commute">
<mathTypeHypercomplex name="c" label="complex" type="complex" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="complex containing double i and j commute" type="complex" elementLabels="1,i,j,k" commute="commute">
<mathTypeHypercomplex name="c" label="doubl" type="doubl" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="double containing complex i and j commute" type="doubl" elementLabels="1,i,j,k" commute="commute">
<mathTypeHypercomplex name="c" label="complex" type="complex" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="double containing double i and j commute" type="doubl" elementLabels="1,i,j,k" commute="commute">
<mathTypeHypercomplex name="c" label="doubl" type="doubl" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>

<mathTypeHypercomplex name="b" label="quaternion left hand anticommute" type="complex" elementLabels="1,i,j,k" commute="antiLeft">
<mathTypeHypercomplex name="c" label="complex" type="complex" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="complex containing double left hand anticommute" type="complex" elementLabels="1,i,j,k" commute="antiLeft">
<mathTypeHypercomplex name="c" label="doubl" type="doubl" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="double containing complex left hand anticommute" type="doubl" elementLabels="1,i,j,k" commute="antiLeft">
<mathTypeHypercomplex name="c" label="complex" type="complex" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>
<mathTypeHypercomplex name="b" label="double containing double left hand anticommute" type="doubl" elementLabels="1,i,j,k" commute="antiLeft">
<mathTypeHypercomplex name="c" label="doubl" type="doubl" elementLabels="1,i">
</mathTypeHypercomplex>
</mathTypeHypercomplex>

<mathTypeMulti name="a" type="2" sign="0" zero="0" label="G 2,0,0"/>
<mathTypeMulti name="b" type="2" sign="1" zero="0" label="G 1,1,0"/>
<mathTypeMulti name="b" type="2" sign="2" zero="0" label="G 1,1,0"/>
<mathTypeMulti name="b" type="2" sign="3" zero="0" label="G 0,2,0"/>

<mathTypeSubtype label="G+ 3,0,0">
<mathTypeMulti name="a" type="3" sign="0" zero="0" order="bit"/>
</mathTypeSubtype>
<mathTypeSubtype label="G+ 2,1,0">
<mathTypeMulti name="b" type="3" sign="1" zero="0" order="bit"/>
</mathTypeSubtype>
<mathTypeSubtype label="G+ 1,2,0">
<mathTypeMulti name="b" type="3" sign="3" zero="0" order="bit"/>
</mathTypeSubtype>
<mathTypeSubtype label="G+ 0,3,0">
<mathTypeMulti name="b" type="3" sign="7" zero="0" order="bit"/>
</mathTypeSubtype>

</outputTable>
</classDef>

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.

 Deep Down Things: The Breathtaking Beauty of Particle Physics - If you dont want any equations then this is a good and readable introduction to quantum theory and related mathematics such as Lie groups, Gauge Theory, etc.

Other Math Books