Logarithms

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

For any positive number , we have

for any valid base . 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
,
*i.e.*,
. This is the *common
logarithm*.

Base 2 and base logarithms have their own special notation:

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

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

The inverse of the natural logarithm is of course the exponential function , and is its own derivative.

In general, a logarithm
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 [29].

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
, one can look up the logs of
and
in tables of
logarithms, add them together (which is easier than multiplying), and
look up the antilog of the result to obtain the product
. 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.

[How to cite this work] [Order a printed hardcopy] [Comment on this page via email]

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University