Thank you very much! I didn't know sage-nt existed :-)

Misja

On Thursday, 28 April 2016 15:13:20 UTC+1, John Cremona wrote:
>
> I have forwarded your question to sage-nt@googlegroups since there are 
> people who read that who may be able to answer yet do not read 
> sage-support. 
>
> Feel free to apply to join sage-nt. 
>
> John Cremona 
>
> On 28 April 2016 at 15:09, Misja <[email protected] <javascript:>> 
> wrote: 
> > When understand the specific reason why my code is not working properly, 
> I 
> > managed to pin it down to the following mysterious behaviour of 
> q_eigenform. 
> > 
> > First run the following code in sage. 
> > 
> > G=DirichletGroup(80); 
> > chi=G[22]; 
> > 
> D=ModularSymbols(chi,2,-1).cuspidal_subspace().new_subspace().decomposition();
>  
>
> > for f in D: 
> >     elt=f.q_eigenform(10,'alpha')[3]; 
> >     N=elt.parent().absolute_field('a'); 
> >     fact=N.factor(2); 
> >     for P,e in fact: 
> >         res_field=N.residue_field(P); 
> >         print res_field(elt); 
> > 
> > 
> > It will print 
> > 
> > 0 
> > 0 
> > 0 
> > 0 
> > 
> > which, I think, is the 'right' answer. 
> > 
> > 
> > Now close your sage session entirely. Open a new session and then run 
> the 
> > following *silly* code: 
> > 
> > G=DirichletGroup(80); 
> > for chi in G: 
> > 
> > 
> D=ModularSymbols(chi,2,-1).cuspidal_subspace().new_subspace().decomposition();
>  
>
> >     for f in D: 
> >         elt=f.q_eigenform(10,'alpha')[3]; 
> >         if not elt.parent()==QQ: 
> >             K=elt.parent().absolute_field('b'); 
> >             if chi==G[22]: 
> >                 fact=K.factor(2); 
> >                 for P,e in fact: 
> >                     res_field=K.residue_field(P); 
> >                     print res_field(elt); 
> > 
> > 
> > It will print: 
> > 
> > 0 
> > 0 
> > 1 
> > 0 
> > 
> > As far as I understand the theory, this cannot happen. If you let sage 
> print 
> > the alpha^3 coefficient of you see that in both cases it picks a 
> different 
> > q_eigenform in f, the Galois conjugacy class of newforms. Although this 
> can 
> > be a bit annoying, in theory it is fine. But I am pretty sure that when 
> your 
> > reduce this coefficient modulo some prime P, any two elements of the 
> same 
> > Galois conjugacy class can differ at most by some automorphism of the 
> > residue field (and obviously 1 and 0 do not satisfy this criterion). 
> > 
> > 
> > To make matters worse: if you run a single sage session and you run the 
> > 'good' code first and the 'bad' code second, then suddenly the 'bad' 
> code is 
> > fixed and printing only 0s. If you run the 'bad' code first and the 
> 'good' 
> > code second, then they are both 'bad' and the 'good' code suddenly 
> prints 
> > 0,0,1,0 as well. 
> > 
> > By trying I found out that this is because somehow  q_eigenform picks 
> the 
> > same q_eigenform as whichever code that ran first and somehow these 
> choices 
> > are not compatible! I don't know the inner workings of q_eigenform, but 
> this 
> > behaviour seems strange to me. 
> > 
> > Can anyone explain what is going on here? Is it a bug? 
> > 
> > Thanks! 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "sage-support" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an 
> > email to [email protected] <javascript:>. 
> > To post to this group, send email to [email protected] 
> <javascript:>. 
> > Visit this group at https://groups.google.com/group/sage-support. 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to