#13259: Correcting implementation of "negative" quantum integers
-----------------------------------+----------------------------------------
Reporter: andrew.mathas | Owner: andrew.mathas
Type: defect | Status: needs_review
Priority: minor | Milestone: sage-5.3
Component: combinatorics | Resolution:
Keywords: quantum integer | Work issues:
Report Upstream: N/A | Reviewers:
Authors: | Merged in:
Dependencies: | Stopgaps:
-----------------------------------+----------------------------------------
Comment (by arminstraub):
The updated patch just fixes a tiny latex issue.
Replying to [comment:6 andrew.mathas]:
You're right: I changed the return statement mostly because of "looks" and
to make it visibly agree with the documentation. However, it actually
turns out that the new statement is also **much** faster than both the
previous one or the one you suggested as an alternative:
{{{
sage: p = ZZ['q'].gens()[0]
sage: n = -10
sage: %timeit -sum(p**j for j in range(-1,n-1,-1))
625 loops, best of 3: 972 µs per loop
sage: %timeit sum([-p**(n+i) for i in range(-n)])
625 loops, best of 3: 979 µs per loop
sage: %timeit -p**n * sum([p**i for i in range(-n)])
625 loops, best of 3: 158 µs per loop
sage: n = -100
sage: %timeit -sum(p**j for j in range(-1,n-1,-1))
25 loops, best of 3: 22.7 ms per loop
sage: %timeit sum([-p**(n+i) for i in range(-n)])
25 loops, best of 3: 27.6 ms per loop
sage: %timeit -p**n * sum([p**i for i in range(-n)])
625 loops, best of 3: 716 µs per loop
}}}
I certainly didn't anticipate this.
Thus, I would suggest leaving the two patches as they are. From my
(little) experience, I would say that there is no need to combine the two
patches into a single one. However, I just noted that your patch does not
contain the ticket number in the comment line (at the top). So when
changing this, you might as well combine the two patches.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13259#comment:8>
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.