#16976: Conjugacy classes and rational period functions for Hecke triangle 
groups
-------------------------------------+-------------------------------------
       Reporter:  jj                 |        Owner:
           Type:  enhancement        |       Status:  needs_info
       Priority:  major              |    Milestone:  sage-6.5
      Component:  modular forms      |   Resolution:
       Keywords:  hecke triangle     |    Merged in:
  group conjugacy class rational     |    Reviewers:
  period function                    |  Work issues:
        Authors:  Jonas Jermann      |       Commit:
Report Upstream:  N/A                |  616b0486776cdff54d8653c7bbc52269bd6df44c
         Branch:  public/16976       |     Stopgaps:
   Dependencies:  #16936             |
-------------------------------------+-------------------------------------
Changes (by vdelecroix):

 * commit:  9d3bb768b4b65f3a57ff27f3149f94e6abf910a8 =>
     616b0486776cdff54d8653c7bbc52269bd6df44c
 * branch:  u/jj/triangle_conjugacy => public/16976


Comment:

 Hey Jonas,

 1) Do you mind the merge with the latest beta? That will avoid me many
 recompilations. Otherwise, I can rebase my two commits.

 2) I wrote a commit that just clean the code. Nothing big, but a little
 speed up. Tell me what you think.

 3) Concerning the cached_method, I decided to let only two of them
 (`continued_fraction` and `_primitive_block_data`) after intensive timings
 of the doctests. See below. Please tell me if this is really bad.

 Potential caching

 1. continued_fraction
 2. _block_data
 3. _primitive_block_data
 4. primitive_power
 5. _basic_data

 ||= cached methods =|| time    || relative gain   ||
 || none             || 102.0s  ||                 ||
 || all              ||  57.8 s || 43%             ||
 || 1                ||  75.0 s || 26%             ||
 || 2                ||  79.1 s || 22%             ||
 || 3                ||  82.4 s || 17%             ||
 || 4                ||  88.0 s || 13%             ||
 || 5                ||  98.0 s || 4%              ||
 || 1 + 3            ||  64.2 s || 14% (rel to 1)  ||
 || 2 + 3            ||  76.0 s || 4% (rel to 2)   ||
 || 1 + 2            ||  67.7 s || 9% (rel to 1)   ||
 || 1 + 2 + 3        ||  62.3 s || 3% (rel to 1+3) ||

 So 1+3 is is a 10% lost compared to 1+2+3+4+5... but I would say that
 removing 3 cached_method is much more!

 4) I really do not understand your naming scheme. Why `decompose_basic`
 and not `word_decomposition_S_T` or `word_S_T` or something that tells you
 about what it does? The same is true for many methods:
 `_primitive_block_data`, `_block_data`, `_basic_data`, `block_length`,
 `decompose_block`.

 5) For some other methods, I was not able to understand what they do...
 the documentation is by far too short for me. In particular
 `reduced_elements` and `simple_elements`.

 I am waiting for your comments before going further.

 Best
 Vincent
 ----
 New commits:
 
||[http://git.sagemath.org/sage.git/commit/?id=433b9d114b1c5b2e4e0570579b4196e6a40ad575
 433b9d1]||{{{merge 6.5.beta5}}}||
 
||[http://git.sagemath.org/sage.git/commit/?id=f63c738c77379f2a6efb7ec582a6b0ca325bdbb7
 f63c738]||{{{trac #16976: clean code for Hecke group element}}}||
 
||[http://git.sagemath.org/sage.git/commit/?id=616b0486776cdff54d8653c7bbc52269bd6df44c
 616b048]||{{{trac #16976: removed 3 out of 5 @cached_method}}}||

--
Ticket URL: <http://trac.sagemath.org/ticket/16976#comment:28>
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 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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to