Section9.88

]>
Book Contents Previous Section 9.87 WuWenTsunTriangularSet Next Section 9.89 XPolynomial Book Index

## 9.88 XPBWPolynomial

Initialisations

a:Symbol := 'a

a

Type: Symbol
b:Symbol := 'b

b

Type: Symbol
RN := Fraction(Integer)

FractionInteger

Type: Domain
word := OrderedFreeMonoid Symbol

OrderedFreeMonoidSymbol

Type: Domain
lword := LyndonWord(Symbol)

LyndonWordSymbol

Type: Domain
base := PoincareBirkhoffWittLyndonBasis Symbol

PoincareBirkhoffWittLyndonBasisSymbol

Type: Domain
dpoly := XDistributedPolynomial(Symbol, RN)

XDistributedPolynomial(Symbol,FractionInteger)

Type: Domain
rpoly := XRecursivePolynomial(Symbol, RN)

XRecursivePolynomial(Symbol,FractionInteger)

Type: Domain
lpoly := LiePolynomial(Symbol, RN)

LiePolynomial(Symbol,FractionInteger)

Type: Domain
poly := XPBWPolynomial(Symbol, RN)

XPBWPolynomial(Symbol,FractionInteger)

Type: Domain
liste : List lword := LyndonWordsList([a,b], 6)

[[a],[b],[a b],[a 2 b],[a b 2],[a 3 b],[a 2 b 2],[a b 3],[a 4 b],[a 3 b 2],[a 2 b a b],[a 2 b 3],[a b a b 2],[a b 4],[a 5 b],[a 4 b 2],[a 3 b a b],[a 3 b 3],[a 2 b a b 2],[a 2 b 2 a b],[a 2 b 4],[a b a b 3],[a b 5]]

Type: List LyndonWord Symbol

Let's make some polynomials

0$poly

0

Type: XPBWPolynomial(Symbol,Fraction Integer)
1$poly

1

Type: XPBWPolynomial(Symbol,Fraction Integer)
p : poly := a

[a]

Type: XPBWPolynomial(Symbol,Fraction Integer)
q : poly := b

[b]

Type: XPBWPolynomial(Symbol,Fraction Integer)
pq: poly := p*q

[a b]+[b][a]

Type: XPBWPolynomial(Symbol,Fraction Integer)

Coerce to distributed polynomial

pq :: dpoly

a b

Type: XDistributedPolynomial(Symbol,Fraction Integer)

Check some polynomial operations

mirror pq

[b][a]

Type: XPBWPolynomial(Symbol,Fraction Integer)
ListOfTerms pq

[[k=[b][a],c=1],[k=[a b],c=1]]

Type: List Record(k: PoincareBirkhoffWittLyndonBasis Symbol,c: Fraction Integer)
reductum pq

[a b]

Type: XPBWPolynomial(Symbol,Fraction Integer)
leadingMonomial pq

[b][a]

Type: PoincareBirkhoffWittLyndonBasis Symbol
coefficients pq

[1, 1]

Type: List Fraction Integer
leadingTerm pq

[k=[b][a],c=1]

Type: Record(k: PoincareBirkhoffWittLyndonBasis Symbol,c: Fraction Integer)
degree pq

2

Type: PositiveInteger
pq4:=exp(pq,4)

1+[a b]+[b][a]+1 2[a b][a b]+1 2[a b 2][a]+1 2[b][a 2 b]+3 2[b][a b][a]+1 2[b][b][a][a]

Type: XPBWPolynomial(Symbol,Fraction Integer)
log(pq4,4) - pq

0

Type: XPBWPolynomial(Symbol,Fraction Integer)

Calculations with verification in XDistributedPolynomial.

lp1 :lpoly := LiePoly liste.10

[a 3 b 2]

Type: LiePolynomial(Symbol,Fraction Integer)
lp2 :lpoly := LiePoly liste.11

[a 2 b a b]

Type: LiePolynomial(Symbol,Fraction Integer)
lp :lpoly := [lp1, lp2]

[a 3 b 2 a 2 b a b]

Type: LiePolynomial(Symbol,Fraction Integer)
lpd1: dpoly := lp1

a 3 b 2-2 a 2 b a b-a 2 b 2 a+4 a b a b a-a b 2 a 2-2 b a b a 2+b 2 a 3

Type: XDistributedPolynomial(Symbol,Fraction Integer)
lpd2: dpoly := lp2

a 2 b a b-a 2 b 2 a-3 a b a 2 b+4 a b a b a-a b 2 a 2+2 b a 3 b-3 b a 2 b a+b a b a 2

Type: XDistributedPolynomial(Symbol,Fraction Integer)
lpd : dpoly := lpd1 * lpd2 - lpd2 * lpd1

