#11709: FareySymbol
-------------------------------+--------------------------------------------
    Reporter:  hmonien         |         Owner:  craigcitro                     
            
        Type:  enhancement     |        Status:  needs_review                   
            
    Priority:  major           |     Milestone:  sage-5.0                       
            
   Component:  modular forms   |    Resolution:                                 
            
    Keywords:  Farey symbol    |   Work_issues:                                 
            
    Upstream:  N/A             |      Reviewer:  Martin Raum, Leif Leonhardy, 
David Loeffler
      Author:  Hartmut Monien  |        Merged:                                 
            
Dependencies:                  |  
-------------------------------+--------------------------------------------

Old description:

> !FareySymbol is a '''fast''' implementation of the '''KFarey''' package
> for Sage.
>
> The major changes done by me:
>
>  * created an object oriented coherent class interface
>
>  * implemented a C++ module with pyx interface
>
> !FareySymbol allows the calculation of properties of a general arithmetic
> subgroup.  The use with the congruence subgroups Gamma0, Gamma1, GammaH
> is trivial. For a group not implemented in Sage, the "user" has to define
> a class with a `__contains__(self, M)` attribute which returns `True` or
> `False` depending on `M` being in the group or not.
>
> The calculation of the generators, coset representation and genus of
> Gamma(32) takes 62.5 seconds on my laptop. Try this with Magma ... .
>
> {{{
> sage: time FareySymbol(Gamma(32))
> FareySymbol(Congruence Subgroup Gamma(32))
> Time: CPU 62.50 s, Wall: 62.52 s
> }}}
>
> ----
>
> Apply
>   1. [attachment:trac-11709_farey_symbol-sage-4.8.patch]

New description:

 !FareySymbol is a '''fast''' implementation of the '''KFarey''' package
 for Sage.

 The major changes done by me:

  * created an object oriented coherent class interface

  * implemented a C++ module with pyx interface

 !FareySymbol allows the calculation of properties of a general arithmetic
 subgroup.  The use with the congruence subgroups Gamma0, Gamma1, GammaH is
 trivial. For a group not implemented in Sage, the "user" has to define a
 class with a `__contains__(self, M)` attribute which returns `True` or
 `False` depending on `M` being in the group or not.

 The calculation of the generators, coset representation and genus of
 Gamma(32) takes 62.5 seconds on my laptop. Try this with Magma ... .

 {{{
 sage: time FareySymbol(Gamma(32))
 FareySymbol(Congruence Subgroup Gamma(32))
 Time: CPU 62.50 s, Wall: 62.52 s
 }}}

 ----

 Apply
   1. [attachment:trac-11709_farey_symbol-sage-5.0.patch]
   2. [attachment:trac_11709-review.patch]

--

Comment(by davidloeffler):

 I just realised that the patch breaks a line in William's old 2008
 Bordeaux slides which are included as part of the documentation. The
 slides complain about Farey symbols not being implemented, so I've added a
 comment explaining that they are now implemented and changed the doctest.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11709#comment:35>
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