cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A104324 The Fibonacci word over the nonnegative integers; or, the number of runs of identical bits in the binary Zeckendorf representation of n.

Original entry on oeis.org

0, 1, 2, 2, 3, 2, 3, 4, 2, 3, 4, 4, 5, 2, 3, 4, 4, 5, 4, 5, 6, 2, 3, 4, 4, 5, 4, 5, 6, 4, 5, 6, 6, 7, 2, 3, 4, 4, 5, 4, 5, 6, 4, 5, 6, 6, 7, 4, 5, 6, 6, 7, 6, 7, 8, 2, 3, 4, 4, 5, 4, 5, 6, 4, 5, 6, 6, 7, 4, 5, 6, 6, 7, 6, 7, 8, 4, 5, 6, 6, 7, 6, 7, 8, 6, 7, 8, 8, 9, 2, 3, 4, 4, 5, 4, 5, 6, 4, 5, 6, 6, 7, 4, 5, 6, 6
Offset: 0

Views

Author

Ron Knott, Mar 01 2005

Keywords

Comments

Image of 0 under repeated application of the morphism phi = {2i -> 2i,2i+1; 2i+1 -> 2i+2: i = 0,1,2,3,...}. - N. J. A. Sloane, Jun 30 2017
This sequence has some interesting fractal properties (plot it!).
First occurrence of k=0,1,2,... is at 0,1,2,4,7,12,20,33,54, ..., A000071(k+1): Fibonacci numbers - 1. - Robert G. Wilson v, Apr 25 2006
Read mod 2 gives the Fibonacci word A003849. The differences, halved, give A213911.

Examples

			14 = 13+1 as a sum of Fibonacci numbers = 100001(in Fibonacci base) using the least number of 1's (Zeckendorf Rep): it consists of 3 runs: one 1, four 0's, one 1, so a(14)=3.
This sequence may be broken up into blocks of lengths 1,1,2,3,5,8,... (the nonzero Fibonacci numbers). The first occurrence of a number indicates the start of a new block. The first few blocks are:
0,
1,
2,2,
3,2,3,
4,2,3,4,4,
5,2,3,4,4,5,4,5,
6,2,3,4,4,5,4,5,6,4,5,6,6,
7,2,3,4,4,5,4,5,6,4,5,6,6,7,4,5,6,6,7,6,7,
8,2,3,4,4,5,4,5,6,4,5,6,6,7,4,5,6,6,7,6,7,8,4,5,6,6,7,6,7,8,6,7,8,8,
... (see also A288576). -  _N. J. A. Sloane_, Jun 30 2017
		

References

  • E. Zeckendorf, Représentation des nombres naturels par une somme des nombres de Fibonacci ou de nombres de Lucas, Bull. Soc. Roy. Sci. Liège 41, 179-182, 1972.

Crossrefs

See also the Fibonacci word A003849.
For partial sums see A288575.
See A288576 for another view of the initial blocks.

Programs

  • Haskell
    import Data.List (group)
    a104324 = length . map length . group . a213676_row
    -- Reinhard Zumkeller, Mar 10 2013
    
  • Maple
    with(combinat,fibonacci):fib:=fibonacci: zeckrep:=proc(N)local i,z,j,n;i:=2;z:=NULL;n:=N; while fib(i)<=n do i:=i+1 od;print(i=fib(i)); for j from i-1 by -1 to 2 do if n>=fib(j) then z:=z,1;n:=n-fib(j) else z:=z,0 fi od; [z] end proc: countruns:=proc(s)local i,c,elt;elt:=s[1];c:=1; for i from 2 to nops(s) do if s[i]<>s[i-1] then c:=c+1 fi od; c end proc: seq(countruns(zeckrep(n)),n=1..100);
  • Mathematica
    f[n_Integer] := Block[{k = Ceiling[ Log[ GoldenRatio, n*Sqrt[5]]], t = n, fr = {}}, While[k > 1, If[t >= Fibonacci[k], AppendTo[fr, 1]; t = t - Fibonacci[k], AppendTo[fr, 0]]; k-- ]; While[ fr[[1]] == 0, fr = Rest@fr]; Length@ Split@ fr]; Array[f, 105] (* Robert G. Wilson v, Apr 25 2006 *)
    Nest[ReplaceAll[#, {t_ /; EvenQ[t] :> Sequence[t, t+1], t_ /; OddQ[t] :> t+1}] &, {0}, 10] (* Paolo Xausa, Apr 05 2024 *)
  • PARI
    phi(n) = if (n%2, n+1, [n, n+1]);
    vphi(v) = nv = []; for (k=1, #v, nv = concat(nv, phi(v[k]));); nv;
    lista(nn) = {v = [0]; for (i=1, nn, v = vphi(v);); v;} \\ Michel Marcus, Oct 10 2017

Formula

a(n) = A007895(n) + A213911(n). - Reinhard Zumkeller, Mar 10 2013

Extensions

Entry revised by N. J. A. Sloane, Jun 30 2017