OFFSET
1,2
COMMENTS
Numbers are written in base 2 in the usual way, starting with the most significant bit (MSB).
The sequence starts at index 1 since it is a list. The sequence cannot start with a(1)=0, else the 0th bit would not be nonzero. Thus we don't have the choice of numbering the bits starting from zero, and the first bit is necessarily set (the MSB of the first term which is nonzero), i.e., a(1)=1.
LINKS
Rémy Sigrist, Table of n, a(n) for n = 1..10000
EXAMPLE
The term which follows a(1)=1 (cf. comment) will be nonzero and thus have a nonzero MSB, which is the bit that comes right after the initial 1, thus bit # 2 is nonzero, therefore a(2)=2.
This term is written 10 in base 2, so the third bit of the sequence is zero, but the 4th bit, which will follow, will be the MSB of a(3) which is nonzero, thus a(3)=4.
The 4th bit is followed by two zero bits (since 4 = 100[2]), but the 7th bit is the MSB of the next term, thus nonzero, and therefore a(4)=7.
Since 7=111[2], the 8th and 9th bits are also set, i.e., the sequence continues a(5)=8, a(6)=9, and from now on, there is always a growing number of subsequent bits already written down.
PROG
(PARI) a=b=[]; for(n=1, 99, #b >= n & for( i=a[n-1]+1, #b, b[i] & (a=concat(a, i)) & break); #a<n & a=concat(a, #b+1); b=concat(b, binary( a[n] ))); a
CROSSREFS
KEYWORD
base,nonn
AUTHOR
M. F. Hasler, Nov 05 2009
STATUS
approved