LREtools
RightFactors
factor linear difference operators
Calling Sequence
Parameters
Description
Examples
References
Compatibility
RightFactors(L, d, K)
L
-
linear difference operator, or a recurrence relation
d
a positive integer, DegreeBounds, Heuristic, or LCLM
K
(optional) a set with field extensions
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 C⁡x[E], and can be written as L = an⁡x⁢En + ... + a0⁡x for rational functions ai⁡x in C⁡x. Multiplication in this non-commutative ring corresponds to composition of difference operators. If a0⁡x and an⁡x 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 C⁡x[τ]. 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 C⁡x[E]. This is not equivalent to factoring in C[x,E] because operators that are reducible in C⁡x[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 C⁡x[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 + _Z1⁢R1 + ... + _Zm⁢Rm 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 n−1d−1 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=LCLM⁡L1,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).
with⁡LREtools:
_Env_LRE_tau≔E;_Env_LRE_x≔x
_Env_LRE_tau≔E
_Env_LRE_x≔x
L≔E3−3⁢E2+3⁢E−1
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:
RightFactors⁡L,1
E−1,x+_Z1⁢E−x−_Z1−1,a family of dimension,1,with equations,∅,x2+_Z2⁢x+_Z1⁢E−x2−_Z2⁢x−2⁢x−_Z1−_Z2−1,a family of dimension,2,with equations,∅
L≔E4−2⁢x2+c+3⁢x+3⁢E2+x2+c⁢x+12+c
Here the input contains a parameter c, so the field of constants is Q(c) in this example.
RightFactors⁡L,2
E2−E−x2−c,E2+E−x2−c,x+_Z1⁢E2+_Z2⁢E−x2+c⁢x+_Z1+1,a family of dimension,1,with equations,_Z12−_Z22+c
L≔x+1⁢x+2⁢E4−2⁢x⁢x2+3⁢x+146⁢E2+x−2⁢x⁢x+1⁢x+2
x−1⁢2⁢x−1⁢x6−3⁢x5+37⁢x4−69⁢x3+277⁢x2−243⁢x+315⁢x⁢E2−x−2⁢2⁢x+3⁢x+2⁢x+1⁢x6+9⁢x5+67⁢x4+267⁢x3+751⁢x2+1173⁢x+945
L≔LCLM⁡E4−E⁢x+1,E5+E3−x
L≔x6+10⁢x5+32⁢x4+24⁢x3−47⁢x2−66⁢x−31⁢E9+−6⁢x4−41⁢x3−101⁢x2−104⁢x−9⁢E8+x6+10⁢x5+27⁢x4−17⁢x3−136⁢x2−142⁢x−92⁢E7+−x7−15⁢x6−82⁢x5−196⁢x4−178⁢x3−2⁢x2+92⁢x+134⁢E6+x6+16⁢x5+92⁢x4+231⁢x3+243⁢x2+20⁢x−138⁢E5+−2⁢x7−29⁢x6−154⁢x5−342⁢x4−186⁢x3+353⁢x2+491⁢x+267⁢E4+x6+22⁢x5+156⁢x4+496⁢x3+739⁢x2+417⁢x−50⁢E3+5⁢x5+51⁢x4+171⁢x3+254⁢x2+213⁢x+122⁢E2+x8+16⁢x7+97⁢x6+272⁢x5+327⁢x4+38⁢x3−295⁢x2−339⁢x−143⁢E−x7−16⁢x6−97⁢x5−272⁢x4−332⁢x3−96⁢x2+77⁢x
RightFactors⁡L,Heuristic
E5+E3−x
RightFactors⁡L,DegreeBounds
−∞,−∞,−∞,1,1,2,−∞,−∞,8
The DegreeBounds show that there can be no right-factors of orders 1, 2, 3, 7 or 8.
RightFactors⁡L,LCLM
E4−x⁢E+1,E5+E3−x
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:
seq⁡RightFactors⁡L,d,d=1..degree⁡L,E−1
∅,∅,∅,E4−x⁢E+1,E5+E3−x,∅,∅,∅
L≔MultiplyOperators⁡L,E−x
L≔x6+10⁢x5+32⁢x4+24⁢x3−47⁢x2−66⁢x−31⁢E10+−x7−19⁢x6−122⁢x5−318⁢x4−210⁢x3+388⁢x2+521⁢x+270⁢E9+x6+16⁢x5+116⁢x4+412⁢x3+776⁢x2+699⁢x−20⁢E8+−2⁢x7−32⁢x6−179⁢x5−368⁢x4+77⁢x3+1092⁢x2+1178⁢x+778⁢E7+x8+21⁢x7+173⁢x6+704⁢x5+1446⁢x4+1301⁢x3+163⁢x2−666⁢x−942⁢E6+−3⁢x7−50⁢x6−326⁢x5−1033⁢x4−1584⁢x3−882⁢x2+529⁢x+957⁢E5+2⁢x8+37⁢x7+271⁢x6+980⁢x5+1710⁢x4+887⁢x3−1164⁢x2−1814⁢x−1118⁢E4+−x7−25⁢x6−217⁢x5−913⁢x4−2056⁢x3−2380⁢x2−988⁢x+272⁢E3+x8+16⁢x7+92⁢x6+211⁢x5+54⁢x4−558⁢x3−1016⁢x2−887⁢x−387⁢E2+−x9−17⁢x8−114⁢x7−385⁢x6−696⁢x5−637⁢x4−75⁢x3+538⁢x2+559⁢x+143⁢E+x2⁢x6+16⁢x5+97⁢x4+272⁢x3+332⁢x2+96⁢x−77
S≔RightFactors⁡L,LCLM
S≔E5+−x−4⁢E4−x⁢E2+x2+x+1⁢E−x,E6+−x−5⁢E5+E4+−x−3⁢E3−x⁢E+x2
add⁡degree⁡i,E,i=S
11
degree⁡L,E
10
L≔E4+1
∅
RightFactors⁡L,2,sqrt⁡2
E2−2⁢E+1,E2+2⁢E+1
This next recurrence is listed at oeis.org/A000179:
R≔u⁡n+n⁢u⁡n+1−2⁢u⁡n+2−n+4⁢u⁡n+3+u⁡n+4=0
RightFactors⁡R,2
n⁢u⁡n+2−n⁢n+2⁢u⁡n+1+−n−2⁢u⁡n=0
Any solution of this right-factor is also a solution of R, which helps to find closed form solutions of R.
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).
The LREtools[RightFactors] command was introduced in Maple 2021.
For more information on Maple 2021 changes, see Updates in Maple 2021.
See Also
LREtools[GeneralizedExponents]
LREtools[MinimalRecurrence]
LREtools[MultiplyOperators]
LREtools[SumDecompose]
Download Help Document