[FM's note: I edited part of this mail that was not related to science.] I think that this note will get you moving. First ,some trivia: (1)In your second note you forgot j'= (-E6/E4)*j (OK in first note) (2)In my programs after Phi(F,J)=0,then partial dPhi/partial dF is DF/F; in this way I keep the same index positions of my coefficients for the summation loops. ditto DJ,DFF,DFJ,DJJ. (3) x=exp(2.pi.i.tau),and ' is EXACTLY x.d/dx ,which is almost d/dtau. (4)The"other cusp" uses tau*=-1/(q.tau),which makes F*=q^s/F,j*= j(q.tau),as stated. If you want to do tau%=q.tau,then j% is still j(q.tau),but F% is q^s eta^2s(q^2.tau)/eta^s(q.tau). There are endless variantsof these transformations: one has to fix the eye on what is useful. (recall j is invariant by -1/tau,but F is not). All your technique is essentially correct,modulo the above. The trouble has arisen,i regret to say, in my (non)section 13,entitled "the Modular-Elliptic Interface",which is null in my essay,because it was rather a pain to write out. Here,at least,are the facts put in very algorithmic terms. To get at S1,A*,and B*,as used in the routines CHARLA and later, one must normalize somewhat from the strict modular theory using E6, &c. Thus,ONCE ALL THE MODULAR CALCULATIONS ARE FINISHED AS DESCRIBED in my sec.12,we must put S1= q.(gcd(12,q-1)/2)*E2Q A*=-3.q^4.E4(q) B*=-2.q^6.E6(q) In my programs,these are called E2Q(since I have no more use for the old one),AQ,and BQ,resp. So now,back to your first note(your second had further errors)you got E2Q=35,and using F the other way doesnt affect the theory,so that was right,but then 35*(21=7*6/2)=56 mod 97 as desired. So now here,in detail,is my program for the PHI(F,j)=0 case. (This is generic; for genus zero,or if you like to solve for j* and try all,you can do your way). From A,B, we get j,E4,E6. We solve for F,and take one root.We have also F*,Delta,Delta(q.tau) trivially. E2*=E2Q(Fortran doesnt like *s inside identifiers)= .....E6.DJ/(E4.DF) Now write DF -(E6/(E4.E2*))DJ=0,and call E0=E6/(E4.E2*),a modular FUNCTION After a little pain,we find q^2.E4(q.tau)=E4 +(12.E2*/s)(12E0'/E0 +6E4^2/E6-4E6/E4+12E2*/s), where s=12/gcd(12,q-1) and also DFF.E2* -2.DFJ.E6/E4 +DJJ.E0.E6/E4 -E0'.DJ = 0. Elimination E0' gives us E4(q.tau),now we have j(q.tau) and E6(q.tau). NOW we can use the modular equation PHI(F*,j*)=0 at the other cusp as a check for our unique j* instead of using it to find j*. All this works for any genus(though appallingly slow for q=83,say). (you'd better check this yourself: all the needed formulae in my essay) If you had told me you were going to work seriously at it,I'd have checked this out earlier. Meanwhile I'll decipher the other(and more important)program with j and A,where A(tau)=A(-1/q.tau) . (NOT the "A" in X^3+AX+B!) [...] oa [...]