#6637: standardize the interface to TransitiveIdeal and friends
-------------------------------------+-------------------------------------
Reporter: nthiery | Owner: mhansen
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.3
Component: combinatorics | Resolution:
Keywords: backtrack, | Merged in:
enumerated set, transitive | Reviewers: Travis Scrimshaw
closure, days57 | Work issues:
Authors: Sébastien Labbé | Commit:
Report Upstream: N/A | d8b942bf45c05f4df5fe093b0b63ac63e7127db6
Branch: | Stopgaps:
public/ticket/6637 |
Dependencies: #14052 |
-------------------------------------+-------------------------------------
Changes (by {'newvalue': u'S\xe9bastien Labb\xe9', 'oldvalue': ''}):
* reviewer: => Travis Scrimshaw
* commit: 766a1b0d7a09c8d9597308592db9543145e61751 =>
d8b942bf45c05f4df5fe093b0b63ac63e7127db6
* branch: u/slabbe/6637 => public/ticket/6637
* author: => Sébastien Labbé
Comment:
Some more speedup by doing some more cythonization. Before:
{{{
sage: f = lambda a: [a-1,a+1]
sage: C = RecursivelyEnumeratedSet([10, 15], f, structure='symmetric')
sage: it = iter(C)
sage: %time L = [next(it) for _ in xrange(10^6)]
CPU times: user 9.68 s, sys: 147 ms, total: 9.83 s
Wall time: 9.81 s
}}}
With my commit:
{{{
sage: f = lambda a: [a-1,a+1]
sage: C = RecursivelyEnumeratedSet([10, 15], f, structure='symmetric')
sage: it = iter(C)
sage: %time L = [next(it) for _ in xrange(10^6)]
CPU times: user 8.02 s, sys: 103 ms, total: 8.13 s
Wall time: 8.15 s
}}}
I'm sure I haven't done the best cythonization job on this, but it works
and all tests pass. If you're happy with my changes, then positive review.
----
New commits:
||[http://git.sagemath.org/sage.git/commit/?id=0d592cea682de0af1f8363c9aaddaa3d2d7b5fad
0d592ce]||{{{Merge branch 'u/slabbe/6637' of trac.sagemath.org:sage into
public/ticket/6637}}}||
||[http://git.sagemath.org/sage.git/commit/?id=f200525ea0e709b8cde3233a18fd67c994ad7db5
f200525]||{{{More cythonization.}}}||
||[http://git.sagemath.org/sage.git/commit/?id=72f5bf6ae7d52618f0dd81dafae7f62199611d07
72f5bf6]||{{{Merge branch 'u/slabbe/6637' of trac.sagemath.org:sage into
public/ticket/6637}}}||
||[http://git.sagemath.org/sage.git/commit/?id=df40815e7751130fa5359fc7110a22779d91b425
df40815]||{{{Some tweaks in the cythonization.}}}||
||[http://git.sagemath.org/sage.git/commit/?id=e68a15f2d5236872aeda5855acfb7ee0895f558d
e68a15f]||{{{Fixed pickling issue.}}}||
||[http://git.sagemath.org/sage.git/commit/?id=d8b942bf45c05f4df5fe093b0b63ac63e7127db6
d8b942b]||{{{Some other potential cython speedups.}}}||
--
Ticket URL: <http://trac.sagemath.org/ticket/6637#comment:37>
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.