OFFSET
1,3
COMMENTS
a(1)=0 is taken to be a single 0 bit when concatenating.
LINKS
Attila Kiss, Java code to generate terms.
EXAMPLE
The number 2 is excluded because its binary expansion is "10", which is the concatenation of a(1)="1" and a(0)="0".
The number 19 is excluded because its binary expansion is "10011", which is the concatenation of a(4)="100" and a(3)="11".
MATHEMATICA
conc[x_, y_] := FromDigits[Flatten@IntegerDigits[{x, y}, 2], 2]; a[1] = 0; a[n_] := a[n] = Module[{k = a[n - 1] + 1, v = Array[a, n - 1], c}, c = conc @@@ Select[Tuples[v, {2}], UnsameQ @@ # &]; While[! FreeQ[c, k], k++]; k]; Array[a, 60] (* Amiram Eldar, Sep 29 2023 *)
PROG
(Python)
from itertools import islice
def agen(): # generator of terms
an, bins, concats = 0, {"0"}, set()
while True:
yield an
while (bn:=bin(an:=an+1)[2:]) in concats: pass
concats |= {bn+bi for bi in bins} | {bi+bn for bi in bins}
bins.add(bn)
print(list(islice(agen(), 62))) # Michael S. Branicky, Sep 29 2023
CROSSREFS
KEYWORD
nonn,base
AUTHOR
Attila Kiss, Aug 16 2023
STATUS
approved