Tag Archives: Physics

The Rhombic Triacontahedron and E8 to H4+H4Φ folding

I was asked to clarify a particular projection of the Rhombic Triacontahedron from the 6-Cube subgroup of E8, which had I created for WikiPedia (WP) back in 2011 based on an E8 to H4+H4Φ rotation matrix I discovered in 2010.

The edge coloring on the projection above is defined by which of the 6 dimensional axis the edge aligns with.

BTW – if you find this information useful, or provide any portion of it to others, PLEASE make sure you cite this post. If you feel a blog post citation would not be an acceptable form for academic research papers, I would be glad to clean it up and put it into LaTex format in order to provide it to arXiv (with your academic sponsorship) or Vixra. Just send me a note at:  jgmoxness@theoryofeverthing.org. 

The following projection (basis) vectors take the 6-Cube as a subset of E8 and projects it into 3D using the following basis vectors:

Notice the last two dimensions in each vector are 0, which effectively takes the 128 8D 1/2 integer vertices of the E8 BC8 DemiCube into the 6D 6-Cube.

For the following data analysis, it is useful to reference the full list of E8 and H4+H4Φ data at the end of my blog post here.

The clarification desired was due to a conjecture that since E8 folds to H4+H4Φ (600 cells) and D6 folds to H3+H3Φ, that the 6-Cube should fold to an outer and inner rhombic triacontahedron scaled by Φ.

Below is a visualization of D6 folding into 2 concentric H3 icosadodecahedrons at a ratio of Φ using the same projection as described above. The edging displays the  480 Norm’d 6D Sqrt[2] length edges, clearly showing the outer and inner H3 polytopes.

Shown with exterior faces on edges (not a pure convex hull algorithm)…

The data below shows two sets of 30 vertices (outer on the left and inner on the right). They are sorted by the 3D Norm’d length of the vertex ray from {0,0,0}, followed by the vertex number in the E8 to H4+H4Φ list at the end of the post referenced above, along with the 6D E8 vertex that is a member of the D6 set, and the {x,y,z} projected vertex position

The last line of the data set shows that the first set of outer 30 projected vertex locations on the left is numerically equal to the second inner set after multiplication by Φ.

I did the same for the Rhombic Triacontahedron projected out of the 6-Cube.

I separated the outer and inner vertices used to make the WP projection at the top of the post. There are 64 vertices and 192 6D unit length edges forming pentagonal symmetry along specific axis (as well as hexagonal symmetries on other axis). It is clear that scaling the inner 32 vertex locations by Φ is not going to give the outer 32 vertex positions. Yet there is a similarity- they both have 12 vertices of one 3D Norm’d length and 20 of another.

Outer 32 vertices and 60 unit length Norm’d 6D edges.

The edge coloring on the projection above is defined by which of the 6 dimensional axis the edge aligns with.

Inner 32 vertices and 60 unit length Norm’d 6D edges.

The last line of the data set above shows that the outer data (left) is the same as the inner data set multiplied by a factor of Φ when the first 12 (shorter 3D Norm’d)  inner vertices (right) are multiplied by an additional factor of Φ.

This explains the lack of isomorphism, but why is it not like the D6 to H3+H3Φ and E8 to H4+H4Φ in the symmetry of Φ scaling?

The best explanation I can give involves the pattern of left vs. right 3 digits in the 6-Cube E8 vertices. This is due to the left right symmetry of the basis vectors applied to binary pattern of half integer vertices in the 6-Cube.

All vertices have a consistent pattern that differentiates the 20 longer Norm’d vertices from the 12 shorter ones. Specifically, the shorter 12 that have the inner ones needing the added factor of Φ always show that:

  • the right inner vertices all have an even number in 6 +/- elements but not always evenly split across the left and right
  • the left outer vertices all have an odd number of in 6 +/- elements  always unevenly split across the left and right

Whereas, the longer 20 that match the Φ scaling reverse the pattern where:

  • the right inner vertices all have an odd number in 6 of +/- elements  always unevenly split across the left and right
  • the left outer vertices all have an even number in 6 of +/- elements but not always evenly split across the left and right

