cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

Showing 1-4 of 4 results.

A065184 Permutation of nonnegative integers produced when the finite permutations listed by A060117 are subjected to the left-right maxima variant of Foata's transformation. Inverse of A065183.

Original entry on oeis.org

0, 1, 2, 5, 3, 4, 6, 7, 14, 23, 15, 22, 8, 21, 12, 16, 19, 11, 17, 10, 9, 13, 20, 18, 24, 25, 26, 29, 27, 28, 54, 55, 86, 119, 87, 118, 56, 117, 84, 88, 115, 59, 89, 58, 57, 85, 116, 114, 30, 31, 80, 107, 81, 106, 48, 49, 60, 67, 61, 66, 74, 92, 38, 113, 47, 101, 112, 100
Offset: 0

Views

Author

Antti Karttunen, Oct 19 2001

Keywords

Crossrefs

A065161-A065163 give cycle counts and max lengths. Cf. also A065181, A065182 for Maple procedure Foata and A060117 for PermUnrank3R and A060125 for PermRank3R.

Programs

  • Maple
    [seq(PermRank3R(Foata(PermUnrank3R(j))),j=0..119)];

A060117 A list of all finite permutations in "PermUnrank3R" ordering. (Inverses of the permutations of A060118.)

Original entry on oeis.org

1, 2, 1, 1, 3, 2, 3, 1, 2, 3, 2, 1, 2, 3, 1, 1, 2, 4, 3, 2, 1, 4, 3, 1, 4, 2, 3, 4, 1, 2, 3, 4, 2, 1, 3, 2, 4, 1, 3, 1, 4, 3, 2, 4, 1, 3, 2, 1, 3, 4, 2, 3, 1, 4, 2, 3, 4, 1, 2, 4, 3, 1, 2, 4, 2, 3, 1, 2, 4, 3, 1, 4, 3, 2, 1, 3, 4, 2, 1, 3, 2, 4, 1, 2, 3, 4, 1, 1, 2, 3, 5, 4, 2, 1, 3, 5, 4, 1, 3, 2, 5, 4, 3, 1, 2
Offset: 0

Views

Author

Antti Karttunen, Mar 02 2001

Keywords

Comments

PermUnrank3R and PermUnrank3L are slight modifications of unrank2 algorithm presented in Myrvold-Ruskey article.

Examples

			In this table each row consists of A001563[n] permutations of (n+1) terms; i.e., we have (1/) 2,1/ 1,3,2; 3,1,2; 3,2,1; 2,3,1/ 1,2,4,3; 2,1,4,3;
Append to each an infinite number of fixed terms and we get a list of rearrangements of natural numbers, but with only a finite number of terms permuted:
1/2,3,4,5,6,7,8,9,...
2,1/3,4,5,6,7,8,9,...
1,3,2/4,5,6,7,8,9,...
3,1,2/4,5,6,7,8,9,...
3,2,1/4,5,6,7,8,9,...
2,3,1/4,5,6,7,8,9,...
1,2,4,3/5,6,7,8,9,...
2,1,4,3/5,6,7,8,9,...
		

Crossrefs

A060119 = Positions of these permutations in the "canonical list" A055089 (where also the rest of procedures can be found). A060118 gives position of the inverse permutation of each and A065183 positions after Foata transform.
Inversion vectors: A064039.

Programs

  • Maple
    with(group); permul := (a,b) -> mulperms(b,a); PermUnrank3R := proc(r) local n; n := nops(factorial_base(r)); convert(PermUnrank3Raux(n+1,r,[]),'permlist',1+(((r+2) mod (r+1))*n)); end; PermUnrank3Raux := proc(n,r,p) local s; if(0 = r) then RETURN(p); else s := floor(r/((n-1)!)); RETURN(PermUnrank3Raux(n-1, r-(s*((n-1)!)), permul(p,[[n,n-s]]))); fi; end;

Formula

[seq(op(PermUnrank3R(j)), j=0..)]; (Maple code given below)

A065181 Permutation of nonnegative integers produced when the finite permutations listed by A055089 are subjected to inverse of Foata's transformation. Inverse of A065182.

