Schur algebras for
¶
This file implements:
- Schur algebras for
over an arbitrary field. - The canonical action of the Schur algebra on a tensor power of the standard representation.
- Using the above to calculate the characters of irreducible
modules.
AUTHORS:
- Eric Webster (2010-07-01): implement Schur algebra
- Hugh Thomas (2011-05-08): implement action of Schur algebra and characters of irreducible modules
REFERENCES:
| [GreenPoly] | (1, 2) J. Green, Polynomial representations of , Springer Verlag. |
-
sage.algebras.schur_algebra.GL_irreducible_character(n, mu, KK)¶ Return the character of the irreducible module indexed by
muof
over the field KK.INPUT:
n– a positive integermu– a partition of at mostnpartsKK– a field
OUTPUT:
a symmetric function which should be interpreted in
nvariables to be meaningful as a characterEXAMPLES:
Over
, the irreducible character for
is the Schur
function associated to
, plus garbage terms (Schur
functions associated to partitions with more than
parts):sage: from sage.algebras.schur_algebra import GL_irreducible_character sage: sbasis = SymmetricFunctions(QQ).s() sage: z = GL_irreducible_character(2, [2], QQ) sage: sbasis(z) s[2] sage: z = GL_irreducible_character(4, [3, 2], QQ) sage: sbasis(z) -5*s[1, 1, 1, 1, 1] + s[3, 2]
Over a Galois field, the irreducible character for
will
in general be smaller.In characteristic
, for a one-part partition
, where
, the result is (see [GreenPoly],
after 5.5d) the product of
which is consistent with the followingsage: from sage.algebras.schur_algebra import GL_irreducible_character sage: GL_irreducible_character(2, [7], GF(3)) m[4, 3] + m[6, 1] + m[7]
-
class
sage.algebras.schur_algebra.SchurAlgebra(R, n, r)¶ Bases:
sage.combinat.free_module.CombinatorialFreeModuleA Schur algebra.
Let
be a commutative ring,
be a positive integer, and
be a non-negative integer. Define
to be the set of
homogeneous polynomials of degree
in
variables
.
Therefore we can write
,
and
is known to be a bialgebra with coproduct given by
and counit
. Therefore
is a
subcoalgebra of
. The Schur algebra
is the
linear dual to
, that is
,
and
obtains its algebra structure naturally by dualizing
the comultiplication of
.Let
. One of the most important properties of the Schur
algebra
is that it is isomorphic to the endomorphisms
of
which commute with the natural action of
.EXAMPLES:
sage: S = SchurAlgebra(ZZ, 2, 2); S Schur algebra (2, 2) over Integer Ring
REFERENCES:
-
dimension()¶ Return the dimension of
self.The dimension of the Schur algebra
is
EXAMPLES:
sage: S = SchurAlgebra(QQ, 4, 2) sage: S.dimension() 136 sage: S = SchurAlgebra(QQ, 2, 4) sage: S.dimension() 35
-
one()¶ Return the element
of self.EXAMPLES:
sage: S = SchurAlgebra(ZZ, 2, 2) sage: e = S.one(); e S((1, 1), (1, 1)) + S((1, 2), (1, 2)) + S((2, 2), (2, 2)) sage: x = S.an_element() sage: x * e == x True sage: all(e * x == x for x in S.basis()) True sage: S = SchurAlgebra(ZZ, 4, 4) sage: e = S.one() sage: x = S.an_element() sage: x * e == x True
-
product_on_basis(e_ij, e_kl)¶ Return the product of basis elements.
EXAMPLES:
sage: S = SchurAlgebra(QQ, 2, 3) sage: B = S.basis()
If we multiply two basis elements
and
, such that
and
are not permutations of each other, the
result is zero:sage: S.product_on_basis(((1, 1, 1), (1, 1, 2)), ((1, 2, 2), (1, 1, 2))) 0
If we multiply a basis element
by a basis element which
consists of the same tuple repeated twice (on either side),
the result is either zero (if the previous case applies) or
:sage: ww = B[((1, 2, 2), (1, 2, 2))] sage: x = B[((1, 2, 2), (1, 1, 2))] sage: ww * x S((1, 2, 2), (1, 1, 2))
An arbitrary product, on the other hand, may have multiplicities:
sage: x = B[((1, 1, 1), (1, 1, 2))] sage: y = B[((1, 1, 2), (1, 2, 2))] sage: x * y 2*S((1, 1, 1), (1, 2, 2))
-
-
class
sage.algebras.schur_algebra.SchurTensorModule(R, n, r)¶ Bases:
sage.combinat.free_module.CombinatorialFreeModule_TensorThe space
where
equipped with a left action
of the Schur algebra
and a right action of the symmetric
group
.Let
be a commutative ring and
. We consider the module
equipped with a natural right action of the symmetric
group
given by
The Schur algebra
is naturally isomorphic to the
endomorphisms of
which commutes with the
action.
We get the natural left action of
by this isomorphism.EXAMPLES:
sage: T = SchurTensorModule(QQ, 2, 3); T The 3-fold tensor product of a free module of dimension 2 over Rational Field sage: A = SchurAlgebra(QQ, 2, 3) sage: P = Permutations(3) sage: t = T.an_element(); t 2*B[1] # B[1] # B[1] + 2*B[1] # B[1] # B[2] + 3*B[1] # B[2] # B[1] sage: a = A.an_element(); a 2*S((1, 1, 1), (1, 1, 1)) + 2*S((1, 1, 1), (1, 1, 2)) + 3*S((1, 1, 1), (1, 2, 2)) sage: p = P.an_element(); p [3, 1, 2] sage: y = a * t; y 14*B[1] # B[1] # B[1] sage: y * p 14*B[1] # B[1] # B[1] sage: z = t * p; z 2*B[1] # B[1] # B[1] + 3*B[1] # B[1] # B[2] + 2*B[2] # B[1] # B[1] sage: a * z 14*B[1] # B[1] # B[1]
We check the commuting action property:
sage: all( (bA * bT) * p == bA * (bT * p) ....: for bT in T.basis() for bA in A.basis() for p in P) True
-
class
Element(M, x)¶ Bases:
sage.combinat.free_module.CombinatorialFreeModuleElementCreate a combinatorial module element. This should never be called directly, but only through the parent combinatorial free module’s
__call__()method.TESTS:
sage: F = CombinatorialFreeModule(QQ, ['a','b','c']) sage: B = F.basis() sage: f = B['a'] + 3*B['c']; f B['a'] + 3*B['c'] sage: f == loads(dumps(f)) True
-
class
-
sage.algebras.schur_algebra.schur_representative_from_index(i0, i1)¶ Simultaneously reorder a pair of tuples to obtain the equivalent element of the distinguished basis of the Schur algebra.
See also
INPUT:
- A pair of tuples of length
with elements in 
OUTPUT:
- The corresponding pair of tuples ordered correctly.
EXAMPLES:
sage: from sage.algebras.schur_algebra import schur_representative_from_index sage: schur_representative_from_index([2,1,2,2], [1,3,0,0]) ((1, 2, 2, 2), (3, 0, 0, 1))
- A pair of tuples of length
-
sage.algebras.schur_algebra.schur_representative_indices(n, r)¶ Return a set which functions as a basis of
.More specifically, the basis for
consists of
equivalence classes of pairs of tuples of length ron the alphabet
, where the equivalence relation is simultaneous
permutation of the two tuples. We can therefore fix a
representative for each equivalence class in which the entries of
the first tuple weakly increase, and the entries of the second tuple
whose corresponding values in the first tuple are equal, also
weakly increase.EXAMPLES:
sage: from sage.algebras.schur_algebra import schur_representative_indices sage: schur_representative_indices(2, 2) [((1, 1), (1, 1)), ((1, 1), (1, 2)), ((1, 1), (2, 2)), ((1, 2), (1, 1)), ((1, 2), (1, 2)), ((1, 2), (2, 1)), ((1, 2), (2, 2)), ((2, 2), (1, 1)), ((2, 2), (1, 2)), ((2, 2), (2, 2))]