Another related fact in the folding pattern of the 6-Cube emerges when we note that since E8 contains 128 1/2 integer BC8 (the 8 Demi-Cube). In addition, we note that the 6D complement of BC8 and the 6-Cube is the same set of vertices. This means we get the same projection using all 128 vertices of the 6D trimmed BC8 as we do with the 64 of the 6-Cube, except now there are 768 6D Norm’d unit length edges rather than 192. Interestingly, that means that similar to E8 containing simultaneous copies of 4 600-Cells (a left and right pair scaled at Φ), E8 contains 4 simultaneous copies of the rhombic triacontahedron after adding the Φ scaling on the two sets of 12 inner BC8 vertices).

Wow – that is nice! Remember, you heard it here first!

If we try this idea with the complement of the integer elements of E8, namely the 112  6D trimmed D8 vertices complemented with 60 D6 vertices, the 6D trimmed 52 vertex complement contains 4 identical copies of the excluded 16 generator vertices of E8 {+/-1,0,0,0,0,0,0,0} permutations (plus 4 {0,0,0,0,0,0,0,0} vertices).

As you can see, the folding of the integer elements of E8 do not fold the same as the 1/2 integer elements, and in retrospect, we probably should not expect them to.

It is because of the symmetric 4D left/right symmetry of E8=BC8+D8 that we get the wonderful folding of it into  H4+H4Φ !

E8 folding to 4D H4+H4Φ Visualization Data Analysis

Below is an animated .GIF (3 seconds per frame) in 2D of E8 in Petrie projection with numbered vertices. It cycles between the full E8 (Gosset polytope), to the 8 16-Cell (Cross polytope) vertices, to the 16 8-Cell (Tesseract) vertices. It then cycles through the 5 H4+H4Φ 600-Cell pairs of 24-Cells (main 24-Cell and 4 Snub 24-Cells rotated around the Petrie projection).

Notice that 4 of the 8 16-Cell vertices are co-located on the axes with the basis vectors of the 2D projection. The other 4 basis vectors (on the right half of the 8D basis) are located at the origin {0,0}.

BTW – if you find this information useful, or provide any portion of it to others, PLEASE make sure you cite this post. If you feel a blog post citation would not be an acceptable form for academic research papers, I would be glad to clean it up and put it into LaTex format in order to provide it to arXiv (with your academic sponsorship) or Vixra. Just send me a note at:  jgmoxness@theoryofeverthing.org. 

The Split Real Even (SRE) E8 vertices are numbered in order of their canonical sort position in the Pascal Triangle binary order. See the large .PNG graphic at the bottom of this post for the full list of binary, E8 and folded H4+H4Φ in symbolic and numeric values. The connection between E8 and the binary (binomial expansion) of the Pascal Triangle (Clifford Algebra) is visualized here. It is interesting to note that the binary and E8 vertex values of 1-128 are mirrored by the 256-129 (note: reverse order, with 0<->1 for binary or negation for E8).

The H4 numeric and symbolic information is obtained through E8 vertex dot product with the 8×8 rotation matrix and is multiplied by 2 for clarity. H4 Folding is obtained by only using the top or bottom 4 rows of that matrix I discovered in 2010 (below):

Notice the Quaternion to Octonion Cayley-Dickson like doubling procedure pattern in the 4 quadrants of this matrix. It is this pattern that is responsible for maintaining the 4 sets of 600-Cell H4 vertices when rotating from E8 vertices.

Below is the same type of animated .GIF from above, except it is projected into 3D by adding a 3rd basis vector for the z axis. These are shown without vertex numbers for clarity. It starts with E8 with 6720 8D Norm=Sqrt[2] edges (or equivalently E8 rotated to H4+H4Φ edges with 3360 4D Norm=1 & 3360 4D Norm=Φ edges). It cycles through to the H4Φ 600-Cell, H4 600-Cell, and then to the 24-Cell without edges. Finally on to the 8-Cell and 5 pairs of 24-Cells with edges. Again, the right 4D half of the 8D projection basis vectors are located at {0,0,0}. Of the other 4 basis vectors, 2 are on {x,y,z} axes.

