1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
|
Littlewood-Richardson Calculator version 1.2
Copyright (C) 1999- Anders S. Buch (asbuch at math rutgers edu)
INSTALLATION
============
This file explains how to install and use the programs. See the file
ChangeLog for a list of bug-fixes, enhancements, and contributors.
This project uses the standard installation procedure:
./configure
make
sudo make install
The last step is optional and installs the programs
lrcalc and schubmult
in the directory /usr/local/bin, as well as the maple interface
lrcalc.maple in /usr/local/share/lrcalc. It also installs the lrcalc
library and header files. (The directory /usr/local can be changed,
see the file INSTALL for details.)
You may want to further run the test suite:
make check
Notice also that the Littlewood-Richardson Calculator is now
integrated in the SAGE open-source mathematics system. You may prefer
to use lrcalc from SAGE to take advantage of the additional functions
in this system.
USAGE
=====
We give a very brief description of the programs.
The program lrcalc can perform various operations on symmetric
functions, and its first argument must specify the operation to be
used. There are five of these operations:
lrcalc coef: Compute a single Littlewood-Richardson coefficient.
-----------
The command "lrcalc coef z - x - y" computes the Littlewood-Richardson
coefficient c^z_{x,y} which is the coefficient of the Schur function
s_z in the product s_x * s_y.
Example:
% lrcalc coef 3 2 1 - 2 1 - 2 1
2
lrcalc skew: Expand a skew Schur function in the basis of Schur
----------- functions.
The command "lrcalc skew z / x" lists all partitions y for which the
Littlewood-Richardson coefficient c^z_{x,y} is non-zero, with that
coefficient in front.
Example:
% lrcalc skew 3 2 1 / 2 1
1 (3)
2 (2, 1)
1 (1, 1, 1)
lrcalc mult: Expand a product of two Schur functions in the basis of
----------- Schur functions.
The command "lrcalc mult x - y" lists all partitions z for which the
Littlewood-Richardson coefficient c^z_{x,y} is non-zero, with that
coefficient in front.
Example:
% lrcalc mult 2 1 - 2 1
1 (3, 3)
1 (4, 2)
1 (2, 2, 1, 1)
1 (2, 2, 2)
2 (3, 2, 1)
1 (4, 1, 1)
1 (3, 1, 1, 1)
The option -r <rows> can be used to limit the partitions in the output
to a given number of rows.
The command Lrcalc mult can also compute products in the small quantum
cohomology ring of a Grassmann variety. The option "-q m,k" will use
the quantum ring of the Grassmannian Gr(m,m+k). If -q is replaced
with -f, then the same product is computed, but the output is given in
fusion ring notation.
Example:
% lrcalc mult -q 3,2 3 2 1 - 3 2 1
1 (2)
1 (1, 1)
% lrcalc mult -f 3,2 3 2 1 - 3 2 1
1 (4, 4, 4)
1 (5, 4, 3)
lrcalc coprod: Calculate coproducts in the ring of symmetric
------------- functions.
The command "lrcalc coprod z" lists all pairs of partitions x and y
for which the Littlewood-Richardson coefficient c^z_{x,y} is non-zero,
with that coefficient in front.
Example:
% lrcalc coprod 3 2 1
1 (3, 1) (2)
1 (2, 2) (1, 1)
1 (3, 1) (1, 1)
1 (2, 1) (3)
2 (2, 1) (2, 1)
1 (2, 2, 1) (1)
1 (3, 2, 1) ()
1 (3, 2) (1)
1 (2, 1, 1) (2)
1 (3, 1, 1) (1)
1 (1, 1, 1) (2, 1)
1 (2, 1, 1) (1, 1)
1 (2, 2) (2)
schubmult: Expand a product of two Schubert polynomials in the basis
--------- of Schubert polynomials.
Example:
% schubmult 1 3 2 - 1 3 2
1 (1, 4, 2, 3)
1 (2, 3, 1)
MAPLE INTERFACE
===============
The file lrcalc.maple in the directory /usr/local/share/lrcalc
provides an interface between the above C programs and Maple. It
allows you to combine the notational convenience of Maple with the
speed of C programs.
To use the interface, simply type
read "/usr/local/share/lrcalc/lrcalc.maple";
after starting Maple.
You can copy the file lrcalc.maple to a more convenient directory to
avoid typing the full path every time you wish to load it.
The notation used by the Maple interface is the same as in John
Stembridge's "SF" Maple package for computing with symmetric
functions. I hope this will make it easier to use SF with the Maple
interface.
The Maple interface defines three Maple functions:
tos, skew, lrcoef
The following Maple session gives an example of how to use them:
% maple
|\^/| Maple V Release 4 (WMI Campus Wide License)
._|\| |/|_. Copyright (c) 1981-1996 by Waterloo Maple Inc. All rights
\ MAPLE / reserved. Maple and Maple V are registered trademarks of
<____ ____> Waterloo Maple Inc.
| Type ? for help.
> read "/usr/local/share/lrcalc/lrcalc.maple";
> lrcoef([3,2,1], [2,1], [2,1]);
2
> skew(s[3,2,1], s[2,1]);
s[3] + 2 s[2, 1] + s[1, 1, 1]
> tos(s[2,1] * s[2,1]);
s[3, 3] + s[4, 2] + s[2, 2, 1, 1] + s[2, 2, 2] + 2 s[3, 2, 1] + s[4, 1, 1]
+ s[3, 1, 1, 1]
> lrcoef( s[12,11,10,9,8,7,6,5,4,3,2,1],\
> s[8,7,6,5,4,3,2,1], s[8,7,6,6,5,4,3,2,1]);
7869992
Enjoy!
Anders S. Buch (July 16, 2014)
|