#15473: Minor fixes to symmetric functions
-------------------------------------------------+-------------------------
       Reporter:  darij                          |        Owner:
           Type:  defect                         |       Status:  new
       Priority:  minor                          |    Milestone:  sage-5.13
      Component:  combinatorics                  |   Resolution:
       Keywords:  sage-combinat, symmetric       |    Merged in:
  functions                                      |    Reviewers:
        Authors:  Darij Grinberg                 |  Work issues:
Report Upstream:  N/A                            |       Commit:
         Branch:                                 |     Stopgaps:
   Dependencies:                                 |
-------------------------------------------------+-------------------------

Comment (by darij):

 So, here's the file... but... it fails doctests for no reason whatsoever!
 {{{
 **********************************************************************
 File "devel/sage-main/sage/combinat/sf/sfa.py", line 875, in
 
sage.combinat.sf.sfa.SymmetricFunctionsBases.ParentMethods.corresponding_basis_over
 Failed example:
     s.corresponding_basis_over(Integers(13))
 Exception raised:
     Traceback (most recent call last):
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/doctest/forker.py", line 479, in _run
         self.execute(example, compiled, test.globs)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/doctest/forker.py", line 838, in execute
         exec compiled in globs
       File "<doctest
 
sage.combinat.sf.sfa.SymmetricFunctionsBases.ParentMethods.corresponding_basis_over[5]>",
 line 1, in <module>
         s.corresponding_basis_over(Integers(Integer(13)))
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sfa.py", line 937, in corresponding_basis_over
         return attrcall(self._basis)(SymmetricFunctions(R))
       File "classcall_metaclass.pyx", line 330, in
 sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
 (sage/misc/classcall_metaclass.c:1224)
       File "cachefunc.pyx", line 1030, in
 sage.misc.cachefunc.WeakCachedFunction.__call__
 (sage/misc/cachefunc.c:5675)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/unique_representation.py", line 1005, in
 __classcall__
         instance = typecall(cls, *args, **options)
       File "classcall_metaclass.pyx", line 518, in
 sage.misc.classcall_metaclass.typecall
 (sage/misc/classcall_metaclass.c:1586)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sf.py", line 764, in __init__
         Parent.__init__(self, category =
 GradedHopfAlgebras(R).WithRealizations())
       File "parent.pyx", line 368, in
 sage.structure.parent.Parent.__init__ (sage/structure/parent.c:4392)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sf.py", line 1225, in __init_extra__
         basis1 = getattr(self, basis1_name)()
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sf.py", line 812, in powersum
         return powersum.SymmetricFunctionAlgebra_power(self)
       File "classcall_metaclass.pyx", line 330, in
 sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
 (sage/misc/classcall_metaclass.c:1224)
       File "cachefunc.pyx", line 1030, in
 sage.misc.cachefunc.WeakCachedFunction.__call__
 (sage/misc/cachefunc.c:5675)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/unique_representation.py", line 1005, in
 __classcall__
         instance = typecall(cls, *args, **options)
       File "classcall_metaclass.pyx", line 518, in
 sage.misc.classcall_metaclass.typecall
 (sage/misc/classcall_metaclass.c:1586)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/powersum.py", line 41, in __init__
         classical.SymmetricFunctionAlgebra_classical.__init__(self, Sym,
 "powersum", 'p')
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sfa.py", line 1025, in __init__
         category = SymmetricFunctionsBases(Sym),
       File "classcall_metaclass.pyx", line 330, in
 sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
 (sage/misc/classcall_metaclass.c:1224)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 464, in __classcall__
         return super(Category, cls).__classcall__(cls, *args, **options)
       File "cachefunc.pyx", line 1030, in
 sage.misc.cachefunc.WeakCachedFunction.__call__
 (sage/misc/cachefunc.c:5675)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/unique_representation.py", line 1005, in
 __classcall__
         instance = typecall(cls, *args, **options)
       File "classcall_metaclass.pyx", line 518, in
 sage.misc.classcall_metaclass.typecall
 (sage/misc/classcall_metaclass.c:1586)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sfa.py", line 477, in __init__
         Category_realization_of_parent.__init__(self, base)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/realizations.py", line 147, in __init__
         Category_over_base.__init__(self, parent_with_realization)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 204, in __init__
         Category.__init__(self, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 499, in __init__
         (self.__class__, self.subcategory_class, ),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1277, in subcategory_class
         cache=False, picklable=False)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 2064, in _make_named_class
         cache=cache, **options)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1233, in _make_named_class
         tuple(getattr(cat,name) for cat in
 self._super_categories_for_classes),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1059, in
 _super_categories_for_classes
         self._all_super_categories
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 885, in _all_super_categories
         for cat in self._super_categories] +
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1034, in _super_categories
         return
 sorted(Category._flatten_categories(self.super_categories()), key =
 category_sort_key, reverse=True)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/combinat/sf/sfa.py", line 514, in super_categories
         return [GradedHopfAlgebrasWithBasis(self.base().base_ring()),
       File "classcall_metaclass.pyx", line 330, in
 sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
 (sage/misc/classcall_metaclass.c:1224)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 464, in __classcall__
         return super(Category, cls).__classcall__(cls, *args, **options)
       File "cachefunc.pyx", line 1030, in
 sage.misc.cachefunc.WeakCachedFunction.__call__
 (sage/misc/cachefunc.c:5675)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/unique_representation.py", line 1005, in
 __classcall__
         instance = typecall(cls, *args, **options)
       File "classcall_metaclass.pyx", line 518, in
 sage.misc.classcall_metaclass.typecall
 (sage/misc/classcall_metaclass.c:1586)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 327, in __init__
         Category_over_base.__init__(self, base, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 204, in __init__
         Category.__init__(self, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 499, in __init__
         (self.__class__, self.subcategory_class, ),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1277, in subcategory_class
         cache=False, picklable=False)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 2064, in _make_named_class
         cache=cache, **options)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1233, in _make_named_class
         tuple(getattr(cat,name) for cat in
 self._super_categories_for_classes),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1059, in
 _super_categories_for_classes
         self._all_super_categories
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 885, in _all_super_categories
         for cat in self._super_categories] +
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1034, in _super_categories
         return
 sorted(Category._flatten_categories(self.super_categories()), key =
 category_sort_key, reverse=True)
       File "cachefunc.pyx", line 1775, in
 sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__
 (sage/misc/cachefunc.c:9548)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/graded_hopf_algebras_with_basis.py", line 42, in
 super_categories
         return [GradedBialgebrasWithBasis(R), GradedHopfAlgebras(R),
 HopfAlgebrasWithBasis(R)]
       File "classcall_metaclass.pyx", line 330, in
 sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
 (sage/misc/classcall_metaclass.c:1224)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 464, in __classcall__
         return super(Category, cls).__classcall__(cls, *args, **options)
       File "cachefunc.pyx", line 1030, in
 sage.misc.cachefunc.WeakCachedFunction.__call__
 (sage/misc/cachefunc.c:5675)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/unique_representation.py", line 1005, in
 __classcall__
         instance = typecall(cls, *args, **options)
       File "classcall_metaclass.pyx", line 518, in
 sage.misc.classcall_metaclass.typecall
 (sage/misc/classcall_metaclass.c:1586)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 327, in __init__
         Category_over_base.__init__(self, base, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 204, in __init__
         Category.__init__(self, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 499, in __init__
         (self.__class__, self.subcategory_class, ),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1277, in subcategory_class
         cache=False, picklable=False)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 2064, in _make_named_class
         cache=cache, **options)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1233, in _make_named_class
         tuple(getattr(cat,name) for cat in
 self._super_categories_for_classes),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1059, in
 _super_categories_for_classes
         self._all_super_categories
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 885, in _all_super_categories
         for cat in self._super_categories] +
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1034, in _super_categories
         return
 sorted(Category._flatten_categories(self.super_categories()), key =
 category_sort_key, reverse=True)
       File "cachefunc.pyx", line 1775, in
 sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__
 (sage/misc/cachefunc.c:9548)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/graded_bialgebras_with_basis.py", line 40, in
 super_categories
         return [GradedAlgebrasWithBasis(R), GradedCoalgebrasWithBasis(R),
 GradedBialgebras(R)]
       File "classcall_metaclass.pyx", line 330, in
 sage.misc.classcall_metaclass.ClasscallMetaclass.__call__
 (sage/misc/classcall_metaclass.c:1224)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 464, in __classcall__
         return super(Category, cls).__classcall__(cls, *args, **options)
       File "cachefunc.pyx", line 1030, in
 sage.misc.cachefunc.WeakCachedFunction.__call__
 (sage/misc/cachefunc.c:5675)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/unique_representation.py", line 1005, in
 __classcall__
         instance = typecall(cls, *args, **options)
       File "classcall_metaclass.pyx", line 518, in
 sage.misc.classcall_metaclass.typecall
 (sage/misc/classcall_metaclass.c:1586)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 327, in __init__
         Category_over_base.__init__(self, base, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category_types.py", line 204, in __init__
         Category.__init__(self, name)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 499, in __init__
         (self.__class__, self.subcategory_class, ),
       File "lazy_attribute.pyx", line 127, in
 sage.misc.lazy_attribute._lazy_attribute.__get__
 (sage/misc/lazy_attribute.c:1300)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1277, in subcategory_class
         cache=False, picklable=False)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 2064, in _make_named_class
         cache=cache, **options)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/categories/category.py", line 1235, in _make_named_class
         reduction = reduction, cache = cache)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/dynamic_class.py", line 316, in dynamic_class
         return dynamic_class_internal.f(name, bases, cls, reduction,
 doccls, prepend_cls_bases)
       File "/home/darij/sage-5.13.beta3/local/lib/python2.7/site-
 packages/sage/structure/dynamic_class.py", line 411, in
 dynamic_class_internal
         return metaclass(name, bases, methods)
     TypeError: Cannot create a consistent method resolution
     order (MRO) for bases ModulesWithBasis.subcategory_class,
 Modules.subcategory_class, GradedModules.subcategory_class
 **********************************************************************
 }}}
 This happens only because of the doctest
 {{{
                 sage: s = SymmetricFunctions(Zmod(14)).s()
                 sage: s.is_integral_domain()
                 False
 }}}
 before it.

 What the fuck???

--
Ticket URL: <http://trac.sagemath.org/ticket/15473#comment:1>
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/groups/opt_out.

Reply via email to