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”).

List of subwords (or factors) of the Thue-Morse "1,2"-word A001285.
2

%I #12 Nov 22 2020 12:22:32

%S 1,2,11,12,21,22,112,121,122,211,212,221,1121,1122,1211,1212,1221,

%T 2112,2121,2122,2211,2212,11212,11221,12112,12122,12211,12212,21121,

%U 21122,21211,21221,22112,22121,112122,112211,112212,121121,121122,121221,122112,122121

%N List of subwords (or factors) of the Thue-Morse "1,2"-word A001285.

%C The number of factors of length m is given by A005942(m).

%H Alois P. Heinz, <a href="/A214215/b214215.txt">Table of n, a(n) for n = 1..10200</a>

%p b:= proc(n) option remember; local r;

%p `if`(n=0, 1, `if`(n<4, 2*n, `if`(irem(n, 2, 'r')=0,

%p b(r)+b(r+1), 2*b(r+1))))

%p end:

%p m:= proc(n) option remember; local r;

%p `if`(n=0, 1, `if`(irem(n, 2, 'r')=0, m(r), 3-m(r)))

%p end:

%p T:= proc(n) local k, s; s:={};

%p for k while nops(s)<b(n) do

%p s:= s union {parse(cat(seq(m(i), i=k..k+n-1)))}

%p od; sort([s[]])[]

%p end:

%p seq(T(n), n=1..10); # _Alois P. Heinz_, Jul 19 2012

%t b[n_] := b[n] = Module[{r}, If[n == 0, 1, If[n < 4, 2n, r = Quotient[n, 2]; If[Mod[n, 2] == 0, b[r] + b[r + 1], 2b[r + 1]]]]];

%t m[n_] := m[n] = Module[{r}, If[n == 0, 1, r = Quotient[n, 2]; If[Mod[n, 2] == 0, m[r], 3 - m[r]]]];

%t T[n_] := Module[{k, s = {}}, For[k = 1, Length[s] < b[n], k++, s = s ~Union~ {FromDigits[#]}& @ Table[m[i], {i, k, k + n - 1}]]; Sort[s]];

%t Array[T, 10] // Flatten (* _Jean-François Alcover_, Nov 22 2020, after _Alois P. Heinz_ *)

%Y Cf. A001285, A010060, A005942.

%K nonn

%O 1,2

%A _N. J. A. Sloane_, Jul 10 2012