The projections of E8 rotated to H4+H4Φ in this post are not a pure ortho-normal 600-Cell projection, in that it is intended to show the Petrie projection on one face {x,y}. It does show the ortho-normal 600-Cell structure on another face {y,z} (albeit rotated off axis), and something in-between these on the {x,z} face. The full ortho-normal 600-Cell can easily be projected to full 3D symmetry on all 6 faces by using an ortho-normal basis. The 3 projection basis vectors used here in this post are as follows:

Below is the very long .PNG graphic listing the left 4D and right 4D vertex information for E8 (Pascal Triangle Binary and Split Real Even E8) and folded H4 and H4Φ in symbolic and numeric form. On the left side is the vertex number. Notice vertices 2-9 and 248-255 are missing. These are the 8 generator (and anti-generator) E8 vertices. The center of each row is a number that identifies the vertex where the left and right 4D elements switch sides to right and left.

The green data in the left and right columns indicate a 4D H4 vertex, while black in those columns indicate H4Φ 4D vertex. As you can see, there are actually 4 H4 600-Cell constructs in this E8 rotation, with 2 on the left and 2 on the right.

Wow – that is nice! Remember, you heard it here first!

The red text in the center column indicates vertices of the H4Φ 24-Cell. Notice, all the red vertices don’t switch left/right since they have symmetric 4D halves. Interestingly, 1/2 of the 16 H4Φ 8-Cell vertices are made up of 1/2 of the 16 8-bit Hamming (distance 4) binary codes. The other 1/2 of those Hamming codes are located in the 16 H4 8-Cell vertices, with anti-symmetric left/right halves (described in the next paragraph).

The Orange is the H4 24-Cell. While this 24-Cell does have a different vertex identified in the center for left/right switching, it does so within H4. Another interesting observation, is that both the E8 and H4 left value is always the negative of the right. This means the center number that identifies the vertex where the left and right 4D elements switch sides is the same as the 1-128 mirror element in the 256-129 set (and vice-versa).

The 2*8 (red and orange) 16-Cell vertices are all located in the integer E8 vertices (groups 4 and 6 of row 9 of the Pascal Triangle, specifically (1,8*,28,56,70,56,28,8*,1)). The 2*16 (red and orange) vertices of the 8-Cells are all located in the 1/2 integer E8 vertices groups (1,3,5,7,9) of row 9 of the Pascal Triangle, with all 16 of the H4 8-Cell vertices in group 5, and with the 16 red H4Φ 8-Cell vertices distributed as {1,4,6,4,1) in groups (1,3,5,7,9) respectively. Notice that this {1,4,6,4,1) distribution may relate to the Clifford Algebra Cl(8) primitive idempotent distributions in the 256 elements of Pascal Triangle row 9.

These red and orange center patterns of the 24-Cells is unlike the 2 sets of 96 Snub 24-Cell vertices, which have both H4 and H4Φ elements in each row as well as switching left/right values with a different and non-mirrored vertex number in the center of the center column.

More visualizations and 600 Cell analysis is also found in this post.

Please notice I have left in the final command of the Mathematica source code to give a hint as to the source structure of the data.

Comparing nearest edges between Split Real Even (SRE) E8

I have been intrigued with Richter’s arXiv 0704.3091 “Triacontagonal Coordinates for the E8 root system” paper.

Comparing nearest edges between Split Real Even (SRE) E8 and Richter’s Complex 4D Golden Ratio Petrie Projection Model:

Please note, the vertex numbers are reordered from Richter’s paper in order to be consistent with ArXiv quant-ph 1502.04350 “Parity Proofs of Kochen-Specker theorem based on the Lie Algebra E8” by Aravind and Waegell. This paper uses the beautiful symmetries of E8 as a basis for proof sets related to the Bell inequalities of quantum mechanics. Below is a graphic showing that vertex number ordering:

Richter’s model with 74 nearest edges per vertex (Complex 4D Norm’d length Sqrt[2], with 8880 total):

Richter’s model with only 26 nearest edges per vertex (Complex 4D Norm’d length 1, 3120 total):

The above unity length edge pattern has is more consistent with the SRE E8 below.

The SRE E8 Petrie Projection (with 56 Norm’d edge length Sqrt[2] for each vertex, 6720 total). This is equivalent to folding E8 to H4 with an 8×8 rotation matrix which creates a 4D-left H4+H4*Phi and a 4D-right H4+H4*Phi.

