#5520: [with patch; needs review] implement Pizer's algorithm for computing
Brandt
Modules and Brandt Matrices
---------------------------+------------------------------------------------
Reporter: was | Owner: craigcitro
Type: enhancement | Status: new
Priority: major | Milestone: sage-3.4.1
Component: modular forms | Keywords:
---------------------------+------------------------------------------------
Comment(by tornaria):
Here's a one-liner you definitely want to apply (with or without my patch
above):
{{{
while got_something_new:
got_something_new = False
+ newly_computed_ideals = []
for I in new_ideals:
L = self.cyclic_supermodules(I, p)
for J in L:
is_new = True
}}}
In fact, the list {{{newly_computed_ideals}}} needs to be reset after each
cycle --- otherwise, each iteration computes
{{{self.cyclic_supermodules()}}} again for all the ideals (not just the
new ones)...
This ({{{right_ideals()}}}) is now running in definitely sub-quadratic
time... it seems quasi-linear besides the issue of figuring out the
optimal bound for the theta series. For instance:
{{{
sage: time Is=BrandtModule(20011,use_cache=False).right_ideals(150)
CPU times: user 25.45 s, sys: 0.05 s, total: 25.50 s
Wall time: 25.50 s
sage: time Is=BrandtModule(100003,use_cache=False).right_ideals(500)
CPU times: user 275.69 s, sys: 0.69 s, total: 276.38 s
Wall time: 276.39 s
}}}
The same idea can be applied to {{{hecke_matrix_directly}}} so that
computing decomposition of the Brandt module scales better (maybe quasi-
linear, definitely sub-quadratic).
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5520#comment:14>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of
Reinventing the Wheel
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---