This is PieriMaps.info, produced by Macaulay2, version 1.22

PieriMaps -- Pieri inclusions
*****************************

Description
===========

For mathematical background of this package and some examples of use, see:
Steven V Sam, Computing inclusions of Schur modules, arXiv:0810.4666
Some other references:
Andrzej Daszkiewicz, On the Invariant Ideals of the Symmetric Algebra $S.(V
\oplus \wedge^2 V)$, J. Algebra 125, 1989, 444-473.
David Eisenbud, Gunnar Fl\o ystad, and Jerzy Weyman, The existence of pure free
resolutions, arXiv:0709.1529.
William Fulton, Young Tableaux: With Applications to Representation Theory and
Geometry, London Math. Society Student Texts 35, 1997.
Jerzy Weyman, Cohomology of Vector Bundles and Syzygies, Cambridge University
Press, 2002.

Let V be a vector space over K. If K has characteristic 0, then given the
partition mu and the partition mu' obtained from mu by removing a single box,
there is a unique (up to nonzero scalar) GL(V)-equivariant inclusion S_mu V ->
V otimes S_mu' V, where S_mu refers to the irreducible representation of GL(V)
with highest weight mu. This can be extended uniquely to a map of P =
Sym(V)-modules P otimes S_mu V -> P otimes S_mu' V. The purpose of this package
is to write down matrix representatives for these maps. The main function for
doing so is pieri. Here is an example of the use of the package
PieriMaps, which is also designed to check whether the maps are being
constructed correctly (important, since it is notoriously difficult to get the
signs and coefficients right.) We will construct by hand the free resolution in
3 variables corresponding to the degree sequence (0,2,3,6). Let's start with
the packaged code:
+-----------------------------------------------------------------------------+
|i1 : R = QQ[a,b,c];                                                          |
+-----------------------------------------------------------------------------+
|i2 : f = pureFree({0,2,3,6}, R)                                              |
|                                                                             |
|o2 = | 12a2 0    0    6ab 0   0   6ac   0    0   2b2 0   0   2bc  0    0     |
|     | 0    12a2 0    0   6ab 0   0     6ac  0   0   2b2 0   0    2bc  0     |
|     | 0    0    12a2 0   0   6ab 0     0    6ac 0   0   2b2 0    0    2bc   |
|     | 0    0    0    0   6a2 0   -12a2 0    0   0   8ab 0   -8ab 4ac  0     |
|     | 0    0    0    0   0   6a2 0     -3a2 0   0   0   8ab 0    -2ab 4ac   |
|     | 0    0    0    0   0   0   0     0    0   0   0   2a2 0    -a2  0     |
|     ------------------------------------------------------------------------|
|     2c2   0    0   0   0   0    0   0    0   0    0   0   |                 |
|     0     2c2  0   0   0   0    0   0    0   0    0   0   |                 |
|     0     0    2c2 0   0   0    0   0    0   0    0   0   |                 |
|     -16ac 0    0   6b2 0   4bc  0   2c2  0   0    0   0   |                 |
|     0     -4ac 0   0   6b2 -b2  4bc -2bc 2c2 0    0   0   |                 |
|     2a2   0    0   0   6ab -2ab 2ac -2ac 0   12b2 6bc 2c2 |                 |
|                                                                             |
|             6       27                                                      |
|o2 : Matrix R  <--- R                                                        |
+-----------------------------------------------------------------------------+
|i3 : betti res coker f                                                       |
|                                                                             |
|            0  1  2 3                                                        |
|o3 = total: 6 27 24 3                                                        |
|         0: 6  .  . .                                                        |
|         1: . 27 24 .                                                        |
|         2: .  .  . .                                                        |
|         3: .  .  . 3                                                        |
|                                                                             |
|o3 : BettiTally                                                              |
+-----------------------------------------------------------------------------+
By the general theory from Eisenbud-Fl\o ystad-Weyman, each of these free
modules should be essentially Schur functors corresponding to the following
partitions.
+------------------------------+
|i4 : needsPackage "SchurRings"|
|                              |
|o4 = SchurRings               |
|                              |
|o4 : Package                  |
+------------------------------+
|i5 : schurRing(s,3)           |
|                              |
|o5 = schurRing (QQ, s, 3)     |
|                              |
|o5 : SchurRing                |
+------------------------------+
|i6 : dim s_{2,2}              |
|                              |
|o6 = 6                        |
+------------------------------+
|i7 : dim s_{4,2}              |
|                              |
|o7 = 27                       |
+------------------------------+
|i8 : dim s_{4,3}              |
|                              |
|o8 = 24                       |
+------------------------------+
|i9 : dim s_{4,3,3}            |
|                              |
|o9 = 3                        |
+------------------------------+
This package also provides a routine schurRank, for computing
this dimension:
+---------------------------+
|i10 : schurRank(3, {2,2})  |
|                           |
|o10 = 6                    |
+---------------------------+
|i11 : schurRank(3, {4,2})  |
|                           |
|o11 = 27                   |
+---------------------------+
|i12 : schurRank(3, {4,3})  |
|                           |
|o12 = 24                   |
+---------------------------+
|i13 : schurRank(3, {4,3,3})|
|                           |
|o13 = 3                    |
+---------------------------+
We now use pieri, to construct each of the maps of the resolution
separately.
+-----------------------------------------------------------------------------+
|i14 : f1 = pieri({4,2,0},{1,1}, R)                                           |
|                                                                             |
|o14 = | 12a2 0    0    6ab 0   0   6ac   0    0   2b2 0   0   2bc  0    0    |
|      | 0    12a2 0    0   6ab 0   0     6ac  0   0   2b2 0   0    2bc  0    |
|      | 0    0    12a2 0   0   6ab 0     0    6ac 0   0   2b2 0    0    2bc  |
|      | 0    0    0    0   6a2 0   -12a2 0    0   0   8ab 0   -8ab 4ac  0    |
|      | 0    0    0    0   0   6a2 0     -3a2 0   0   0   8ab 0    -2ab 4ac  |
|      | 0    0    0    0   0   0   0     0    0   0   0   2a2 0    -a2  0    |
|      -----------------------------------------------------------------------|
|      2c2   0    0   0   0   0    0   0    0   0    0   0   |                |
|      0     2c2  0   0   0   0    0   0    0   0    0   0   |                |
|      0     0    2c2 0   0   0    0   0    0   0    0   0   |                |
|      -16ac 0    0   6b2 0   4bc  0   2c2  0   0    0   0   |                |
|      0     -4ac 0   0   6b2 -b2  4bc -2bc 2c2 0    0   0   |                |
|      2a2   0    0   0   6ab -2ab 2ac -2ac 0   12b2 6bc 2c2 |                |
|                                                                             |
|              6       27                                                     |
|o14 : Matrix R  <--- R                                                       |
+-----------------------------------------------------------------------------+
|i15 : f2 = pieri({4,3,0},{2}, R)                                             |
|                                                                             |
|o15 = | 3b  c   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   2b  2c  0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   b   3c  0     0     0     0     0     0     0     0     0    |
|      | -6a 0   0   0   3/2b  c     0     0     -3/2c 0     0     0     0    |
|      | 0   -4a 0   0   0     b     2c    0     0     -c    0     0     0    |
|      | 0   0   -2a 0   0     0     1/2b  3c    0     0     -1/2c 0     0    |
|      | 0   -2a 0   0   0     -1/2b 0     0     3b    1/2c  0     0     0    |
|      | 0   0   -4a 0   0     0     -b    0     0     2b    c     0     0    |
|      | 0   0   0   -6a 0     0     0     -3/2b 0     0     b     3/2c  0    |
|      | 0   0   0   0   -9/2a 0     0     0     0     0     0     0     c    |
|      | 0   0   0   0   0     -3a   0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     -3/2a 0     0     0     0     0     0    |
|      | 0   0   0   0   0     -3/2a 0     0     -9/2a 0     0     0     -b   |
|      | 0   0   0   0   0     0     -3a   0     0     -3a   0     0     0    |
|      | 0   0   0   0   0     0     0     -9/2a 0     0     -3/2a 0     0    |
|      | 0   0   0   0   0     0     0     0     0     -3/2a 0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     -3a   0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     -9/2a 0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     -4/3a|
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      | 0   0   0   0   0     0     0     0     0     0     0     0     0    |
|      -----------------------------------------------------------------------|
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      0   0   0     0     0     0     0     0     0     0   0     |          |
|      2c  0   -c    0     0     0     0     0     0     0   0     |          |
|      0   3c  0     -1/2c 0     0     0     0     0     0   0     |          |
|      0   0   1/2c  0     0     0     0     0     0     0   0     |          |
|      -2b 0   b     c     0     0     0     0     0     0   0     |          |
|      0   -3b 0     1/2b  3/2c  0     0     0     0     0   0     |          |
|      0   0   -1/2b 0     0     0     0     0     0     0   0     |          |
|      0   0   0     -b    0     0     0     0     0     0   0     |          |
|      0   0   0     0     -3/2b 0     0     0     0     0   0     |          |
|      0   0   0     0     0     2c    0     0     0     0   0     |          |
|      -a  0   1/3a  0     0     -1/2b 3c    -1/2c 0     0   0     |          |
|      -2a 0   0     0     0     -3b   0     c     0     0   0     |          |
|      0   -3a 0     -a    0     0     -9/2b 0     3/2c  0   0     |          |
|      0   0   0     -2a   0     0     0     -2b   0     0   0     |          |
|      0   0   0     0     -3a   0     0     0     -3b   0   0     |          |
|      0   0   0     0     0     -1/4a 0     0     0     3c  0     |          |
|      0   0   0     0     0     0     -3/2a 1/6a  0     -6b 3/2c  |          |
|      0   0   0     0     0     0     0     0     -3/2a 0   -9/2b |          |
|                                                                             |
|              27       24                                                    |
|o15 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i16 : f3 = pieri({4,3,3},{3,3,3}, R)                                         |
|                                                                             |
|o16 = | 6c3       0         0         |                                      |
|      | -18bc2    0         0         |                                      |
|      | 18b2c     0         0         |                                      |
|      | -6b3      0         0         |                                      |
|      | 0         6c3       0         |                                      |
|      | 72/5ac2   -72/5bc2  18/5c3    |                                      |
|      | -144/5abc 54/5b2c   -36/5bc2  |                                      |
|      | 72/5ab2   -12/5b3   18/5b2c   |                                      |
|      | -72/5ac2  -18/5bc2  12/5c3    |                                      |
|      | 144/5abc  36/5b2c   -54/5bc2  |                                      |
|      | -72/5ab2  -18/5b3   72/5b2c   |                                      |
|      | 0         0         -6b3      |                                      |
|      | 0         27ac2     0         |                                      |
|      | -108/5a2c -162/5abc 108/5ac2  |                                      |
|      | -36/5a2b  36/5ab2   -54/5abc  |                                      |
|      | -432/5a2c -108/5abc 162/5ac2  |                                      |
|      | 216/5a2b  54/5ab2   -216/5abc |                                      |
|      | 0         0         18ab2     |                                      |
|      | 0         18a2c     0         |                                      |
|      | -24/5a3   -36/5a2b  54/5a2c   |                                      |
|      | -216/5a3  -54/5a2b  216/5a2c  |                                      |
|      | 0         0         -18a2b    |                                      |
|      | 0         3/2a3     0         |                                      |
|      | 0         0         6a3       |                                      |
|                                                                             |
|              24       3                                                     |
|o16 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
Fix the degrees (i.e. make sure that the target of f2 is the source of f1,
etc). Otherwise the test of exactness below would fail.
+-----------------------------------------------------------------------------+
|i17 : f1                                                                     |
|                                                                             |
|o17 = | 12a2 0    0    6ab 0   0   6ac   0    0   2b2 0   0   2bc  0    0    |
|      | 0    12a2 0    0   6ab 0   0     6ac  0   0   2b2 0   0    2bc  0    |
|      | 0    0    12a2 0   0   6ab 0     0    6ac 0   0   2b2 0    0    2bc  |
|      | 0    0    0    0   6a2 0   -12a2 0    0   0   8ab 0   -8ab 4ac  0    |
|      | 0    0    0    0   0   6a2 0     -3a2 0   0   0   8ab 0    -2ab 4ac  |
|      | 0    0    0    0   0   0   0     0    0   0   0   2a2 0    -a2  0    |
|      -----------------------------------------------------------------------|
|      2c2   0    0   0   0   0    0   0    0   0    0   0   |                |
|      0     2c2  0   0   0   0    0   0    0   0    0   0   |                |
|      0     0    2c2 0   0   0    0   0    0   0    0   0   |                |
|      -16ac 0    0   6b2 0   4bc  0   2c2  0   0    0   0   |                |
|      0     -4ac 0   0   6b2 -b2  4bc -2bc 2c2 0    0   0   |                |
|      2a2   0    0   0   6ab -2ab 2ac -2ac 0   12b2 6bc 2c2 |                |
|                                                                             |
|              6       27                                                     |
|o17 : Matrix R  <--- R                                                       |
+-----------------------------------------------------------------------------+
|i18 : f2 = map(source f1,,f2)                                                |
|                                                                             |
|o18 = {1} | 3b  c   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   2b  2c  0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   b   3c  0     0     0     0     0     0     0     0      |
|      {1} | -6a 0   0   0   3/2b  c     0     0     -3/2c 0     0     0      |
|      {1} | 0   -4a 0   0   0     b     2c    0     0     -c    0     0      |
|      {1} | 0   0   -2a 0   0     0     1/2b  3c    0     0     -1/2c 0      |
|      {1} | 0   -2a 0   0   0     -1/2b 0     0     3b    1/2c  0     0      |
|      {1} | 0   0   -4a 0   0     0     -b    0     0     2b    c     0      |
|      {1} | 0   0   0   -6a 0     0     0     -3/2b 0     0     b     3/2c   |
|      {1} | 0   0   0   0   -9/2a 0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     -3a   0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     -3/2a 0     0     0     0     0      |
|      {1} | 0   0   0   0   0     -3/2a 0     0     -9/2a 0     0     0      |
|      {1} | 0   0   0   0   0     0     -3a   0     0     -3a   0     0      |
|      {1} | 0   0   0   0   0     0     0     -9/2a 0     0     -3/2a 0      |
|      {1} | 0   0   0   0   0     0     0     0     0     -3/2a 0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     -3a   0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     -9/2a  |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      {1} | 0   0   0   0   0     0     0     0     0     0     0     0      |
|      -----------------------------------------------------------------------|
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     0     0     0     0     0     0   0     |    |
|      c     0   0   0     0     0     0     0     0     0     0   0     |    |
|      0     2c  0   -c    0     0     0     0     0     0     0   0     |    |
|      0     0   3c  0     -1/2c 0     0     0     0     0     0   0     |    |
|      -b    0   0   1/2c  0     0     0     0     0     0     0   0     |    |
|      0     -2b 0   b     c     0     0     0     0     0     0   0     |    |
|      0     0   -3b 0     1/2b  3/2c  0     0     0     0     0   0     |    |
|      0     0   0   -1/2b 0     0     0     0     0     0     0   0     |    |
|      0     0   0   0     -b    0     0     0     0     0     0   0     |    |
|      0     0   0   0     0     -3/2b 0     0     0     0     0   0     |    |
|      -4/3a 0   0   0     0     0     2c    0     0     0     0   0     |    |
|      0     -a  0   1/3a  0     0     -1/2b 3c    -1/2c 0     0   0     |    |
|      0     -2a 0   0     0     0     -3b   0     c     0     0   0     |    |
|      0     0   -3a 0     -a    0     0     -9/2b 0     3/2c  0   0     |    |
|      0     0   0   0     -2a   0     0     0     -2b   0     0   0     |    |
|      0     0   0   0     0     -3a   0     0     0     -3b   0   0     |    |
|      0     0   0   0     0     0     -1/4a 0     0     0     3c  0     |    |
|      0     0   0   0     0     0     0     -3/2a 1/6a  0     -6b 3/2c  |    |
|      0     0   0   0     0     0     0     0     0     -3/2a 0   -9/2b |    |
|                                                                             |
|              27       24                                                    |
|o18 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i19 : f3 = map(source f2,,f3)                                                |
|                                                                             |
|o19 = {2} | 6c3       0         0         |                                  |
|      {2} | -18bc2    0         0         |                                  |
|      {2} | 18b2c     0         0         |                                  |
|      {2} | -6b3      0         0         |                                  |
|      {2} | 0         6c3       0         |                                  |
|      {2} | 72/5ac2   -72/5bc2  18/5c3    |                                  |
|      {2} | -144/5abc 54/5b2c   -36/5bc2  |                                  |
|      {2} | 72/5ab2   -12/5b3   18/5b2c   |                                  |
|      {2} | -72/5ac2  -18/5bc2  12/5c3    |                                  |
|      {2} | 144/5abc  36/5b2c   -54/5bc2  |                                  |
|      {2} | -72/5ab2  -18/5b3   72/5b2c   |                                  |
|      {2} | 0         0         -6b3      |                                  |
|      {2} | 0         27ac2     0         |                                  |
|      {2} | -108/5a2c -162/5abc 108/5ac2  |                                  |
|      {2} | -36/5a2b  36/5ab2   -54/5abc  |                                  |
|      {2} | -432/5a2c -108/5abc 162/5ac2  |                                  |
|      {2} | 216/5a2b  54/5ab2   -216/5abc |                                  |
|      {2} | 0         0         18ab2     |                                  |
|      {2} | 0         18a2c     0         |                                  |
|      {2} | -24/5a3   -36/5a2b  54/5a2c   |                                  |
|      {2} | -216/5a3  -54/5a2b  216/5a2c  |                                  |
|      {2} | 0         0         -18a2b    |                                  |
|      {2} | 0         3/2a3     0         |                                  |
|      {2} | 0         0         6a3       |                                  |
|                                                                             |
|              24       3                                                     |
|o19 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i20 : f1 * f2                                                                |
|                                                                             |
|o20 = 0                                                                      |
|                                                                             |
|              6       24                                                     |
|o20 : Matrix R  <--- R                                                       |
+-----------------------------------------------------------------------------+
|i21 : f2 * f3                                                                |
|                                                                             |
|o21 = 0                                                                      |
|                                                                             |
|              27       3                                                     |
|o21 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
Check that the complex is exact.
+------------------------+
|i22 : ker f1 == image f2|
|                        |
|o22 = true              |
+------------------------+
|i23 : ker f2 == image f3|
|                        |
|o23 = true              |
+------------------------+
Looks great! Now let's try it modulo some prime numbers and see if we get
exactness.
+-----------------------------------------------------------------------------+
|i24 : p = 32003                                                              |
|                                                                             |
|o24 = 32003                                                                  |
+-----------------------------------------------------------------------------+
|i25 : R = ZZ/p[a,b,c];                                                       |
+-----------------------------------------------------------------------------+
|i26 : f1 = pieri({4,2,0},{1,1},R)                                            |
|                                                                             |
|o26 = | a2 ab b2 0  ac  bc 0  0   c2  0  0  0  0  -bc 0  0    -c2  0   0   0 |
|      | 0  0  0  a2 2ab b2 0  2ac 4bc 0  c2 0  ab 0   0  -2ac -2bc 0   -c2 0 |
|      | 0  0  0  0  0   0  a2 ab  b2  ac bc c2 0  0   0  0    0    0   0   0 |
|      | 0  0  0  0  0   0  0  0   0   0  0  0  a2 4ab b2 0    4ac  4bc 0   c2|
|      | 0  0  0  0  0   0  0  0   0   0  0  0  0  0   0  a2   2ab  0   2ac bc|
|      | 0  0  0  0  0   0  0  0   0   0  0  0  0  0   0  0    0    -ab 0   0 |
|      -----------------------------------------------------------------------|
|      0  0    0    0  0    0  0  |                                           |
|      0  -2bc 0    0  0    0  0  |                                           |
|      0  0    0    0  0    0  0  |                                           |
|      0  -4ac -4bc 0  -2c2 0  0  |                                           |
|      c2 2ab  b2   0  0    0  0  |                                           |
|      0  a2   2ab  b2 ac   bc c2 |                                           |
|                                                                             |
|              6       27                                                     |
|o26 : Matrix R  <--- R                                                       |
+-----------------------------------------------------------------------------+
|i27 : betti res coker f1                                                     |
|                                                                             |
|             0  1  2 3                                                       |
|o27 = total: 6 27 24 3                                                       |
|          0: 6  .  . .                                                       |
|          1: . 27 24 .                                                       |
|          2: .  .  . .                                                       |
|          3: .  .  . 3                                                       |
|                                                                             |
|o27 : BettiTally                                                             |
+-----------------------------------------------------------------------------+
|i28 : f2 = pieri({4,3,0},{2},R)                                              |
|                                                                             |
|o28 = | -b -c  0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  -2b -2c 0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  0   -b  -c 0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 2a 0   0   0  -b -3c -2c 0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  4a  0   0  0  -2b -2b -4c 0   6c  0   0  0   0   0   0  0   0   0 |
|      | 0  0   2a  0  0  0   0   -b  -2c b   c   0  0   0   0   0  0   0   0 |
|      | 0  2a  0   0  0  3b  b   0   0   -c  0   0  0   0   0   0  0   0   0 |
|      | 0  0   4a  0  0  0   0   2b  0   -6b -2c 0  0   0   0   0  0   0   0 |
|      | 0  0   0   2a 0  0   0   0   b   0   -2b -c 0   0   0   0  0   0   0 |
|      | 0  0   0   0  3a 0   0   0   0   0   0   0  -3c 0   0   0  0   0   0 |
|      | 0  0   0   0  0  6a  6a  0   0   0   0   0  0   -4c -6c 0  0   0   0 |
|      | 0  0   0   0  0  0   0   3a  0   -3a 0   0  0   0   0   -c c   0   0 |
|      | 0  0   0   0  0  0   3a  0   0   0   0   0  3b  3c  3c  0  0   0   0 |
|      | 0  0   0   0  0  0   0   6a  0   0   0   0  0   4b  6b  0  -2c 0   0 |
|      | 0  0   0   0  0  0   0   0   3a  0   3a  0  0   0   0   b  -b  0   -c|
|      | 0  0   0   0  0  0   0   0   0   3a  0   0  0   -3b -3b 0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   6a  0  0   0   0   0  2b  0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   3a 0   0   0   0  0   0   b |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  4a  0   0   0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   a   2a  0  0   c   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   -2a 0   0  0   -6c 0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   a  2a  3b  0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  4a  12b 0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   2a|
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      -----------------------------------------------------------------------|
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      -8c 0    0  0  0  |                                                    |
|      2b  -3c  0  0  0  |                                                    |
|      12b 6c   0  0  0  |                                                    |
|      0   0    0  -c 0  |                                                    |
|      0   -12b 0  0  0  |                                                    |
|      0   0    0  2b 0  |                                                    |
|      a   0    -c 0  0  |                                                    |
|      0   a    2b 0  -c |                                                    |
|      0   0    0  a  3b |                                                    |
|                                                                             |
|              27       24                                                    |
|o28 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i29 : f3 = pieri({4,3,3},{3,3,3},R)                                          |
|                                                                             |
|o29 = | -5c3   0       0      |                                              |
|      | 15bc2  0       0      |                                              |
|      | -15b2c 0       0      |                                              |
|      | 5b3    0       0      |                                              |
|      | 0      20c3    0      |                                              |
|      | -12ac2 -48bc2  3c3    |                                              |
|      | 24abc  36b2c   -6bc2  |                                              |
|      | -12ab2 -8b3    3b2c   |                                              |
|      | 12ac2  -12bc2  2c3    |                                              |
|      | -24abc 24b2c   -9bc2  |                                              |
|      | 12ab2  -12b3   12b2c  |                                              |
|      | 0      0       -5b3   |                                              |
|      | 0      90ac2   0      |                                              |
|      | 18a2c  -108abc 18ac2  |                                              |
|      | 6a2b   24ab2   -9abc  |                                              |
|      | 72a2c  -72abc  27ac2  |                                              |
|      | -36a2b 36ab2   -36abc |                                              |
|      | 0      0       15ab2  |                                              |
|      | 0      60a2c   0      |                                              |
|      | 4a3    -24a2b  9a2c   |                                              |
|      | 36a3   -36a2b  36a2c  |                                              |
|      | 0      0       -15a2b |                                              |
|      | 0      5a3     0      |                                              |
|      | 0      0       5a3    |                                              |
|                                                                             |
|              24       3                                                     |
|o29 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i30 : f2 = map(source f1,,f2)                                                |
|                                                                             |
|o30 = | -b -c  0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  -2b -2c 0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  0   -b  -c 0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 2a 0   0   0  -b -3c -2c 0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  4a  0   0  0  -2b -2b -4c 0   6c  0   0  0   0   0   0  0   0   0 |
|      | 0  0   2a  0  0  0   0   -b  -2c b   c   0  0   0   0   0  0   0   0 |
|      | 0  2a  0   0  0  3b  b   0   0   -c  0   0  0   0   0   0  0   0   0 |
|      | 0  0   4a  0  0  0   0   2b  0   -6b -2c 0  0   0   0   0  0   0   0 |
|      | 0  0   0   2a 0  0   0   0   b   0   -2b -c 0   0   0   0  0   0   0 |
|      | 0  0   0   0  3a 0   0   0   0   0   0   0  -3c 0   0   0  0   0   0 |
|      | 0  0   0   0  0  6a  6a  0   0   0   0   0  0   -4c -6c 0  0   0   0 |
|      | 0  0   0   0  0  0   0   3a  0   -3a 0   0  0   0   0   -c c   0   0 |
|      | 0  0   0   0  0  0   3a  0   0   0   0   0  3b  3c  3c  0  0   0   0 |
|      | 0  0   0   0  0  0   0   6a  0   0   0   0  0   4b  6b  0  -2c 0   0 |
|      | 0  0   0   0  0  0   0   0   3a  0   3a  0  0   0   0   b  -b  0   -c|
|      | 0  0   0   0  0  0   0   0   0   3a  0   0  0   -3b -3b 0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   6a  0  0   0   0   0  2b  0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   3a 0   0   0   0  0   0   b |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  4a  0   0   0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   a   2a  0  0   c   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   -2a 0   0  0   -6c 0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   a  2a  3b  0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  4a  12b 0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   2a|
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      | 0  0   0   0  0  0   0   0   0   0   0   0  0   0   0   0  0   0   0 |
|      -----------------------------------------------------------------------|
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      0   0    0  0  0  |                                                    |
|      -8c 0    0  0  0  |                                                    |
|      2b  -3c  0  0  0  |                                                    |
|      12b 6c   0  0  0  |                                                    |
|      0   0    0  -c 0  |                                                    |
|      0   -12b 0  0  0  |                                                    |
|      0   0    0  2b 0  |                                                    |
|      a   0    -c 0  0  |                                                    |
|      0   a    2b 0  -c |                                                    |
|      0   0    0  a  3b |                                                    |
|                                                                             |
|              27       24                                                    |
|o30 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i31 : f3 = map(source f2,,f3)                                                |
|                                                                             |
|o31 = {1} | -5c3   0       0      |                                          |
|      {1} | 15bc2  0       0      |                                          |
|      {1} | -15b2c 0       0      |                                          |
|      {1} | 5b3    0       0      |                                          |
|      {1} | 0      20c3    0      |                                          |
|      {1} | -12ac2 -48bc2  3c3    |                                          |
|      {1} | 24abc  36b2c   -6bc2  |                                          |
|      {1} | -12ab2 -8b3    3b2c   |                                          |
|      {1} | 12ac2  -12bc2  2c3    |                                          |
|      {1} | -24abc 24b2c   -9bc2  |                                          |
|      {1} | 12ab2  -12b3   12b2c  |                                          |
|      {1} | 0      0       -5b3   |                                          |
|      {1} | 0      90ac2   0      |                                          |
|      {1} | 18a2c  -108abc 18ac2  |                                          |
|      {1} | 6a2b   24ab2   -9abc  |                                          |
|      {1} | 72a2c  -72abc  27ac2  |                                          |
|      {1} | -36a2b 36ab2   -36abc |                                          |
|      {1} | 0      0       15ab2  |                                          |
|      {1} | 0      60a2c   0      |                                          |
|      {1} | 4a3    -24a2b  9a2c   |                                          |
|      {1} | 36a3   -36a2b  36a2c  |                                          |
|      {1} | 0      0       -15a2b |                                          |
|      {1} | 0      5a3     0      |                                          |
|      {1} | 0      0       5a3    |                                          |
|                                                                             |
|              24       3                                                     |
|o31 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i32 : f1 * f2                                                                |
|                                                                             |
|o32 = | -a2b -2ab2+3a2c -b3       -b2c+2ac2 0    -2abc                       |
|      | 2a3  8a2b       2ab2+8a2c 8abc      -a2b -4ab2-3a2c+6ac2             |
|      | 0    2a3        4a2b      2ab2      3a2c 3a2b+6abc                   |
|      | 0    0          0         0         0    0                           |
|      | 0    0          0         0         0    0                           |
|      | 0    0          0         0         0    0                           |
|      -----------------------------------------------------------------------|
|      -2abc               -6abc-b2c-4ac2 -bc2 b2c+6ac2       -6ac2-bc2       |
|      3a2b-4ab2-2a2c+6ac2 -b3-4abc       2b2c b3-6a2c        -12abc-7b2c-4ac2|
|      a2b+6abc            2ab2+3ac2      b3   -6ab2-a2c-3ac2 -2b3-2abc       |
|      3a3                 24a2b          3ab2 0              3ab2+24a2c      |
|      0                   0              0    3a3            12a2b           |
|      0                   0              0    0              0               |
|      -----------------------------------------------------------------------|
|      -c3   0         -4b2c          -6b2c           0       0               |
|      -4bc2 3ab2-4ac2 9abc-4c3       9abc-6c3        -2abc   -4abc-4b2c      |
|      -b2c  -3ac2     -4bc2          -6bc2           -c3     c3              |
|      12abc 3a2b      16ab2+3a2c+ac2 24ab2+3a2c+2ac2 b3-4a2c -b3-8a2c-16abc  |
|      0     8a2c      -3a2b+abc-2ac2 -3a2b+2abc      2a2b    4a2b+8ab2       |
|      -3a2b 0         0              0               a3      2a3+8a2b        |
|      -----------------------------------------------------------------------|
|      0                 0    0                0              0               |
|      -6b2c             0    8c3              0              0               |
|      0                 0    0                0              0               |
|      -12abc-48b2c+c3   3b2c -2ac2+2bc2       48b2c-3c3      2c3             |
|      6ab2+12b3+bc2-6c3 0    2b2c-16ac2+12bc2 -12b3-3bc2+6c3 0               |
|      3a2b+24ab2        ab2  a2c              -24ab2+abc     2b2c-ac2        |
|      -----------------------------------------------------------------------|
|      0           0    |                                                     |
|      2bc2        0    |                                                     |
|      0           0    |                                                     |
|      4ac2        0    |                                                     |
|      -2abc       0    |                                                     |
|      2b3-a2c+ac2 2bc2 |                                                     |
|                                                                             |
|              6       24                                                     |
|o32 : Matrix R  <--- R                                                       |
+-----------------------------------------------------------------------------+
|i33 : f2 * f3                                                                |
|                                                                             |
|o33 = | -10bc3                0                                              |
|      | 0                     0                                              |
|      | 10b3c                 0                                              |
|      | -48abc2+26ac3         -72b2c2+124bc3                                 |
|      | -60abc2               -40b3c+240b2c2                                 |
|      | 12ab3-42ab2c-24ac3    8b4+12b3c+24bc3                                |
|      | 24ab2c+18abc2         36b3c-168b2c2                                  |
|      | -24ab3+60ab2c         -16b4-120b3c                                   |
|      | -14ab3+12abc2         24b4-12b2c2                                    |
|      | 0                     -210ac3                                        |
|      | 108a2bc-144a2c2       72ab2c+144abc2                                 |
|      | -36a2b2+36a2bc-72a2c2 -24ab3-36ab2c+72abc2                           |
|      | 90a2bc+54a2c2         180ab2c-54abc2                                 |
|      | -36a2b2+144a2bc       96ab3-504ab2c                                  |
|      | 72a2b2+72a2bc+36a2c2  -72ab3-72ab2c-60a2c2-36abc2                    |
|      | -18a2b2-126a2bc       -72ab3+396ab2c                                 |
|      | 0                     0                                              |
|      | 0                     60a2bc                                         |
|      | -32a3c                192a2bc+360a2c2                                |
|      | 20a3b-90a3c           0                                              |
|      | 48a3b+180a3c          -288a2b2                                       |
|      | -72a3b+72a3c          72a2b2-5a3c-72a2bc                             |
|      | -576a3b               576a2b2                                        |
|      | 0                     10a3b+120a3c                                   |
|      | 4a4                   -24a3b                                         |
|      | 36a4                  -36a3b                                         |
|      | 0                     5a4                                            |
|      -----------------------------------------------------------------------|
|      0                      |                                               |
|      0                      |                                               |
|      0                      |                                               |
|      12bc3-9c4              |                                               |
|      -60bc3                 |                                               |
|      -3b3c+3b2c2-4c4        |                                               |
|      -6b2c2+18bc3           |                                               |
|      6b3c+30b2c2            |                                               |
|      -19b3c+2bc3            |                                               |
|      0                      |                                               |
|      18abc2-54ac3           |                                               |
|      9ab2c-9abc2-27ac3      |                                               |
|      -45abc2+54ac3          |                                               |
|      -36ab2c+144abc2        |                                               |
|      72ab2c+27abc2+6ac3     |                                               |
|      27ab2c-81abc2          |                                               |
|      0                      |                                               |
|      -15ab3                 |                                               |
|      -72a2c2                |                                               |
|      15ab2c-90a2c2          |                                               |
|      108a2bc-90ab2c+180a2c2 |                                               |
|      45ab3-72a2bc+27a2c2    |                                               |
|      180ab3-576a2bc         |                                               |
|      0                      |                                               |
|      9a3c+15a2bc            |                                               |
|      -30a2b2+31a3c          |                                               |
|      15a3b                  |                                               |
|                                                                             |
|              27       3                                                     |
|o33 : Matrix R   <--- R                                                      |
+-----------------------------------------------------------------------------+
|i34 : ker f1 == image f2                                                     |
|                                                                             |
|o34 = false                                                                  |
+-----------------------------------------------------------------------------+
|i35 : ker f2 == image f3                                                     |
|                                                                             |
|o35 = false                                                                  |
+-----------------------------------------------------------------------------+
These do not piece together well. The reason is that pieri,
changes the bases of the free modules in a way which is not invertible (over
ZZ) when the ground field has positive characteristic.

