RightFactors - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


LREtools

  

RightFactors

  

factor linear difference operators

 

Calling Sequence

Parameters

Description

Examples

References

Compatibility

Calling Sequence

RightFactors(L, d, K)

Parameters

L

-

linear difference operator, or a recurrence relation

d

-

a positive integer, DegreeBounds, Heuristic, or LCLM

K

-

(optional) a set with field extensions

Description

• 

For the syntax of difference operators, and their relation to recurrence relations, see LREtools[MultiplyOperators]. The names of the shift operator and independent variable are selected by assigning them to _Env_LRE_tau and _Env_LRE_x.

• 

If E is the shift operator and x is the independent variable, then a difference operator is an element of Cx[E], and can be written as L = anxEn + ... + a0x for rational functions aix in Cx. Multiplication in this non-commutative ring corresponds to composition of difference operators. If a0x and anx are both non-zero, then the order of L is n.

• 

The optional argument K has the same role as in factor. If omitted, RightFactors assumes that the field of constants C is the smallest field for which L is in Cx[τ]. In most applications C is the field of rational numbers. If a set K is specified, then C will be extended with the algebraic expressions in K.

• 

If d is a positive integer, then RightFactors(L, d, K) returns the set of all right-factors of order d of L in Cx[E]. This is not equivalent to factoring in C[x,E] because operators that are reducible in Cx[E] are often irreducible in C[x,E]. Right factors of order d=1 are equivalent to hypergeometric solutions. If R is a right-factor of L, then the corresponding left-factor can then be obtained with RightDivision.

• 

Denominators of right-factors will be cleared so they are written as elements of C[x,E] (the corresponding left-factors will be in Cx[E]). The degree of a right-factor R with respect to x is often higher than the degree of the input L. This makes it non-trivial to find right-factors or to bound their degrees. If the second argument is DegreeBounds then instead of computing right-factors, the command returns a list b1,b2,..., where bd is an upper bound for the degree of any order-d right-factor. Such bounds are needed to obtain a recurrence relation of provably minimal order (see MinimalRecurrence). If bd= then there are no right-factors of order d (however, the degree bounds need not be sharp, so if bd is not , it does not imply that L has a right-factor of order d).

• 

There can be infinitely many right-factors of order d, in which case the output will have members of the form R,a family of dimension,f,with equations,eq, with R of the form R0 + _Z1R1 + ... + _ZmRm for some Ri in C[x,E]. This R will be a right-factor of L if and only if one substitutes values for _Z1, ..., _Zm that satisfy the equations eq. These equations are Plücker relations (they are quadratic equations), and have an f-dimensional solution space. The set eq will be empty if d is 1 or n-1 (in which case f equals the number of variables _Zi).

• 

If the second argument is Heuristic, then a heuristic algorithm will be used. It can be much faster when n1d1 is large, but it need not find every factor.

• 

If the second argument is LCLM, then the output will be a finite set S = {L1,L2,...}, such that L=LCLML1,L2,..., and every element of S is not an LCLM of lower order operators. If Li is an element of the output S, then Li need not be irreducible, but it will have only one irreducible left-factor (that is equivalent to Li not being an LCLM of lower order operators). Every solution of L can be written as a sum of solutions of L1, L2, ... . (see SumDecompose).

Examples

withLREtools:

_Env_LRE_tauE;_Env_LRE_xx

_Env_LRE_tauE

_Env_LRE_xx

(1)

LE33E2+3E1

LE33E2+3E1

(2)

L has a right-factor E - E(u)/(u) for every non-zero solution u = u0+u1x+u2x^2. So the first order right-factors be parametrized by 3 homogeneous parameters (u0:u1:u2), or with 0, 1, and 2 inhomogeneous parameters:

RightFactorsL,1

E1,x+_Z1Ex_Z11,a family of dimension,1,with equations,,x2+_Z2x+_Z1Ex2_Z2x2x_Z1_Z21,a family of dimension,2,with equations,

(3)

LE42x2+c+3x+3E2+x2+cx+12+c

LE42x2+c+3x+3E2+x2+cx+12+c

(4)

Here the input contains a parameter c, so the field of constants is Q(c) in this example.

RightFactorsL,2

