Hi Robert, I am working on the final integration of the category patches with Sage 4.2, and am running into a seg fault :-( Namely, with the latest sage-combinat patches applied up to root_systems-4326-nt.patch, the following commands:
sage: s = SFAMonomial(QQ) sage: s([]) or alternatively: sage: s.coerce_map_from(list) trigger an infinite recursion between coerce_map_from and discover_coerce_map. I added a couple print statements of the input arguments in those, and of _coerce_test_list in _register_pair, and got the (truncated) stack below. One weird thing is that e.g. the Elementary basis can occur twice in _coerce_test_list. I am a bit at loss debugging this further (I am useless when I can't use Python's debugger). Could you please have a look? Do you have ideas of what can go wrong? Things work fine with 4.1.2+patches, 4.2 vanilla, and 4.2 + category patches up to categories-unpickle_backward_compatibility_aliases-nt.patch. Other than that, things are looking good up to a few glitches, and a couple declarations of coercions that occur too late for #5598 taste. Thanks in advance! Nicolas sage: s.coerce_map_from(list) coerce_map_from Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis <type 'list'> coucou: [] + 'coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Rational Field (<class 'sage.rings.rational_field.RationalField'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Rational Field <type 'list'> coerce_map_from Integer Ring <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>) coerce_map_from Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>) coerce_map_from Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>) coerce_map_from Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis (<class 'sage.combinat.sf.homogeneous.SymmetricFunctionAlgebra_homogeneous_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis (<class 'sage.combinat.sf.homogeneous.SymmetricFunctionAlgebra_homogeneous_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis (<class 'sage.combinat.sf.homogeneous.SymmetricFunctionAlgebra_homogeneous_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Monomial symmetric functions as basis (<class 'sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial_with_category'>), <type 'list'> (<type 'type'>) coerce_map_from Symmetric Function Algebra over Rational Field, Power symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis (<class 'sage.combinat.sf.homogeneous.SymmetricFunctionAlgebra_homogeneous_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Power symmetric functions as basis (<class 'sage.combinat.sf.powersum.SymmetricFunctionAlgebra_power_with_category'>), <type 'list'> (<type 'type'>) discover_coerce_map_from Symmetric Function Algebra over Rational Field, Power symmetric functions as basis <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Rational Field <type 'list'> coerce_map_from Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis <type 'list'> coucou: ['coerce': Symmetric Function Algebra over Rational Field, Homogeneous symmetric functions as basis (<class 'sage.combinat.sf.homogeneous.SymmetricFunctionAlgebra_homogeneous_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Schur symmetric functions as basis (<class 'sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur_with_category'>), <type 'list'> (<type 'type'>), 'coerce': Symmetric Function Algebra over Rational Field, Power symmetric functions as basis (<class 'sage.combinat.sf.powersum.SymmetricFunctionAlgebra_power_with_category'>), <type 'list'> (<type 'type'>)] + 'coerce': Symmetric Function Algebra over Rational Field, Elementary symmetric functions as basis (<class 'sage.combinat.sf.elementary.SymmetricFunctionAlgebra_elementary_with_category'>), <type 'list'> (<type 'type'>) -- Nicolas M. ThiƩry "Isil" <nthi...@users.sf.net> http://Nicolas.Thiery.name/ --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To post to this group, send email to sage-combinat-devel@googlegroups.com To unsubscribe from this group, send email to sage-combinat-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en -~----------~----~----~----~------~----~------~--~---