#12640: some special cases of dimension_new_cusp_forms are broken
---------------------------------+------------------------------------------
       Reporter:  was            |         Owner:  craigcitro      
           Type:  defect         |        Status:  closed          
       Priority:  major          |     Milestone:  sage-5.0        
      Component:  modular forms  |    Resolution:  fixed           
       Keywords:  rd2            |   Work issues:                  
Report Upstream:  N/A            |     Reviewers:  Jen Balakrishnan
        Authors:  William Stein  |     Merged in:  sage-5.0.beta10 
   Dependencies:                 |      Stopgaps:                  
---------------------------------+------------------------------------------

Old description:

> I think somebody changed something elsewhere that dims.py depends on,
> which resulted in breaking dimension_new_cusp_forms when the character is
> trivial and the level is 1 or 2.
>
> {{{
> sage: dimension_new_cusp_forms(DirichletGroup(1)(1), 12)
> ---------------------------------------------------------------------------
> TypeError                                 Traceback (most recent call
> last)
>
> /Users/wstein/db/mfdb/<ipython console> in <module>()
>
> /Users/wstein/sage/install/sage-5.0.beta2/local/lib/python2.7/site-
> packages/sage/modular/dims.pyc in dimension_new_cusp_forms(X, k, p)
>     304         return X.dimension_new_cusp_forms(k,p=p)
>     305     elif isinstance(X, dirichlet.DirichletCharacter):
> --> 306         return
> Gamma1(X.modulus()).dimension_new_cusp_forms(k,eps=X,p=p)
>     307     elif isinstance(X, (int,long,Integer)):
>     308         return Gamma0(X).dimension_new_cusp_forms(k,p=p)
>
> TypeError: dimension_new_cusp_forms() got an unexpected keyword argument
> 'eps'
> sage: dimension_new_cusp_forms(DirichletGroup(2)(1), 12)
> ---------------------------------------------------------------------------
> TypeError                                 Traceback (most recent call
> last)
>
> /Users/wstein/db/mfdb/<ipython console> in <module>()
>
> /Users/wstein/sage/install/sage-5.0.beta2/local/lib/python2.7/site-
> packages/sage/modular/dims.pyc in dimension_new_cusp_forms(X, k, p)
>     304         return X.dimension_new_cusp_forms(k,p=p)
>     305     elif isinstance(X, dirichlet.DirichletCharacter):
> --> 306         return
> Gamma1(X.modulus()).dimension_new_cusp_forms(k,eps=X,p=p)
>     307     elif isinstance(X, (int,long,Integer)):
>     308         return Gamma0(X).dimension_new_cusp_forms(k,p=p)
>
> TypeError: dimension_new_cusp_forms() got an unexpected keyword argument
> 'eps'
> }}}
> It seems like bigger levels work fine...
> {{{
> sage: dimension_new_cusp_forms(DirichletGroup(3)(1), 12)
> 1
> sage: dimension_new_cusp_forms(DirichletGroup(4)(1), 12)
> 1
> }}}

New description:

 Ticket #11601 made some changes to congruence subgroups and broke some
 stuff that dims.py depends on, which resulted in breaking
 dimension_new_cusp_forms when the character is trivial and the level is 1
 or 2.

 {{{
 sage: dimension_new_cusp_forms(DirichletGroup(1)(1), 12)
 ---------------------------------------------------------------------------
 TypeError                                 Traceback (most recent call
 last)

 /Users/wstein/db/mfdb/<ipython console> in <module>()

 /Users/wstein/sage/install/sage-5.0.beta2/local/lib/python2.7/site-
 packages/sage/modular/dims.pyc in dimension_new_cusp_forms(X, k, p)
     304         return X.dimension_new_cusp_forms(k,p=p)
     305     elif isinstance(X, dirichlet.DirichletCharacter):
 --> 306         return
 Gamma1(X.modulus()).dimension_new_cusp_forms(k,eps=X,p=p)
     307     elif isinstance(X, (int,long,Integer)):
     308         return Gamma0(X).dimension_new_cusp_forms(k,p=p)

 TypeError: dimension_new_cusp_forms() got an unexpected keyword argument
 'eps'
 sage: dimension_new_cusp_forms(DirichletGroup(2)(1), 12)
 ---------------------------------------------------------------------------
 TypeError                                 Traceback (most recent call
 last)

 /Users/wstein/db/mfdb/<ipython console> in <module>()

 /Users/wstein/sage/install/sage-5.0.beta2/local/lib/python2.7/site-
 packages/sage/modular/dims.pyc in dimension_new_cusp_forms(X, k, p)
     304         return X.dimension_new_cusp_forms(k,p=p)
     305     elif isinstance(X, dirichlet.DirichletCharacter):
 --> 306         return
 Gamma1(X.modulus()).dimension_new_cusp_forms(k,eps=X,p=p)
     307     elif isinstance(X, (int,long,Integer)):
     308         return Gamma0(X).dimension_new_cusp_forms(k,p=p)

 TypeError: dimension_new_cusp_forms() got an unexpected keyword argument
 'eps'
 }}}
 It seems like bigger levels work fine...
 {{{
 sage: dimension_new_cusp_forms(DirichletGroup(3)(1), 12)
 1
 sage: dimension_new_cusp_forms(DirichletGroup(4)(1), 12)
 1
 }}}

--

Comment (by davidloeffler):

 Just for the record: that "somebody" was me, at ticket #11601. From that
 ticket description:

 "Some "rationalisation" is also included: e.g. one can no longer create
 Gamma1(1) or GammaH(11, [2]), which previously existed as less-functional
 duplicates of SL2Z and Gamma0(11)."

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12640#comment:5>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to