Logarithms Next  |  Prev  |  Up  |  Top  |  Index  |  JOS Index  |  JOS Pubs  |  JOS Home  |  Search


Logarithms

A logarithm $ y=\log_b(x)$ is fundamentally an exponent $ y$ applied to a specific base $ b$ to yield the argument $ x$. That is, $ x = b^y$. The term ``logarithm'' can be abbreviated as ``log''. The base $ b$ is chosen to be a positive real number, and we normally only take logs of positive real numbers $ x>0$ (although it is ok to say that the log of 0 is $ -\infty$). The inverse of a logarithm is called an antilogarithm or antilog; thus, $ x$ is the antilog of $ y$ in the base $ b$.

For any positive number $ x$, we have

$\displaystyle x = b^{\log_b(x)}
$

for any valid base $ b>0$. This is just an identity arising from the definition of the logarithm, but it is sometimes useful in manipulating formulas.

When the base is not specified, it is normally assumed to be $ 10$, i.e., $ \log(x) \isdef \log_{10}(x)$. This is the common logarithm.

Base 2 and base $ e$ logarithms have their own special notation:

\begin{eqnarray*}
\ln(x) &\isdef & \log_e(x) \\
\lg(x) &\isdef & \log_2(x)
\end{eqnarray*}

(The use of $ \lg()$ for base $ 2$ logarithms is common in computer science. In mathematics, it may denote a base $ 10$ logarithm.) By far the most common bases are $ 10$, $ e$, and $ 2$. Logs base $ e$ are called natural logarithms. They are ``natural'' in the sense that

$\displaystyle \frac{d}{dx}\ln(x) = \frac{1}{x}
$

while the derivatives of logarithms to other bases are not quite so simple:

$\displaystyle \frac{d}{dx}\log_b(x) = \frac{1}{x\ln(b)}
$

The inverse of the natural logarithm $ y=\ln(x)$ is of course the exponential function $ x=e^y$, and $ e^y$ is its own derivative.

In general, a logarithm $ y$ has an integer part and a fractional part. The integer part is called the characteristic of the logarithm, and the fractional part is called the mantissa. These terms were suggested by Henry Briggs in 1624. ``Mantissa'' is a Latin word meaning ``addition'' or ``make weight''--something added to make up the weight [26].

The following Matlab code illustrates splitting a natural logarithm into its characteristic and mantissa:

>> x = log(3)
   x = 1.0986
>> characteristic = floor(x)
   characteristic = 1
>> mantissa = x - characteristic
   mantissa = 0.0986

>> % Now do a negative-log example
>> x = log(0.05)
   x = -2.9957
>> characteristic = floor(x)
   characteristic = -3
>> mantissa = x - characteristic
   mantissa = 0.0043

Logarithms were used in the days before computers to perform multiplication of large numbers. Since $ \log(xy) =
\log(x)+\log(y)$, one can look up the logs of $ x$ and $ y$ in tables of logarithms, add them together (which is easier than multiplying), and look up the antilog of the result to obtain the product $ xy$. Log tables are still used in modern computing environments to replace expensive multiplies with less-expensive table lookups and additions. This is a classic trade-off between memory (for the log tables) and computation. Nowadays, large numbers are multiplied using FFT fast-convolution techniques.



Subsections
Next  |  Prev  |  Up  |  Top  |  Index  |  JOS Index  |  JOS Pubs  |  JOS Home  |  Search

[How to cite this work] [Order a printed hardcopy]

``Mathematics of the Discrete Fourier Transform (DFT), with Music and Audio Applications'', by Julius O. Smith III, W3K Publishing, 2003, ISBN 0-9745607-0-7.
Copyright © 2007-02-02 by Julius O. Smith III
Center for Computer Research in Music and Acoustics (CCRMA),   Stanford University
CCRMA  [Automatic-links disclaimer]