Mike:
Since your Permutations does things correctly, I wonder if
permutations should be (a) renamed permutations_gap
or something, or (b) a "WARNING: this GAP wrapper is
deprecated in favor of Permutations" (or something like that)
should be printed on it's use? At the very least, maybe (c) the docstring
for permutations should point to Permutations?
For example, I remembered that you had reworked the
combinatorial functions and thought permutations was
yours at first.


On 10/27/07, Mike Hansen <[EMAIL PROTECTED]> wrote:
>
> Hello,
>
> My new(er) Permutations combinatorial class should handle things correctly.
>
> sage: MS = MatrixSpace(QQ, 2, 2)
> sage: A = MS([1,2,3,4])
> sage: Permutations(A.rows()).list()
> [[(1, 2), (3, 4)], [(3, 4), (1, 2)]]
> sage: MS = MatrixSpace(GF(2),2,2)
> sage: A = MS([1,2,3,4])
> sage: Permutations(A.rows()).list()
> [[(1, 0), (1, 0)]]
>
> --Mike
>
>
> On 10/27/07, David Joyner <[EMAIL PROTECTED]> wrote:
> >
> > Hi:
> > Either a bug in combinat.py's permutations, or an indication that
> > it needs to be rewritten. (permutations is a GAP wrapper which
> > I might have written, so should probably fix ...)
> >
> > - David Joyner
> >
> >
> > sage: MS = MatrixSpace(QQ,2,2)
> > sage: A = MS([1,2,3,4])
> > sage: permutations(A.rows())
> > [[(3, 4), (1, 2)], [(1, 2), (3, 4)]]
> > sage:
> > sage: MS = MatrixSpace(GF(2),2,2)
> > sage: A = MS([1,2,3,4])
> > sage: permutations(A.rows())
> > ---------------------------------------------------------------------------
> > <type 'exceptions.RuntimeError'>          Traceback (most recent call last)
> >
> > /Users/wdj/sagefiles/sage-2.8.2/<ipython console> in <module>()
> >
> > /Users/wdj/sagefiles/sage-2.8.2/local/lib/python2.5/site-packages/sage/combinat/combinat.py
> > in permutations(mset)
> >    1552
> >    1553     """
> > -> 1554     ans=gap.eval("PermutationsList(%s)"%mset)
> >    1555     return eval(ans)
> >    1556
> >
> > /Users/wdj/sagefiles/sage-2.8.2/local/lib/python2.5/site-packages/sage/interfaces/gap.py
> > in eval(self, x, newlines, strip)
> >     301         if len(x) == 0 or x[len(x) - 1] != ';':
> >     302             x += ';'
> > --> 303         s = Expect.eval(self, x)
> >     304         if newlines:
> >     305             return s
> >
> > /Users/wdj/sagefiles/sage-2.8.2/local/lib/python2.5/site-packages/sage/interfaces/expect.py
> > in eval(self, code, strip, **kwds)
> >     648         code = code.strip()
> >     649         try:
> > --> 650             return '\n'.join([self._eval_line(L, **kwds) for L
> > in code.split('\n') if L != ''])
> >     651         except KeyboardInterrupt:
> >     652             # DO NOT CATCH KeyboardInterrupt, as it is being caught
> >
> > /Users/wdj/sagefiles/sage-2.8.2/local/lib/python2.5/site-packages/sage/interfaces/gap.py
> > in _eval_line(self, line, allow_use_file, wait_for_prompt)
> >     502                         return ''
> >     503                 else:
> > --> 504                     raise RuntimeError, message
> >     505
> >     506         except KeyboardInterrupt:
> >
> > <type 'exceptions.RuntimeError'>: Gap produced error output
> > Permutation: <expr> must be a positive integer (not a integer)
> >
> >    executing PermutationsList([(1, 0), (1, 0)]);
> >
> > >
> >
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://sage.math.washington.edu/sage/ and http://sage.scipy.org/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to