OFFSET
0,3
COMMENTS
Numbers that are sums of distinct factorials (0! and 1! not treated as distinct).
Complement of A115945; A115944(a(n)) > 0; A115647 is a subsequence. - Reinhard Zumkeller, Feb 02 2006
A115944(a(n)) = 1. - Reinhard Zumkeller, Dec 04 2011
From Tilman Piesk, Jun 04 2012: (Start)
The inversion vector (compare A007623) of finite permutation a(n) (compare A055089, A195663) has only zeros and ones. Interpreted as a binary number it is 2*n (or n when the inversion vector is defined without the leading 0).
The inversion set of finite permutation a(n) interpreted as a binary number (compare A211362) is A211364(n).
(End)
LINKS
Reinhard Zumkeller (terms 0..500) & Antti Karttunen, Table of n, a(n) for n = 0..8191
FORMULA
G.f. 1/(1-x) * Sum_{k>=0} (k+1)!*x^2^k/(1+x^2^k). - Ralf Stephan, Jun 24 2003
From Antti Karttunen, Aug 19 2016: (Start)
A275736(a(n)) = n.
(End)
a(n) = a(n - mbs(n)) + (1 + floor(log(n) / log(2)))!. - David A. Corneth, Aug 21 2016
EXAMPLE
128 is in the sequence since 5! + 3! + 2! = 128.
a(22) = 128. a(22) = a(6) + (1 + floor(log(16) / log(2)))! = 8 + 5! = 128. Also, 22 = 10110_2. Therefore, a(22) = 1 * 5! + 0 * 4! + 1 * 3! + 1 + 2! + 0 * 0! = 128. - David A. Corneth, Aug 21 2016
MAPLE
[seq(bin2facbase(j), j=0..64)]; bin2facbase := proc(n) local i; add((floor(n/(2^i)) mod 2)*((i+1)!), i=0..floor_log_2(n)); end;
floor_log_2 := proc(n) local nn, i; nn := n; for i from -1 to n do if(0 = nn) then RETURN(i); fi; nn := floor(nn/2); od; end;
MATHEMATICA
a[n_] := Reverse[id = IntegerDigits[n, 2]].Range[Length[id]]!; Table[a[n], {n, 0, 60}] (* Jean-François Alcover, Jun 19 2012, after Philippe Deléham *)
PROG
(Haskell)
import Data.List (elemIndices)
a059590 n = a059590_list !! n
a059590_list = elemIndices 1 $ map a115944 [0..]
-- Reinhard Zumkeller, Dec 04 2011
(PARI) a(n) = if(n>0, a(n-msb(n)) + (1+logint(n, 2))!, 0)
msb(n) = 2^#binary(n)>>1
{my(b = binary(n)); sum(i=1, #b, b[i]*(#b+1-i)!)} \\ David A. Corneth, Aug 21 2016
(Python)
def facbase(k, f):
return sum(f[i] for i, bi in enumerate(bin(k)[2:][::-1]) if bi == "1")
def auptoN(N): # terms up to N factorial-base digits; 13 generates b-file
f = [factorial(i) for i in range(1, N+1)]
return list(facbase(k, f) for k in range(2**N))
print(auptoN(5)) # Michael S. Branicky, Oct 15 2022
CROSSREFS
KEYWORD
nonn
AUTHOR
Henry Bottomley, Jan 24 2001
EXTENSIONS
Name changed (to emphasize the functional nature of the sequence) with the old definition moved to the comments by Antti Karttunen, Aug 21 2016
STATUS
approved