https://github.com/stla/standardyoungtableaux.jl
Standard Young tableaux.
https://github.com/stla/standardyoungtableaux.jl
julia young-tableaux
Last synced: about 1 month ago
JSON representation
Standard Young tableaux.
- Host: GitHub
- URL: https://github.com/stla/standardyoungtableaux.jl
- Owner: stla
- License: mit
- Created: 2021-01-02T15:12:02.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2022-07-21T12:42:15.000Z (almost 4 years ago)
- Last Synced: 2025-01-19T21:17:11.226Z (over 1 year ago)
- Topics: julia, young-tableaux
- Language: Julia
- Homepage: https://stla.github.io/StandardYoungTableaux.jl/dev/
- Size: 136 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# StandardYoungTableaux
[](https://github.com/stla/StandardYoungTableaux.jl/actions)
- All standard Young tableaux of a given shape:
```julia
julia> lambda = IPartition([3, 1])
IPartition(4, [3, 1])
julia> allSYTx(lambda)
3-element Vector{StandardYoungTableau}:
StandardYoungTableau(IPartition(4, [3, 1]), [[1, 3, 4], [2]])
StandardYoungTableau(IPartition(4, [3, 1]), [[1, 2, 4], [3]])
StandardYoungTableau(IPartition(4, [3, 1]), [[1, 2, 3], [4]])
```
- Count of all standard Young tableaux of a given shape:
```julia
julia> lambda = IPartition([4, 2])
IPartition(6, [4, 2])
julia> countSYTx(lambda)
9
```
- Uniform sampling of standard Young tableaux:
```julia
julia> randomSYT(lambda)
StandardYoungTableau(IPartition(6, [4, 2]), [[1, 2, 3, 6], [4, 5]])
```
- Robinson-Schensted(-Knuth) correspondence:
```julia
julia> P, Q = RS([3, 4, 1, 2])
(P = StandardYoungTableau(IPartition(4, [2, 2]), [[1, 2], [3, 4]]), Q = StandardYoungTableau(IPartition(4, [2, 2]), [[1, 2], [3, 4]]))
julia> P
StandardYoungTableau(IPartition(4, [2, 2]), [[1, 2], [3, 4]])
julia> Q
StandardYoungTableau(IPartition(4, [2, 2]), [[1, 2], [3, 4]])
```
- Conversion to and from paths of integer partitions on the Young graph:
```julia
julia> y = StandardYoungTableau([[1,3,4], [2]])
StandardYoungTableau(IPartition(4, [3, 1]), [[1, 3, 4], [2]])
julia> path = SYT2YoungPath(y)
4-element Vector{IPartition}:
IPartition(1, [1])
IPartition(2, [1, 1])
IPartition(3, [2, 1])
IPartition(4, [3, 1])
julia> YoungPath2SYT(path)
StandardYoungTableau(IPartition(4, [3, 1]), [[1, 3, 4], [2]])
```

- Plancherel growth process:
```julia
julia> path = randomYoungPath(5)
5-element Vector{IPartition}:
IPartition(1, [1])
IPartition(2, [2])
IPartition(3, [2, 1])
IPartition(4, [3, 1])
IPartition(5, [3, 1, 1])
julia> YoungPath2SYT(path)
StandardYoungTableau(IPartition(5, [3, 1, 1]), [[1, 2, 4], [3], [5]])
```