OctonionCategory R¶

OctonionCategory gives the categorial frame for the octonions, and eight-dimensional non-associative algebra, doubling the the quaternions in the same way as doubling the Complex numbers to get the quaternions.

0: %

from AbelianMonoid

1: % if R has CharacteristicZero or R has CharacteristicNonZero

from MagmaWithUnit

*: (%, %) -> %

from Magma

*: (%, R) -> %

from RightModule R

*: (Integer, %) -> %

from AbelianGroup

*: (NonNegativeInteger, %) -> %

from AbelianMonoid

*: (PositiveInteger, %) -> %

from AbelianSemiGroup

*: (R, %) -> %

from LeftModule R

+: (%, %) -> %

from AbelianSemiGroup

-: % -> %

from AbelianGroup

-: (%, %) -> %

from AbelianGroup

<=: (%, %) -> Boolean if R has OrderedSet

from PartialOrder

<: (%, %) -> Boolean if R has OrderedSet

from PartialOrder

=: (%, %) -> Boolean

from BasicType

>=: (%, %) -> Boolean if R has OrderedSet

from PartialOrder

>: (%, %) -> Boolean if R has OrderedSet

from PartialOrder

^: (%, NonNegativeInteger) -> % if R has CharacteristicZero or R has CharacteristicNonZero

from MagmaWithUnit

^: (%, PositiveInteger) -> %

from Magma

~=: (%, %) -> Boolean

from BasicType

abs: % -> R if R has RealNumberSystem

abs(o) computes the absolute value of an octonion, equal to the square root of the norm.

alternative?: () -> Boolean
annihilate?: (%, %) -> Boolean if R has CharacteristicZero or R has CharacteristicNonZero

from Rng

antiAssociative?: () -> Boolean
antiCommutative?: () -> Boolean
antiCommutator: (%, %) -> %
apply: (Matrix R, %) -> %
associative?: () -> Boolean
associator: (%, %, %) -> %
associatorDependence: () -> List Vector R if R has IntegralDomain
basis: () -> Vector %

from FramedModule R

characteristic: () -> NonNegativeInteger if R has CharacteristicZero or R has CharacteristicNonZero
charthRoot: % -> Union(%, failed) if R has CharacteristicNonZero
coerce: % -> OutputForm
coerce: Fraction Integer -> % if R has RetractableTo Fraction Integer
coerce: Integer -> % if R has CharacteristicNonZero or R has RetractableTo Integer or R has CharacteristicZero
coerce: R -> %

from CoercibleFrom R

commutative?: () -> Boolean
commutator: (%, %) -> %
conditionsForIdempotents: () -> List Polynomial R
conditionsForIdempotents: Vector % -> List Polynomial R
conjugate: % -> %

conjugate(o) negates the imaginary parts i, j, k, E, I, J, K of octonian o.

convert: % -> InputForm if R has ConvertibleTo InputForm
convert: % -> Vector R

from FramedModule R

convert: Vector R -> %

from FramedModule R

coordinates: % -> Vector R

from FramedModule R

coordinates: (%, Vector %) -> Vector R
coordinates: (Vector %, Vector %) -> Matrix R
coordinates: Vector % -> Matrix R

from FramedModule R

elt: (%, Integer) -> R
elt: (%, R) -> % if R has Eltable(R, R)

from Eltable(R, %)

enumerate: () -> List % if R has Finite

from Finite

eval: (%, Equation R) -> % if R has Evalable R

from Evalable R

eval: (%, List Equation R) -> % if R has Evalable R

from Evalable R

eval: (%, List R, List R) -> % if R has Evalable R

from InnerEvalable(R, R)

eval: (%, List Symbol, List R) -> % if R has InnerEvalable(Symbol, R)

from InnerEvalable(Symbol, R)

eval: (%, R, R) -> % if R has Evalable R

from InnerEvalable(R, R)

eval: (%, Symbol, R) -> % if R has InnerEvalable(Symbol, R)