Please note, the vertex number is that of the E8 vertices rotated (or “folded”) to H4 in 2D Petrie projection. The vertex numbers are in canonical binary order from E8’s 1:1 correspondence with the 9th row of the Pascal Triangle (eliminating the 16 generator/anti-generator vertices of E8 found in the 2nd and 8th column of the Pascal Triangle). The graphic below shows the vertex number ordering:

Here we take the 4D-left half and project to two concentric rings of H4 and H4 Phi (Golden Ratio) with 56 nearest edges per vertex (Norm’d length of unity or Phi for each vertex):

The animation frames are sorted by the ArcTan[y/x] of the vertex position in each ring (sorted H4*Phi outer to inner, then H4 outer to inner).

BTW – if you find this information useful, or provide any portion of it to others, PLEASE make sure you cite this post. If you feel a blog post citation would not be an acceptable form for academic research papers, I would be glad to clean it up and put it into LaTex format in order to provide it to arXiv (with your academic sponsorship) or Vixra. Just send me a note at:  jgmoxness@theoryofeverthing.org. 

Updated My ToE Demonstrations to Wolfram Language (aka. Mathematica) 11

Please see the latest in .nb, .cdf demonstrations files and web interactive pages.

ToE_Demonstration-Lite.cdf Latest: 08/15/2016 (10 Mb). This is a lite version of the full Mathematica version 11 demonstration in .CDF below (or as an interactive-Lite web page) (4 Mb). It only loads the first 8 panes and the last UI pane which doesn’t require the larger file and load times. It requires the free Mathematica CDF plugin.

This version of the ToE_Demonstration-Lite.nb (13 Mb) is the same as CDF except it includes file I/O capability not available in the free CDF player. This requires a full Mathematica license.

ToE_Demonstration.cdf Latest: 08/15/2016 (110 Mb). This is a Mathematica version 11 demonstration in .CDF (or as an interactive web page) (130 Mb) takes you on an integrated visual journey from the abstract elements of hyper-dimensional geometry, algebra, particle and nuclear physics, Computational Fluid Dynamics (CFD) in Chaos Theory and Fractals, quantum relativistic cosmological N-Body simulations, and on to the atomic elements of chemistry (visualized as a 4D periodic table arranged by quantum numbers). It requires the free Mathematica CDF plugin.

This version of the ToE_Demonstration.nb (140 Mb) is the same as CDF except it includes file I/O capability not available in the free CDF player. This requires a full Mathematica license.

(The CDF player from Wolfram.com is still at v. 10.4.1, so still exhibits the bug I discovered related to clipping planes/slicing of 3D models).

Hofstadter’s Quantum-Mechanical Butterfly

Hofstadter’s Quantum-Mechanical Butterfly relates to the fractional Quantum Hall Effect, which is (IMHO) at the heart of understanding (interpreting) how QM really works!

I modified Wolfram Demonstration code by Enrique Zeleny to produce a short video of the emergence of the Hofstadter’s Quantum-Mechanical Butterfly

I found an interesting pattern. By modifying the integer used in the solution i=12, the Golden Ratio Ф=(1+Sqrt[5])/2=1.618 … emerges within the butterfly! Can you find it (or 1/Ф=.618…)?
Hint: Use the interactive version and mouse-over the red or green dots in the white space of the wings of butterfly.

A snapshot of the code and last frame@n=50:

If you have the free Mathematica CDF plugin on a non-Chrome browser, you can interactively analyze this with n<11 being presented with symbolic solutions in a mouse-over Tooltip (below).

Interactive Reimann Zeta Function Zeros Demonstration

This web enabled demonstration shows a polar plot of the first 20 non-trivial Riemann zeta function zeros (including Gram points) along the critical line Zeta(1/2+it) for real values of t running from 0 to 50. The consecutively labeled zeros have 50 red plot points between each, with zeros identified by concentric magenta rings scaled to show the relative distance between their values of t. Gram’s law states that the curve usually crosses the real axis once between zeros.

A downloadable copy is available ZetaZeros-local-art-50.cdf Latest: 05/23/2016.

Note: The interactive CDF plug-in as required below does not currently work on Chrome browsers.

