|
Calling Sequence
|
|
Zeilberger(T, n, k, En)
Zeilberger(T, n, k, En, 'gosper')
ZeilbergerRecurrence(T, n, k, f, l..u)
Verify(T, 'Zpair', n, k, En)
|
|
Parameters
|
|
T
|
-
|
hypergeometric term of n and k
|
n
|
-
|
name
|
k
|
-
|
name
|
En
|
-
|
name; denote the shift operator with respect to n
|
f
|
-
|
name of the recurrence function
|
l..u
|
-
|
range for k
|
'Zpair'
|
-
|
list of two elements specifying a Z-pair for T
|
|
|
|
|
Description
|
|
•
|
For a specified hypergeometric term of n and k, the Zeilberger(T, n, k, En) command constructs for a Z-pair that consists of a linear difference operator with coefficients that are polynomials of n over the complex number field
|
|
and a function such that
|
•
|
En is the shift operator with respect to n, defined by .
|
•
|
The algorithm uses an item-by-item examination of the order v of L. It starts with the value of 0 for v and increases v until it is successful in finding a Z-pair provided that such a pair exists. Note that a maximum value of the order of the difference operator L in the Z-pair must be specified. This can be controlled by assigning a value to the global variable _MAXORDER (the default value of _MAXORDER is ). Additionally, by assigning values to the global variables _MINORDER and _MAXORDER, the algorithm is restricted to finding a Z-pair for such that the order of L is between _MINORDER and _MAXORDER.
|
•
|
The algorithm has two implementations. The default implementation is based on the universal denominators, and another one uses a variant of Gosper's algorithm. With the 'gosper' option, Gosper-based implementation is used.
|
•
|
The output from the Zeilberger command is a list of two elements representing the computed Z-pair .
|
•
|
The ZeilbergerRecurrence(T, n, k, f, l..u) command constructs the Zeilberger's recurrence. The function first computes the Z-pair for T and sums both sides of the relation over k in the specified range . This yields in general an inhomogeneous recurrence equation.
|
•
|
The possible ranges of include , , , and -infinity..infinity where r, s, u, and v are integers.
|
•
|
The Verify(T, 'Zpair', n, k, En) command verifies the correctness of the result ('Zpair') returned from Zeilberger, that is, it tries to verify that:
|
|
|
Examples
|
|
>
|
|
>
|
|
| (1) |
>
|
|
| (3) |
>
|
|
Maple returns an error if no Z-pair is found in the specified order range (by default ).
>
|
|
Try Zeilberger's algorithm with order of L restricted to the range from to .
>
|
|
>
|
|
| (6) |
>
|
|
>
|
|
>
|
|
|
|
References
|
|
|
Petkovsek, M.; Wilf, H.; and Zeilberger, D. A=B. Wellesley, Massachusetts: A K Peters, Ltd., 1996.
|
|
Zeilberger, D. "The Method of Creative Telescoping." Journal of Symbolic Computing. Vol. 11. (1991): 195-204.
|
|
|
|