\\ orthogonal modular forms of level 79 * 5^2 N = 79 * 5^2; Q = [2,1,0,0,0; 1,2,0,0,5; 0,0,2,0,5; 0,0,0,4,5; 0,5,5,5,200]; print("Q(x0, x1, x2, x3, x4)", " = ", qfeval(Q,[x0,x1,x2,x3,x4])/2); \r omf.gp print(); print1("Computing V ... "); gettime(); t=getwalltime(); omf = omf_init(Q); printf("Time: CPU %.2f s, Wall: %.2f s\n", gettime()/1000., (getwalltime()-t)/1000.); print1("Computing T₂ ... "); gettime(); t=getwalltime(); T2 = omf_tp1(omf, 2); printf("Time: CPU %.2f s, Wall: %.2f s\n", gettime()/1000., (getwalltime()-t)/1000.); \\ ambient space V = matker(0*T2); \\ F_79 print1("Computing V₁ = ker(T₂+5) ... "); gettime(); t=getwalltime(); V1 = matker(T2+5); printf("Time: CPU %.2f s, Wall: %.2f s\n", gettime()/1000., (getwalltime()-t)/1000.); \\ JR(h_79) print1("Computing V₂ = ker(T₂) ... "); gettime(); t=getwalltime(); V2 = matker(T2); printf("Time: CPU %.2f s, Wall: %.2f s\n", gettime()/1000., (getwalltime()-t)/1000.); \\ the intersection mod 5 V1mod5 = V1*Mod(1,5); V2mod5 = V2*Mod(1,5); V12mod5 = matintersect(V1mod5, V2mod5); print(); print("Lemma 2.1."); print(" (1) The dimension of V is ", #V); print(" (2) The dimension of V₁ is ", #V1); print(" (3) The dimension of V₂ is ", #V2); print(" (4) The dimension of V₁⊗𝔽₅ ∩ V₂⊗𝔽₅ is ", #V12mod5); print();