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.

A347766 Irregular table read by rows, T(n, k) is the rank of the k-th positive Euler permutation of {1,...,n}, permutations sorted in lexicographical order. If no such permutation exists, then T(n, 0) = 0 by convention.

Original entry on oeis.org

1, 0, 0, 2, 3, 1, 6, 8, 11, 14, 15, 17, 3, 8, 24, 28, 29, 30, 32, 35, 50, 55, 57, 68, 71, 74, 79, 92, 2, 6, 15, 16, 21, 26, 30, 40, 44, 54, 55, 60, 68, 99, 104, 120, 121, 123, 124, 125, 137, 138, 142, 143, 144, 146, 150, 161, 164, 167, 174, 175, 177, 179, 185
Offset: 0

Views

Author

Peter Luschny, Sep 12 2021

Keywords

Comments

Let M be the tangent matrix of dimension n X n. The definition of a tangent matrix is given in A346831. An Euler permutation of order n is a permutation sigma of {1,...,n} if P = Product_{k=1..n} M(k, sigma(k)) does not vanish. We say sigma is a positive Euler permutation of order n if P = 1. See A347601 for further details.
A347767 gives the table of negative Euler permutations. Related sequences are A347599 (Genocchi permutations) and A347600 (Seidel permutations).

Examples

			Table of positive Euler permutations, length of rows is A347601:
[0] 1;
[1] 0;
[2] 0;
[3] 2, 3;
[4] 1, 6, 8, 11, 14, 15, 17;
[5] 3, 8, 24, 28, 29, 30, 32, 35, 50, 55, 57, 68, 71, 74, 79, 92.
.
The 16 permutations corresponding to the ranks are for n = 5:
    3 -> [12435],  8 -> [13254], 24 -> [15432], 28 -> [21453],
   29 -> [21534], 30 -> [21543], 32 -> [23154], 35 -> [23514],
   50 -> [31254], 55 -> [32145], 57 -> [32415], 68 -> [35142],
   71 -> [35412], 74 -> [41253], 79 -> [42135], 92 -> [45132].
		

Crossrefs

Programs

  • Maple
    # Uses function TangentMatrix from A346831.
    EulerPermutationsRank := proc(n, sgn) local M, P, N, s, p, m, rank;
       M := TangentMatrix(n); P := []; N := []; rank := 0;
       for p in Iterator:-Permute(n) do
          rank := rank + 1;
          m := mul(M[k, p(k)], k = 1..n);
          if m =  0 then next fi;
          if m =  1 then P := [op(P), rank] fi;
          if m = -1 then N := [op(N), rank] fi; od;
       if sgn = 'pos' then P else N fi end:
    A347766Row := n -> `if`(n < 3, [[1,0,0][n+1]], EulerPermutationsRank(n, 'pos')):
    for n from 0 to 5 do A347766Row(n) od;