Original entry on oeis.org

0, 1, 2, 5, 3, 4, 6, 7, 14, 23, 17, 20, 8, 11, 12, 22, 13, 21, 9, 10, 16, 18, 15, 19, 24, 25, 26, 29, 27, 28, 54, 55, 86, 119, 95, 110, 62, 71, 78, 116, 79, 113, 65, 68, 92, 102, 89, 103, 30, 31, 38, 47, 41, 44, 48, 49, 84, 118, 94, 108, 50, 53, 80, 117, 83, 109, 51, 52
Offset: 0

Views

Author

Antti Karttunen, Oct 19 2001

Keywords

Comments

Here we use the inverse of the left-right maxima variant of Foata's transformation, which works by rotating each cycle largest element first and then sorts the cycles to ascending order, according to that first (and largest) element of each.

References

  • I.M. Gessel and R. P. Stanley, Algebraic Enumeration, chapter 21 in Handbook of Combinatorics, Vol. 2, edited by R.L.Graham et al., The MIT Press, Mass, 1995, page 1045.

Crossrefs

A065161-A065163 give cycle counts and max lengths. Cf. also A065183, A065184 and A055089 and A056019 for the requisite Maple procedures.

Programs

  • Maple
    [seq(PermRevLexRank(FoataInv(PermRevLexUnrank(j))),j=0..119)];
    with(group); FoataInv := p -> map(op, sort([op(map(RotCycleLargestFirst,convert(p,`disjcyc`))),op(FixedCycles(p))], sortbyfirst));
    sortbyfirst := (a,b) -> `if`((a[1] < b[1]),true,false);
    FindLargest := proc(a) local i,m; m := 0; for i from 1 to nops(a) do if(0 = m) then m := i; else if(a[i] > a[m]) then m := i; fi; fi; od; RETURN(m); end;
    RotCycleLargestFirst := proc(c) local x; x := FindLargest(c); if(x <= 1) then RETURN(c); else RETURN([op(c[x..nops(c)]),op(c[1..(x-1)])]); fi; end;
    FixedCycles := proc(p) local a,i; a := []; for i from 1 to nops(p) do if(p[i] = i) then a := [op(a),[i]]; fi; od; RETURN(a); end;

A065182 Permutation of nonnegative integers produced when the finite permutations listed by A055089 are subjected to Foata transform. Inverse of A065181.

Original entry on oeis.org

0, 1, 2, 4, 5, 3, 6, 7, 12, 18, 19, 13, 14, 16, 8, 22, 20, 10, 21, 23, 11, 17, 15, 9, 24, 25, 26, 28, 29, 27, 48, 49, 72, 96, 97, 73, 74, 76, 50, 100, 98, 52, 99, 101, 53, 77, 75, 51, 54, 55, 60, 66, 67, 61, 30, 31, 84, 108, 109, 85, 78, 91, 36, 115, 102, 42, 103, 114, 43
Offset: 0

Views

Author

Antti Karttunen, Oct 19 2001

Keywords

Comments

Here we use a variant of Foata's transformation, which forms a new permutation by "inserting parentheses" at each left-right maxima, to delimit cycles.

References

  • I. M. Gessel and R. P. Stanley, Algebraic Enumeration, chapter 21 in Handbook of Combinatorics, Vol. 2, edited by R.L.Graham et al., The MIT Press, Mass, 1995, page 1045.

Crossrefs

A065161-A065163 give cycle counts and max lengths. Cf. also A065183, A065184 and A055089 and A056019 for the requisite Maple procedures.

Programs

  • Maple
    [seq(PermRevLexRank(Foata(PermRevLexUnrank(j))),j=0..119)];
    with(group); Foata := proc(p) local c,c1,i,m; c := []; c1 := []; m := 0; for i from 1 to nops(p) do if(p[i] > m) then if(nops(c1) > 1) then c := [op(c),c1]; fi; m := p[i]; c1 := []; fi; c1 := [op(c1),p[i]]; od; if(nops(c1) > 1) then c := [op(c),c1]; fi; RETURN(convert(c,'permlist',nops(p))); end;
Showing 1-4 of 4 results.