The fundamental bijection
Stanley defines the fundamental bijection on page 30.
Given w=(14)(2)(375)(6), Stanley writes it in standard form (specifically: each cycle is written with its largest element first; cycles are written in increasing order of their largest element). Thus we obtain (2)(41)(6)(753).
Then we obtain w* from w by writing it in standard form an erasing the parentheses (that is, viewing the numbers as a word); here w* = 2416753.
Given this, w may be recovered by inserting a left parenthesis preceding every left-to-right maximum, and right parentheses where appropriate.
standard(cyc,n=NULL) standard_cyclist(x,n=NULL) fbin_single(vec) fbin(W) fbin_inv(cyc)
vec |
In function |
W |
In functions |
cyc |
In functions |
n |
In function |
x |
In function |
The user-friendly functions are fbin()
and fbin_inv()
which perform Stanley's “fundamental bijection”. Function
fbin()
takes a word object and returns a cycle; function
fbin_inv()
takes a cycle and returns a word.
The other functions are low-level helper functions that are not really
intended for the user (except possibly standard()
, which puts a
cycle object in standard order in list form).
Robin K. S. Hankin
R. P. Stanley 2011 Enumerative Combinatorics
# Stanley's example w: standard(cycle(list(list(c(1,4),c(3,7,5))))) w_hat <- c(2,4,1,6,7,5,3) fbin(w_hat) fbin_inv(fbin(w_hat)) x <- rperm(40,9) stopifnot(all(fbin(fbin_inv(x))==x)) stopifnot(all(fbin_inv(fbin(x))==x))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.