# Symmetric Functions

- [Introduction](introduction.md)

  - [`Example: Inf Invar`](introduction.md#example-ex-1cbf7a)

- [Creation](creation.md)

  - [Creation of Symmetric Function Algebras](creation.md#creation-of-symmetric-function-algebras)

    - [`SymmetricFunctionAlgebra(R): Rng → AlgSym`](creation.md#function-symmetricfunctionalgebra-rng)

    - [`SFA(R): Rng → AlgSym`](creation.md#function-sfa-rng)

    - [`SymmetricFunctionAlgebraSchur(R): Rng → AlgSym`](creation.md#function-symmetricfunctionalgebraschur-rng)

    - [`SFASchur(R): Rng → AlgSym`](creation.md#function-sfaschur-rng)

    - [`SymmetricFunctionAlgebraHomogeneous(R): Rng → AlgSym`](creation.md#function-symmetricfunctionalgebrahomogeneous-rng)

    - [`SFAHomogeneous(R): Rng → AlgSym`](creation.md#function-sfahomogeneous-rng)

    - [`SymmetricFunctionAlgebraPower(R): Rng → AlgSym`](creation.md#function-symmetricfunctionalgebrapower-rng)

    - [`SFAPower(R): Rng → AlgSym`](creation.md#function-sfapower-rng)

    - [`SymmetricFunctionAlgebraElementary(R): Rng → AlgSym`](creation.md#function-symmetricfunctionalgebraelementary-rng)

    - [`SFAElementary(R): Rng → AlgSym`](creation.md#function-sfaelementary-rng)

    - [`SymmetricFunctionAlgebraMonomial(R): Rng → AlgSym`](creation.md#function-symmetricfunctionalgebramonomial-rng)

    - [`SFAMonomial(R): Rng → AlgSym`](creation.md#function-sfamonomial-rng)

    - [`Example: creation`](creation.md#example-ex-0b7c9a)

  - [Creation of Symmetric Functions](creation.md#creation-of-symmetric-functions)

    - [`A . P: AlgSym, [ RngIntElt ] → AlgSymElt`](creation.md#operation-operation-algsym-rngintelt-algsymelt)

    - [`A . i: AlgSym, RngIntElt → AlgSymElt`](creation.md#operation-operation-algsym-rngintelt-algsymelt-2)

    - [`Example: Elt Create`](creation.md#example-ex-a9791f)

    - [`A ! f: AlgSym, RngMPolElt → AlgSymElt`](creation.md#operation-op-algsym-rngmpolelt)

    - [`Example: poly bang`](creation.md#example-ex-6ef1d0)

    - [`Example: Poly Bang 2`](creation.md#example-ex-dff88d)

    - [`A ! r: AlgSym, RngElt → AlgSymElt`](creation.md#operation-op-algsym-rngelt)

    - [`Example: Elt Create Scalar`](creation.md#example-ex-e44a43)

    - [`A ! m: AlgSym, AlgSymElt → AlgSymElt`](creation.md#operation-op-algsym-algsymelt)

    - [`Example: Elt Create Change Basis`](creation.md#example-ex-ff09c7)

    - [`Example: Change Basis 2`](creation.md#example-ex-16a913)

- [Structure Operations](operation.md)

  - [Related Structures](operation.md#related-structures)

    - [`BaseRing(L): AlgSym → Rng`](operation.md#function-basering-algsym)

    - [`CoefficientRing(L): AlgSym → Rng`](operation.md#function-coefficientring-algsym)

    - [`Category(L): AlgSym → Cat`](operation.md#function-category-algsym)

    - [`Parent(L): AlgSym → Pow`](operation.md#function-parent-algsym)

    - [`PrimeRing(L): AlgSym → Rng`](operation.md#function-primering-algsym)

  - [Ring Predicates and Booleans](operation.md#ring-predicates-and-booleans)

    - [`IsCommutative(L): AlgSym → BoolElt`](operation.md#function-iscommutative-algsym)

    - [`IsUnitary(L): AlgSym → BoolElt`](operation.md#function-isunitary-algsym)

    - [`IsFinite(L): AlgSym → BoolElt`](operation.md#function-isfinite-algsym)

    - [`IsOrdered(L): AlgSym → BoolElt`](operation.md#function-isordered-algsym)

    - [`IsField(L): AlgSym → BoolElt`](operation.md#function-isfield-algsym)

    - [`IsEuclideanDomain(L): AlgSym → BoolElt`](operation.md#function-iseuclideandomain-algsym)

    - [`IsPID(L): AlgSym → BoolElt`](operation.md#function-ispid-algsym)

    - [`IsUFD(L): AlgSym → BoolElt`](operation.md#function-isufd-algsym)

    - [`IsDivisionRing(L): AlgSym → BoolElt`](operation.md#function-isdivisionring-algsym)

    - [`IsEuclideanRing(L): AlgSym → BoolElt`](operation.md#function-iseuclideanring-algsym)

    - [`IsDomain(L): AlgSym → BoolElt`](operation.md#function-isdomain-algsym)

    - [`IsPrincipalIdealRing(L): AlgSym → BoolElt`](operation.md#function-isprincipalidealring-algsym)

    - [`L eq M: AlgSym, AlgSym → BoolElt`](operation.md#operation-op-eq-algsym-algsym)

    - [`L ne M: AlgSym, AlgSym → BoolElt`](operation.md#operation-op-ne-algsym-algsym)

  - [Predicates on Basis Types](operation.md#predicates-on-basis-types)

    - [`HasSchurBasis(A): AlgSym → BoolElt`](operation.md#function-hasschurbasis-algsym)

    - [`HasHomogeneousBasis(A): AlgSym → BoolElt`](operation.md#function-hashomogeneousbasis-algsym)

    - [`HasElementaryBasis(A): AlgSym → BoolElt`](operation.md#function-haselementarybasis-algsym)

    - [`HasPowerSumBasis(A): AlgSym → BoolElt`](operation.md#function-haspowersumbasis-algsym)

    - [`HasMonomialBasis(A): AlgSym → BoolElt`](operation.md#function-hasmonomialbasis-algsym)

- [Element Operations](operation-element.md)

  - [Parent and Category](operation-element.md#parent-and-category)

    - [`Parent(f): AlgSymElt → AlgSym`](operation-element.md#function-parent-algsymelt)

    - [`Category(f): AlgSymElt → Cat`](operation-element.md#function-category-algsymelt)

  - [Print Styles](operation-element.md#print-styles)

    - [`A ` PrintStyle: AlgSym → MonStgElt`](operation-element.md#attribute-attribute-a-printstyle-algsym-monstgelt)

    - [`Example: Print Style`](operation-element.md#example-ex-17b218)

  - [Additive Arithmetic Operators](operation-element.md#additive-arithmetic-operators)

    - [`+ a: AlgSymElt → AlgSymElt`](operation-element.md#operation-operation-algsymelt-algsymelt)

    - [`- a: AlgSymElt → AlgSymElt`](operation-element.md#operation-operation-algsymelt-algsymelt-2)

    - [`a + b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-op-plus-algsymelt-algsymelt)

    - [`a - b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-op-minus-algsymelt-algsymelt)

    - [`a +:= b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-operation-algsymelt-algsymelt-algsymelt)

    - [`a -:= b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-operation-algsymelt-algsymelt-algsymelt-2)

  - [Multiplication](operation-element.md#multiplication)

    - [`a * b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-op-times-algsymelt-algsymelt)

    - [`a *:= b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-operation-algsymelt-algsymelt-algsymelt-3)

    - [`a ^ k: AlgSymElt, RngIntElt → AlgSymElt`](operation-element.md#operation-op-pow-algsymelt-rngintelt)

    - [`Example: mult`](operation-element.md#example-ex-cf1c1c)

  - [Plethysm](operation-element.md#plethysm)

    - [`a ~ b: AlgSymElt, AlgSymElt → AlgSymElt`](operation-element.md#operation-operation-algsymelt-algsymelt-algsymelt-4)

    - [`Example: pleth`](operation-element.md#example-ex-107368)

  - [Boolean Operators](operation-element.md#boolean-operators)

    - [`IsHomogeneous(s): AlgSymElt → BoolElt`](operation-element.md#function-ishomogeneous-algsymelt)

    - [`IsZero(s): AlgSymElt → BoolElt`](operation-element.md#function-iszero-algsymelt)

    - [`IsOne(s): AlgSymElt → BoolElt`](operation-element.md#function-isone-algsymelt)

    - [`IsMinusOne(s): AlgSymElt → BoolElt`](operation-element.md#function-isminusone-algsymelt)

    - [`s eq t: AlgSymElt, AlgSymElt → BoolElt`](operation-element.md#operation-op-eq-algsymelt-algsymelt)

    - [`s ne t: AlgSymElt, AlgSymElt → BoolElt`](operation-element.md#operation-op-ne-algsymelt-algsymelt)

  - [Accessing Elements](operation-element.md#accessing-elements)

    - [`Coefficient(s, p): AlgSymElt, SeqEnum → RngElt`](operation-element.md#function-coefficient-algsymelt-seqenum)

    - [`Support(s): AlgSymElt → [SeqEnum], [RngElt]`](operation-element.md#function-support-algsymelt)

    - [`Length(s): AlgSymElt → RngIntElt`](operation-element.md#function-length-algsymelt)

    - [`Example: support`](operation-element.md#example-ex-4a300f)

    - [`Degree(s): AlgSymElt → RngIntElt`](operation-element.md#function-degree-algsymelt)

  - [Multivariate Polynomials](operation-element.md#multivariate-polynomials)

    - [`P ! s: RngMPol, AlgSymElt → RngMPolElt`](operation-element.md#operation-op-rngmpol-algsymelt)

    - [`Example: symmetric polynomials and symmetric functions`](operation-element.md#example-ex-10b1c4)

    - [`Example: Change Of Alphabet`](operation-element.md#example-ex-86835b)

  - [Frobenius Homomorphism](operation-element.md#frobenius-homomorphism)

    - [`Frobenius(s): AlgSymElt → AlgSymElt`](operation-element.md#function-frobenius-algsymelt)

    - [`Example: Frobenius automorphism`](operation-element.md#example-ex-41dc58)

  - [Inner Product](operation-element.md#inner-product)

    - [`InnerProduct(a,b): AlgSymElt, AlgSymElt → RngElt`](operation-element.md#function-innerproduct-algsymelt-algsymelt)

    - [`Example: Inner Product`](operation-element.md#example-ex-71d4ca)

  - [Combinatorial Objects](operation-element.md#combinatorial-objects)

    - [`Tableaux(sf, m): AlgSymElt, RngIntElt → SetMulti`](operation-element.md#function-tableaux-algsymelt-rngintelt)

  - [Symmetric Group Character](operation-element.md#symmetric-group-character)

    - [`SymmetricCharacter(sf): AlgSymElt → AlgChtrElt`](operation-element.md#function-symmetriccharacter-algsymelt)

    - [`Example: Symmetric Polynomials And Symmetric Functions`](operation-element.md#example-ex-102778)

  - [Restrictions](operation-element.md#restrictions)

    - [`RestrictDegree(a, n): AlgSymElt, RngIntElt → AlgSymElt`](operation-element.md#function-restrictdegree-algsymelt-rngintelt)

    - [`RestrictPartitionLength(a, n): AlgSymElt, RngIntElt → AlgSymElt`](operation-element.md#function-restrictpartitionlength-algsymelt-rngintelt)

    - [`RestrictParts(a, n): AlgSymElt, RngIntElt → AlgSymElt`](operation-element.md#function-restrictparts-algsymelt-rngintelt)

- [Transition Matrices](matrices.md)

  - [Transition Matrices from Schur Basis](matrices.md#transition-matrices-from-schur-basis)

    - [`SchurToMonomialMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-schurtomonomialmatrix-rngintelt)

    - [`Example: creation`](matrices.md#example-ex-c92c1f)

    - [`SchurToHomogeneousMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-schurtohomogeneousmatrix-rngintelt)

    - [`SchurToPowerSumMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-schurtopowersummatrix-rngintelt)

    - [`SchurToElementaryMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-schurtoelementarymatrix-rngintelt)

    - [`Example: trans`](matrices.md#example-ex-ed1ff8)

  - [Transition Matrices from Monomial Basis](matrices.md#transition-matrices-from-monomial-basis)

    - [`MonomialToSchurMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-monomialtoschurmatrix-rngintelt)

    - [`MonomialToHomogeneousMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-monomialtohomogeneousmatrix-rngintelt)

    - [`MonomialToPowerSumMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-monomialtopowersummatrix-rngintelt)

    - [`MonomialToElementaryMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-monomialtoelementarymatrix-rngintelt)

  - [Transition Matrices from Homogeneous Basis](matrices.md#transition-matrices-from-homogeneous-basis)

    - [`HomogeneousToSchurMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-homogeneoustoschurmatrix-rngintelt)

    - [`Example: HS`](matrices.md#example-ex-eb6dd0)

    - [`HomogeneousToMonomialMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-homogeneoustomonomialmatrix-rngintelt)

    - [`Example: hm`](matrices.md#example-ex-5582be)

    - [`HomogeneousToPowerSumMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-homogeneoustopowersummatrix-rngintelt)

    - [`HomogeneousToElementaryMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-homogeneoustoelementarymatrix-rngintelt)

    - [`Example: HE`](matrices.md#example-ex-6bb56e)

  - [Transition Matrices from Power Sum Basis](matrices.md#transition-matrices-from-power-sum-basis)

    - [`PowerSumToSchurMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-powersumtoschurmatrix-rngintelt)

    - [`Example: Character Table`](matrices.md#example-ex-75ee8a)

    - [`PowerSumToMonomialMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-powersumtomonomialmatrix-rngintelt)

    - [`PowerSumToHomogeneousMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-powersumtohomogeneousmatrix-rngintelt)

    - [`PowerSumToElementaryMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-powersumtoelementarymatrix-rngintelt)

  - [Transition Matrices from Elementary Basis](matrices.md#transition-matrices-from-elementary-basis)

    - [`ElementaryToSchurMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-elementarytoschurmatrix-rngintelt)

    - [`ElementaryToMonomialMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-elementarytomonomialmatrix-rngintelt)

    - [`Example: em`](matrices.md#example-ex-5a0537)

    - [`ElementaryToHomogeneousMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-elementarytohomogeneousmatrix-rngintelt)

    - [`ElementaryToPowerSumMatrix(n): RngIntElt → AlgMatElt`](matrices.md#function-elementarytopowersummatrix-rngintelt)
