A container for the eight basis unit octonions. More...
#include <Complex.hpp>
Public Types | |
using | R = UnderlyingRealType< T > |
Static Public Attributes | |
constexpr static Octonion< R > | one = {{{o, z}, {z, z}}, {{z, z}, {z, z}}} |
constexpr static Octonion< R > | e1 = {{{z, o}, {z, z}}, {{z, z}, {z, z}}} |
constexpr static Octonion< R > | e2 = {{{z, z}, {o, z}}, {{z, z}, {z, z}}} |
constexpr static Octonion< R > | e4 = {{{z, z}, {z, o}}, {{z, z}, {z, z}}} |
constexpr static Octonion< R > | e0 = {{{z, z}, {z, z}}, {{o, z}, {z, z}}} |
constexpr static Octonion< R > | e3 = {{{z, z}, {z, z}}, {{z, -o}, {z, z}}} |
constexpr static Octonion< R > | e6 = {{{z, z}, {z, z}}, {{z, z}, {-o, z}}} |
constexpr static Octonion< R > | e5 = {{{z, z}, {z, z}}, {{z, z}, {z, -o}}} |
A container for the eight basis unit octonions.
They can be accessed in the following manner:
These obey the multiplicative rules \( e_{i+1} e_{i+2} = e_{i+4} \) for all \( i \in \mathbb{Z} / 7 \mathbb{Z} \), where each rule is antisymmetric when the terms are permuted.