muEC::SFA::SfAExpand – expands a SFA expression

expands a SFA expression

→ Examples

Call:

muEC::SFA::SfAExpand(sfa)

Parameters:

sfa

any valid expression in vlist

Related Functions:

muEC::SFA::SfACollect, muEC::SFA::SfAVars, muEC::SYMF::SfEval, muEC::SYMF::SfPlethysm

Details:

The muEC::SFA::SfAExpand function expands, whenever possible, any expression in SFA. It is a direct implementation of the math-ring structure, i.e. symmetric functions are considered as operators over the ring of polynomials.

Expansion is inductively propagated, thus enabling chains of plethysms.

Alphabets are either formal alphabets (math, math, ...), or real constants (any float object or any formal variable which in not one of the math, or variables (when explicitely so declared), or symmetric functions of SFA, or any linear combination of alphabets. For instance, 3/2*A1 + k*(A2 - s[3](-A1)) is a valid alphabet.

One may declare variables by setting e.g. SfAVars({{x}, {y}, z1, z2}). Here, z1, z2, all xi's, and all yi's will be held as variables within alphabets.

Rules used for e.g. power sums symmetric functions are:

math

where math is a real constant different of then math, math is an explicitely declared variable, math is a formal alphabet and math and math are positive integers. Equivalent rules for the other bases are also implemented.

Example 1:

muEC::SFA::SfAExpand( p[4,2](7+A1) );

math

muEC::SFA::SfAExpand( s[2](A1 - 3/2*A2 + k) );

math

muEC::SFA::SfAVars( { {x}, {y}, z1 } );

math

muEC::SFA::SfAExpand( p[3]( q*m[2,1]( x1-k+A2 ) - z1^2+C ) );

math