#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.