# Holonomic function

(Redirected from Holonomic sequence)

In mathematics, and more specifically in analysis, a holonomic function is a smooth function in several variables that is a solution of a system of linear homogeneous differential equations with polynomial coefficients and satisfies a suitable dimension condition in terms of D-modules theory. More precisely, a holonomic function is an element of a holonomic module of smooth functions. Holonomic functions can also be described as differentiably finite functions, also known as D-finite functions. When a power series in the variables is the Taylor expansion of a holonomic function, the sequence of its coefficients, in one or several indices, is also called holonomic. Holonomic sequences are also called P-recursive sequences: they are defined recursively by multivariate recurrences satisfied by the whole sequence and by suitable specializations of it. The situation simplifies in the univariate case: any univariate sequence that satisfies a linear homogeneous recurrence relation with polynomial coefficients, or equivalently a linear homogeneous difference equation with polynomial coefficients, is holonomic.[1]

## Holonomic functions and sequences in one variable

### Definitions

Let ${\displaystyle \mathbb {K} }$  be a field of characteristic 0 (for example, ${\displaystyle \mathbb {K} =\mathbb {Q} }$  or ${\displaystyle \mathbb {K} =\mathbb {C} }$ ).

A function ${\displaystyle f=f(x)}$  is called D-finite (or holonomic) if there exist polynomials ${\displaystyle 0\neq a_{r}(x),a_{r-1}(x),\ldots ,a_{0}(x)\in \mathbb {K} [x]}$  such that

