Summary: Two bugs in sage 6.2 that are both related to the element constructors for the SymmetricGroupAlgebra [see (1) below] and its group [if one sets display='cycle', see (2) below]. One comment: setting display='list' is not followed in the group case [see (3) below].
Thank you very much! (1) Bug: The constructor for the SymmetricGroupAlgebra elements raises a TypeError even if the constructor for the group does work: sage: Permutations.global_options(display='list') sage: p = Permutation((1,2)) sage: S = SymmetricGroupAlgebra(QQ,3) sage: G = S.group() sage: G(p) (1,2) sage: G((1,2)) (1,2) sage: S(p) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-7-bea986bdeccc> in <module>() ----> 1 S(p) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/structure/parent.so in sage.structure.parent.Parent.__call__ (sage/structure/parent.c:8858)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/structure/coerce_maps.so in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (sage/structure/coerce_maps.c:4206)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/structure/coerce_maps.so in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (sage/structure/coerce_maps.c:4113)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/combinat/free_module.pyc in _element_constructor_(self, x) 1577 except TypeError: 1578 pass -> 1579 raise TypeError("do not know how to make x (= %s) an element of self (=%s)"%(x,self)) 1580 1581 def _an_element_impl(self): TypeError: do not know how to make x (= [2, 1]) an element of self (=Symmetric group algebra of order 3 over Rational Field) sage: S((1,2)) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-8-f3af17ba6459> in <module>() ----> 1 S((Integer(1),Integer(2))) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/structure/parent.so in sage.structure.parent.Parent.__call__ (sage/structure/parent.c:8858)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/structure/coerce_maps.so in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (sage/structure/coerce_maps.c:4206)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/structure/coerce_maps.so in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (sage/structure/coerce_maps.c:4113)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/combinat/free_module.pyc in _element_constructor_(self, x) 1577 except TypeError: 1578 pass -> 1579 raise TypeError("do not know how to make x (= %s) an element of self (=%s)"%(x,self)) 1580 1581 def _an_element_impl(self): TypeError: do not know how to make x (= (1, 2)) an element of self (=Symmetric group algebra of order 3 over Rational Field) (2) Bug: The constructor for the group raises a TypeError if one sets Permutations.global_options(display='cycle'): sage: Permutations.global_options(display='cycle') sage: p = Permutation((1,2)) sage: PERM_3 = Permutations(3) sage: pp = PERM_3(p) sage: S = SymmetricGroupAlgebra(QQ,3) sage: G = S.group() sage: S(pp) (1,2) sage: G(pp) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-8-d00150707fcf> in <module>() ----> 1 G(pp) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/groups/perm_gps/permgroup.pyc in __call__(self, x, check) 652 return self.identity() 653 --> 654 return self._element_class()(x, self, check=check) 655 656 def _coerce_impl(self, x): /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/groups/perm_gps/permgroup_element.so in sage.groups.perm_gps.permgroup_element.PermutationGroupElement.__init__ (sage/groups/perm_gps/permgroup_element.c:4773)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/interface.pyc in __call__(self, x, name) 197 198 if isinstance(x, basestring): --> 199 return cls(self, x, name=name) 200 try: 201 return self._coerce_from_special_method(x) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc in __init__(self, parent, value, is_name, name) 1289 else: 1290 try: -> 1291 self._name = parent._create(value, name=name) 1292 # Convert ValueError and RuntimeError to TypeError for 1293 # coercion to work properly. /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/interface.pyc in _create(self, value, name) 387 def _create(self, value, name=None): 388 name = self._next_var_name() if name is None else name --> 389 self.set(name, value) 390 return name 391 /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/gap.pyc in set(self, var, value) 1303 """ 1304 cmd = ('%s:=%s;;'%(var,value)).replace('\n','') -> 1305 out = self._eval_line(cmd, allow_use_file=True) 1306 1307 def get(self, var, use_file=False): /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/gap.pyc in _eval_line(self, line, allow_use_file, wait_for_prompt, restart_if_needed) 769 return '' 770 else: --> 771 raise RuntimeError(message) 772 773 except KeyboardInterrupt: TypeError: Gap produced error output Error, PermList: <list> must be a list (not a permutation (small)) executing $sage2:=PermList((1,2));; sage: G(p) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-9-fc8fc6347723> in <module>() ----> 1 G(p) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/groups/perm_gps/permgroup.pyc in __call__(self, x, check) 652 return self.identity() 653 --> 654 return self._element_class()(x, self, check=check) 655 656 def _coerce_impl(self, x): /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/groups/perm_gps/permgroup_element.so in sage.groups.perm_gps.permgroup_element.PermutationGroupElement.__init__ (sage/groups/perm_gps/permgroup_element.c:4773)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/interface.pyc in __call__(self, x, name) 197 198 if isinstance(x, basestring): --> 199 return cls(self, x, name=name) 200 try: 201 return self._coerce_from_special_method(x) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc in __init__(self, parent, value, is_name, name) 1289 else: 1290 try: -> 1291 self._name = parent._create(value, name=name) 1292 # Convert ValueError and RuntimeError to TypeError for 1293 # coercion to work properly. /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/interface.pyc in _create(self, value, name) 387 def _create(self, value, name=None): 388 name = self._next_var_name() if name is None else name --> 389 self.set(name, value) 390 return name 391 /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/gap.pyc in set(self, var, value) 1303 """ 1304 cmd = ('%s:=%s;;'%(var,value)).replace('\n','') -> 1305 out = self._eval_line(cmd, allow_use_file=True) 1306 1307 def get(self, var, use_file=False): /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/gap.pyc in _eval_line(self, line, allow_use_file, wait_for_prompt, restart_if_needed) 769 return '' 770 else: --> 771 raise RuntimeError(message) 772 773 except KeyboardInterrupt: TypeError: Gap produced error output Error, PermList: <list> must be a list (not a permutation (small)) executing $sage3:=PermList((1,2));; sage: G((1,2)) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-10-ba627ac157cc> in <module>() ----> 1 G((Integer(1),Integer(2))) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/groups/perm_gps/permgroup.pyc in __call__(self, x, check) 652 return self.identity() 653 --> 654 return self._element_class()(x, self, check=check) 655 656 def _coerce_impl(self, x): /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/groups/perm_gps/permgroup_element.so in sage.groups.perm_gps.permgroup_element.PermutationGroupElement.__init__ (sage/groups/perm_gps/permgroup_element.c:4773)() /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/interface.pyc in __call__(self, x, name) 197 198 if isinstance(x, basestring): --> 199 return cls(self, x, name=name) 200 try: 201 return self._coerce_from_special_method(x) /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc in __init__(self, parent, value, is_name, name) 1289 else: 1290 try: -> 1291 self._name = parent._create(value, name=name) 1292 # Convert ValueError and RuntimeError to TypeError for 1293 # coercion to work properly. /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/interface.pyc in _create(self, value, name) 387 def _create(self, value, name=None): 388 name = self._next_var_name() if name is None else name --> 389 self.set(name, value) 390 return name 391 /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/gap.pyc in set(self, var, value) 1303 """ 1304 cmd = ('%s:=%s;;'%(var,value)).replace('\n','') -> 1305 out = self._eval_line(cmd, allow_use_file=True) 1306 1307 def get(self, var, use_file=False): /opt/sage/sage-6.2-binary/local/lib/python2.7/site-packages/sage/interfaces/gap.pyc in _eval_line(self, line, allow_use_file, wait_for_prompt, restart_if_needed) 769 return '' 770 else: --> 771 raise RuntimeError(message) 772 773 except KeyboardInterrupt: TypeError: Gap produced error output Error, PermList: <list> must be a list (not a permutation (small)) executing $sage4:=PermList((1,2));; (3) Comment: The options defined in Permutations.global_options() are not followed everywhere: sage: Permutations.global_options(display='list') sage: p = Permutation((1,2)) sage: PERM_3 = Permutations(3) sage: pp = PERM_3(p) sage: S = SymmetricGroupAlgebra(QQ,3) sage: G = S.group() sage: G(pp) (1,2) sage: S(pp) [2, 1, 3] -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.