Adapting [ABDK's note on uniswap ticks](https://hackmd.io/@abdk/SkVJeHK9v) to ticks base $1.0001$ we approximate $$\log_{1.0001}(x) = \phi \cdot l_i(x)$$ where $\phi = \frac{127869479499801913173571}{2^{64}}$ overapproximates $\log_2(1.0001)^{-1}$ and $l_i(x)$ approximates $\log_2(x)$ up to the $i$th fractional bit. Following the formula derived by ABDK, for $x \in [2^{-128};2^{128})$, the error is strictly contained between $$\textrm{errLow} = -128 \left(\phi - \log_2(1.0001)^{-1}\right) +\\ \phi(-2^{-i} + 3 (1 - 2^{-i})\log_2(1 - 2^{-127})) +\\ \log_{1.0001}(0.9999995)$$ and $$\textrm{errHigh} = 128 \left(\phi - \log_2(1.0001)^{-1}\right) +\\ \log_{1.0001}(1.0000005)$$ where $i$ is the number of iterations of $l_i$, and 0.9999995 and 1.0000005 are bound factors on the error of $\texttt{ratioFromTick}$. The minimum $i$ such that $\textrm{errHigh} - \textrm{errLow} < 1$ is $i=13$. Final values are `floor(errLow * 2**128) = -289637967442836606107396900709005211253` `ceil(errHigh * 2**128) = 1701496478404567508395759362389778998`