#18109: Restructure IntegerListLex code
-------------------------------------+-------------------------------------
Reporter: vdelecroix | Owner:
Type: defect | Status: new
Priority: major | Milestone: sage-6.6
Component: combinatorics | Resolution:
Keywords: | Merged in:
Authors: Jeroen Demeyer | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/jdemeyer/ticket/18109 | 9fbbd3c6c2900b5d6f326846522338774751cfe8
Dependencies: #18181 | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by jdemeyer):
Replying to [comment:16 vdelecroix]:
> Replying to [comment:15 jdemeyer]:
> > Replying to [comment:14 vdelecroix]:
> > > A comment on the design... Should we really support +Infinity in the
iterator?
> > Yes.
> >
> > > I would go for `unsigned int` variables and `UINT_MAX` as a
synonmyous for Infinity.
> > And not support `IntegerLists(10^100)`?
>
> I said for the iterator. Not for the main class. I would not bother if
`iter(IntegerLists(10^100))` just failed. It should be very fast for small
entries. I guess that one option would be to use Nathann strategy in
#18137 with fused Cython type (here `unsigned int` and `mpz_t`).
I think that we really should support `list(IntegerLists(10^100,
length=1))` because in Sage, we ''always'' support large integers if
possible.
In any case, changing this is certainly outside the scope of this ticket
(it could be done in #18055 or #18056). Here, I just want to reorganize
the code without changing the implementation.
--
Ticket URL: <http://trac.sagemath.org/ticket/18109#comment:18>
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.