Skip to content
Snippets Groups Projects
Commit c3f24dba authored by Gonzalo Tornaría's avatar Gonzalo Tornaría
Browse files

check residual trace

parent e70e754d
No related branches found
No related tags found
No related merge requests found
......@@ -359,9 +359,20 @@ intrinsic ModPrimes(m :: Modularity, R2 :: FldNum,
proj :: Map, phi :: Map
: debug := false, keep_going := false, PrimeBound := 500,
no_order := false, only_order := false,
check_frob := false) -> []
check_frob := false,
check_residual := []) -> []
{ .. }
fc := frobenius_classes(proj : no_order:=no_order, only_order:=only_order);
for p_ap in check_residual do
p, ap := Explode(p_ap);
pat1 := m`frobR1[p];
pat2 := FrobeniusStructure(R2, p);
cs := fc[<pat1,pat2>];
cc := [ c : c in cs | tr1(phi(c)) eq ap ];
if #cc eq 0 then
return -p;
end if;
end for;
if &and [tr(phi(x)) eq 0 : x in fc[a], a in Keys(fc)] then
// a cocycle with all traces equal to 0 is ok
return 1;
......
Attach("Modularity.m");
Attach("GrpExt.m");
Attach("Grp.m");
AttachSpec("mod.spec");
//load "ex.m";
load "ex-353.m";
......@@ -11,7 +9,8 @@ time for i := 1 to #all do
R2:=NumberField(Polynomial(R1, [-all[i], 0, 1]));
proj, phis := ModPhis(m, R2);
dim := Integers() ! Log(2, #Domain(phis[1])/#G5);
ps := [ModPrimes(m, R2, proj, phi) : phi in phis];
ps := [ ModPrimes( m, R2, proj, phi
: check_residual:=[<5,1>] ) : phi in phis ];
for p in ps do
Include(~PS, p);
end for;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment