1kill(all);
2done$
3(load(zeilberger),done);
4done$
5
6
7/* New regression tests are at end */
8
9/*=================================================================*/
10/* converted from testZeilberger.mac (mvdb) */
11
12
13
14/* ------------------------------ */
15/* Gosper's algorithm's Test File */
16
17/* GOSPER_TEST */
18g1:(-1)^k*k/(4*k^2-1);
19k*(-1)^k/(4*k^2-1)$
20zb_prove(g1,k,n,parGosper(g1,k,n,0));
21true$
22
23g2:1/(4*k^2-1);
241/(4*k^2-1)$
25zb_prove(g2,k,n,parGosper(g2,k,n,0));
26true$
27
28g3:x^k;
29x^k$
30zb_prove(g3,k,n,parGosper(g3,k,n,0));
31true$
32
33g4:(-1)^k*a!/(k!*(a-k)!);
34(-1)^k*a!/(k!*(a-k)!)$
35zb_prove(g4,k,n,parGosper(g4,k,n,0));
36true$
37
38g5:k*k!;
39k*k!$
40zb_prove(g5,k,n,parGosper(g5,k,n,0));
41true$
42
43g6:(k+1)*k!/(k+1)!;
44(k+1)*k!/(k+1)!$
45zb_prove(g6,k,n,parGosper(g6,k,n,0));
46true$
47
48
49/* --------------------------------- */
50/* Zeiberger's Algorithm's Test File */
51
52/* EASY_TEST */
53f1 : binomial(n,k);
54binomial(n,k)$
55zb_prove(f1,k,n,parGosper(f1,k,n,1));
56true$
57
58f2 : binomial(n,k)^2;
59binomial(n,k)^2$
60zb_prove(f2,k,n,parGosper(f2,k,n,1));
61true$
62
63f3 : binomial(n,k)^3;
64binomial(n,k)^3$
65zb_prove(f3,k,n,parGosper(f3,k,n,2));
66true$
67
68f4 : binomial(n,k)^4;
69 binomial(n,k)^4$
70zb_prove(f4,k,n,parGosper(f4,k,n,2));
71true$
72
73/* Binomial theorem */
74h1: binomial(n,k)*x^k;
75 binomial(n,k)*x^k$
76zb_prove(h1,k,n,parGosper(h1,k,n,1));
77true$
78
79/* Vandermonde identity recurrence */
80h2: binomial(a, k)* binomial(b, n-k);
81 binomial(a, k)* binomial(b, n-k);
82zb_prove(h2,k,n,parGosper(h2,k,n,1));
83true$
84
85/*  Fibonacci-Recurrence */
86h8: (-k+n)! / k! / (-2*k+n)!;
87(-k+n)! / k! / (-2*k+n)!$
88zb_prove(h8,k,n,parGosper(h8,k,n,2));
89true$
90
91/* Trinomial coefficients */
92h9: n! / k! / (k+m)! / (-2*k-m+n)!;
93n! / k! / (k+m)! / (-2*k-m+n)!$
94zb_prove(h9,k,n,parGosper(h9,k,n,2));
95true$
96
97/*  First special case of Strehl identity (MEMO, Feb 25, 1992) */
98h10: binomial(n, k)^2 * binomial( 2*k, k);
99binomial(n, k)^2 * binomial( 2*k, k)$
100zb_prove(h10,k,n,parGosper(h10,k,n,2));
101true$
102
103/* Fibonacci recurrence */
104h13: (n+k)! * n! / k!^3 / (n-k)!^2;
105(n+k)! * n! / k!^3 / (n-k)!^2$
106zb_prove(h13,k,n,parGosper(h13,k,n,2));
107true$
108
109/* Debugging artificial examples */
110d1 : (2*n+k-1)!/(4*n+2*k)!;
111(2*n+k-1)!/(4*n+2*k)!$
112zb_prove(d1,k,n,parGosper(d1,k,n,1));
113true$
114
115d2 : (3*n+k-1)!/(6*n+2*k)!;
116(3*n+k-1)!/(6*n+2*k)!$
117zb_prove(d2,k,n,parGosper(d2,k,n,1));
118true$
119
120/* HARD_TEST */
121/* Dixon's identity */
122h3: binomial(n+b, n+k)* binomial(n+c, c+k)*binomial(b+c, b+k)*(-1)^k;
123 binomial(n+b, n+k)* binomial(n+c, c+k)*binomial(b+c, b+k)*(-1)^k$
124zb_prove(h3,k,n,parGosper(h3,k,n,1));
125true$
126
127/* Karlsson-Gosper identity 1 */
128h4: binomial(n,k)*(n-1/4)!/(n-k-1/4)!/(2*n+k + 1/4)!*9^(-k);
129binomial(n,k)*(n-1/4)!/(n-k-1/4)!/(2*n+k + 1/4)!*9^(-k)$
130zb_prove(h4,k,n,parGosper(h4,k,n,1));
131true$
132
133/* Karlsson-Gosper identity 2 */
134h5: binomial(n,k) * (n-1/4)! / (n-k-1/4)! / (2*n+k+5/4)! * 9^(-k);
135binomial(n,k) * (n-1/4)! / (n-k-1/4)! / (2*n+k+5/4)! * 9^(-k)$
136zb_prove(h5,k,n,parGosper(h5,k,n,1));
137true$
138
139/* Laguerre-Orthogonality */
140h7: (k+k2)! * (n1)! * (n2)! / (k)! / (n1-k)! / (k2)! / (n2-k2)! /
141               (k)! / (k2)! * (-1)^k;
142(k+k2)! * (n1)! * (n2)! / (k)! / (n1-k)! / (k2)! / (n2-k2)! /
143               (k)! / (k2)! * (-1)^k$
144zb_prove(h7,k,n1,parGosper(h7,k,n1,1));
145true$
146
147/* Second special case of Strehl identity (MEMO, Feb 25, 1992) */
148h11: binomial(n, k)^2 * binomial( 2*k, k+a);
149binomial(n, k)^2 * binomial( 2*k, k+a)$
150zb_prove(h11,k,n,parGosper(h11,k,n,3));
151true$
152
153/* EXTREME_TEST */
154/* See rtest_zeilberger_extreme.mac */
155
156
157/* End of converted file */
158/* ================================================== */
159
160
161/* test for unary minus, currently failing, fixed by Andrej */
162ratsimp(AntiDifference(-1/(k*(k+1)),k));
1631/k$
164
165/* suggested by Andrej */
166AntiDifference(2^(k^2), k);
167NON_HYPERGEOMETRIC$
168
169AntiDifference(k^k, k);
170NON_HYPERGEOMETRIC$
171
172Zeilberger(binomial(n,i), i, n);
173[[i/(n-i+1), [2, -1]]]$
174zb_prove(binomial(n,i),i,n,%);
175true$
176