login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for SandBoxNonAssociativeAlgebra revision 17 of 25

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Editor: Bill Page
Time: 2008/05/02 08:38:37 GMT-7
Note: commutator and associator

added:

From BillPage Fri May 2 08:38:36 -0700 2008
From: Bill Page
Date: Fri, 02 May 2008 08:38:36 -0700
Subject: commutator and associator
Message-ID: <20080502083836-0700@axiom-wiki.newsynthesis.org>

\begin{axiom}
for a in basis()$V repeat
  for b in basis()$V repeat
    output([a,b,"=",a**b])
associator(a.2,a.3,a.4)
\end{axiom}

Ref: http://arxiv.org/abs/0711.3220

Fourvector algebra

Author: Diego Saa (Submitted on 20 Nov 2007)

Abstract: The algebra of fourvectors is described. The fourvectors are more appropriate than the Hamilton quaternions for its use in Physics and the sciences in general. The fourvectors embrace the 3D vectors in a natural form. It is shown the excellent ability to perform rotations with the use of fourvectors, as well as their use in relativity for producing Lorentz boosts, which are understood as simple rotations.

axiom
_*_*(x,y)==concat(x(1) * y(1) + dot(x(2..), y(2..)), x(1) * y(2..) - x(2..) * y(1) + cross(x(2..), y(2..)))
Type: Void
axiom
e:Vector INT:=[1,0,0,0]
LatexWiki Image(1)
Type: Vector Integer
axiom
i:Vector INT:=[0,1,0,0]
LatexWiki Image(2)
Type: Vector Integer
axiom
j:Vector INT:=[0,0,1,0]
LatexWiki Image(3)
Type: Vector Integer
axiom
k:Vector INT:=[0,0,0,1]
LatexWiki Image(4)
Type: Vector Integer
axiom
test(e**e=e) and _ test(i**i=e) and _ test(j**j=e) and _ test(k**k=e) and _ test(e**i=i) and _ test(e**j=j) and _ test(e**k=k) and _ test(i**e=-i) and _ test(j**e=-j) and _ test(k**e=-k) and _ test(i**j=k) and _ test(j**i=-k) and _ test(k**i=j) and _ test(i**k=-j) and _ test(j**k=i) and _ test(k**j=-i)
axiom
Compiling function ** with type (Vector Integer,Vector Integer) -> 
      Vector Integer
LatexWiki Image(5)
Type: Boolean

Axiom has a domain for NonAssociative? Algebra

This is documented in the article: Computations in Algebras of Fixed Rank by Johannes Grabmeir and Robert Wisbauer, from the book "Computational Algebra" By Klaus G. Fischer, Philippe Loustaunau, Jay Shapiro.

The algebra above can be given by structural constants.

