Polynomial solutions of P-recursive equations

In mathematics a P-recursive equation can be solved for polynomial solutions. Sergei A. Abramov in 1989 and Marko Petkovšek in 1992 described an algorithm which finds all polynomial solutions of those recurrence equations with polynomial coefficients.[1][2] The algorithm computes a degree bound for the solution in a first step. In a second step an ansatz for a polynomial of this degree is used and the unknown coefficients are computed by a system of linear equations. This article describes this algorithm.

In 1995 Abramov, Bronstein and Petkovšek showed that the polynomial case can be solved more efficiently by considering power series solution of the recurrence equation in a specific power basis (i.e. not the ordinary basis ).[3]

Other algorithms which compute rational or hypergeometric solutions of a linear recurrence equation with polynomial coefficients also use algorithms which compute polynomial solutions.

Degree bound

edit

Let   be a field of characteristic zero and   a recurrence equation of order   with polynomial coefficients  , polynomial right-hand side   and unknown polynomial sequence  . Furthermore   denotes the degree of a polynomial   (with   for the zero polynomial) and   denotes the leading coefficient of the polynomial. Moreover let for   where   denotes the falling factorial and   the set of nonnegative integers. Then  . This is called a degree bound for the polynomial solution  . This bound was shown by Abramov and Petkovšek.[1][2][3][4]

Algorithm

edit

The algorithm consists of two steps. In a first step the degree bound is computed. In a second step an ansatz with a polynomial   of that degree with arbitrary coefficients in   is made and plugged into the recurrence equation. Then the different powers are compared and a system of linear equations for the coefficients of   is set up and solved. This is called the method undetermined coefficients.[5] The algorithm returns the general polynomial solution of a recurrence equation.

algorithm polynomial_solutions is
    input: Linear recurrence equation  .
    output: The general polynomial solution   if there are any solutions, otherwise false.

    for   do
         
    repeat
     
     
     
     
      with unknown coefficients   for  
    Compare coefficients of polynomials   and   to get possible values for  
    if there are possible values for   then
        return general solution  
    else
        return false
    end if

Example

edit

Applying the formula for the degree bound on the recurrence equation over   yields  . Hence one can use an ansatz with a quadratic polynomial   with  . Plugging this ansatz into the original recurrence equation leads to This is equivalent to the following system of linear equations with the solution  . Therefore the only polynomial solution is  .

References

edit
  1. ^ a b Abramov, Sergei A. (1989). "Problems in computer algebra that are connected with a search for polynomial solutions of linear differential and difference equations". Moscow University Computational Mathematics and Cybernetics. 3.
  2. ^ a b Petkovšek, Marko (1992). "Hypergeometric solutions of linear recurrences with polynomial coefficients". Journal of Symbolic Computation. 14 (2–3): 243–264. doi:10.1016/0747-7171(92)90038-6. ISSN 0747-7171.
  3. ^ a b Abramov, Sergei A.; Bronstein, Manuel; Petkovšek, Marko (1995). "On polynomial solutions of linear operator equations". Proceedings of the 1995 international symposium on Symbolic and algebraic computation - ISSAC '95. ACM. pp. 290–296. CiteSeerX 10.1.1.46.9373. doi:10.1145/220346.220384. ISBN 978-0897916998. S2CID 14963237.
  4. ^ Weixlbaumer, Christian (2001). Solutions of difference equations with polynomial coefficients. Diploma Thesis, Johannes Kepler Universität Linz
  5. ^ Petkovšek, Marko; Wilf, Herbert S.; Zeilberger, Doron (1996). A=B. A K Peters. ISBN 978-1568810638. OCLC 33898705.