diff --git a/ModFrmGL2/ModSymA b/ModFrmGL2/ModSymA index 790be2b..eaded47 160000 --- a/ModFrmGL2/ModSymA +++ b/ModFrmGL2/ModSymA @@ -1 +1 @@ -Subproject commit 790be2b843ecb40f15073c2a4a979cabbb69fb87 +Subproject commit eaded473b5a71e3bd79c97ed13fe3c90f8373d5f diff --git a/ModFrmGL2/Tests/AtkinLehner.m b/ModFrmGL2/Tests/AtkinLehner.m index 8870b23..d86460d 100644 --- a/ModFrmGL2/Tests/AtkinLehner.m +++ b/ModFrmGL2/Tests/AtkinLehner.m @@ -14,8 +14,8 @@ procedure Test_AtkinLehner(numchecks : maxN := 15, maxk := 6) end for; end procedure; -procedure Test_IssueKoutsianas() - printf "Testing issue in mail from Koutsianas... "; +procedure Test_Issue30() + printf "Testing issue #30"; gens := [[1,3,12,3],[1,1,12,7],[1,3,0,3],[1,0,2,3]]; N := 16; H_N := sub; @@ -27,4 +27,4 @@ procedure Test_IssueKoutsianas() Test_AtkinLehner(5); -Test_IssueKoutsianas(); +Test_Issue30(); diff --git a/ModFrmGL2/Tests/Issue29.m b/ModFrmGL2/Tests/Issue29.m new file mode 100644 index 0000000..ff8c130 --- /dev/null +++ b/ModFrmGL2/Tests/Issue29.m @@ -0,0 +1,15 @@ +procedure Test_Issue29() + printf "Testing issue #29"; + P := ProjectiveSpace(Rationals(),5); + gens := [[4,0,0,3], [0,1,1,0], [2,0,0,2]]; + N := 11; + H_N := sub; + H := PSL2Subgroup(H_N); + M := ModularSymbols(H, 2, Rationals(), 0); + S := CuspidalSubspace(M); + XD10nred<[x]>, basisD10 := ModularCurve(H); + assert IsCurve(XD10nred); + assert not IsHyperelliptic(XD10nred); +end procedure; + +Test_Issue29(); diff --git a/ModFrmGL2/Tests/Shimura.m b/ModFrmGL2/Tests/Shimura.m index 64c5f35..fc0ad18 100644 --- a/ModFrmGL2/Tests/Shimura.m +++ b/ModFrmGL2/Tests/Shimura.m @@ -8,11 +8,18 @@ function Test_Shimura(N) // mat_gens := [[-1,0,0,-1],[1,t,0,1]] cat [[a,0,0,1] : a in h_gens] // cat [[1,0,0,d] : d in all_gens]; // gamma := PSL2Subgroup(sub); - gamma := GammaShimura(N, U, phi, H`subgroup, t); + gamma := GammaShimura(U, phi, H`subgroup, t); // M := ModularSymbols(gamma, 2, Rationals(), 0); M := ModularSymbols(gamma); S := CuspidalSubspace(M); - D := NewformDecomposition(S); - // D := Decomposition(S, HeckeBound(S)); + // D := NewformDecomposition(S); + D := Decomposition(S, HeckeBound(S)); return D, S; end function; + +num_times := 5; +max_N := 10; +for i in [1..num_times] do + N := Random(2, max_N); + D, S := Test_Shimura(N); +end for;