axiom
)clear all All user variables and function definitions have been cleared. sc:Vector Matrix Fraction Integer := [ _ [[ 1, 0, 0, 0], _ [ 0, 1, 0, 0], _ [ 0, 0, 1, 0], _ [ 0, 0, 0, 1]], _ [[ 0, 1, 0, 0], _ [-1, 0, 0, 0], _ [ 0, 0, 0, 1], _ [ 0, 0,-1, 0]], _ [[ 0, 0, 1, 0], _ [ 0, 0, 0,-1], _ [-1, 0, 0, 0], _ [ 0, 1, 0, 0]], _ [[ 0, 0, 0, 1], _ [ 0, 0, 1, 0], _ [ 0,-1, 0, 0], _ [-1, 0, 0, 0]]];
Type: Vector Matrix Fraction Integer
axiom
V:=AlgebraGivenByStructuralConstants(Fraction Integer, 4, [e,i,j,k],sc)
LatexWiki Image(6)
Type: Domain
axiom
)show V AlgebraGivenByStructuralConstants(Fraction Integer,4,[e,i,j,k],[MATRIX,MATRIX,MATRIX,MATRIX]) is a domain constructor. Abbreviation for AlgebraGivenByStructuralConstants is ALGSC This constructor is exposed in this frame. Issue )edit /usr/local/lib/axiom/target/x86_64-unknown-linux/../../src/algebra/ALGSC.spad to see algebra source code for ALGSC ------------------------------- Operations -------------------------------- ?*? : (Fraction Integer,%) -> % ?*? : (Integer,%) -> % ?*? : (PositiveInteger,%) -> % ?*? : (%,Fraction Integer) -> % ?*? : (%,%) -> % ?**? : (%,PositiveInteger) -> % ?+? : (%,%) -> % ?-? : (%,%) -> % -? : % -> % ?=? : (%,%) -> Boolean 0 : () -> % alternative? : () -> Boolean antiAssociative? : () -> Boolean antiCommutative? : () -> Boolean antiCommutator : (%,%) -> % associative? : () -> Boolean associator : (%,%,%) -> % basis : () -> Vector % coerce : % -> OutputForm commutative? : () -> Boolean commutator : (%,%) -> % flexible? : () -> Boolean hash : % -> SingleInteger jacobiIdentity? : () -> Boolean jordanAdmissible? : () -> Boolean jordanAlgebra? : () -> Boolean latex : % -> String leftAlternative? : () -> Boolean leftNorm : % -> Fraction Integer leftTrace : % -> Fraction Integer lieAdmissible? : () -> Boolean lieAlgebra? : () -> Boolean powerAssociative? : () -> Boolean rank : () -> PositiveInteger recip : % -> Union(%,"failed") rightAlternative? : () -> Boolean rightNorm : % -> Fraction Integer sample : () -> % someBasis : () -> Vector % unit : () -> Union(%,"failed") zero? : % -> Boolean ?~=? : (%,%) -> Boolean ?*? : (NonNegativeInteger,%) -> % ?*? : (SquareMatrix(4,Fraction Integer),%) -> % apply : (Matrix Fraction Integer,%) -> % associatorDependence : () -> List Vector Fraction Integer coerce : Vector Fraction Integer -> % conditionsForIdempotents : Vector % -> List Polynomial Fraction Integer conditionsForIdempotents : () -> List Polynomial Fraction Integer convert : % -> Vector Fraction Integer convert : Vector Fraction Integer -> % coordinates : (Vector %,Vector %) -> Matrix Fraction Integer coordinates : Vector % -> Matrix Fraction Integer coordinates : (%,Vector %) -> Vector Fraction Integer coordinates : % -> Vector Fraction Integer ?.? : (%,Integer) -> Fraction Integer leftCharacteristicPolynomial : % -> SparseUnivariatePolynomial Fraction Integer leftDiscriminant : Vector % -> Fraction Integer leftDiscriminant : () -> Fraction Integer leftMinimalPolynomial : % -> SparseUnivariatePolynomial Fraction Integer leftPower : (%,PositiveInteger) -> % leftRankPolynomial : () -> SparseUnivariatePolynomial Polynomial Fraction Integer leftRecip : % -> Union(%,"failed") leftRegularRepresentation : (%,Vector %) -> Matrix Fraction Integer leftRegularRepresentation : % -> Matrix Fraction Integer leftTraceMatrix : Vector % -> Matrix Fraction Integer leftTraceMatrix : () -> Matrix Fraction Integer leftUnit : () -> Union(%,"failed") leftUnits : () -> Union(Record(particular: %,basis: List %),"failed") noncommutativeJordanAlgebra? : () -> Boolean plenaryPower : (%,PositiveInteger) -> % represents : (Vector Fraction Integer,Vector %) -> % represents : Vector Fraction Integer -> % rightCharacteristicPolynomial : % -> SparseUnivariatePolynomial Fraction Integer rightDiscriminant : Vector % -> Fraction Integer rightDiscriminant : () -> Fraction Integer rightMinimalPolynomial : % -> SparseUnivariatePolynomial Fraction Integer rightPower : (%,PositiveInteger) -> % rightRankPolynomial : () -> SparseUnivariatePolynomial Polynomial Fraction Integer rightRecip : % -> Union(%,"failed") rightRegularRepresentation : (%,Vector %) -> Matrix Fraction Integer rightRegularRepresentation : % -> Matrix Fraction Integer rightTrace : % -> Fraction Integer rightTraceMatrix : Vector % -> Matrix Fraction Integer rightTraceMatrix : () -> Matrix Fraction Integer rightUnit : () -> Union(%,"failed") rightUnits : () -> Union(Record(particular: %,basis: List %),"failed") structuralConstants : Vector % -> Vector Matrix Fraction Integer structuralConstants : () -> Vector Matrix Fraction Integer subtractIfCan : (%,%) -> Union(%,"failed")

