#6812: Enumerate integer vectors modulo to the action of a Permutation Group
------------------------------------------------------------------+---------
Reporter: nborie |
Owner: nborie
Type: enhancement |
Status: needs_review
Priority: major |
Milestone: sage-5.1
Component: combinatorics |
Resolution:
Keywords: enumeration, integer, list, permutation, group | Work
issues: long time tests, information about listing infinite sets
Report Upstream: N/A |
Reviewers: Karl-Dieter Crisman, Simon King
Authors: Nicolas Borie | Merged
in:
Dependencies: |
Stopgaps:
------------------------------------------------------------------+---------
Comment (by nborie):
Replying to [comment:79 SimonKing]:
> There are two problems with the orbit() method:
> {{{
> assert isinstance(v, (list, ClonableIntArray)), '%s shoud be a
Python list or an element of %s'%(v, self)
> try:
> if v.parent() is self:
> return orbit(self._sgs, v)
> except:
> return orbit(self._sgs, self.element_class(self, v,
check=False))
> }}}
> That means that ''None'' is returned if v happens to be a
!ClonableIntArray with a different parent. Shouldn't v be transformed into
an element of `self` instead?
>
> And is it really a good idea to convert v into an element of `self`
without checking?
Yes, this piece of code is horribly ugly... The point is that the orbit
method will work with any integer vector. v doesn't need to be canonical.
I don't have a use case but I was thinking it would be more convenient to
allow the user to use this method for any integer vector (canonical or
not).
After for safety, I don't know the consequence of such a choice on the
lung run.
Anyway, the test is_canonical should be very very much faster than the
full expansion of an orbit and a user who want just an orbit can also
compute his own function.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6812#comment:82>
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.