#File inDone read EKHAD: print(`This is file outDone, proving Identity (Done) of the paper`): print(`It was obtained by running file inDone`): print(`Proof of the Refined Alternating Sign Matrix Conjecture by`): print(`Doron Zeilberger, available as file refined.tex (or refined.ps)`): print(`from htpp://www.math.temple.edu/~zeilberg`): Fb:=w^(-r-n)*binomial(n+r,n)*binomial(2*n-r,n)*(1+w*X)^r*(1-w^2*X)^(n-r)* (w-1/w)^n: G1:=((1-X^3)/(1-X))^(2*n+1)*rf(k+1,n)*rf(k+2/3,n)*X^(3*k)*(-1)^n/3^(n+1) /n!^3/rf(-n+1/3,2*n+1)*(3*n+1)!: G2:=((1-X^3)/(1-X))^(2*n+1)*rf(k+1,n)*rf(k+4/3,n)*X^(3*k+1)*(-1)^n/3^(n+1) /n!^3/rf(-n+1/3,2*n+1)*(3*n+1)!: print(`The identity (Done) is trivial when n=0`): print(`Let's first prove it when n=1`): print(`The difference of the left and right sides of (Done) when n=1`): print(`is:`): G11:=subs(n=1,G1): G11:=simplify(G11): sumG1:=sum(G11,k=0..infinity): G21:=subs(n=1,G2): G21:=simplify(G21): sumG2:=sum(G21,k=0..infinity): F1:=subs(n=1,Fb): sumF1:=sum(F1,r=0..1): sumF1:=subs(w=exp(Pi*I/3),sumF1): sumF1:=expand(evalc(expand(sumF1))): print(normal(sumF1-sumG1+sumG2)): print(`This completes the proof when n=0,1`): print(`Now let Shalosh find recurrences`): print(`The summand of the right side of (Done) is`): print(Fb): ope1:=zeil(Fb,r,n)[1]: print(`Using the program zeil we get the following operator, where w`): print(`is arbitrary`): print(ope1): print(`The proof, using zeilpap(F,r,n) will be reproduced below`): print(`Substituting w=exp(Pi*I/3), we get the operator`): ope1:=subs(w=exp(Pi*I/3),ope1): ope1:=evalc(ope1): ope1:=expand(ope1): ope1:=evalc(ope1): ope1:=expand(ope1): ku:=coeff(ope1,N,0): ku1:=normal(coeff(ope1,N,1)/ku): ku2:=normal(coeff(ope1,N,2)/ku): ope1:=1+factor(ku1)*N+factor(ku2)*N^2: print(ope1): print(`The summand of the first sum on the left is`): print(G1): print(`Using zeil(G1,k,n) we get the following operator annihilating`): print(`the first sum on the left`): ope2:=zeil(G1,k,n)[1]: ku:=coeff(ope2,N,0): ku1:=normal(coeff(ope2,N,1)/ku): ku2:=normal(coeff(ope2,N,2)/ku): ope2:=1+factor(ku1)*N+factor(ku2)*N^2: print(ope2): print(`The verbose proof will follow soon`): print(`The summand of the second sum on the left is`): print(G2): print(`Using zeil(G2,k,n) we get the following operator annihilating`): print(`the second sum`): zeil(G2,k,n): ope3:="[1]: ku:=coeff(ope3,N,0): ku1:=normal(coeff(ope3,N,1)/ku): ku2:=normal(coeff(ope3,N,2)/ku): ope3:=1+factor(ku1)*N+factor(ku2)*N^2: print(ope3): print(`To sum up, the three operators are`): print(ope1): print(ope2): print(ope3): print(`While the outputs of zeil is completely proved, here are the`): print(`the verbose proofs`): zeilpap(Fb,r,n,`Right of (Done)`,`Paper refined.tex Doron Z.'s collection`): zeilpap(G1,k,n,`Left1 of (Done)`,`Paper refined.tex Doron Z.'s collection`): zeilpap(G2,k,n,`Left2 of (Done)`,`Paper refined.tex Doron Z.'s collection`): print(`The whole thing took`,time(),`seconds of CPU time`): quit: