# Why does $\ln x / \ln b = \log_b x$?

I'm doing some Java code. As far as I can tell, Java only has functions that do natural log and base $10$ log. I have a requirement to specify the base. I've seen that doing $\ln x/ \ln b$ is the same as $\log_b x$.

I've done this and it seems to work. I'd like to better understand why though.

• As an example: $\log_{100}(1\phantom,\!000\phantom,\!000)=3$; $\dfrac{\log(1\phantom,\!000\phantom,\!000)}{\log(100)}=\dfrac62=3$. (Using the base-10 logarithm here) – Akiva Weinberger May 5 '16 at 20:47

Let $y = \log_b x$. This is the same as $x = b^y$.
If you take the natural logarithm on both sides you get $$\ln x = \ln b^y = y \ln b$$ so that $y = \dfrac{\ln x}{\ln b}$. That is, $$\log_b x = \frac{\ln x}{\ln b}.$$
• Could you explain why \ln b^y = y \ln b. I follow up until that part and after. – Jeff May 5 '16 at 19:35
• That is one of the laws of logarithms and can be proved in a similar way. If $z = y \ln b$ then $z/y = \ln b$ and $e^{z/y} = b$. Raise both sides to the $y$ power to get $e^z = b^y$ which is the same as $z = \ln b^y$. – Umberto P. May 5 '16 at 19:38