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
|
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
|
The object SchurRing is a type, with ancestor classes EngineRing < Ring < Type < MutableHashTable < HashTable < Thing.