# SchurRing -- The class of all Schur rings

## Description

A Schur ring is the representation ring for the general linear group of n\times n matrices, and one can be constructed with schurRing.

 i1 : S = schurRing(QQ,s,4) o1 = S o1 : SchurRing

Alternatively, its elements can be interpreted as virtual characters of symmetric groups, by setting the value of the option GroupActing to "Sn".

 i2 : Q = schurRing(QQ,q,4,GroupActing => "Sn") o2 = Q o2 : SchurRing

The element corresponding to the Young diagram \{3,2,1\}, is obtained as follows.

 i3 : s_{3,2,1} o3 = s 3,2,1 o3 : S

Alternatively, we can use a Sequence instead of a List as the index of a Schur function.

 i4 : s_(3,2,1) o4 = s 3,2,1 o4 : S

For Young diagrams with only one row one can use positive integers as subscripts.

 i5 : q_4 o5 = q 4 o5 : Q

The name of the Schur ring can be used with a subscript to describe a symmetric function.

 i6 : Q_{2,2} o6 = q 2,2 o6 : Q i7 : S_5 o7 = s 5 o7 : S

The dimension of the underlying virtual GL-representation can be obtained with dim.

 i8 : dim s_{3,2,1} o8 = 64

Multiplication in the ring comes from tensor product of representations.

 i9 : s_{3,2,1} * s_{1,1} o9 = s + s + s + s + s + s 4,3,1 4,2,2 4,2,1,1 3,3,2 3,3,1,1 3,2,2,1 o9 : S i10 : q_{2,1} * q_{2,1} o10 = q + q + q 3 2,1 1,1,1 o10 : Q

To extract data in an element in a SchurRing, use listForm:

 i11 : listForm (s_{3})^2 o11 = {({6}, 1), ({5, 1}, 1), ({4, 2}, 1), ({3, 3}, 1)} o11 : List i12 : q_{2,1} * q_{2,1} o12 = q + q + q 3 2,1 1,1,1 o12 : Q i13 : listForm oo o13 = {({3}, 1), ({2, 1}, 1), ({1, 1, 1}, 1)} o13 : List

## Functions and methods returning a Schur ring :

• "schurRing(Ring,Symbol,ZZ)" -- see schurRing -- Make a SchurRing
• "schurRing(Ring,Thing)" -- see schurRing -- Make a SchurRing
• "schurRing(Ring,Thing,ZZ)" -- see schurRing -- Make a SchurRing

## Methods that use a Schur ring :

• coefficientRing(SchurRing) -- Coefficient ring of a Schur ring
• numgens(SchurRing) -- Number of generators of Schur ring.
• "SchurRing _ List"
• "SchurRing _ Sequence"
• "SchurRing _ ZZ"
• "toS(RingElement,SchurRing)" -- see toS -- Schur (s-) basis representation

## For the programmer

The object SchurRing is a type, with ancestor classes EngineRing < Ring < Type < MutableHashTable < HashTable < Thing.