

A134640


Permutational numbers (numbers with k different digits in kpositional system).


19



0, 1, 2, 5, 7, 11, 15, 19, 21, 27, 30, 39, 45, 54, 57, 75, 78, 99, 108, 114, 120, 135, 141, 147, 156, 177, 180, 198, 201, 210, 216, 225, 228, 194, 198, 214, 222, 238, 242, 294, 298, 334, 346, 358, 366, 414, 422, 434, 446, 482, 486, 538, 542, 558, 566, 582, 586
(list;
graph;
refs;
listen;
history;
text;
internal format)



OFFSET

1,3


COMMENTS

Note that leading zeros are allowed in these numbers.
a(1) is the 1positional system 1!=1 numbers
a(2) to a(3) are two=2! 2positional system numbers
a(4) to a(9) are six=3! 3positional system numbers
a(10) to a(33) are 24=4! 4positional system numbers
a(34) to a(153) are 120=5! 5positional system numbers
...
There are a(!k)a(Sum[m!,1,k])=a(A003422)a(A007489) kpositional system k! numbers
The name permutational numbers arises because each permutation of k elements is isomorphic with one and only one of member of this sequence and conversely each number in this sequence is isomorphic with one and only one permutation of k elelmnts or its equivalent permutation matrix.


LINKS



EXAMPLE

We build permutational numbers:
a(1)=0 in unitary positional system we have only one digit 0
a(2)=1 because in binary positional system smaller number with two different digits is 01 = 1
a(3)=2 because in binary positional system bigger number with two different digits is 10 = 2 (binary system is over)
a(4)=5 because smallest number in ternary system with 3 different digits is 012=5
a(5)=7 second number in ternary system with 3 different digits is 021=7
a(6)=11 third number in ternary system with 3 different digits is 102=11
a(7)=15 120=15
etc.


MATHEMATICA

a = {}; b = {}; Do[AppendTo[b, n]; w = Permutations[b]; Do[j = FromDigits[w[[m]], n + 1]; AppendTo[a, j], {m, 1, Length[w]}], {n, 0, 5}]; a (*Artur Jasinski*)
Flatten[Table[FromDigits[#, n]&/@Permutations[Range[0, n1]], {n, 5}]] (* Harvey P. Dale, Dec 09 2014 *)


PROG

(Haskell)
import Data.List (permutations, sort)
a134640 n k = a134640_tabf !! (n1) !! (k1)
a134640_row n = sort $
map (foldr (\dig val > val * n + dig) 0) $ permutations [0 .. n  1]
a134640_tabf = map a134640_row [1..]
a134640_list = concat a134640_tabf
(Python)
from itertools import permutations
def fd(d, b): return sum(di*b**i for i, di in enumerate(d[::1]))
def row(n): return [fd(d, n) for d in permutations(range(n))]


CROSSREFS



KEYWORD

nonn,base,tabf


AUTHOR



EXTENSIONS

Corrected indices in examples. Replaced dashes in comments by the word "to"  R. J. Mathar, Aug 26 2009


STATUS

approved



