|
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 is the shift operator and is the independent variable, then a difference operator is an element of [], and can be written as = + ... + for rational functions in . Multiplication in this non-commutative ring corresponds to composition of difference operators. If and are both non-zero, then the order of is .
|
•
|
The optional argument K has the same role as in factor. If omitted, RightFactors assumes that the field of constants is the smallest field for which is in []. In most applications 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 []. This is not equivalent to factoring in [] because operators that are reducible in [] are often irreducible in []. Right factors of order 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 [] (the corresponding left-factors will be in []). 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 , where 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 then there are no right-factors of order d (however, the degree bounds need not be sharp, so if 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 , with R of the form + + ... + for some in []. This R will be a right-factor of L if and only if one substitutes values for , ..., that satisfy the equations . 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 ).
|
•
|
If the second argument is Heuristic, then a heuristic algorithm will be used. It can be much faster when is large, but it need not find every factor.
|
•
|
If the second argument is LCLM, then the output will be a finite set = {,,...}, such that , and every element of is not an LCLM of lower order operators. If is an element of the output , then need not be irreducible, but it will have only one irreducible left-factor (that is equivalent to not being an LCLM of lower order operators). Every solution of can be written as a sum of solutions of , , ... . (see SumDecompose).
|
|
|
Examples
|
|
>
|
|
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:
| (3) |
>
|
|
| (4) |
Here the input contains a parameter c, so the field of constants is Q(c) in this example.
| (5) |
>
|
|
| (6) |
| (7) |
>
|
|
| (8) |
>
|
|
>
|
|
| (10) |
The DegreeBounds show that there can be no right-factors of orders 1, 2, 3, 7 or 8.
>
|
|
| (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:
>
|
|
| (12) |
>
|
|
| (13) |
>
|
|
| (14) |
>
|
|
>
|
|
| (19) |
This next recurrence is listed at oeis.org/A000179:
>
|
|
| (20) |
| (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.
|
|
|
|