A Snapshot picture for those w/o Wolfram CDF interactivity:

Selectable example code snippet:
[wlcode]Show[ListPlot[Style[pts2, Red], PlotRange -> {{-2, 4}, {-3, 3}},
AspectRatio -> 1, ImageSize -> imageSize,
AxesStyle ->
Directive[Thick, If[artPrint && ! localize, Large, Medium]],
tttxt := If[artPrint && ! localize, tttxt1, ttxt0];
If[ttxt0 = ToString[# – 1];
Abs@zeroY[[#, 1]] < 10 chop, (* Magenta Critical Line Zeta Zeros *) tttxt1 = Column[{ToString[# - 1], "t=" <> ToString@zeroY[[#, 4]]},
ttLoc =
zeroY[[#, 4]] If[artPrint && ! localize, 1, 2] imagesize/40000;
(* Flip Point Labels above/below the X axis *)
ttLoc1 = {-1, (-1)^Round[#/2]} ttLoc/Sqrt[2];
{Magenta, Point@ttLoc1,
Circle[zeroY[[#, ;; 2]], ttLoc, {1, 3} \[Pi]/2],
Style[tttxt, If[artPrint && ! localize, Large, Medium, Bold]],
(* Shift the Labels off the Point *)
ttLoc1 (1 – (-1)^Round[#/2] .05)], tttxt1]},
(* Orange Critical Line Imaginary zeros w/Real>0 *)
tttxt1 =
Column[{ToString[# – 1], “x=” <> ToString@zeroY[[#, 1]],
“t=” <> ToString@zeroY[[#, 4]]}, Center];
{Tooltip[{Orange, Point@zeroY[[#, ;; 2]], Text[Style[

Column[If[EvenQ[Round[(# – 1)/2]], Prepend,
Append][{“\[UpDownArrow]”}, tttxt], Center,
Frame -> True],
Black, If[artPrint && ! localize, Large, Medium],
Background -> White],
(* Flip Point Labels above/below the X axis *)

zeroY[[#, ;; 2]] + {0, (-1)^Round[(# – 1)/2]} If[
artPrint && ! localize, 1,
If[artPrint, 4/1, 3]] imagesize/5000]},
Column[{ToString[# – 1], “x=” <> ToString@zeroY[[#, 1]],
“t=” <> ToString@zeroY[[#, 4]]}, Center]]}] & /@
Magenta, Disk[{0, 0}, .03]}]][/wlcode]

More plots with various scaling functions and multi-color coding along with Tooltip on mouse-over. Bear in mind the last Smith Chart with a division by Abs@Zeta indicates where the increments go exponential near the 0.

A Snapshot picture for those w/o Wolfram CDF interactivity:

E8 in E6 Petrie Projection

An article (interview) with John Baez used an E8 projection which I introduced to Wikipedia in Feb of 2010 here. Technically, it is E8 projected to the E6 Coxeter plane.

E8 in E6 Petrie

The projection uses X Y basis vectors of:
X = {-Sqrt[3] + 1, 0, 1, 1, 0, 0, 0, 0};
Y = {0, Sqrt[3] – 1, -1, 1, 0, 0, 0, 0};

Resulting in vertex overlaps of:
24 Yellow with 1 overlap
24 Dark Blue each with 8 overlaps (192 vertices)
1 Light Blue with 24 overlaps (24 vertices)

After doing this for a few example symmetries, Tom took my idea of projecting higher dimensional objects to the 2D (and 3D) symmetries of lower dimensional subgroups – and ran with it in 2D – producing a ton of visualizations across WP. 🙂

It was one of those that was subsequently used that article from the 4_21 E8 WP page.

Here is a representation of E6 in the E6 Coxeter plane:

Resulting in vertex overlaps of:
24 Yellow with 1 overlap
24 Orange each with 2 overlaps (48 vertices)

G2 as the automorphism group of the (split) octonion algebra

For more information on this, please see this Wolfram MathSource page.

This post describes the derivation of G2 automorphisms for each of the 480 unique octonion multiplication tables, as well as each of the 7 split octonions (created from negating the 4 row/column entries which are not members of the split #, which is an index to one of the 7 triads that make up the octonion).

The Exceptional Lie Algebra/Group G2 is identified by its Dynkin diagram and/or associated Cartan Matrix (also shown here with its Hasse diagram):

The particular octonion multiplication table selected in the example referenced above is associated in my model as a “Non Flipped E8 #164”. The multiplication table in various formats (IJKL, e_n, and Numeric) is:

The selected multiplication table (fm) is the basis for the following octonion symbolic math:
[wlcode](* Octonion math from the matrix using 8D vector representations for x and y, this has the Subscript[\[ScriptE], 0]=1 first *)
octProduct[a_, b_] := Block[{c3 = Array[0 &, 8]},
Do[c3[[If[i != j, Abs@fm[[i, j]] + 1, 1]]]+=Sign@fm[[i, j]] a[[i]] b[[j]],
{i, 8}, {j, 8}];

(* Complex, quaternion and octonian multiplication Subscript[\[ScriptE], a]\[SmallCircle]Subscript[\[ScriptE], b] *)
quat2oct@in_ := Block[{a3},
a3 = FromQuaternion@in;
0, Re@a3 + Im@a3 Subscript[\[ScriptE], 1],
2, If[Length@a[[1]] > 0, a3,
If[Head@a3 === Times, a3[[1]] a3[[2]],
1\[SmallCircle](Re@a3[[1]] +
Im@a3[[1]] Subscript[\[ScriptE], 1]) + a3[[2]]]],
3, Re@a3[[1]] + Im@a3[[1]] Subscript[\[ScriptE], 1] +
a3[[2 ;;]]],
“not Quaternion”] /. Most@Thread[octIJKL -> oct]];

(* Octonion math with conversions, leave final as octonion *)
SmallCircle[a_List, b_List] := octonion@octProduct[a, b];
SmallCircle[a_, b_Quaternion] := a\[SmallCircle]quat2oct@b;
SmallCircle[a_Quaternion, b_] := quat2oct@a\[SmallCircle]b;
SmallCircle[a_, b_Complex] := a\[SmallCircle]ToQuaternion@b;
SmallCircle[a_Complex, b_] := ToQuaternion@a\[SmallCircle]b;
SmallCircle[a_, b_] := oct2List@a\[SmallCircle]oct2List@b;

associator[a_List, b_List,c_List] := (a\[SmallCircle]b)\[SmallCircle]c-a\[SmallCircle](b\[SmallCircle]c);
associator[a_, b_, c_] :=associator[oct2List@a, oct2List@b, oct2List@c];[/wlcode]

Each set of 21 upper triangle pairs of octonion elements (utOct) has 14 “derivations” which are null
(alternatively, the NullSpace of the derivation vectors of utOct has 7 which are NOT null…)

A derivation pair D_{x, y} is defined by:
[wlcode](* Commutator *)
CircleDot[x_,y_]:=commutator[x, y];

(* Commutator matrix *)
comMat[x_, y_] := x.y – y.x;
comMat[{x_, y_}] := comMat[x, y];

(* Derivation matrix and vector *)
derivation[x_,y_][a_]:=(x\[CircleDot]y)\[CircleDot]a-3 associator[x,y,a];
Square[{x_, y_, a_}] := derivation[x, y][a];
derMatrix[x_,y_]:=Table[Coefficient[\[Square]{x,y,oct[[i]]},oct[[j]]], {j, 7}, {i,7}];
derVector[x_,y_]:=derMatrix[x, y]//Flatten;[/wlcode]
The 14 null pairs define G2 for a SPECIFIC octonion multiplication matrix.

For each of 7 non-null derivations there is a triple of D_{x1, y1}=D_{x2, y2}+D_{x3, y3} related derivations.

There is a 7×21 matrix describing the non-NullSpace for the octonion given in the Wolfram MathSource reference above along with the 7 non-null triples. This is generated by g2Null:
[wlcode]g2Null:=NullSpace[derVector[Subscript[\[ScriptE], #1], Subscript[\[ScriptE],#2]]&@@@utOct//Transpose];

(* Formatting all non-Null upper triangle pairs derivation entries *)
outG2Null := MatrixForm[parallelMap[Grid[{
Subscript[D, Row@Flatten@##] & /@
Partition[Flatten@{utOct[[Flatten@Position[#, -1]]]}, 2]]},{“==”},
Subscript[D, Row@Flatten@##] & /@
Partition[Flatten@{utOct[[Flatten@Position[#, 1]]]}, 2]]}(*),
{“\[LongDash]\[LongDash]\[LongDash]\[LongDash]”}**)}] &,

getG2Null (below) retrieves two octonion multiplication matrices for the flipped and non-flipped index on one of 240 E8 particles.
[wlcode]formG2Null := MatrixForm@{
Row@{Style[Row@{“flip=”, flip}, Blue],
Style[” split # \[DownArrow],”, Red]},
g2NullTbl = Table[{
setFM[#, flip, split];
{split, 0, 7}];
MatrixForm[Column[#, Center] & /@ noNull@# & /@ Table[
(* Color the common Der in each column *)
cmnD =first@Select[g2NullTbl[[All,2,1,i,1,3,1,1,All]],
Length@# == 1 &];
cmnDclr = Style[cmnD, Magenta];
If[j == 1, {“”, Row@{
(* Highlight the missing index in the triple D_{x,y} for each row *)
g2NullTbl[[1, 2, 1, i]] /. cmnD -> cmnDclr}},
(* Display only non-null derivations from the splits if not the same as the base octonion *)
If[g2NullTbl[[1,2,1,i]] =!= g2NullTbl[[j,2,1,i]],
{Style[g2NullTbl[[j, 1]], Red],
g2NullTbl[[j,2,1,i]] /. cmnD -> cmnDclr}]],
{i,7},{j,8}]]} &;

getG2Null := ColumnForm[{
Style[Row@{“E8#=”, #}, Darker@Green],
Row@{flip = False; formG2Null@#, flip = True; formG2Null@#}},
Center] &;[/wlcode]

Here we show the output of getG2Null for the example non-Flipped E8 #164):
Emergent patterns:

  1. For each of the 7 non-null derivation triples (the first column of the 7 rows), there are precisely 3 (of the 7) split octonions that don’t share the exact same non-null triple derivation pair as the parent (non-split) octonion (these deviations are shown in column 2 thru 4, along with the associated Fano plane diagrams for the parent and 7 split octonions of E8 #164).
  2. Each non-null derivation triple contains 6 of 7 indices, and each row is missing a different index (highlighted in green before the column 1 triple). The sequence of missing element numbers in each row of the given example follows the row number.
  3. It is only the equality relationship (signs) of the non-Null triple that change in 3 of the 7 splits, not the D_{x,y} itself.
  4. There are always 2 pairs of 2 D_{x,y} which are negative (i.e. with a -1 entry in the NullSpace matrix located above the “==”) that occur across the row.
  5. There is always a common positive D_{x,y} (i.e. with a +1 entry in the NullSpace matrix located below the “==”) in each entry of the row (colored magenta). The common positive entries in the 7 rows suggest a “distinguished” non-null indicator for the 14=21-7 G2 automorphism.
  6. All octonion multiplication matrices have the first 3 rows of distinguished entries of {6,7},{5,7} and {5,6} in that order (i.e. the last 2 rows of utOct).
  7. There are several possible choices for G2 automorphism sets of 14 elements within each of 480 octonions based on the 7 non-Null entries. Interestingly, there are the 4 sets of rows in utOct which sum to 14 elements, specifically rows {{1, 2, 4}, {1, 2, 5, 6}, {1, 2, 4, 6}, {2, 3, 4, 5}}). The distinguished entries of the flipped E8 #164 example below (as in the MathSource post referenced above) suggests a G2 created by rows {1,2,4} of utOct. Although, not all G2 sets must use complete rows as in this example.

This is octonionG2-nonNull, a 480 page (15 MB) which lists each of the 7 non-Null parent octonion derivations (and for each of those, the 3 other split octonion non-null derivations) which are NOT a member of the 14 null derivations for each of 480 octonion multiplication matrices and 7 splits for each (480*8=3840). It includes the Fano plane mnemonics for the parent and 7 split octionions. This is a smaller 240 page (1MB) version of octonionG2-nonNull.pdf without the Fano plane mnemonics.