E2Ex2c,E2+Ex2c,x+_Z1E2+_Z2Ex2+cx+_Z1+1,a family of dimension,1,with equations,_Z12_Z22+c

(5)

Lx+1x+2E42xx2+3x+146E2+x2xx+1x+2

Lx+1x+2E42xx2+3x+146E2+x2xx+1x+2

(6)

RightFactorsL,2

x12x1x63x5+37x469x3+277x2243x+315xE2x22x+3x+2x+1x6+9x5+67x4+267x3+751x2+1173x+945

(7)

LLCLME4Ex+1,E5+E3x

Lx6+10x5+32x4+24x347x266x31E9+6x441x3101x2104x9E8+x6+10x5+27x417x3136x2142x92E7+x715x682x5196x4178x32x2+92x+134E6+x6+16x5+92x4+231x3+243x2+20x138E5+2x729x6154x5342x4186x3+353x2+491x+267E4+x6+22x5+156x4+496x3+739x2+417x50E3+5x5+51x4+171x3+254x2+213x+122E2+x8+16x7+97x6+272x5+327x4+38x3295x2339x143Ex716x697x5272x4332x396x2+77x

(8)

RightFactorsL,Heuristic

E5+E3x

(9)

RightFactorsL,DegreeBounds

,,,1,1,2,,,8

(10)

The DegreeBounds show that there can be no right-factors of orders 1, 2, 3, 7 or 8.

RightFactorsL,LCLM

E4xE+1,E5+E3x

(11)

The degree-bound for d=4 and d=5 was sharp, but not the degree bound for d=6 since there is no right-factor of that order:

seqRightFactorsL,d,d=1..degreeL,E1

,,,E4xE+1,E5+E3x,,,

(12)

LMultiplyOperatorsL,Ex

Lx6+10x5+32x4+24x347x266x31E10+x719x6122x5318x4210x3+388x2+521x+270E9+x6+16x5+116x4+412x3+776x2+699x20E8+2x732x6179x5368x4+77x3+1092x2+1178x+778E7+x8+21x7+173x6+704x5+1446x4+1301x3+163x2666x942E6+3x750x6326x51033x41584x3882x2+529x+957E5+2x8+37x7+271x6+980x5+1710x4+887x31164x21814x1118E4+x725x6217x5913x42056x32380x2988x+272E3+x8+16x7+92x6+211x5+54x4558x31016x2887x387E2+x917x8114x7385x6696x5637x475x3+538x2+559x+143E+x2x6+16x5+97x4+272x3+332x2+96x77

(13)

SRightFactorsL,LCLM

SE5+x4E4xE2+x2+x+1Ex,E6+x5E5+E4+x3E3xE+x2

(14)

adddegreei,E,i=S

11

(15)

degreeL,E

10

(16)

LE4+1

LE4+1

(17)

RightFactorsL,2

(18)

RightFactorsL,2,sqrt2

E22E+1,E2+2E+1

(19)

This next recurrence is listed at oeis.org/A000179:

Run+nun+12un+2n+4un+3+un+4=0

Run+nun+12un+2n+4un+3+un+4=0

(20)

RightFactorsR,2

nun+2nn+2un+1+n2un=0

(21)

Any solution of this right-factor is also a solution of R, which helps to find closed form solutions of R.

References

  

M. Bronstein. "Factorization and hypergeometric solutions of linear recurrence systems." (Ideas due to Manual Bronstein, presented at the conference in memory of Manuel Bronstein). URL www.math.fsu.edu/~hoeij/slides/bronstein/slides.pdf (2006).

  

M. van Hoeij. "Factoring Linear Recurrence Operators." URL www.math.fsu.edu/~hoeij/2019/slides.pdf

  

Y. Zhou and M. van Hoeij. "Fast Algorithm for Factoring Difference operators", ACM Communications in Computer Algebra. Vol. 53, No. 3 (2019).

Compatibility

• 

The LREtools[RightFactors] command was introduced in Maple 2021.

• 

For more information on Maple 2021 changes, see Updates in Maple 2021.

See Also

LREtools

LREtools[GeneralizedExponents]

LREtools[MinimalRecurrence]

LREtools[MultiplyOperators]

LREtools[SumDecompose]