Book Search

Download this chapter in PDF format


Table of contents

How to order your own hardcover copy

Wouldn't you rather have a bound book instead of 640 loose pages?
Your laser printer will thank you!
Order from

Chapter 34: Explaining Benford's Law

Homomorphic Processing

Enjoy learning about Benford's law, but don't lose sight of the purpose of this chapter. Focus on the overall method:

"If the tool you have is a hammer,
make the problem look like a nail."

In DSP this approach is called homomorphic processing, meaning "the same structure." In science and engineering it is common to encounter signals that are difficult to understand or analyze. The strategy of homomorphic processing is to convert this unmanageable situation into a conventional linear system, where the analysis techniques are well understood. This is done by applying whatever mathematical transforms or tricks are needed for the particular application.

For instance, the classic use of homomorphic processing is to separate signals that have been multiplied, such as: a(t) = b(t) × c(t). This can be converted into a linear system, i.e., signals that are added together, by taking the logarithm: log[a(t)] = log[b(t)] + log[c(t)]. Notice that this is taking the log of the dependent parameter. In our analysis of Benford's law we will take the log of the independent parameter. Two different techniques to keep in your bag of DSP tricks. In the next section several other tricks will be presented, such as inventing the Ones Scaling Test, and evoking a sampling function.

It this sounds complicated, you're right; it certainly can be. There is no guarantee that it is even possible to convert an arbitrary problem into the form of a linear system. Even if it is possible, it may require a series of nasty steps that take considerable time to develop. However, if you are successful in applying the homomorphic approach the rewards will immediately flow. You can say goodbye to a difficult problem, and hello to a representation that is simple and straightforward.

The following analysis of Benford's law is conducted in three steps. In step one we will define a statistical procedure for determining how well a set of numbers follows Benford's law, called the Ones Scaling Test. In step two we will move from statistics to probability, expressing the problem in the form of a convolution. In step three we use the Fourier Transform to solve the convolution, giving us the explanation we are looking for.

Next Section: The Ones Scaling Test