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.

A005375 a(0) = 0; a(n) = n - a(a(a(a(n-1)))) for n > 0.

Original entry on oeis.org

0, 1, 1, 2, 3, 4, 5, 5, 6, 6, 7, 8, 8, 9, 10, 11, 11, 12, 13, 14, 15, 15, 16, 17, 18, 19, 19, 20, 20, 21, 22, 23, 24, 24, 25, 25, 26, 27, 27, 28, 29, 30, 31, 31, 32, 32, 33, 34, 34, 35, 36, 37, 37, 38, 39, 40, 41, 41, 42, 42, 43, 44, 44, 45, 46, 47, 47, 48, 49, 50, 51, 51, 52, 53
Offset: 0

Views

Author

Keywords

Comments

Rule for n-th term: a(n) = An, where An denotes the Lamé antecedent to (or right shift of) n, which is found by replacing each Lm(i) (Lm(n) = Lm(n-1) + Lm(n-4): A003269) in the Zeckendorffian expansion (obtained by repeatedly subtracting the largest Lamé number you can until nothing remains) by Lm(i-1) (A1=1). For example: 58 = 50 + 7 + 1, so a(58)= 36 + 5 + 1 = 42. - Diego Torres (torresvillarroel(AT)hotmail.com), Nov 24 2002
a(A194081(n)) = n and a(m) <> n for m < A194081(n). - Reinhard Zumkeller, Aug 17 2011
From Pierre Letouzey, Feb 20 2025: (Start)
For all n >= 0, A005374(n) <= a(n) <= A005376(n) as proved in Letouzey-Li-Steiner link.
Last equality A005374(n) = a(n) for n = 18; last equality a(n) = A005376(n) for n = 25.
For all n >= 0, |a(n) - c*n| < 1.998 where c is the positive real root of x^4 + x - 1 = 0, c = 0.724491959000515611588372282... Proved in Letouzey link. (End)

References

  • D. Hofstadter, "Goedel, Escher, Bach", p. 137.
  • N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).

Programs

  • Haskell
    a005375 n = a005375_list !! n
    a005375_list =  0 : 1 : zipWith (-)
       [2..] (map a005375 (map a005375 (map a005375 (tail a005375_list))))
    -- Reinhard Zumkeller, Aug 17 2011
    
  • Maple
    H:=proc(n) option remember; if n=1 then 1 else n-H(H(H(H(n-1)))); fi; end proc;
  • Mathematica
    a[0]:= 0; a[n_]:= a[n]= a[n] = n - a[a[a[a[n-1]]]]; Table[a[n], {n, 0, 73}] (* Alonso del Arte, Aug 17 2011 *)
  • SageMath
    @CachedFunction # a = A005375
    def a(n): return 0 if (n==0) else n - a(a(a(a(n-1))))
    [a(n) for n in range(101)] # G. C. Greubel, Nov 14 2022

Formula

a(n) = floor(c*n) + (-1) or 0 or 1 or 2, where c is the positive real root of x^4+x-1 = 0, c=0.724491959000515611588372282... (Conjectured with just 0 or 1 by Benoit Cloitre, Nov 05 2002; fixed and proved by Letouzey, see Letouzey link]. NB: see for instance a(120) = 88 for a difference of 2 and a(243) = 175 for a difference of -1). - Pierre Letouzey, Feb 20 2025
a(n + a(a(a(n)))) = n (proved in Letouzey-Li-Steiner link). - Pierre Letouzey, Feb 20 2025

Extensions

More terms from James Sellers, Jul 12 2000