9.43 LiePolynomial
Declaration of domains
Type: Domain
Lpoly := LiePolynomial(Symbol,RN)
|
Type: Domain
Dpoly := XDPOLY(Symbol,RN)
|
Type: Domain
Lword := LyndonWord Symbol
Type: Domain
Initialisation
Type: Symbol
Type: Symbol
Type: Symbol
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)
All the Lyndon words of order 4
liste : List Lword := LyndonWordsList([a,b], 4)
|
Type: List LyndonWord Symbol
r: Lpoly := p + q + 3*LiePoly(liste.4)$Lpoly
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)
t:Lpoly := s + 2*LiePoly(liste.3) - 5*LiePoly(liste.5)
|
Type: LiePolynomial(Symbol,Fraction Integer)
Type: PositiveInteger
|
Type: LiePolynomial(Symbol,Fraction Integer)
Jacobi Relation
Jacobi(p: Lpoly, q: Lpoly, r: Lpoly): Lpoly == [ [p,q]$Lpoly, r] + [ [q,r]$Lpoly, p] + [ [r,p]$Lpoly, q]
Function declaration Jacobi : (
LiePolynomial(Symbol, Fraction Integer),
LiePolynomial(Symbol,Fraction Integer),
LiePolynomial(Symbol,Fraction Integer)) ->
LiePolynomial(Symbol,Fraction Integer)
has been added to workspace.
Void
Tests
test: Lpoly := Jacobi(a,b,b)
Type: LiePolynomial(Symbol,Fraction Integer)
test: Lpoly := Jacobi(p,q,r)
Type: LiePolynomial(Symbol,Fraction Integer)
test: Lpoly := Jacobi(r,s,t)
Type: LiePolynomial(Symbol,Fraction Integer)
Evaluation
Type: LiePolynomial(Symbol,Fraction Integer)
eval(p, [a,b], [2*bb, 3*aa])$Lpoly
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)
r1: Lpoly := eval(r, [a,b,c], [bb, cc, aa])$Lpoly
Type: LiePolynomial(Symbol,Fraction Integer)
r2: Lpoly := eval(r, [a,b,c], [cc, aa, bb])$Lpoly
Type: LiePolynomial(Symbol,Fraction Integer)
Type: LiePolynomial(Symbol,Fraction Integer)