login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A178757
Smallest k such that k*n has an odd number of 1's in its base-2 expansion.
4
1, 1, 7, 1, 5, 7, 1, 1, 9, 5, 1, 7, 1, 1, 19, 1, 17, 9, 1, 5, 1, 1, 3, 7, 1, 1, 3, 1, 3, 19, 1, 1, 33, 17, 1, 9, 1, 1, 3, 5, 1, 1, 7, 1, 9, 3, 1, 7, 1, 1, 7, 1, 5, 3, 1, 1, 3, 3, 1, 19, 1, 1, 67, 1, 65, 33, 1, 17, 1, 1, 3, 9, 1, 1, 5, 1, 5, 3, 1, 5, 1, 1, 5, 1, 5, 7, 1, 1, 5, 9, 1, 3, 1, 1, 3, 7, 1, 1, 11, 1
OFFSET
1,3
COMMENTS
a(n) is the least integer k such that t(k*n) = 1, where t(i) is the Thue-Morse sequence.
From Robert G. Wilson v, Sep 29 2010: (Start)
k must always be odd.
First occurrence of odd ks: 1, 23, 5, 3, 9, 99, 325, 315, 17, 15, 3021, 195, 189, 645, 2313, 2295, 33, 7695, 1785, 1799, 105, 387, 23529, 5643, ..., .
Records occur at n: 1, 3, 9, 15, 33, 63, 129, 255, 513, 1023, 2049, 4095, 8193, 16383, 32769, 65535, 131073, 262143, ..., . (End)
In their paper Morgenbesser et al. prove a(n) <= n+4. They also prove that, for all n>=1, it is possible to find a k such that A010060(k*n) = 1, with k <= n+4 and Hamming weight of k <= 3. That sequence differs from the current sequence at n=195, 315, 387, 390, 630, 645, 765, 771, 774, 780, ... - Michel Marcus, Jan 24 2016
LINKS
Johannes F. Morgenbesser, Jeffrey Shallit, Thomas Stoll, Thue-Morse at multiples of an integer, Journal of Number Theory, Volume 131, Issue 8, August 2011, Pages 1498-1512.
EXAMPLE
For n = 3 the sequence has value 7, since 21 is 10101 in base 2, with an odd number of 1's, and no smaller multiple works.
MATHEMATICA
f[n_] := Block[{k = 1}, While[ EvenQ@ DigitCount[k*n, 2, 1], k++ ]; k]; Array[f, 105] (* Robert G. Wilson v, Sep 29 2010 *)
PROG
(PARI) a(n) = {my(k = 1); while (hammingweight(k*n) % 2 != 1, k++); k; } \\ Michel Marcus, Jan 23 2016
(Python)
def a(n):
k = 1
while not bin(k*n).count("1")%2 == 1: k += 1
return k
print([a(n) for n in range(1, 81)]) # Michael S. Branicky, Feb 22 2022
CROSSREFS
Sequence in context: A334072 A118307 A351738 * A376841 A195369 A367710
KEYWORD
nonn,base
AUTHOR
Jeffrey Shallit, Jun 10 2010
STATUS
approved