a 3 b 2 a 2 b a b-a 3 b 2 a 2 b 2 a-3 a 3 b 2 a b a 2 b+4 a 3 b 2 a b a b a-a 3 b 2 a b 2 a 2+2 a 3 b 3 a 3 b-3 a 3 b 3 a 2 b a+a 3 b 3 a b a 2-a 2 b a b a 3 b 2+3 a 2 b a b a 2 b 2 a+6 a 2 b a b a b a 2 b-12 a 2 b a b a b a b a+3 a 2 b a b a b 2 a 2-4 a 2 b a b 2 a 3 b+6 a 2 b a b 2 a 2 b a-a 2 b a b 3 a 3+a 2 b 2 a 4 b 2-3 a 2 b 2 a 3 b a b+3 a 2 b 2 a 2 b a 2 b-2 a 2 b 2 a b a 3 b+3 a 2 b 2 a b a 2 b a-3 a 2 b 2 a b a b a 2+a 2 b 2 a b 2 a 3+3 a b a 2 b a 3 b 2-6 a b a 2 b a 2 b a b-3 a b a 2 b a 2 b 2 a+12 a b a 2 b a b a b a-3 a b a 2 b a b 2 a 2-6 a b a 2 b 2 a b a 2+3 a b a 2 b 3 a 3-4 a b a b a 4 b 2+12 a b a b a 3 b a b-12 a b a b a 2 b a 2 b+8 a b a b a b a 3 b-12 a b a b a b a 2 b a+12 a b a b a b a b a 2-4 a b a b a b 2 a 3+a b 2 a 5 b 2-3 a b 2 a 4 b a b+3 a b 2 a 3 b a 2 b-2 a b 2 a 2 b a 3 b+3 a b 2 a 2 b a 2 b a-3 a b 2 a 2 b a b a 2+a b 2 a 2 b 2 a 3-2 b a 3 b a 3 b 2+4 b a 3 b a 2 b a b+2 b a 3 b a 2 b 2 a-8 b a 3 b a b a b a+2 b a 3 b a b 2 a 2+4 b a 3 b 2 a b a 2-2 b a 3 b 3 a 3+3 b a 2 b a 4 b 2-6 b a 2 b a 3 b a b-3 b a 2 b a 3 b 2 a+12 b a 2 b a 2 b a b a-3 b a 2 b a 2 b 2 a 2-6 b a 2 b a b a b a 2+3 b a 2 b a b 2 a 3-b a b a 5 b 2+3 b a b a 4 b 2 a+6 b a b a 3 b a 2 b-12 b a b a 3 b a b a+3 b a b a 3 b 2 a 2-4 b a b a 2 b a 3 b+6 b a b a 2 b a 2 b a-b a b a 2 b 2 a 3+b 2 a 5 b a b-b 2 a 5 b 2 a-3 b 2 a 4 b a 2 b+4 b 2 a 4 b a b a-b 2 a 4 b 2 a 2+2 b 2 a 3 b a 3 b-3 b 2 a 3 b a 2 b a+b 2 a 3 b a b a 2

Type: XDistributedPolynomial(Symbol,Fraction Integer)
lp :: dpoly - lpd

0

Type: XDistributedPolynomial(Symbol,Fraction Integer)

Calculations with verification in XRecursivePolynomial.

p := 3 * lp

3[a 3 b 2 a 2 b a b]

Type: XPBWPolynomial(Symbol,Fraction Integer)
q := lp1

[a 3 b 2]

Type: XPBWPolynomial(Symbol,Fraction Integer)
pq:= p * q

3[a 3 b 2 a 2 b a b][a 3 b 2]

Type: XPBWPolynomial(Symbol,Fraction Integer)
pr:rpoly := p :: rpoly

a(a(a b b(a(a b(a b 3+b a(-3))+b(a(a b(-9)+b a 12)+b a a(-3)))+b a(a(a b 6+b a(-9))+b a a 3))+b(a b(a(a(a b b(-3)+b b a 9)+b(a(a b 18+b a(-36))+b a a 9))+b(a a(a b(-12)+b a 18)+b a a a(-3)))+b a(a(a(a b b 3+b a b(-9))+b a a b 9)+b(a(a(a b(-6)+b a 9)+b a a(-9))+b a a a 3))))+b(a(a b(a(a(a b b 9+b(a b(-18)+b a(-9)))+b(a b a 36+b a a(-9)))+b(a b a a(-18)+b a a a 9))+b a(a(a(a b b(-12)+b a b 36)+b a a b(-36))+b(a(a(a b 24+b a(-36))+b a a 36)+b a a a(-12))))+b a a(a(a(a b b 3+b a b(-9))+b a a b 9)+b(a(a(a b(-6)+b a 9)+b a a(-9))+b a a a 3))))+b(a(a(a b(a(a(a b b(-6)+b(a b 12+b a 6))+b(a b a(-24)+b a a 6))+b(a b a a 12+b a a a(-6)))+b a(a(a(a b b 9+b(a b(-18)+b a(-9)))+b(a b a 36+b a a(-9)))+b(a b a a(-18)+b a a a 9)))+b a a(a(a(a b b(-3)+b b a 9)+b(a(a b 18+b a(-36))+b a a 9))+b(a a(a b(-12)+b a 18)+b a a a(-3))))+b a a a(a(a b(a b 3+b a(-3))+b(a(a b(-9)+b a 12)+b a a(-3)))+b a(a(a b 6+b a(-9))+b a a 3)))

Type: XRecursivePolynomial(Symbol,Fraction Integer)
qr:rpoly := q :: rpoly

a(a(a b b 1+b(a b(-2)+b a(-1)))+b(a b a 4+b a a(-1)))+b(a b a a(-2)+b a a a 1)

Type: XRecursivePolynomial(Symbol,Fraction Integer)
pq :: rpoly - pr*qr

0

Type: XRecursivePolynomial(Symbol,Fraction Integer)
Book Contents Previous Section 9.87 WuWenTsunTriangularSet Next Section 9.89 XPolynomial Book Index