Prior to calculators, the standard way for determining a logarithm precisely was to use a look-up table for values. However, such tables were usually only printed for the common most bases, particularly 10 (log). To determine a logarithm for a different base, you needed to first convert to that base.

Luckily, it’s very simple to do so. The change of base formula is: \[\log_a b = \frac{\log_c b}{\log_c a}\]

This works for any base, but it’s most typical to use it for 10 and *e*. For instance, if you want to find \(\log_6 29\) using a log (base 10) table, you find \(\log 6\) and \(\log 29\), then divide. That is, \[\log_6 29 = \frac{\log 29}{\log 6} \approx \frac{1.4624}{.7782} \approx 1.879\]

*Side note:* You’ll notice that the log table I linked only goes up to 9.99. So how did I use it to find \(\log 29\)? I looked up \(\log 2.9\) and then added 1. This is why common log tables were most common for this purpose: They’re more flexible than natural log tables. You only need the values from 1.000 to 9.999 to find the log of any positive real number.

Since many calculators only have log and ln buttons, it’s useful to know this formula. Even for the calculator we use in class, you might find that it’s easier to use this technique instead of using **[2nd][Window/F1][5]**.

You’ll get the same answer either way because the calculator is performing a change of base anyway. Using **[2nd][Window/F1][5]**, find \(\log_0 0\) and \(\log_1 1\). You’ll get an error for each, but it’s a different error: In the first case, the error is **Error: Domain** because 0 is not a valid base. In the second case, the error is **Error: Divide by 0**. If the calculator were doing the logarithm directly, it should give another domain error (because 1 is not a valid base). By the change of base formula, though, you would calculate \(\log 1 \div \log 1 = 0 \div 0\).

### Proof

The change of base formula seems weird: Why does it work? How does making the base into its own log work? This is magic!

It’s not magic, it’s math. Logarithms do sometimes work in ways we might not immediately predict. The proof is remarkably short, given how unusual it looks.

First, let’s replace each part of the formula with a variable. That is, we’ll let \[ x = \log_a b \\ y = \log_c b \\ z = \log_c a\]

Let’s rewrite each of these into exponential form: \[ a^x = b \\ c^y = b \\ c^z = a\]

Replacing \(a\) in the first line with \(c^z\) from the third line, then using the transitive property on the first two lines, gives us: \[ (c^z)^x = c^y \]

Because of the properties of exponents, we can rewrite \((c^z)^x = c^{xz}\). Two exponential expressions with the same base (other than 1 and 0, which are excluded by definition) have to have the same exponent, that is: \[ xz = y \Rightarrow x = \frac{y}{z} \]

We can now replace the variables as we defined them in the first step, giving us: \[\log_a b = \frac{\log_c b}{\log_c a}\]

which is the change of base formula.