${\displaystyle a_{r}(x)f^{(r)}(x)+a_{r-1}(x)f^{(r-1)}(x)+\cdots +a_{1}(x)f'(x)+a_{0}(x)f(x)=0}$

holds for all x. This can also be written as ${\displaystyle Af=0}$  where

${\displaystyle A=\sum _{k=0}^{r}a_{k}D_{x}^{k}}$

and ${\displaystyle D_{x}}$  is the differential operator that maps ${\displaystyle f(x)}$  to ${\displaystyle f'(x)}$ . ${\displaystyle A}$  is called an annihilating operator of f (the annihilating operators of ${\displaystyle f}$  form an ideal in the ring ${\displaystyle \mathbb {K} [x][D_{x}]}$ , called the annihilator of ${\displaystyle f}$ ). The quantity r is called the order of the annihilating operator. By extension, the holonomic function f is said to be of order r when an annihilating operator of such order exists.

A sequence ${\displaystyle c=c_{0},c_{1},\ldots }$  is called P-recursive (or holonomic) if there exist polynomials ${\displaystyle a_{r}(n),a_{r-1}(n),\ldots ,a_{0}(n)\in \mathbb {K} [n]}$  such that

${\displaystyle a_{r}(n)c_{n+r}+a_{r-1}(n)c_{n+r-1}+\cdots +a_{0}(n)c_{n}=0}$

holds for all n. This can also be written as ${\displaystyle Ac=0}$  where

${\displaystyle A=\sum _{k=0}^{r}a_{k}S_{n}}$

and ${\displaystyle S_{n}}$  the shift operator that maps ${\displaystyle c_{0},c_{1},\ldots }$  to ${\displaystyle c_{1},c_{2},\ldots }$ . ${\displaystyle A}$  is called an annihilating operator of c (the annihilating operators of ${\displaystyle c}$  form an ideal in the ring ${\displaystyle \mathbb {K} [n][S_{n}]}$ , called the annihilator of ${\displaystyle c}$ ). The quantity r is called the order of the annihilating operator. By extension, the holonomic sequence c is said to be of order r when an annihilating operator of such order exists.

Holonomic functions are precisely the generating functions of holonomic sequences: if ${\displaystyle f(x)}$  is holonomic, then the coefficients ${\displaystyle c_{n}}$  in the power series expansion

${\displaystyle f(x)=\sum _{n=0}^{\infty }c_{n}x^{n}}$

form a holonomic sequence. Conversely, for a given holonomic sequence ${\displaystyle c_{n}}$ , the function defined by the above sum is holonomic (this is true in the sense of formal power series, even if the sum has a zero radius of convergence).

### Closure properties

Holonomic functions (or sequences) satisfy several closure properties. In particular, holonomic functions (or sequences) form a ring. They are not closed under division, however, and therefore do not form a field.

If ${\displaystyle f(x)=\sum _{n=0}^{\infty }f_{n}x^{n}}$  and ${\displaystyle g(x)=\sum _{n=0}^{\infty }g_{n}x^{n}}$  are holonomic functions, then the following functions are also holonomic:

• ${\displaystyle h(x)=\alpha f(x)+\beta g(x)}$ , where ${\displaystyle \alpha }$  and ${\displaystyle \beta }$  are constants
• ${\displaystyle h(x)=f(x)g(x)}$  (the Cauchy product of the sequences)
• ${\displaystyle h(x)=\sum _{n=0}^{\infty }f_{n}g_{n}x^{n}}$  (the Hadamard product of the sequences)
• ${\displaystyle h(x)=\int _{0}^{x}f(t)dt}$
• ${\displaystyle h(x)=\sum _{n=0}^{\infty }(\sum _{k=0}^{n}f_{k})x^{n}}$
• ${\displaystyle h(x)=f(a(x))}$ , where ${\displaystyle a(x)}$  is any algebraic function. However, ${\displaystyle a(f(x))}$  is generally not holonomic.

A crucial property of holonomic functions is that the closure properties are effective: given annihilating operators for ${\displaystyle f}$  and ${\displaystyle g}$ , an annihilating operator for ${\displaystyle h}$  as defined using any of the above operations can be computed explicitly.

### Examples of holonomic functions and sequences

Examples of holonomic functions include:

• all algebraic functions
• some transcendental functions such as ${\displaystyle \sin(x)}$ , ${\displaystyle \cos(x)}$ , ${\displaystyle e^{x}}$ , and ${\displaystyle \log(x)}$ [2]
• the generalized hypergeometric function ${\displaystyle {}_{p}F_{q}(a_{1},\ldots ,a_{p},b_{1},\ldots ,b_{q},x)}$ , considered as a function of ${\displaystyle x}$  with all the parameters ${\displaystyle a_{i}}$ , ${\displaystyle b_{i}}$  held fixed
• the error function ${\displaystyle \operatorname {erf} (x)}$
• the Bessel functions ${\displaystyle J_{n}(x)}$ , ${\displaystyle Y_{n}(x)}$ , ${\displaystyle I_{n}(x)}$ , ${\displaystyle K_{n}(x)}$
• the Airy functions ${\displaystyle \operatorname {Ai} (x)}$ , ${\displaystyle \operatorname {Bi} (x)}$
• all classical orthogonal polynomials, including the Legendre polynomials ${\displaystyle P_{n}(x)}$  and the Chebyshev polynomials ${\displaystyle T_{n}(x)}$  and ${\displaystyle U_{n}(x)}$ .

The class of holonomic functions is a strict superset of the class of hypergeometric functions. Examples of special functions that are holonomic but not hypergeometric include the Heun functions.

Examples of holonomic sequences include:

• the sequence of Fibonacci numbers ${\displaystyle F_{n}}$ , and more generally, all constant-recursive sequences
• the sequence of factorials ${\displaystyle n!}$
• the sequence of binomial coefficients ${\displaystyle {n \choose k}}$  (as functions of either n or k)
• the sequence of harmonic numbers ${\displaystyle H_{n}=\sum _{k=1}^{n}{\frac {1}{k}}}$ , and more generally ${\displaystyle H_{n,m}=\sum _{k=1}^{n}{\frac {1}{k^{m}}}}$  for any integer m
• the sequence of Catalan numbers
• the sequence of Motzkin numbers.
• the sequence of derangements.

Hypergeometric functions, Bessel functions, and classical orthogonal polynomials, in addition to being holonomic functions of their variable, are also holonomic sequences with respect to their parameters. For example, the Bessel functions ${\displaystyle J_{n}}$  and ${\displaystyle Y_{n}}$  satisfy the second-order linear recurrence ${\displaystyle x(f_{n+1}+f_{n-1})=2nf_{n}}$ .

### Examples of nonholonomic functions and sequences

Examples of nonholonomic functions include:

• the function ${\displaystyle {\frac {x}{e^{x}-1}}}$ [3]
• the function tan(x) + sec(x)[4]
• the quotient of two holonomic functions is generally not holonomic.

Examples of nonholonomic sequences include:

## Algorithms and software

Holonomic functions are a powerful tool in computer algebra. A holonomic function or sequence can be represented by a finite amount of data, namely an annihilating operator and a finite set of initial values, and the closure properties allow carrying out operations such as equality testing, summation and integration in an algorithmic fashion. In recent years, these techniques have allowed giving automated proofs of a large number of special function and combinatorial identities.

Moreover, there exist fast algorithms for evaluating holonomic functions to arbitrary precision at any point in the complex plane, and for numerically computing any entry in a holonomic sequence.

Software for working with holonomic functions includes:

• The HolonomicFunctions [1] package for Mathematica, developed by Christoph Koutschan, which supports computing closure properties and proving identities for univariate and multivariate holonomic functions
• The algolib [2] library for Maple, which includes the following packages:
• gfun, developed by Bruno Salvy, Paul Zimmermann and Eithne Murray, for univariate closure properties and proving [3]
• mgfun, developed by Frédéric Chyzak, for multivariate closure properties and proving [4]
• numgfun, developed by Marc Mezzarobba, for numerical evaluation

Dynamic Dictionary of Mathematical functions, A online software, based on holonomic functions for automatically studying many classical and special functions (evaluation at a point, Taylor series and asymptotic expansion to any user-given precision, differential equation, recurrence for the coefficients of the Taylor series, derivative, indefinite integral, plotting, ...)

## Notes

1. ^
2. ^ See Mallinger 1996, p. 3.
3. ^ This follows from the fact that the function ${\displaystyle {\frac {x}{e^{x}-1}}}$  has infinitely many (complex) singularities, whereas functions that satisfy a linear differential equation with polynomial coefficients necessarily have only finitely many singular points.
4. ^ This follows from the fact that the function tan(x) + sec(x) is a nonholonomic function. See Flajolet, Gerhold & Salvy 2005.
5. ^ See Klazar 2003.

## References

• Flajolet, Philippe; Gerhold, Stefan; Salvy, Bruno (2005), "On the non-holonomic character of logarithms, powers, and the n-th prime function", Electronic Journal of Combinatorics, 11 (2).
• Flajolet, Philippe; Sedgewick, Robert (2009). Analytic Combinatorics. Cambridge University Press. ISBN 978-0521898065.
• Kauers, Manuel; Paule, Peter (2011). The Concrete Tetrahedron: Symbolic Sums, Recurrence Equations, Generating Functions, Asymptotic Estimates. Text and Monographs in Symbolic Computation. Springer. ISBN 978-3-7091-0444-6.
• Stanley, Richard P. (1999). Enumerative Combinatorics. 2. Cambridge University Press. ISBN 978-0-521-56069-6.