axiom
a:=basis()$V
LatexWiki Image(7)
Type: Vector AlgebraGivenByStructuralConstants?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)
axiom
matrix([[(a.i * a.j) for j in 1..4] for i in 1..4])$OutputForm
LatexWiki Image(8)
Type: OutputForm?
axiom
leftUnit()$V
LatexWiki Image(9)
Type: Union(AlgebraGivenByStructuralConstants?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?),...)
axiom
rightUnit()$V this algebra has no right unit
LatexWiki Image(10)
Type: Union("failed",...)
axiom
alternative?()$V algebra is not left alternative
LatexWiki Image(11)
Type: Boolean
axiom
leftAlternative?()$V algebra is not left alternative
LatexWiki Image(12)
Type: Boolean
axiom
rightAlternative?()$V algebra is not right alternative
LatexWiki Image(13)
Type: Boolean
axiom
associative?()$V algebra is not associative
LatexWiki Image(14)
Type: Boolean
axiom
antiAssociative?()$V algebra is not anti-associative
LatexWiki Image(15)
Type: Boolean
axiom
--powerAssociative?()$V commutative?()$V algebra is not commutative
LatexWiki Image(16)
Type: Boolean
axiom
jordanAlgebra?()$V algebra is not commutative this is not a Jordan algebra
LatexWiki Image(17)
Type: Boolean
axiom
jordanAdmissible?()$V algebra is not Jordan admissible
LatexWiki Image(18)
Type: Boolean
axiom
noncommutativeJordanAlgebra?()$V algebra is not flexible this is not a noncommutative Jordan algebra, as it is not flexible
LatexWiki Image(19)
Type: Boolean
axiom
lieAlgebra?()$V algebra is not anti-commutative this is not a Lie algebra
LatexWiki Image(20)
Type: Boolean
axiom
lieAdmissible?()$V algebra is not Lie admissible
LatexWiki Image(21)
Type: Boolean
axiom
jacobiIdentity?()$V Jacobi identity does not hold
LatexWiki Image(22)
Type: Boolean

axiom
V has FramedNonAssociativeAlgebra(Fraction Integer)
LatexWiki Image(23)
Type: Boolean
axiom
basisOfCenter()$AlgebraPackage(Fraction Integer,V)
LatexWiki Image(24)
Type: List AlgebraGivenByStructuralConstants?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)
axiom
basisOfCentroid()$AlgebraPackage(Fraction Integer,V)
LatexWiki Image(25)
Type: List Matrix Fraction Integer
axiom
basisOfNucleus()$AlgebraPackage(Fraction Integer,V)
LatexWiki Image(26)
Type: List AlgebraGivenByStructuralConstants?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)
axiom
basisOfLeftNucloid()$AlgebraPackage(Fraction Integer,V)
LatexWiki Image(27)
Type: List Matrix Fraction Integer

