FiniteRankNonAssociativeAlgebra R¶
naalgc.spad line 224 [edit on github]
A FiniteRankNonAssociativeAlgebra is a non associative algebra over a commutative ring R which is a free R-module of finite rank.
- 0: %
from AbelianMonoid
- *: (%, %) -> %
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
- ^: (%, PositiveInteger) -> %
from Magma
- alternative?: () -> Boolean
alternative?()tests if2*associator(a, a, b) = 0 = 2*associator(a, b, b)for alla,bin the algebra. Note: we only can test this; in general we don'tknow whether2*a=0impliesa=0.
- antiAssociative?: () -> Boolean
antiAssociative?()tests if multiplication in algebra is anti-associative, i.e.(a*b)*c + a*(b*c) = 0for alla,b,cin the algebra.
- antiCommutative?: () -> Boolean
antiCommutative?()tests ifa*a = 0for allain the algebra. Note: this impliesa*b + b*a = 0for allaandb.
- antiCommutator: (%, %) -> %
- associative?: () -> Boolean
associative?()tests if multiplication in algebra is associative.
- associator: (%, %, %) -> %
from NonAssociativeRng
- associatorDependence: () -> List Vector R if R has IntegralDomain
associatorDependence()looks for the associator identities, i.e. finds a basis of the solutions of the linear combinations of the six permutations ofassociator(a, b, c)which yield 0, for alla,b,cin the algebra. The order of the permutations is123 231 312 132 321 213.
- coerce: % -> OutputForm
from CoercibleTo OutputForm
- commutative?: () -> Boolean
commutative?()tests if multiplication in the algebra is commutative.
- commutator: (%, %) -> %
from NonAssociativeRng
- conditionsForIdempotents: Vector % -> List Polynomial R
conditionsForIdempotents([v1, ..., vn])determines a complete list of polynomial equations for the coefficients of idempotents with respect to theR-module basisv1, …,vn.
- coordinates: (%, Vector %) -> Vector R
coordinates(a, [v1, ..., vn])returns the coordinates ofawith respect to theR-module basisv1, …,vn.
- coordinates: (Vector %, Vector %) -> Matrix R
coordinates([a1, ..., am], [v1, ..., vn])returns a matrix whosei-th row is formed by the coordinates ofaiwith respect to theR-module basisv1, …,vn.
- flexible?: () -> Boolean
flexible?()tests if2*associator(a, b, a) = 0for alla,bin the algebra. Note: we only can test this; in general we don'tknow whether2*a=0impliesa=0.
- jacobiIdentity?: () -> Boolean
jacobiIdentity?()tests if(a*b)*c + (b*c)*a + (c*a)*b = 0for alla,b,cin the algebra. For example, this holds for crossed products of 3-dimensional vectors.
- jordanAdmissible?: () -> Boolean
jordanAdmissible?()tests if 2 is invertible in the coefficient domain and the multiplication defined by(1/2)(a*b+b*a)determines a Jordan algebra, i.e. satisfies the Jordan identity. The property of CommutativeStar follows from by definition.
- jordanAlgebra?: () -> Boolean
jordanAlgebra?()tests if the algebra is commutative, characteristic is not 2, and(a*b)*a^2 - a*(b*a^2) = 0for alla,b,cin the algebra (Jordan identity). Example: for every associative algebra(A, +, @)we can construct a Jordan algebra(A, +, *), wherea*b := (a@b+b@a)/2.
- latex: % -> String
from SetCategory
- leftAlternative?: () -> Boolean
leftAlternative?()tests if2*associator(a, a, b) = 0for alla,bin the algebra. Note: we only can test this; in general we don'tknow whether2*a=0impliesa=0.
- leftCharacteristicPolynomial: % -> SparseUnivariatePolynomial R
leftCharacteristicPolynomial(a)returns the characteristic polynomial of the left regular representation ofawith respect to any basis.
- leftDiscriminant: Vector % -> R
leftDiscriminant([v1, ..., vn])returns the determinant of then-by-nmatrix whose element at thei-th row andj-th column is given by the left trace of the productvi*vj. Note: the same asdeterminant(leftTraceMatrix([v1, ..., vn])).
- leftMinimalPolynomial: % -> SparseUnivariatePolynomial R if R has IntegralDomain
leftMinimalPolynomial(a)returns the polynomial determined by the smallest non-trivial linear combination of left powers ofa. Note: the polynomial never has a constant term as in general the algebra has no unit.
- leftNorm: % -> R
leftNorm(a)returns the determinant of the left regular representation ofa.
- leftPower: (%, PositiveInteger) -> %
from Magma
- leftRecip: % -> Union(%, failed) if R has IntegralDomain
leftRecip(a)returns an element, which is a left inverse ofa, or"failed"if there is no unit element, if such an element doesn'texist or cannot be determined (see unitsKnown).
- leftRegularRepresentation: (%, Vector %) -> Matrix R
leftRegularRepresentation(a, [v1, ..., vn])returns the matrixmof the linear map defined by left multiplication byawith respect to theR-module basisb = [v1, ..., vn]. That is for allxcoordinates(a*x, b) = m*coordinates(x, b).
- leftTrace: % -> R
leftTrace(a)returns the trace of the left regular representation ofa.
- leftTraceMatrix: Vector % -> Matrix R
leftTraceMatrix([v1, ..., vn])is then-by-nmatrix whose element at thei-th row andj-th column is given by the left trace of the productvi*vj.
- leftUnit: () -> Union(%, failed) if R has IntegralDomain
leftUnit()returns a left unit of the algebra (not necessarily unique), or"failed"if there is none.
- leftUnits: () -> Union(Record(particular: %, basis: List %), failed) if R has IntegralDomain
leftUnits()returns the affine space of all left units of the algebra, or"failed"if there is none.
- lieAdmissible?: () -> Boolean
lieAdmissible?()tests if the algebra defined by the commutators is a Lie algebra, i.e. satisfies the Jacobi identity. The property of anticommutativity follows from definition.
- lieAlgebra?: () -> Boolean
lieAlgebra?()tests if the algebra is anticommutative and(a*b)*c + (b*c)*a + (c*a)*b = 0for alla,b,cin the algebra (Jacobi identity). Example: for every associative algebra(A, +, @)we can construct a Lie algebra(A, +, *), wherea*b := a@b-b@a.
- noncommutativeJordanAlgebra?: () -> Boolean
noncommutativeJordanAlgebra?()tests if the algebra is flexible and Jordan admissible.
- opposite?: (%, %) -> Boolean
from AbelianMonoid
- plenaryPower: (%, PositiveInteger) -> %
from NonAssociativeAlgebra R
- powerAssociative?: () -> Boolean
powerAssociative?()tests if all subalgebras generated by a single element are associative.
- rank: () -> PositiveInteger
rank()returns the rank of the algebra asR-module.
- recip: % -> Union(%, failed) if R has IntegralDomain
recip(a)returns an element, which is both a left and a right inverse ofa, or"failed"if there is no unit element, if such an element doesn'texist or cannot be determined (see unitsKnown).
- represents: (Vector R, Vector %) -> %
represents([a1, ..., am], [v1, ..., vm])returns the linear combinationa1*vm + ... + an*vm.
- rightAlternative?: () -> Boolean
rightAlternative?()tests if2*associator(a, b, b) = 0for alla,bin the algebra. Note: we only can test this; in general we don'tknow whether2*a=0impliesa=0.
- rightCharacteristicPolynomial: % -> SparseUnivariatePolynomial R
rightCharacteristicPolynomial(a)returns the characteristic polynomial of the right regular representation ofawith respect to any basis.
- rightDiscriminant: Vector % -> R
rightDiscriminant([v1, ..., vn])returns the determinant of then-by-nmatrix whose element at thei-th row andj-th column is given by the right trace of the productvi*vj. Note: the same asdeterminant(rightTraceMatrix([v1, ..., vn])).
- rightMinimalPolynomial: % -> SparseUnivariatePolynomial R if R has IntegralDomain
rightMinimalPolynomial(a)returns the polynomial determined by the smallest non-trivial linear combination of right powers ofa. Note: the polynomial never has a constant term as in general the algebra has no unit.
- rightNorm: % -> R
rightNorm(a)returns the determinant of the right regular representation ofa.
- rightPower: (%, PositiveInteger) -> %
from Magma
- rightRecip: % -> Union(%, failed) if R has IntegralDomain
rightRecip(a)returns an element, which is a right inverse ofa, or"failed"if there is no unit element, if such an element doesn'texist or cannot be determined (see unitsKnown).
- rightRegularRepresentation: (%, Vector %) -> Matrix R
rightRegularRepresentation(a, [v1, ..., vn])returns the matrixmof the linear map defined by right multiplication byawith respect to theR-module basisb = [v1, ..., vn]. That is for allxcoordinates(x*a, b) = m*coordinates(x, b).
- rightTrace: % -> R
rightTrace(a)returns the trace of the right regular representation ofa.
- rightTraceMatrix: Vector % -> Matrix R
rightTraceMatrix([v1, ..., vn])is then-by-nmatrix whose element at thei-th row andj-th column is given by the right trace of the productvi*vj.
- rightUnit: () -> Union(%, failed) if R has IntegralDomain
rightUnit()returns a right unit of the algebra (not necessarily unique), or"failed"if there is none.
- rightUnits: () -> Union(Record(particular: %, basis: List %), failed) if R has IntegralDomain
rightUnits()returns the affine space of all right units of the algebra, or"failed"if there is none.
- sample: %
from AbelianMonoid
- someBasis: () -> Vector %
someBasis()returns someR-module basis.
- structuralConstants: Vector % -> Vector Matrix R
structuralConstants([v1, v2, ..., vm])calculates the structural constants[(gammaijk) for k in 1..m]defined byvi * vj = gammaij1 * v1 + ... + gammaijm * vm, where[v1, ..., vm]is anR-module basis of a subalgebra.
- subtractIfCan: (%, %) -> Union(%, failed)
- unit: () -> Union(%, failed) if R has IntegralDomain
unit()returns a unit of the algebra (necessarily unique), or"failed"if there is none.
- zero?: % -> Boolean
from AbelianMonoid
BiModule(R, R)
Module R
unitsKnown if R has IntegralDomain