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.

Showing 1-2 of 2 results.

A056792 Minimal number of steps to get from 0 to n by (a) adding 1 or (b) multiplying by 2.

Original entry on oeis.org

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

Views

Author

N. J. A. Sloane, Sep 01 2000

Keywords

Comments

A stopping problem: begin with n and at each stage if even divide by 2 or if odd subtract 1. That is, iterate A029578 while nonzero.
From Peter Kagey, Jul 16 2015: (Start)
The number of appearances of n in this sequence is identically A000045(n). Proof:
By application of the formula,
"a(0) = 0, a(2*n+1) = a(2*n) + 1 and a(2*n) = a(n) + 1",
it can be seen that:
{i: a(i) = n} = {2*i: a(i) = n-1, n>0} U {2*i+1: a(i) = n-2, n>1}.
Because the two sets on the left hand side share no elements:
|{i: a(i) = n}| = |{i: a(i) = n-1, n>0}| + |{i: a(i) = n-2, n>1}|
Notice that
|{i : a(i) = 1}| = |{1}| = 1 = A000045(1) and
|{i : a(i) = 2}| = |{2}| = 1 = A000045(2).
Therefore the number of appearances of n in this sequence is A000045(n). (End)

Examples

			12 = 1100 in binary, so a(12)=2+4-1=5.
		

Crossrefs

Equals A056791 - 1. The least inverse (indices of record values) of A056792 is A052955 prepended with 0. See also A014701, A115954, A056796, A056817.
Cf. A000120, A070939, A007088: base 2 sequences.
Analogous sequences with a different multiplier k: A061282 (k=3), A260112 (k=4).

Programs

  • Haskell
    c i = if i `mod` 2 == 0 then i `div` 2 else i - 1
    b 0 foldCount = foldCount
    b sheetCount foldCount = b (c sheetCount) (foldCount + 1)
    a056792 n = b n 0 -- Peter Kagey, Sep 02 2015
  • Maple
    a:= n-> (l-> nops(l)+add(i, i=l)-1)(convert(n, base, 2)):
    seq(a(n), n=0..105);  # Alois P. Heinz, Jul 16 2015
  • Mathematica
    f[ n_Integer ] := (c = 0; k = n; While[ k != 0, If[ EvenQ[ k ], k /= 2, k-- ]; c++ ]; c); Table[ f[ n ], {n, 0, 100} ]
    f[n_] := Floor@ Log2@ n + DigitCount[n, 2, 1]; Array[f, 100] (* Robert G. Wilson v, Jul 31 2012 *)
  • PARI
    a(n)=if(n<1,0,n-valuation(n!*sum(i=1,n,1/i),2))
    
  • PARI
    a(n)=if(n<1,0,1+a(if(n%2,n-1,n/2)))
    
  • PARI
    a(n)=if(n<1,0,n=binary(n);sum(i=1,#n,n[i])+#n-1) \\ Charles R Greathouse IV, Apr 11 2012
    

Formula

a(0) = 0, a(2*n+1) = a(2*n) + 1 and a(2*n) = a(n) + 1.
a(n) = n-valuation(A000254(n), 2) for n>0. - Benoit Cloitre, Mar 09 2004
a(n) = A000120(n) + A070939(n) - 1. - Michel Marcus, Jul 17 2015
a(n) = (weight of binary expansion of n) + (length of binary expansion of n) - 1.

Extensions

More terms from James Sellers, Sep 06 2000
More terms from David W. Wilson, Sep 07 2000

A115952 Expansion of (1-x+x*y)/(1-x^2*y^2) - x^2/(1-x^2*y).

Original entry on oeis.org

1, -1, 1, -1, 0, 1, 0, 0, -1, 1, 0, -1, 0, 0, 1, 0, 0, 0, 0, -1, 1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, -1
Offset: 0

Views

Author

Paul Barry, Feb 02 2006

Keywords

Comments

Row sums are A000007. Diagonal sums are A115953. Inverse is A115954.

Examples

			Triangle begins
   1,
  -1,  1,
  -1,  0,  1,
   0,  0, -1,  1,
   0, -1,  0,  0,  1,
   0,  0,  0,  0, -1,  1,
   0,  0, -1,  0,  0,  0,  1,
   0,  0,  0,  0,  0,  0, -1,  1,
   0,  0,  0, -1,  0,  0,  0,  0,  1,
   0,  0,  0,  0,  0,  0,  0,  0, -1,  1,
   0,  0,  0,  0, -1,  0,  0,  0,  0,  0,  1,
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1,  1,
   0,  0,  0,  0,  0, -1,  0,  0,  0,  0,  0,  0,  1,
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1,  1,
   0,  0,  0,  0,  0,  0, -1,  0,  0,  0,  0,  0,  0,  0,  1,
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1,  1
		

Crossrefs

Cf. A115524.

Programs

  • Magma
    [[n eq k select 1 else n eq k+1 select -(1+(-1)^k)/2 else n eq 2*(k+1) select -1 else 0: k in [0..n]]: n in [0..15]]; // G. C. Greubel, May 06 2019
    
  • Mathematica
    T[n_, k_]:= If[n==k, 1, If[n==k+1, -(1+(-1)^k)/2, If[n==2*k+2, -1, 0]]];
    Table[T[n, k], {n, 0, 15}, {k, 0, n}]//Flatten (* G. C. Greubel, May 06 2019 *)
  • PARI
    {T(n,k) = if(n==k, 1, if(n==k+1, -(1+(-1)^k)/2, if(n==2*k+2, -1, 0)))}; \\ G. C. Greubel, May 06 2019
    
  • Sage
    def T(n, k):
        if (n==k): return 1
        elif (n==k+1): return -(1+(-1)^k)/2
        elif (n==2*(k+1)): return -1
        else: return 0
    [[T(n, k) for k in (0..n)] for n in (0..15)] # G. C. Greubel, May 06 2019

Formula

Number triangle T(n,k)=if(n=k,1,0) OR if(n=2k+2,-1,0) OR if(n=k+1,-(1+(-1)^k)/2,0).
Showing 1-2 of 2 results.