StandardYoungTableaux
Overview
Some stuff for standard Young tableaux:
generation of all SYTx of a given shape
count of all SYTx of a given shape
uniform sampling of SYTx
Robinson-Schensted(-Knuth) correspondence
conversion to and from ballot sequences
conversion to and from paths of integer partitions on the Young graph
Plancherel growth process

julia> syt = StandardYoungTableau([[1,2], [3,4], [5]])
julia> SYT2YoungPath(syt)
5-element Array{IPartition,1}:
IPartition(1, [1])
IPartition(2, [2])
IPartition(3, [2, 1])
IPartition(4, [2, 2])
IPartition(5, [2, 2, 1])Member functions
StandardYoungTableaux.IPartition — TypeIPartition(partition)Defines an integer partition.
Argument
partition: vector of positive integers in decreasing order
StandardYoungTableaux.StandardYoungTableau — TypeStandardYoungTableau(tableau)Defines a standard Young tableau.
Argument
tableau: a vector of vectors of positive integers
StandardYoungTableaux.RS — MethodRS(sigma)Pair of standard Young tableaux given by the Robinson-Schensted(-Knuth) correspondence from a permutation.
Argument
sigma: a permutation given as a vector of integers
Example
RS([3, 4, 1, 2])StandardYoungTableaux.SYT2YoungPath — MethodSYT2YoungPath(syt)Path of the Young graph corresponding to a standard Young tableau.
Argument
syt: a standard Young tableau
Example
y = StandardYoungTableau([[1,3,4], [2]])
SYT2YoungPath(y)StandardYoungTableaux.SYT2ballot — MethodSYT2ballot(syt)The ballot sequence corresponding to a standard Young tableau.
Argument
syt: a standard Young tableau
StandardYoungTableaux.YoungPath2SYT — MethodYoungPath2SYT(path)Standard Young tableau corresponding to a path of the Young graph.
Argument
path: a vector of integers partitions forming a path of the Young graph
Example
y = StandardYoungTableau([[1,3,4], [2]])
path = SYT2YoungPath(y)
YoungPath2SYT(path)StandardYoungTableaux.allBallotSequences — MethodallBallotSequences(lambda)All ballot sequences associated to a given integer partition.
Argument
lambda: an integer partition
StandardYoungTableaux.allSYTx — MethodallSYTx(lambda)All standard Young tableaux of a given shape.
Argument
lambda: an integer partition
Example
lambda = IPartition([3, 1])
allSYTx(lambda)StandardYoungTableaux.ballot2SYT — Methodballot2SYT(b)The standard Young tableau corresponding to a ballot sequence.
Argument
b: a ballot sequence (vector of integers)
StandardYoungTableaux.countSYTx — MethodcountSYTx(lambda)Number of standard Young tableaux of a given shape.
Argument
lambda: an integer partition, the shape
Example
lambda = IPartition([4, 2])
countSYTx(lambda)
length(allSYTx(lambda))StandardYoungTableaux.dualSYT — MethoddualSYT(syt)Dual (conjugate) standard Young tableau.
Argument
syt: a standard Young tableau
StandardYoungTableaux.firstSYT — MethodfirstSYT(lambda)The 'first' standard Young tableau of a given shape.
Argument
lambda: an integer partition
StandardYoungTableaux.hooklengths — Methodhooklengths(lambda)The hook lengths of a partition.
Argument
lambda: an integer partition
StandardYoungTableaux.hooks — Methodhooks(lambda)The hooks of a partition.
Argument
lambda: an integer partition
StandardYoungTableaux.nextSYT — MethodnextSYT(syt)The 'next' standard Young tableau.
Argument
syt: a standard Young tableau
Example
y = firstSYT(IPartition([4, 2]))
nextSYT(y)StandardYoungTableaux.randomSYT — MethodrandomSYT(lambda)Uniformly random standard Young tableau of a given shape.
Argument
lambda: an integer partition, the shape
StandardYoungTableaux.randomYoungPath — MethodrandomYoungPath(n)Samples a path of the Young graph according to the Plancherel growth process.
Argument
n: a positive integer, the size of the path to be sampled
Example
path = randomYoungPath(5)
YoungPath2SYT(path)