San José State University
Thayer Watkins
Silicon Valley
& Tornado Alley

The Real Numbers Are Not Enough:
The Need for More Numbers
(the Hyperreals) to Label Ordered Sets

The Fundamental Issue

Suppose there is a set of objects and an order relation such that for any two objects X and Y of the set either X;Y, YX or X=Y. Then is it possible to label the position of each member of the set in the order with a real number? In other words, does there exist a function F such that if XY then F(X)≥F(Y) and F(X)=F(Y) if and only if X=Y? Surprisingly the answer is no.

Consider the set of positive functions {f(x) for x≥0} and such that f(x) increases without bound as x goes to zero. These functions are said to have a pole at x=0, but the term spike is more appropriate and will be used in the following. Often these functions are said to go to infinity. Although this terminology is not accurate it is convenient.

Some of the functions which go to infinity go faster than others. For example, 1/x² goes to infinity faster than 1/x. This is evidenced by what happens to their ratio, (1/x²/(1/x)). Their ratio is 1/x which goes to infinity as x→0. Thus we can say that the spike for 1/x² at x=0 is of greater order than the spike for 1/x. So, in general, the spike for g(x) is greater than the spike for h(x) if the ratio g(x)/h(x) increases without bound as x→0. If the limit of g(x)/h(x) goes to zero as x→0 then the order of the spike at x=0 for h(x) is greater than that for g(x). If the ratio g(x)/h(x) goes to a finite limit above zero then the orders of the spikes for g(x) and h(x) are said to be equal. Thus the set of functions with a spike at x=0 can be definitively ordered.

The set of functions {1/xα for α>0} would seem to serve as benchmarks for the ordering of the spikes at x=0.

Now consider the absolute value of the logarithmic function |ln(x)|. It belongs to the set of functions with a spike at x=0. The question is where does it fit among the benchmark functions. The ratio of |ln(x)| to 1/xα is |ln(x)|xα so the limit is a question of how fast |ln(x)| goes to infinity compared to how fast xα goes to zero.

The problem of determining the limit of |ln(x)|xα can be solved by using L'Hôpital's Rule. L'Hôpital's Rule says for the case of the functions being considered:

If limx→0 g(x)/h(x) exists
then it is equal to the
limit of the ratio
of the derivatives; i.e.,
limx→0 g(x)/h(x) = limx→0 g'(x)/h'(x)

Now consider the limit of the ratio of |ln(x)| to 1/xα,

limx→0 |ln(x)|/(1/xα) = limx→0 (1/x)/(α/xα+1)
= limx→0 (1/(α/xα))
= limx→0 xα

The function xα/α →0 as x→0 for all α>0

Therefore |ln(x)| goes to infinity slower than 1/xα for any α>0. The function 1/xα does not go to infinity for α=0. Thus there is no real number α that characterizes how rapidly |ln(x)| goes to infinity as x goes to zero. The order at which |ln(x)| goes to infinity would seem to have to be between 0 and any number greater than 0.

But it is not just |ln(x)| whose behavior as x→0 that cannot be characterized by a real number. Consider |ln(x)|/xβ. The ratio of a function of this form to 1/xα is |ln(x)|/(1/xα−β). L'Hôpital's Rule says the limit of this ratio is the same as the limit of

1/(α−β)/xα−β)) = xα−β/(α−β)

This function goes to 0 for any α>β. Therefore the order of 1/xα is greater than that of |ln(x)|/xβ for any α>β, but for α=β the ratio is equal to |ln(x)| which goes to infinity. This means that the order of |ln(x)|/xβ is less than that of 1/xα for any α>β but the order of |ln(x)|/xβ is greater than the order of 1/xβ. There is no real number to characterize the order of |ln(x)|/xβ for any real value of β.

Thus there are not enough real numbers to characterize the rate at which all functions with a spike at x=0 go to infinity as x goes to zero. The same would apply concerning functions with a spike at any other value of x.

The Nature of the Order of the Logarithm Function