axiom
G:=GenericNonAssociativeAlgebra(Fraction Integer, 4, [e,i,j,k],sc)
LatexWiki Image(28)
Type: Domain
axiom
)show G GenericNonAssociativeAlgebra(Fraction Integer,4,[e,i,j,k],[MATRIX,MATRIX,MATRIX,MATRIX]) is a domain constructor. Abbreviation for GenericNonAssociativeAlgebra is GCNAALG This constructor is not exposed in this frame. Issue )edit /usr/local/lib/axiom/target/x86_64-unknown-linux/../../src/algebra/GCNAALG.spad to see algebra source code for GCNAALG ------------------------------- Operations -------------------------------- ?*? : (Integer,%) -> % ?*? : (PositiveInteger,%) -> % ?*? : (%,%) -> % ?**? : (%,PositiveInteger) -> % ?+? : (%,%) -> % ?-? : (%,%) -> % -? : % -> % ?=? : (%,%) -> Boolean 0 : () -> % alternative? : () -> Boolean antiAssociative? : () -> Boolean antiCommutative? : () -> Boolean antiCommutator : (%,%) -> % associative? : () -> Boolean associator : (%,%,%) -> % basis : () -> Vector % coerce : % -> OutputForm commutative? : () -> Boolean commutator : (%,%) -> % flexible? : () -> Boolean generic : (Symbol,Vector %) -> % generic : Symbol -> % generic : Vector Symbol -> % generic : Vector % -> % generic : () -> % hash : % -> SingleInteger jacobiIdentity? : () -> Boolean jordanAdmissible? : () -> Boolean jordanAlgebra? : () -> Boolean latex : % -> String leftAlternative? : () -> Boolean lieAdmissible? : () -> Boolean lieAlgebra? : () -> Boolean powerAssociative? : () -> Boolean rank : () -> PositiveInteger recip : % -> Union(%,"failed") rightAlternative? : () -> Boolean sample : () -> % someBasis : () -> Vector % unit : () -> Union(%,"failed") zero? : % -> Boolean ?~=? : (%,%) -> Boolean ?*? : (Fraction Polynomial Fraction Integer,%) -> % ?*? : (NonNegativeInteger,%) -> % ?*? : (SquareMatrix(4,Fraction Polynomial Fraction Integer),%) -> % ?*? : (%,Fraction Polynomial Fraction Integer) -> % apply : (Matrix Fraction Polynomial Fraction Integer,%) -> % associatorDependence : () -> List Vector Fraction Polynomial Fraction Integer coerce : Vector Fraction Polynomial Fraction Integer -> % conditionsForIdempotents : Vector % -> List Polynomial Fraction Integer conditionsForIdempotents : () -> List Polynomial Fraction Integer conditionsForIdempotents : Vector % -> List Polynomial Fraction Polynomial Fraction Integer conditionsForIdempotents : () -> List Polynomial Fraction Polynomial Fraction Integer convert : % -> Vector Fraction Polynomial Fraction Integer convert : Vector Fraction Polynomial Fraction Integer -> % coordinates : (Vector %,Vector %) -> Matrix Fraction Polynomial Fraction Integer coordinates : Vector % -> Matrix Fraction Polynomial Fraction Integer coordinates : (%,Vector %) -> Vector Fraction Polynomial Fraction Integer coordinates : % -> Vector Fraction Polynomial Fraction Integer ?.? : (%,Integer) -> Fraction Polynomial Fraction Integer generic : (Vector Symbol,Vector %) -> % genericLeftDiscriminant : () -> Fraction Polynomial Fraction Integer genericLeftMinimalPolynomial : % -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer genericLeftNorm : % -> Fraction Polynomial Fraction Integer genericLeftTrace : % -> Fraction Polynomial Fraction Integer genericLeftTraceForm : (%,%) -> Fraction Polynomial Fraction Integer genericRightDiscriminant : () -> Fraction Polynomial Fraction Integer genericRightMinimalPolynomial : % -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer genericRightNorm : % -> Fraction Polynomial Fraction Integer genericRightTrace : % -> Fraction Polynomial Fraction Integer genericRightTraceForm : (%,%) -> Fraction Polynomial Fraction Integer leftCharacteristicPolynomial : % -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer leftDiscriminant : Vector % -> Fraction Polynomial Fraction Integer leftDiscriminant : () -> Fraction Polynomial Fraction Integer leftMinimalPolynomial : % -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer leftNorm : % -> Fraction Polynomial Fraction Integer leftPower : (%,PositiveInteger) -> % leftRankPolynomial : () -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer leftRankPolynomial : () -> SparseUnivariatePolynomial Polynomial Fraction Polynomial Fraction Integer leftRecip : % -> Union(%,"failed") leftRegularRepresentation : (%,Vector %) -> Matrix Fraction Polynomial Fraction Integer leftRegularRepresentation : % -> Matrix Fraction Polynomial Fraction Integer leftTrace : % -> Fraction Polynomial Fraction Integer leftTraceMatrix : Vector % -> Matrix Fraction Polynomial Fraction Integer leftTraceMatrix : () -> Matrix Fraction Polynomial Fraction Integer leftUnit : () -> Union(%,"failed") leftUnits : () -> Union(Record(particular: %,basis: List %),"failed") noncommutativeJordanAlgebra? : () -> Boolean plenaryPower : (%,PositiveInteger) -> % represents : (Vector Fraction Polynomial Fraction Integer,Vector %) -> % represents : Vector Fraction Polynomial Fraction Integer -> % rightCharacteristicPolynomial : % -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer rightDiscriminant : Vector % -> Fraction Polynomial Fraction Integer rightDiscriminant : () -> Fraction Polynomial Fraction Integer rightMinimalPolynomial : % -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer rightNorm : % -> Fraction Polynomial Fraction Integer rightPower : (%,PositiveInteger) -> % rightRankPolynomial : () -> SparseUnivariatePolynomial Fraction Polynomial Fraction Integer rightRankPolynomial : () -> SparseUnivariatePolynomial Polynomial Fraction Polynomial Fraction Integer rightRecip : % -> Union(%,"failed") rightRegularRepresentation : (%,Vector %) -> Matrix Fraction Polynomial Fraction Integer rightRegularRepresentation : % -> Matrix Fraction Polynomial Fraction Integer rightTrace : % -> Fraction Polynomial Fraction Integer rightTraceMatrix : Vector % -> Matrix Fraction Polynomial Fraction Integer rightTraceMatrix : () -> Matrix Fraction Polynomial Fraction Integer rightUnit : () -> Union(%,"failed") rightUnits : () -> Union(Record(particular: %,basis: List %),"failed") structuralConstants : Vector % -> Vector Matrix Fraction Polynomial Fraction Integer structuralConstants : () -> Vector Matrix Fraction Polynomial Fraction Integer subtractIfCan : (%,%) -> Union(%,"failed")

