%I #34 Nov 29 2023 13:08:17
%S 0,5,9,13,15,19,21,25,29,31,33,37,41,43,45,49,53,55,59,61,65,67,69,73,
%T 77,79,83,85,89,91,93,97,101,103,107,109,113,115,119,121,125,127,131,
%U 133,137,139,141,145,149,151,155,157,161,163,167,169,173,175,179
%N Indices of terms in A354169 that are not powers of 2.
%H Rémy Sigrist, <a href="/A354798/b354798.txt">Table of n, a(n) for n = 1..10000</a>
%H Michael De Vlieger, Thomas Scheuerle, Rémy Sigrist, N. J. A. Sloane, and Walter Trump, <a href="http://arxiv.org/abs/2209.04108">The Binary Two-Up Sequence</a>, arXiv:2209.04108 [math.CO] [math.CO], Sep 11 2022.
%H Rémy Sigrist, <a href="/A354798/a354798.gp.txt">PARI program</a>
%F Conjecture from _N. J. A. Sloane_, Jul 15 2022: (Start)
%F The following is a conjectured explicit formula for a(n).
%F Define the "fence posts" by F(0) = 1, F(2i+1) = 2^(i+4) - 3 for i >= 0, F(2i) = 3*2^(i+2) - 3 for i >= 1.
%F The F(i) sequence begins 1, 13, 21, 29, 45, 61, 93, 125, 189, 253, 381, ... (cf. A136252 or A354788)
%F The value of a(n) at n = F(i) is V(i) = 0 if i = 0, V(i) = 3*F(i)+2 if i >= 1.
%F The V(i) sequence begins 0, 41, 65, 89, 137, 185, 281, 377, 569, 761, ... (cf. A354789).
%F The first 12 terms of the sequence are irregular, so we simply define a(n) for F(0) = 1 <= n <= 12 to be the n-th term of
%F [0, 5, 9, 13, 15, 19, 21, 25, 29, 31, 33, 37]
%F Assume now that n >= F(1) = 13, and define i and j by F(i) <= n < F(i+1), n = F(i) + j.
%F Then we conjecture that a(n) = V(i) + f(j) where f(0) .. f(3) are 0,2,4,8, and for j >= 4, f(j) = 3*j if j is even, f(j) = 3*j-1 if j is odd.
%F The f(i), i >= 0, sequence is independent of n (to find a(n) we use only an initial segment of f(n)), and begins:
%F 0, 2, 4, 8, 12, 14, 18, 20, 24, 26, 30, 32, 36, 38, 42, 44, 48, 50, 54, 56, ...
%F The conjecture has been checked for the first 5000 terms.
%F (End)
%F The conjecture is now known to be true. See De Vlieger et al. (2022). - _N. J. A. Sloane_, Aug 29 2022
%o (PARI) See Links section.
%o (Python)
%o from itertools import count, islice
%o from collections import deque
%o from functools import reduce
%o from operator import or_
%o def A354798_gen(): # generator of terms
%o aset, aqueue, b, f, i = {0,1,2}, deque([2]), 2, False, 2
%o yield 0
%o while True:
%o for k in count(1):
%o m, j, j2, r, s = 0, 0, 1, b, k
%o while r > 0:
%o r, q = divmod(r,2)
%o if not q:
%o s, y = divmod(s,2)
%o m += y*j2
%o j += 1
%o j2 *= 2
%o if s > 0:
%o m += s*2**b.bit_length()
%o if m not in aset:
%o i += 1
%o if m.bit_count() > 1:
%o yield i
%o aset.add(m)
%o aqueue.append(m)
%o if f: aqueue.popleft()
%o b = reduce(or_,aqueue)
%o f = not f
%o break
%o A354798_list = list(islice(A354798_gen(),30)) # _Chai Wah Wu_, Jun 06 2022
%Y Cf. A057716, A136252, A354169, A354680 (corresponding terms), A354788, A354798.
%K nonn,base
%O 1,2
%A _Rémy Sigrist_ and _N. J. A. Sloane_, Jun 06 2022