OctonionCategory R

oct.spad line 1 [edit on github]

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

from FiniteRankNonAssociativeAlgebra R

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

from Rng

antiAssociative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

antiCommutative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

antiCommutator: (%, %) -> %

from NonAssociativeSemiRng

apply: (Matrix R, %) -> %

from FramedNonAssociativeAlgebra R

associative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

associator: (%, %, %) -> %

from NonAssociativeRng

associatorDependence: () -> List Vector R if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

basis: () -> Vector %

from FramedModule R

characteristic: () -> NonNegativeInteger if R has CharacteristicZero or R has CharacteristicNonZero

from NonAssociativeRing

charthRoot: % -> Union(%, failed) if R has CharacteristicNonZero

from CharacteristicNonZero

coerce: % -> OutputForm

from CoercibleTo OutputForm

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

from CoercibleFrom Fraction Integer

coerce: Integer -> % if R has CharacteristicNonZero or R has RetractableTo Integer or R has CharacteristicZero

from NonAssociativeRing

coerce: R -> %

from CoercibleFrom R

commutative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

commutator: (%, %) -> %

from NonAssociativeRng

conditionsForIdempotents: () -> List Polynomial R

from FramedNonAssociativeAlgebra R

conditionsForIdempotents: Vector % -> List Polynomial R

from FiniteRankNonAssociativeAlgebra 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

from ConvertibleTo InputForm

convert: % -> Vector R

from FramedModule R

convert: Vector R -> %

from FramedModule R

coordinates: % -> Vector R

from FramedModule R

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

from FiniteRankNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

coordinates: Vector % -> Matrix R

from FramedModule R

elt: (%, Integer) -> R

from FramedNonAssociativeAlgebra 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

from FiniteRankNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

jordanAdmissible?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

jordanAlgebra?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

latex: % -> String

from SetCategory

leftAlternative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

leftCharacteristicPolynomial: % -> SparseUnivariatePolynomial R

from FiniteRankNonAssociativeAlgebra R

leftDiscriminant: () -> R

from FramedNonAssociativeAlgebra R

leftDiscriminant: Vector % -> R

from FiniteRankNonAssociativeAlgebra R

leftMinimalPolynomial: % -> SparseUnivariatePolynomial R if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

leftNorm: % -> R

from FiniteRankNonAssociativeAlgebra 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

from FramedNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

leftRegularRepresentation: % -> Matrix R

from FramedNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

leftTrace: % -> R

from FiniteRankNonAssociativeAlgebra R

leftTraceMatrix: () -> Matrix R

from FramedNonAssociativeAlgebra R

leftTraceMatrix: Vector % -> Matrix R

from FiniteRankNonAssociativeAlgebra R

leftUnit: () -> Union(%, failed) if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

leftUnits: () -> Union(Record(particular: %, basis: List %), failed) if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

lieAdmissible?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

lieAlgebra?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

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) -> %

from NonAssociativeAlgebra R

powerAssociative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

represents: (Vector R, Vector %) -> %

from FiniteRankNonAssociativeAlgebra R

represents: Vector R -> %

from FramedModule R

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

from RetractableTo Fraction Integer

retract: % -> Integer if R has RetractableTo Integer

from RetractableTo Integer

retract: % -> R

from RetractableTo R

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

from RetractableTo Fraction Integer

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

from RetractableTo Integer

retractIfCan: % -> Union(R, failed)

from RetractableTo R

rightAlternative?: () -> Boolean

from FiniteRankNonAssociativeAlgebra R

rightCharacteristicPolynomial: % -> SparseUnivariatePolynomial R

from FiniteRankNonAssociativeAlgebra R

rightDiscriminant: () -> R

from FramedNonAssociativeAlgebra R

rightDiscriminant: Vector % -> R

from FiniteRankNonAssociativeAlgebra R

rightMinimalPolynomial: % -> SparseUnivariatePolynomial R if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

rightNorm: % -> R

from FiniteRankNonAssociativeAlgebra 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

from FramedNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

rightRegularRepresentation: % -> Matrix R

from FramedNonAssociativeAlgebra R

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

from FiniteRankNonAssociativeAlgebra R

rightTrace: % -> R

from FiniteRankNonAssociativeAlgebra R

rightTraceMatrix: () -> Matrix R

from FramedNonAssociativeAlgebra R

rightTraceMatrix: Vector % -> Matrix R

from FiniteRankNonAssociativeAlgebra R

rightUnit: () -> Union(%, failed) if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

rightUnits: () -> Union(Record(particular: %, basis: List %), failed) if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

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 %

from FiniteRankNonAssociativeAlgebra R

structuralConstants: () -> Vector Matrix R

from FramedNonAssociativeAlgebra R

structuralConstants: Vector % -> Vector Matrix R

from FiniteRankNonAssociativeAlgebra R

subtractIfCan: (%, %) -> Union(%, failed)

from CancellationAbelianMonoid

unit: () -> Union(%, failed) if R has IntegralDomain

from FiniteRankNonAssociativeAlgebra R

zero?: % -> Boolean

from AbelianMonoid

AbelianGroup

AbelianMonoid

AbelianSemiGroup

BasicType

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

BiModule(R, R)

CancellationAbelianMonoid

CharacteristicNonZero if R has CharacteristicNonZero

CharacteristicZero if R has CharacteristicZero

CoercibleFrom Fraction Integer if R has RetractableTo Fraction Integer

CoercibleFrom Integer if R has RetractableTo Integer

CoercibleFrom R

CoercibleTo OutputForm

Comparable if R has Finite or R has OrderedSet

ConvertibleTo InputForm if R has ConvertibleTo InputForm

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

Evalable R if R has Evalable R

Finite if R has Finite

FiniteRankNonAssociativeAlgebra R

FramedModule R

FramedNonAssociativeAlgebra R

FullyEvalableOver R

FullyRetractableTo R

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

LeftModule R

Magma

MagmaWithUnit if R has CharacteristicZero or R has CharacteristicNonZero

Module R

Monoid if R has CharacteristicZero or R has CharacteristicNonZero

NonAssociativeAlgebra R

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

RetractableTo Fraction Integer if R has RetractableTo Fraction Integer

RetractableTo Integer if R has RetractableTo Integer

RetractableTo R

RightModule % if R has CharacteristicZero or R has CharacteristicNonZero

RightModule R

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