# Classical symmetric functions#

The class of classical symmetric functions.

Todo

delete this class once all coercions will be handled by Sage’s coercion model

class Element[source]#

A symmetric function.

sage.combinat.sf.classical.init()[source]#

Set up the conversion functions between the classical bases.

EXAMPLES:

sage: from sage.combinat.sf.classical import init
sage: sage.combinat.sf.classical.conversion_functions = {}
sage: init()
sage: sage.combinat.sf.classical.conversion_functions[('Schur', 'powersum')]
<built-in function t_SCHUR_POWSYM_symmetrica>

>>> from sage.all import *
>>> from sage.combinat.sf.classical import init
>>> sage.combinat.sf.classical.conversion_functions = {}
>>> init()
>>> sage.combinat.sf.classical.conversion_functions[('Schur', 'powersum')]
<built-in function t_SCHUR_POWSYM_symmetrica>


The following checks if the bug described in Issue #15312 is fixed.

sage: change = sage.combinat.sf.classical.conversion_functions[('powersum', 'Schur')]
sage: hideme = change({Partition([1]*47):ZZ(1)}) # long time
sage: change({Partition([2,2]):QQ(1)})
s[1, 1, 1, 1] - s[2, 1, 1] + 2*s[2, 2] - s[3, 1] + s[4]

>>> from sage.all import *
>>> change = sage.combinat.sf.classical.conversion_functions[('powersum', 'Schur')]
>>> hideme = change({Partition([Integer(1)]*Integer(47)):ZZ(Integer(1))}) # long time
>>> change({Partition([Integer(2),Integer(2)]):QQ(Integer(1))})
s[1, 1, 1, 1] - s[2, 1, 1] + 2*s[2, 2] - s[3, 1] + s[4]