Consider now the order of the square of the logarithm function (ln(x))². The limit as x→0 of (ln(x))²/(1/xα) can be evaluated using L'Hôpital's Rule. The application of L'Hôpital's Rule results in the following sequence of expressions:

limx→0 (ln(x))²/(1/xα) = limx→0 2ln(x)(1/x)/(α/xα+1
= limx→0 2ln(x)/(α/xα
= limx→0 2(1/x)/(α²/xα+1
= limx→0 2/(α²/xα
= limx→0 (2/α²)xα

This last expression is the same that arose in examining the order of ln(x) except that it is multiplied by (2/α²). Likewise for any integral power n of the logarithm function (ln(x))n

limx→0 (ln(x))n/(1/xα) = limx→0 (n!/αn)xα

This means that if there were an order for the logarithm function, call it δ where δ is not necessarily a real number, then

nδ = δ
for any positive integer n

If δ were real it would have to be zero to satisfy this equation. But this equation could be considered the defining equation for an infinitesimal number. Usually an infinitesimal is defined as a number which is not itself zero but its square is zero; i.e., ε≠0 but ε²=0. No real number can satisfy this condition but thanks to Abraham Robinson we know that there exists a logically consistent algebraic system, called the hyperreal numbers, in which the condition ε≠0 but ε²=0 is satisfied. For more on this see the Calculus of Infinitesimals.

Thus the order at which the absolute value of the logarithm function goes to infinity as its argument goes to zero is an infinitesimal number. This applies as well to any power of the logarithm function. What the above equation suggests is that δ is an infinitesimal and any finite number of infinitesimals is still an infinitesimal.

The order of ln(x)/xβ is then β+δ. The hyperreal numbers are sometimes conceived of as the real numbers with a halo of infinitesimals associated with each real.

Resolution of the Issues

It is all very simple. There is no nonzero real number whose square is zero just as there is no real number which is the square root of negative one. The complex numbers can be created as ordered pairs of real number AND a special definition of multiplication. The product of two complex numbers (a, b) and (c, d) is (ac-bd, ad+bc). (Their sum is just (a+b, c+d).) Now the product of (0,1) and (0,1) is (-1, 0) which is just the negative of (1,0). Thus (0,1)²=−(1, 0) and hence (0,1) IS the square root of negative one.

With hyperreals the situation is similar. The system of hyperreal numbers consists of ordered pairs of real numbers AND a special definition of multiplication; i.e.,

(a, b)*(c, d) = (ac, ad+cb).

Now consider (0, b) with b nonzero. Its square is (0, 0). (The sum of the two hyperreals is (a+b, c+d). Also note that the product of any purely real number (a, 0), no matter how large, with any infinitesimal (0,b) produces (0, ab), another infinitesimal.

The hyperreals are ordered lexically; i.e., (a, b) is greater than (c, d) if a > c. If the real components are equal then the hyperreals are ordered on the basis of the infinitesimal component; i.e., (a, b) >(a, d) if b>d.

A complex number is usually represented as a+bi where i is the square root of negative one. The hyperreals can also be so represented; i.e., as a+bδ where δ is the unit infinitesimal.

On the Matter of the Logarithm Function

It is easier to convey the point concerning the rate at which a function goes to infinity as x→∞ if ln(x) is used for illustration. The logarithm function , ln(x), goes to infinity as its argument x increases without bound. However when the argument x increases a billion fold the logarithm increases by only 9. One could say that the logarithm function goes to infinity as its argument increases without bound but infinitesimally slowly.

Now go back to the spike at x=0 and consider the rates at which ln(x) and (ln(x))² go to infinity. The ratio of (ln(x))² to |ln(x)| is |ln(x)| which goes to infinity as x→0. Thus (ln(x))² goes to infinity as x→0 at a faster rate than |ln(x)|. On the other hand, |ln(x)|1/2 goes to infinity more slowly than |ln(x)|.

HOME PAGE OF applet-magic
HOME PAGE OF Thayer Watkins