See also
========

  * pieri -- computes a matrix representation for a Pieri
    inclusion of representations of a general linear group
  * pureFree -- computes a GL(V)-equivariant map whose
    resolution is pure, or the reduction mod p of such a map
  * schurRank -- computes the dimension of the irreducible
    GL(QQ^n) representation associated to a partition

Author
======

  * Steven V Sam (see http://math.mit.edu/~ssam/ ) <ssam@math.mit.edu>

Certification a gold star
=========================

Version 1.0 of this package was accepted for publication in volume 1 (see
http://j-sag.org/Volume1/ ) of The Journal of Software for Algebra and
Geometry: Macaulay2 (see http://j-sag.org/ ) on 2009-06-27, in the article
Computing inclusions of Schur modules (see
http://j-sag.org/Volume1/jsag-2-2009.pdf ). That version can be obtained from
the journal (see http://j-sag.org/Volume1/PieriMaps.m2 ) or from the Macaulay2
source code repository (see
https://github.com/Macaulay2/M2/blob/38e96fec660168d488ad0449f8632e6608cc9ede/
M2/Macaulay2/packages/PieriMaps.m2 ).

Version
=======

This documentation describes version 1.0 of PieriMaps.

Source code
===========

The source code from which this documentation is derived is in the file
PieriMaps.m2 (see common/share/Macaulay2/PieriMaps.m2 ).

Exports
=======

  * Functions and commands
      * pieri -- computes a matrix representation for a Pieri
        inclusion of representations of a general linear group
      * pureFree -- computes a GL(V)-equivariant map whose
        resolution is pure, or the reduction mod p of such a map
      * schurRank -- computes the dimension of the
        irreducible GL(QQ^n) representation associated to a partition
      * standardTableaux -- list all standard tableaux
        of a certain shape with bounded labels
      * straighten -- computes straightening of a tableau
  * Methods
      * "pieri(List,List,PolynomialRing)" -- see pieri, --
        computes a matrix representation for a Pieri inclusion of
        representations of a general linear group
      * "pureFree(List,PolynomialRing)" -- see pureFree, --
        computes a GL(V)-equivariant map whose resolution is pure, or the
        reduction mod p of such a map
      * "schurRank(ZZ,List)" -- see schurRank, -- computes the
        dimension of the irreducible GL(QQ^n) representation associated to a
        partition
      * "standardTableaux(ZZ,List)" -- see standardTableaux,
        -- list all standard tableaux of a certain shape with
        bounded labels
      * "straighten(List)" -- see straighten, -- computes
        straightening of a tableau
      * "straighten(List,MutableHashTable)" -- see straighten,
        -- computes straightening of a tableau

For the programmer
==================

The object PieriMaps, is a package (Macaulay2Doc).

pieri -- computes a matrix representation for a Pieri inclusion of representations of a general linear group
************************************************************************************************************

Synopsis
========

  * Usage:
        pieri(mu, boxes, P)
  * Inputs:
      * mu, a list (Macaulay2Doc), a partition (mu_1, ..., mu_r)
        where mu_i is the number of boxes in the ith row
      * boxes, a list (Macaulay2Doc), a list of rows from which to
        remove boxes (boxes are always removed from the end of the row). This
        specifies which map of GL(V) representations we want. The row indices
        start from 1 and not 0, and this must specify a horizontal strip in mu
        (see description below).
      * P, a polynomial ring (Macaulay2Doc), a polynomial
        ring over a field K in n variables
  * Outputs:
      * a matrix (Macaulay2Doc), If K has characteristic 0, then
        given the partition mu and the partition mu' obtained from mu by
        removing a single box, there is a unique (up to nonzero scalar)
        GL(V)-equivariant inclusion S_mu V -> V otimes S_mu' V, where S_mu
        refers to the irreducible representation of GL(V) with highest weight
        mu. This can be extended uniquely to a map of P = Sym(V)-modules P
        otimes S_mu V -> P otimes S_mu' V. This method computes the matrix
        representation for the composition of maps that one obtains by
        iterating this procedure of removing boxes, i.e., the final output is a
        GL(V)-equivariant map P otimes S_mu V -> P otimes S_lambda V where
        lambda is the partition obtained from mu by deleting a box from row
        boxes_0, a box from row boxes_1, etc. If K has positive characteristic,
        then the corresponding map is calculated over QQ, lifted to a ZZ-form
        of the representation which has the property that the map has a
        torsion-free cokernel over ZZ, and then the coefficients are reduced to
        K.

Description
===========

Convention: the partition (d) represents the dth symmetric power, while the
partition (1,...,1) represents the dth exterior power. Using the notation from
the output, mu/lambda must be a horizontal strip. Precisely, this means that
lambda_i >= mu_(i+1) for all i. If this condition is not satisfied, the program
throws an error because a nonzero equivariant map of the desired form will not
exist.
+-----------------------------------------------------------------------------+
|i1 : pieri({3,1}, {1}, QQ[a,b,c]) -- removes the last box from row 1 of the  |
|                                                                             |
|o1 = | 3a 0  b  0  c  0  0  0  0     0 0   0  0  0  0  |                     |
|     | 0  3a 0  b  0  c  0  0  0     0 0   0  0  0  0  |                     |
|     | 0  0  2a 0  0  0  2b 0  c     0 0   0  0  0  0  |                     |
|     | 0  0  0  2a 0  0  0  2b 0     c 0   0  0  0  0  |                     |
|     | 0  0  0  0  2a 0  0  0  b     0 2c  0  0  0  0  |                     |
|     | 0  0  0  0  0  2a 0  0  0     b 0   2c 0  0  0  |                     |
|     | 0  0  0  0  0  0  0  a  -1/2a 0 0   0  3b c  0  |                     |
|     | 0  0  0  0  0  0  0  0  0     a -2a 0  0  2b 2c |                     |
|                                                                             |
|                      8                15                                    |
|o1 : Matrix (QQ[a..c])  <--- (QQ[a..c])                                      |
|-----------------------------------------------------------------------------|
|partition {3,1}                                                              |
+-----------------------------------------------------------------------------+
|i2 : res coker oo -- resolve this map                                        |
|                                                                             |
|               8               15               10               3           |
|o2 = (QQ[a..c])  <-- (QQ[a..c])   <-- (QQ[a..c])   <-- (QQ[a..c])  <-- 0     |
|                                                                             |
|     0               1                2                3               4     |
|                                                                             |
|o2 : ChainComplex                                                            |
+-----------------------------------------------------------------------------+
|i3 : betti oo -- check that the resolution is pure                           |
|                                                                             |
|            0  1  2 3                                                        |
|o3 = total: 8 15 10 3                                                        |
|         0: 8 15  . .                                                        |
|         1: .  . 10 .                                                        |
|         2: .  .  . 3                                                        |
|                                                                             |
|o3 : BettiTally                                                              |
+-----------------------------------------------------------------------------+

See also
========

  * pureFree -- computes a GL(V)-equivariant map whose
    resolution is pure, or the reduction mod p of such a map

Ways to use pieri :
===================

  * "pieri(List,List,PolynomialRing)"

For the programmer
==================

The object pieri, is a method function (Macaulay2Doc).

pureFree -- computes a GL(V)-equivariant map whose resolution is pure, or the reduction mod p of such a map
***********************************************************************************************************

Synopsis
========

  * Usage:
        pureFree(d, P)
  * Inputs:
      * d, a list (Macaulay2Doc), a list of degrees (increasing
        numbers)
      * P, a polynomial ring (Macaulay2Doc), a polynomial
        ring over a field K in n variables
  * Outputs:
      * a matrix (Macaulay2Doc), A map whose cokernel has Betti
        diagram with degree sequence d if K has characteristic 0. If K has
        positive characteristic p, then the corresponding map is calculated
        over QQ and is lifted to a ZZ-form which is then reduced mod p.

Description
===========

The function translates the data of a degree sequence d for a desired pure free
resolution into the data of a Pieri map according to the formula of
Eisenbud-Fl\o ystad-Weyman and then applies the function pieri.
+-----------------------------------------------------------------------------+
|i1 : betti res coker pureFree({0,1,2,4}, QQ[a,b,c]) -- degree sequence       |
|                                                                             |
|            0 1 2 3                                                          |
|o1 = total: 3 8 6 1                                                          |
|         0: 3 8 6 .                                                          |
|         1: . . . 1                                                          |
|                                                                             |
|o1 : BettiTally                                                              |
|-----------------------------------------------------------------------------|
|{0,1,2,4}                                                                    |
+-----------------------------------------------------------------------------+
|i2 : betti res coker pureFree({0,1,2,4}, ZZ/2[a,b,c]) -- same map, but       |
|                                                                             |
|            0 1 2 3                                                          |
|o2 = total: 3 8 6 1                                                          |
|         0: 3 8 6 .                                                          |
|         1: . . . 1                                                          |
|                                                                             |
|o2 : BettiTally                                                              |
|-----------------------------------------------------------------------------|
|reduced mod 2                                                                |
+-----------------------------------------------------------------------------+
|i3 : betti res coker pureFree({0,1,2,4}, GF(4)[a,b,c]) -- can also use non   |
|                                                                             |
|            0 1 2 3                                                          |
|o3 = total: 3 8 6 1                                                          |
|         0: 3 8 6 .                                                          |
|         1: . . . 1                                                          |
|                                                                             |
|o3 : BettiTally                                                              |
|-----------------------------------------------------------------------------|
|prime fields                                                                 |
+-----------------------------------------------------------------------------+

See also
========

  * pieri -- computes a matrix representation for a Pieri
    inclusion of representations of a general linear group

Ways to use pureFree :
======================

  * "pureFree(List,PolynomialRing)"

For the programmer
==================

The object pureFree, is a method function (Macaulay2Doc).

schurRank -- computes the dimension of the irreducible GL(QQ^n) representation associated to a partition
********************************************************************************************************

Synopsis
========

  * Usage:
        schurRank(n, mu)
  * Inputs:
      * n, an integer (Macaulay2Doc), the size of the matrix group
        GL(QQ^n)
      * mu, a list (Macaulay2Doc), a partition (mu_1, ..., m_r)
        where mu_i is the number of boxes in the ith row
  * Outputs:
      * an integer (Macaulay2Doc), The dimension of the irreducible
        GL(QQ^n) representation associated to mu

Description
===========

The dimension is computed using the determinantal formula given by the Weyl
character formula.
+-----------------------------------------+
|i1 : schurRank(5, {4,3}) -- should be 560|
|                                         |
|o1 = 560                                 |
+-----------------------------------------+

See also
========

  * standardTableaux -- list all standard tableaux of
    a certain shape with bounded labels

Ways to use schurRank :
=======================

  * "schurRank(ZZ,List)"

For the programmer
==================

The object schurRank, is a method function (Macaulay2Doc).

standardTableaux -- list all standard tableaux of a certain shape with bounded labels
*************************************************************************************

Synopsis
========

  * Usage:
        standardTableaux(dim, mu)
  * Inputs:
      * dim, an integer (Macaulay2Doc), number of labels to be used
      * mu, a list (Macaulay2Doc), a partition which gives the
        shape
  * Outputs:
      * a list (Macaulay2Doc), list of all standard tableaux of
        shape mu with labels 0,...,dim-1

Description
===========

+-----------------------------------------------------------------------------+
|i1 : standardTableaux(3, {2,2}) -- lists all standard tableaux on the 2x2 squ|
|                                                                             |
|o1 = {{{0, 0}, {1, 1}}, {{0, 0}, {1, 2}}, {{0, 0}, {2, 2}}, {{0, 1}, {1, 2}},|
|     ------------------------------------------------------------------------|
|     {{0, 1}, {2, 2}}, {{1, 1}, {2, 2}}}                                     |
|                                                                             |
|o1 : List                                                                    |
|-----------------------------------------------------------------------------|
|are with entries 0,1,2                                                       |
+-----------------------------------------------------------------------------+

See also
========

  * schurRank -- computes the dimension of the irreducible
    GL(QQ^n) representation associated to a partition

Ways to use standardTableaux :
==============================

  * "standardTableaux(ZZ,List)"

For the programmer
==================

The object standardTableaux, is a method function (Macaulay2Doc).

straighten -- computes straightening of a tableau
*************************************************

Synopsis
========

  * Usage:
        straighten(t)straighten(t, h)
  * Inputs:
      * t, a list (Macaulay2Doc), a tableau to straighten; a
        tableau looks like {{3,4}, {1,2}} for example, where we list the
        entries from left to right, top to bottom
      * h, a mutable hash table (Macaulay2Doc), where
        the answers should be stored
  * Consequences:
      * If provided, the hashtable h is updated with any calculations which are
        performed as a result of calling this function.

Description
===========

If a hashtable h is provided, then this outputs nothing, it simply just
modifies h. When looking up values, remember that the keys are stored with rows
weakly increasing. If no hashtable is provided, then the user is simply given
the straightening of the tableau in terms of semistandard tableaux. The answer
is in the form a hashtable: each key is a semistandard tableaux, and the value
of the key is the coefficient of that semistandard tableaux used to write the
input t as a linear combination.
+--------------------------------------------------------------+
|i1 : h = new MutableHashTable from {}                         |
|                                                              |
|o1 = MutableHashTable{}                                       |
|                                                              |
|o1 : MutableHashTable                                         |
+--------------------------------------------------------------+
|i2 : straighten({{3,4}, {1,2}}, h)                            |
+--------------------------------------------------------------+
|i3 : h#{{3,4}, {1,2}} -- get the coefficients                 |
|                                                              |
|o3 = HashTable{{{1, 2}, {3, 4}} => 1}                         |
|                                                              |
|o3 : HashTable                                                |
+--------------------------------------------------------------+
|i4 : straighten({{3,4}, {1,2}}) -- just get the answer instead|
|                                                              |
|o4 = HashTable{{{1, 2}, {3, 4}} => 1}                         |
|                                                              |
|o4 : HashTable                                                |
+--------------------------------------------------------------+

Ways to use straighten :
========================

  * "straighten(List)"
  * "straighten(List,MutableHashTable)"

For the programmer
==================

The object straighten, is a method function (Macaulay2Doc).