from InnerEvalable(Symbol, R)

flexible?: () -> Boolean
hash: % -> SingleInteger

from SetCategory

hashUpdate!: (HashState, %) -> HashState

from SetCategory

imagE: % -> R

imagE(o) extracts the imaginary E part of octonion o.

imagi: % -> R

imagi(o) extracts the i part of octonion o.

imagI: % -> R

imagI(o) extracts the imaginary I part of octonion o.

imagj: % -> R

imagj(o) extracts the j part of octonion o.

imagJ: % -> R

imagJ(o) extracts the imaginary J part of octonion o.

imagK: % -> R

imagK(o) extracts the imaginary K part of octonion o.

imagk: % -> R

imagk(o) extracts the k part of octonion o.

index: PositiveInteger -> % if R has Finite

from Finite

inv: % -> % if R has Field

inv(o) returns the inverse of o if it exists.

jacobiIdentity?: () -> Boolean
jordanAlgebra?: () -> Boolean
latex: % -> String

from SetCategory

leftAlternative?: () -> Boolean
leftCharacteristicPolynomial: % -> SparseUnivariatePolynomial R
leftDiscriminant: () -> R
leftDiscriminant: Vector % -> R
leftMinimalPolynomial: % -> SparseUnivariatePolynomial R if R has IntegralDomain
leftNorm: % -> R
leftPower: (%, NonNegativeInteger) -> % if R has CharacteristicZero or R has CharacteristicNonZero

from MagmaWithUnit

leftPower: (%, PositiveInteger) -> %

from Magma

leftRankPolynomial: () -> SparseUnivariatePolynomial Polynomial R if R has Field
leftRecip: % -> Union(%, failed) if R has IntegralDomain or R has CharacteristicZero or R has CharacteristicNonZero
leftRegularRepresentation: % -> Matrix R
leftRegularRepresentation: (%, Vector %) -> Matrix R
leftTrace: % -> R
leftTraceMatrix: () -> Matrix R
leftTraceMatrix: Vector % -> Matrix R
leftUnit: () -> Union(%, failed) if R has IntegralDomain
leftUnits: () -> Union(Record(particular: %, basis: List %), failed) if R has IntegralDomain
lieAlgebra?: () -> Boolean
lookup: % -> PositiveInteger if R has Finite

from Finite

map: (R -> R, %) -> %

from FullyEvalableOver R

max: (%, %) -> % if R has OrderedSet

from OrderedSet

min: (%, %) -> % if R has OrderedSet

from OrderedSet

noncommutativeJordanAlgebra?: () -> Boolean
norm: % -> R

norm(o) returns the norm of an octonion, equal to the sum of the squares of its coefficients.

octon: (R, R, R, R, R, R, R, R) -> %

octon(re, ri, rj, rk, rE, rI, rJ, rK) constructs an octonion from scalars.

one?: % -> Boolean if R has CharacteristicZero or R has CharacteristicNonZero

from MagmaWithUnit

opposite?: (%, %) -> Boolean

from AbelianMonoid

plenaryPower: (%, PositiveInteger) -> %
powerAssociative?: () -> Boolean
random: () -> % if R has Finite

from Finite

rank: () -> PositiveInteger

from FramedModule R

rational?: % -> Boolean if R has IntegerNumberSystem

rational?(o) tests if o is rational, i.e. that all seven imaginary parts are 0.

rational: % -> Fraction Integer if R has IntegerNumberSystem

rational(o) returns the real part if all seven imaginary parts are 0. Error: if o is not rational.

rationalIfCan: % -> Union(Fraction Integer, failed) if R has IntegerNumberSystem

rationalIfCan(o) returns the real part if all seven imaginary parts are 0, and “failed” otherwise.

real: % -> R

real(o) extracts real part of octonion o.