axiom
associatorDependence()$G
LatexWiki Image(29)
Type: List Vector Fraction Polynomial Fraction Integer
axiom
conditionsForIdempotents()$G
LatexWiki Image(30)
Type: List Polynomial Fraction Integer
axiom
leftRankPolynomial()$G
LatexWiki Image(31)
Type: SparseUnivariatePolynomial? Fraction Polynomial Fraction Integer
axiom
rightUnit()$G this algebra has no right unit
LatexWiki Image(32)
Type: Union("failed",...)
axiom
p1:=generic([x1,y1,z1,w1])$G
LatexWiki Image(33)
Type: GenericNonAssociativeAlgebra?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)
axiom
p2:=generic([x2,y2,z2,w2])$G
LatexWiki Image(34)
Type: GenericNonAssociativeAlgebra?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)
axiom
p3:=generic([x3,y3,z3,w3])$G
LatexWiki Image(35)
Type: GenericNonAssociativeAlgebra?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)
axiom
leftRecip(p1)$G
LatexWiki Image(36)
Type: Union(GenericNonAssociativeAlgebra?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?),...)
axiom
rightRecip(p1)$G this algebra has no right unit
LatexWiki Image(37)
Type: Union("failed",...)
axiom
leftRegularRepresentation(p1)
LatexWiki Image(38)
Type: Matrix Fraction Polynomial Fraction Integer
axiom
rightRegularRepresentation(p1)
LatexWiki Image(39)
Type: Matrix Fraction Polynomial Fraction Integer
axiom
associator(p1,p2,p3)$G
LatexWiki Image(40)
Type: GenericNonAssociativeAlgebra?(Fraction Integer,4,[e,i,j,k]?,[MATRIX,MATRIX,MATRIX,MATRIX]?)

commutator and associator --Bill Page, Fri, 02 May 2008 08:38:36 -0700 reply
axiom
for a in basis()$V repeat for b in basis()$V repeat output([a,b,"=",a**b]) V is not a valid type. associator(a.2,a.3,a.4) There are no library operations named a Use HyperDoc Browse or issue )what op a to learn if there is any operation containing " a " in its name. Cannot find a definition or applicable library operation named a with argument type(s) PositiveInteger Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.