The Input commands of pages 169-171.

The version number of Mathematica used to evaluate this notebook:

$VersionNumber

The use of MATHEMATICA as a check for the MAIN THEOREM of page 8.

To verify the MATHEMATICA program presented in Section 16.3 on pages 
169-171 of my manuscript ChalkleyOct03, the Input lines typed there (as a Tex file) 
were copied and pasted into a new MATHEMATICA notebook that became this one.  
This gave two big cells.  Marking the top command to be separated and clicking on 
Cell - Cell Divide,  the commands were separated one-at-a-time into separate cells.   
Each evaluated correctly - immediately - except for three short commands where a 
backspace followed by a forward space before an equal sign removed  something 
invisible and caused them to evaluate also.

In the transition from the manuscript of  .dvi file  ChalkleyJune03  to the 
manuscript for .dvi file  ChalkleyOct03 (and the later .dvi files), the same factor was removed from the old  Inv[l,n]  as well as the old  J[l,n]  and placed in the expressions for the old  M[l,n,h,i] and the old W[l,n,h,i] so that the procedure of Section 16.3 is the 
special case of that now in the new Chapter 24 --for the equations  H_{m,n} = 0 
having n = 2.

p  =  7;    Date[]

TrueQ[ $VersionNumber >= 3.0]

a[2][z_]:=b[2][z]-D[b[1][z], z]/2-(b[1][z])^2/4

w[0, 0][z_]=1;

w[0, 1][z_]=Binomial[m, 2]*b[1][z];

w[0, 2][z_]=( Binomial[m + 1, 3]*a[2][z]+((m - 1)/2)*D[w[0, 1][z], z]+((m - 1)/(2  m))*(w[0, 1][z])^2 );

w[j_,i_][z_]:=w[i, j][z] /; j > i

Do[SumOfPowers[n,j_]=Sum[k^n,{k, j + 1, m}],{n,  0,  2*p + 1}]

K[-1,j_]=0;

K[0,j_]=1;

summandK[i_,j_]:=Expand[ 
          D[K[i, j], z] - ((m - 1)*b[1][z]*K[i, j])/
              2 + (m - i - j + 1)*(1 - i - j)*a[2][z]*
              K[i - 1, j]]

Do[ K[i,j_]=Module[{t, k},t = Expand[summandK[i - 1, k]];Sum[Coefficient[t, k, n]*SumOfPowers[n, j],{n, 0, 2*i - 1}]],{i, 1, p}]

L[i_,j_]:=Sum[K[i - p, p]*K[j - q, q]*w[p, q][z],{p, 0, i},{q, 0, j}]

M[l_,n_,h_,i_]:=Binomial[m - h, l - h]*(Product[(l - r),{r, 1, l - h}])*Binomial[m - i + h, n - i + h]*(Product[(n - s),{s, 1, n - i + h}])*L[h, i - h]

U[-1,j_]=0;

U[0,j_]=1;

summandForU[i_,j_]:=Expand[
          D[U[i, j], z] + (i + j - m)*b[1][z]*
              U[i, j] + (m - i - j + 1)*(1 - i - j)*b[2][z]*
              U[i - 1, j]]

Do[U[i,j_]=Module[{u, r},
u = Expand[summandForU[i - 1, r]];Sum[Coefficient[u, r, n]*SumOfPowers[n, j],{n, 0, 2*i - 1}]],{i, 1, p}]

V[i_,j_]:=Sum[U[i - p, p]*U[j - q, q]*w[p, q][z],{p, 0, i},{q, 0, j}]

W[l_,n_,h_,i_]:=Binomial[m - h, l - h]*(Product[(l - r),{r, 1, l - h}])*Binomial[m - i + h, n - i + h]*
(Product[(n - s),{s, 1, n - i + h}])*V[h, i - h]

A[l_,n_,i_]:=-1/(l + n + i - 1)

B[l_,n_,i_]:=(l + n - i)/(l + n + i - 2)

difference[l_,n_]:=Module[{t, u},Do[t[h, 0] = 0,{h, 0, l}];Do[ t[h, 1] = 0,{h, 0, l}];Do[t[h, i] = 
                    M[l, n, h, i] + A[l, n, i - 1]*D[t[h, i - 1], z] + 
                      B[l, n, i - 1]*a[2][z]*t[h, i - 2],{i, 2, l + n},{h, 0, l}];Inv[l, n]=Sum[t[h, l + n],{h, 0, l}];Do[u[h, 0] = 0,{h, 0, l}];Do[u[h, 1] = 0,{h, 0, l}];Do[u[h, i] = 
                    W[l, n, h, i] + 
                      A[l, n, 
                          i - 1]*(D[u[h, i - 1], 
                              z] + (i - 1)*b[1][z]*u[h, i - 1]) + 
                      B[l, n, i - 1]*b[2][z]*u[h, i - 2],{i, 2, l + n},{h, 0, l} ];J[l, n]=Sum[ u[h, l + n],{h, 0, l}];Print["The number of terms in Inv[",  
                l,  ", ",  n,  "] is ", 
                Length[Expand[Inv[l, n]]]];Print["The number of terms in J[", l, ", ", 
                n, "] is ", Length[Expand[J[l, n]]]];Print["The memory currently used (in bytes) is ", 
                MemoryInUse[]];\(Print["Inv[", l, ", ", n, "] - J[", 
                l, ", ", n, "] = ", 
Expand[Inv[l, n] - J[l, n]]]\);Print["The maximum memory used (in bytes) is ", 
                MaxMemoryUsed[]];Print[Date[]];Print["     "];Clear[t, u, Inv, J]]

Do[difference[0, n], {n, 3, p}]

Do[ difference[l, n], {l, 1, p}, {n, l, p - l} ]