P-recursive equation
In mathematics a P-recursive equation is a linear equation of sequences where the coefficient sequences can be represented as polynomials. P-recursive equations are linear recurrence equations (or linear recurrence relations or linear difference equations) with polynomial coefficients. These equations play an important role in different areas of mathematics, specifically in combinatorics. The sequences which are solutions of these equations are called holonomic, P-recursive or D-finite.

From the late 1980s, the first algorithms were developed to find solutions for these equations. Sergei A. Abramov, Marko Petkovšek and Mark van Hoeij described algorithms to find polynomial, rational, hypergeometric and d'Alembertian solutions.

Definition 
Let  be a field of characteristic zero (for example ),  polynomials for , a sequence and  an unknown sequence. The equationis called a linear recurrence equation with polynomial coefficients (all recurrence equations in this article are of this form). If  and  are both nonzero, then  is called the order of the equation. If  is zero the equation is called homogeneous, otherwise it is called inhomogeneous.

This can also be written as  where  is a linear recurrence operator with polynomial coefficients and  is the shift operator, i.e. .

Closed form solutions 
Let  or equivalently  be a recurrence equation with polynomial coefficients. There exist several algorithms which compute solutions of this equation. These algorithms can compute polynomial, rational, hypergeometric and d'Alembertian solutions. The solution of a homogeneous equation is given by the kernel of the linear recurrence operator: . As a subspace of the space of sequences this kernel has a basis. Let  be a basis of , then the formal sum  for arbitrary constants  is called the general solution of the homogeneous problem . If  is a particular solution of , i.e. , then  is also a solution of the inhomogeneous problem and it is called the general solution of the inhomogeneous problem.

Polynomial solutions 
In the late 1980s Sergei A. Abramov described an algorithm which finds the general polynomial solution of a recurrence equation, i.e. , with a polynomial right-hand side. He (and a few years later Marko Petkovšek) gave a degree bound for polynomial solutions. This way the problem can simply be solved by considering a system of linear equations. 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 ).

The other algorithms for finding more general solutions (e.g. rational or hypergeometric solutions) also rely on algorithms which compute polynomial solutions.

Rational solutions 
In 1989 Sergei A. Abramov showed that a general rational solution, i.e. , with polynomial right-hand side , can be found by using the notion of a universal denominator. A universal denominator is a polynomial  such that the denominator of every rational solution divides . Abramov showed how this universal denominator can be computed by only using the first and the last coefficient polynomial  and . Substituting this universal denominator for the unknown denominator of  all rational solutions can be found by computing all polynomial solutions of a transformed equation.

Hypergeometric solution 
A sequence  is called hypergeometric if the ratio of two consecutive terms is a rational function in , i.e. . This is the case if and only if the sequence is the solution of a first-order recurrence equation with polynomial coefficients. The set of hypergeometric sequences is not a subspace of the space of sequences as it is not closed under addition.

In 1992 Marko Petkovšek gave an algorithm to get the general hypergeometric solution of a recurrence equation where the right-hand side  is the sum of hypergeometric sequences. The algorithm makes use of the Gosper-Petkovšek normal-form of a rational function. With this specific representation it is again sufficient to consider polynomial solutions of a transformed equation.

A different and more efficient approach is due to Mark van Hoeij. Considering the roots of the first and the last coefficient polynomial  and  – called singularities – one can build a solution step by step making use of the fact that every hypergeometric sequence  has a representation of the formfor some  with  for  and . Here  denotes the Gamma function and  the algebraic closure of the field . Then the  have to be singularities of the equation (i.e. roots of  or ). Furthermore one can compute bounds for the exponents . For fixed values  it is possible to make an ansatz which gives candidates for . For a specific  one can again make an ansatz to get the rational function  by Abramov's algorithm. Considering all possibilities one gets the general solution of the recurrence equation.

D'Alembertian solutions 
A sequence  is called d'Alembertian if  for some hypergeometric sequences  and  means that  where  denotes the difference operator, i.e. . This is the case if and only if there are first-order linear recurrence operators  with rational coefficients such that .

1994 Abramov and Petkovšek described an algorithm which computes the general d'Alembertian solution of a recurrence equation. This algorithm computes hypergeometric solutions and reduces the order of the recurrence equation recursively.

Examples

Signed permutation matrices 
The number of signed permutation matrices of size  can be described by the sequence . A signed permutation matrix is a square matrix which has exactly one nonzero entry in every row and in every column. The nonzero entries can be . The sequence is determined by the linear recurrence equation with polynomial coefficientsand the initial values . Applying an algorithm to find hypergeometric solutions one can find the general hypergeometric solutionfor some constant . Also considering the initial values, the sequence  describes the number of signed permutation matrices.

Involutions 
The number of involutions  of a set with  elements is given by the recurrence equationApplying for example Petkovšek's algorithm it is possible to see that there is no polynomial, rational or hypergeometric solution for this recurrence equation.

Applications 
A function  is called hypergeometric if  where  denotes the rational functions in  and . A hypergeometric sum is a finite sum of the form  where  is hypergeometric. Zeilberger's creative telescoping algorithm can transform such a hypergeometric sum into a recurrence equation with polynomial coefficients. This equation can then be solved to get for example a linear combination of hypergeometric solutions which is called a closed form solution of .

References 

Polynomials