recip: % -> Union(%, failed) if R has IntegralDomain or R has CharacteristicZero or R has CharacteristicNonZero
represents: (Vector R, Vector %) -> %
represents: Vector R -> %

from FramedModule R

retract: % -> Fraction Integer if R has RetractableTo Fraction Integer
retract: % -> Integer if R has RetractableTo Integer
retract: % -> R

from RetractableTo R

retractIfCan: % -> Union(Fraction Integer, failed) if R has RetractableTo Fraction Integer
retractIfCan: % -> Union(Integer, failed) if R has RetractableTo Integer
retractIfCan: % -> Union(R, failed)

from RetractableTo R

rightAlternative?: () -> Boolean
rightCharacteristicPolynomial: % -> SparseUnivariatePolynomial R
rightDiscriminant: () -> R
rightDiscriminant: Vector % -> R
rightMinimalPolynomial: % -> SparseUnivariatePolynomial R if R has IntegralDomain
rightNorm: % -> R
rightPower: (%, NonNegativeInteger) -> % if R has CharacteristicZero or R has CharacteristicNonZero

from MagmaWithUnit

rightPower: (%, PositiveInteger) -> %

from Magma

rightRankPolynomial: () -> SparseUnivariatePolynomial Polynomial R if R has Field
rightRecip: % -> Union(%, failed) if R has IntegralDomain or R has CharacteristicZero or R has CharacteristicNonZero
rightRegularRepresentation: % -> Matrix R
rightRegularRepresentation: (%, Vector %) -> Matrix R
rightTrace: % -> R
rightTraceMatrix: () -> Matrix R
rightTraceMatrix: Vector % -> Matrix R
rightUnit: () -> Union(%, failed) if R has IntegralDomain
rightUnits: () -> Union(Record(particular: %, basis: List %), failed) if R has IntegralDomain
sample: %

from AbelianMonoid

size: () -> NonNegativeInteger if R has Finite

from Finite

smaller?: (%, %) -> Boolean if R has Finite or R has OrderedSet

from Comparable

someBasis: () -> Vector %
structuralConstants: () -> Vector Matrix R
structuralConstants: Vector % -> Vector Matrix R
subtractIfCan: (%, %) -> Union(%, failed)
unit: () -> Union(%, failed) if R has IntegralDomain
zero?: % -> Boolean

from AbelianMonoid

AbelianGroup

AbelianMonoid

AbelianSemiGroup

BasicType

BiModule(%, %) if R has CharacteristicZero or R has CharacteristicNonZero

BiModule(R, R)

CancellationAbelianMonoid

Comparable if R has Finite or R has OrderedSet

Eltable(R, %) if R has Eltable(R, R)

Evalable R if R has Evalable R

Finite if R has Finite

InnerEvalable(R, R) if R has Evalable R

InnerEvalable(Symbol, R) if R has InnerEvalable(Symbol, R)

LeftModule % if R has CharacteristicZero or R has CharacteristicNonZero

Magma

MagmaWithUnit if R has CharacteristicZero or R has CharacteristicNonZero

Monoid if R has CharacteristicZero or R has CharacteristicNonZero

NonAssociativeRing if R has CharacteristicZero or R has CharacteristicNonZero

NonAssociativeRng

NonAssociativeSemiRing if R has CharacteristicZero or R has CharacteristicNonZero

NonAssociativeSemiRng

OrderedSet if R has OrderedSet

PartialOrder if R has OrderedSet

RightModule % if R has CharacteristicZero or R has CharacteristicNonZero

Ring if R has CharacteristicZero or R has CharacteristicNonZero

Rng if R has CharacteristicZero or R has CharacteristicNonZero

SemiGroup if R has CharacteristicZero or R has CharacteristicNonZero

SemiRing if R has CharacteristicZero or R has CharacteristicNonZero

SemiRng if R has CharacteristicZero or R has CharacteristicNonZero

SetCategory

unitsKnown if R has IntegralDomain or R has CharacteristicZero or R has CharacteristicNonZero