The OEIS Foundation is supported by donations from users of the OEIS and by a grant from the Simons Foundation. Thanks to everyone who made a donation during our annual appeal!
To see the list of donors, or make a donation, see the OEIS Foundation home page.

 Hints (Greetings from The On-Line Encyclopedia of Integer Sequences!)
 A238845 Prefix overlap between binary expansions of n and n+1. 4
 0, 1, 1, 1, 2, 1, 2, 1, 3, 2, 3, 1, 3, 2, 3, 1, 4, 3, 4, 2, 4, 3, 4, 1, 4, 3, 4, 2, 4, 3, 4, 1, 5, 4, 5, 3, 5, 4, 5, 2, 5, 4, 5, 3, 5, 4, 5, 1, 5, 4, 5, 3, 5, 4, 5, 2, 5, 4, 5, 3, 5, 4, 5, 1, 6, 5, 6, 4, 6, 5, 6, 3, 6, 5, 6, 4, 6, 5, 6, 2, 6, 5, 6, 4, 6, 5, 6, 3, 6, 5, 6 (list; graph; refs; listen; history; text; internal format)
 OFFSET 0,5 COMMENTS The prefix overlap between two words is the length of their longest common prefix. LINKS Reinhard Zumkeller, Table of n, a(n) for n = 0..10000 Luc Rousseau, Proof of the formula Rodica Simion and Herbert S. Wilf, The distribution of prefix overlap in consecutive dictionary entries, SIAM J. Algebraic Discrete Methods, 7(1986), no. 3, 470--475. MR0844051. FORMULA For all n > 0, a(n-1) = A000523(n) - A007814(n) + A209229(n) - A063524(n) = floor(log_2(n)) - v_2(n) + [exists(k,n==2^k)] - [n==1]. (see link) - Luc Rousseau, Dec 29 2017 EXAMPLE 8 = 1000 and 9 = 1001 have prefix overlap of 3, so a(8)=3. MAPLE # prefix overlap between n and n+1 in base b: po:=proc(n, b) local t1, t2, l1, l2, c, L, i; t1:=convert(n, base, b); l1:=nops(t1); t2:=convert(n+1, base, b); l2:=nops(t2); c:=0; L:=min(l1, l2); for i from 1 to L do if t1[l1+1-i] = t2[l2+1-i] then c:=c+1; else break; fi; od: c; end; [seq(po(n, 2), n=0..120)]; MATHEMATICA a[n_] := With[{v = IntegerExponent[n+1, 2]}, Floor[Log[2, n+1]] - v + Boole[n+1 == 2^v] - Boole[n == 0]]; Table[a[n], {n, 0, 90}] (* Jean-François Alcover, Feb 03 2018, after Charles R Greathouse IV *) PROG (Haskell) import Data.List (unfoldr); import Data.Tuple (swap) a238845 n = length \$ takeWhile (== 0) \$ zipWith (-) (bin n) (bin (n+1)) where bin = reverse . unfoldr (\x -> if x == 0 then Nothing else Just \$ swap \$ divMod x 2) -- Reinhard Zumkeller, Mar 22 2014 (PARI) a(n)=my(v=valuation(n+1, 2)); logint(n+1, 2) - v + (n+1==1<

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recent
The OEIS Community | Maintained by The OEIS Foundation Inc.

Last modified January 20 11:06 EST 2020. Contains 331083 sequences. (Running on oeis4.)