Is it true that
$\forall i\in \mathbb Z^+:\left \lfloor log_{2}(i) \right \rfloor = \left \lfloor log_{2}(i+0.999999) \right \rfloor$ ?
The following is false:
$\forall i\in \mathbb Z^+:\left \lfloor log_{2}(i) \right \rfloor = \left \lfloor log_{2}(i+1) \right \rfloor$
(R code):
> for (i in 0:1e9) if ( floor(log2(i)) != floor(log2(i+1))) print(i)
[1] 0
[1] 1
[1] 3
[1] 7
[1] 15
[1] 31
[1] 63
[1] 127
[1] 255
[1] 511
[1] 1023
[1] 2047
[1] 4095
[1] 8191
[1] 16383
[1] 32767
[1] 65535
[1] 131071
[1] 262143
[1] 524287
[1] 1048575
[1] 2097151
[1] 4194303
[1] 8388607
[1] 16777215
[1] 33554431
However
> for (i in 0:1e9) if ( floor(log2(i)) != floor(log2(i+0.999999))) print(i)
[1] 0
Is true for any positive i within the checked range.
The value of $f(n) = \lfloor \log_2 n \rfloor$ changes precisely when $n$ is a power of $2$ (i.e., an integer):
$$ f(2^k) = \lfloor \log_2 2^k \rfloor = \lfloor k \rfloor = k $$ but $$ f(2^k-1) = \lfloor \log_2 (2^k - 1) \rfloor \lt \lfloor \log_2 2^k \rfloor = k. $$ Since $i + 0.999999$ can never be an integer, $f(i)$ and $f(i + 0.99999)$ are always equal.