TableauxBumpers SΒΆ
tableau.spad line 45 [edit on github]
S: OrderedSet
TableauBumpers implements the Schenstead-Knuth correspondence between sequences and pairs of Young tableaux. The 2 Young tableaux are represented as a single tableau with pairs as components.
- bat1: List List List S -> List List S
bat1(llp)unbumps a tableaullp. Operationbat1is the inverse oftab1.
- bumprow: ((S, S) -> Boolean, List S, List List S) -> Record(fs: Boolean, sd: List S, td: List List S)
bumprow(cf, pr, r)is an auxiliary function which bumps a rowrwith a pairprusing comparison functioncf, and returns a record
- bumptab1: (List S, List List List S) -> List List List S
bumptab1(pr, t)bumps a tableautwith a pairprusing comparison function <, returning a new tableau
- bumptab: ((S, S) -> Boolean, List S, List List List S) -> List List List S
bumptab(cf, pr, t)bumps a tableautwith a pairprusing comparison functioncf, returning a new tableau
- maxrow: (List S, List List List S, List List S, List List List S, List List List S, List List List S) -> Record(f1: List S, f2: List List List S, f3: List List S, f4: List List List S)
maxrow(a, b, c, d, e)is an auxiliary function formr
- mr: List List List S -> Record(f1: List S, f2: List List List S, f3: List List S, f4: List List List S)
mr(t)is an auxiliary function which finds the position of the maximum element of a tableautwhich is in the lowest row, producing a record of results
- slex: List S -> List List S
slex(ls)sorts the argument sequencels, then zips (see map) the original argument sequence with the sorted result to a list of pairs