Macaulay2 » Documentation
Packages » Tableaux :: allSemistandardTableaux
next | previous | forward | backward | up | index | toc

allSemistandardTableaux -- list all semistandard Young tableaux of a given shape

Description

The resulting bag can be thought of as the set $\mathrm{SSYT}(\lambda,\mu,N)$ of semistandard Young tableaux of shape $\lambda/\mu$ and entries in $1,2,\ldots,N$.

i1 : theBag = allSemistandardTableaux(new Partition from {5,4,2}, new Partition from {3,1})

o1 = -*a bagged sequence of length 144*-

o1 : Bag
i2 : for i from 0 to 4 do print theBag#i
            ┌───┬───┐
            │ 1 │ 1 │
    ┌───┬───┼───┼───┘
    │ 1 │ 1 │ 2 │    
┌───┼───┼───┴───┘    
│ 1 │ 2 │            
└───┴───┘            
            ┌───┬───┐
            │ 1 │ 1 │
    ┌───┬───┼───┼───┘
    │ 1 │ 1 │ 2 │    
┌───┼───┼───┴───┘    
│ 1 │ 3 │            
└───┴───┘            
            ┌───┬───┐
            │ 1 │ 1 │
    ┌───┬───┼───┼───┘
    │ 1 │ 1 │ 2 │    
┌───┼───┼───┴───┘    
│ 2 │ 2 │            
└───┴───┘            
            ┌───┬───┐
            │ 1 │ 1 │
    ┌───┬───┼───┼───┘
    │ 1 │ 1 │ 2 │    
┌───┼───┼───┴───┘    
│ 2 │ 3 │            
└───┴───┘            
            ┌───┬───┐
            │ 1 │ 1 │
    ┌───┬───┼───┼───┘
    │ 1 │ 1 │ 2 │    
┌───┼───┼───┴───┘    
│ 3 │ 3 │            
└───┴───┘            

When the inner partition is $0$, the function numSemistandardTableaux computes the number of SSYT via the hook-content formula.

i3 : # allSemistandardTableaux(new Partition from {6,6,5,1,1})

o3 = 2520
i4 : numSemistandardTableaux(new Partition from {6,6,5,1,1})

o4 = 2520

A convenient way to compute the Cartesian product $\mathrm{SSYT}(\lambda^{(1)},\mu^{(1)},N^{(1)})\times\mathrm{SSYT}(\lambda^{(2)},\mu^{(2)},N^{(2)})\times\cdots$, is to use a list of the inputs $L=\{(\lambda^{(1)},\mu^{(1)},N^{(1)}),(\lambda^{(2)},\mu^{(2)},N^{(2)}),\ldots\}$. In this case, the output is a bagged list of tuples of tableaux.

i5 : lam1 = new Partition from {3,1}

o5 = Partition{3, 1}

o5 : Partition
i6 : mu1 = new Partition from {2}

o6 = Partition{2}

o6 : Partition
i7 : lam2 = new Partition from {1,1}

o7 = Partition{1, 1}

o7 : Partition
i8 : theProduct = allSemistandardTableaux {(lam1,mu1), (lam2,3)}

o8 = -*a bagged sequence of length 12*-

o8 : Bag
i9 : for i from 0 to 5 do print theProduct#i
         ┌───┐  ┌───┐
(        │ 1 │, │ 1 │)
 ┌───┐   └───┘  ├───┤
 │ 1 │          │ 2 │
 └───┘          └───┘
         ┌───┐  ┌───┐
(        │ 1 │, │ 1 │)
 ┌───┐   └───┘  ├───┤
 │ 1 │          │ 3 │
 └───┘          └───┘
         ┌───┐  ┌───┐
(        │ 1 │, │ 2 │)
 ┌───┐   └───┘  ├───┤
 │ 1 │          │ 3 │
 └───┘          └───┘
         ┌───┐  ┌───┐
(        │ 1 │, │ 1 │)
 ┌───┐   └───┘  ├───┤
 │ 2 │          │ 2 │
 └───┘          └───┘
         ┌───┐  ┌───┐
(        │ 1 │, │ 1 │)
 ┌───┐   └───┘  ├───┤
 │ 2 │          │ 3 │
 └───┘          └───┘
         ┌───┐  ┌───┐
(        │ 1 │, │ 2 │)
 ┌───┐   └───┘  ├───┤
 │ 2 │          │ 3 │
 └───┘          └───┘

See also

Ways to use allSemistandardTableaux:

  • allSemistandardTableaux(List)
  • allSemistandardTableaux(Partition)
  • allSemistandardTableaux(Partition,Partition)
  • allSemistandardTableaux(Partition,Partition,ZZ)
  • allSemistandardTableaux(Partition,ZZ)

For the programmer

The object allSemistandardTableaux is a method function.


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/Tableaux/documentation.m2:139:0.