There has been some recent controversy about a new "number" called nullity, invented by Dr James Anderson.
When I heard about this idea, I wondered if it could possibly make sense. The following is my own attempt to comprehend the existence of 0/0 as a number.
One Divided By Zero
The quantity 1/0 has a common interpretation as ± ∞, and it has a geometrical interpretation as the slope of a vertical line. It can also be regarded as a point in the projective line. (The projective line consists of pairs (x,y), where (ax,ay) is regarded as equal to (x,y) for any real number a.)
The types of "arithmetic" that you can do with 1/0 are somewhat limited, because it is not a proper number. However, in certain contexts, such as, for example, the slope of a vertical line, it has a valid meaning, and we would like to be able to continue with calculations involving such a quantity, if those calculations are meaningful in that context. We would prefer not to have our computer software "crash" with a divide by zero error because it calculated 1/0 as the slope of a particular line.
One such context involves conversion from cartesian coordinates to radial coordinates and then back again. The formulae from cartesian to radial are:
And then back again to cartesian:
(I am ignoring a certain ambiguity in these formulae which is that tan-1(y/x) always has two answers, i.e. θ and θ + π/2, but this issue is independent of whether or not x is zero, and for the purposes of this article I will assume that we have some way of resolving the ambiguity if we need to. An equivalent ambiguity is that r may be either the positive square root or the negative square root of x2+y2.)
The line with a vertical slope arises if we consider the point x=0, y=1. We get:
and
1/0 is the slope of the line from (0,0) to (x,y) = (0,1). Within normal arithmetic, 1 divided by 0 is an invalid operation, and the result of trying to divide anything by zero must be an error. But if what we want to do with the result of 1/0 is calculate its inverse tangent, then it makes perfect sense for the answer to be π/2 radians. So it would be nice if software calculating 1/0 could return a result which could be used as the input to tan-1, or to any other function that has infinity as a meaningful input. If we were doing a lot of such calculations, it might even be nice if the hardware could return such a result. Which is why the IEEE floating point standard supports infinities as results of floating point operations, and also sometimes as inputs. (However, IEEE floating point arithmetic also uses infinite values to represent overflowed values, so correct results from "infinity arithmetic" are not guaranteed, see here for an example.)
Anyway, feeding these values back into the formulae to recover the cartesian coordinates, we get:
and
So far so good. This interpretation of 1/0 is not too controversial, because we can define a function of 1/0 to be the limit of the function applied to a variable x as x goes to infinity, and we can think of 1/0 as a special additional value which acts as a label for the limit of a function when the input goes to infinity.
However the case of 0/0 is more controversial, because it isn't really the limit of anything, or more precisely it can be regarded as two limits happening at the same time, one for each zero, and the answer depends quite a lot on which zero "gets there first". In IEEE arithmetic, 0/0 results in "Nan", short for "Not a Number", which means something like "there is no meaningful answer". The most that we can say about 0/0 is that the answer could be anything: any finite real number, or it could be infinity (in the same sense as 1/0 is infinity). A natural interpretation of 0/0 is that it is the slope of a line defined by two points which are both the same point. This line can be any line going through that point, and its slope can be horizontal, vertical or anywhere in between.
Spherical Coordinates
Oddly enough, there is a perfectly valid application for such an indeterminate value when considering spherical coordinates, which are a natural extension of radial coordinates to three dimensions. Two of the three spherical coordinates are familiar to us as the coordinates of latitude and longitude, with the third being distance from the centre of the sphere.
The indeterminate quantity 0/0 naturally arises when we attempt to determine the longitude of the North Pole (or the South Pole). The latitude of the North Pole is well-defined as 90° (i.e. π/2 radians). But the longitude could be anything. In one sense it doesn't matter, i.e. as long as you give the correct latitude, then whatever longitude you specify, you will be specifying the correct location of the North Pole.
And just as going from cartesian to radial and back to cartesian coordinates can require us to "compute" with 1/0, when we go from cartesian coordinates to spherical coordinates the dubious 0/0 quantity can appear in the spherical coordinates and then disappear in the reverse calculation.
The conversion formulae from cartesian to spherical coordinates are:
where θ is the longitude and φ is the latitude. Going back to cartesian coordinates, we have:
0/0 appears when we consider a point on the z axis, such as (x,y,z) = (0,0,1). Applying the formulae to calculate r, θ and φ, we get:
The value of tan-1(0/0) is problematic, but we can consider what happens if we substitute the values for r, θ and φ in order to recover the values of x, y and z:
To complete the calculation, we need to calculate the values of the expressions sin(tan-1(0/0)) and cos(tan-1(0/0)). Starting with our understanding of 0/0 as an indeterminate value, the calculation proceeds as follows:
- \(\frac{0}{0}\) is an indeterminate value which could be any real number or infinity.
- \(\tan^{-1}\frac{0}{0}\) is an indeterminate angle, i.e. any possible angle.
- \(\sin(\tan^{-1}\frac{0}{0})\) and \(\cos(\tan^{-1}\frac{0}{0})\) are indeterminate finite values from the closed interval \([-1,1] \).
- \(0 \cdot \sin(\tan^{-1}\frac{0}{0})\) and \(0 \cdot \cos(\tan^{-1}\frac{0}{0})\) are indeterminate finite values multiplied by zero, and therefore equal to zero.
Thus we finally recover our original values of (x,y,z) = (0, 0, 1). The highly indeterminate value 0/0 has been converted into a fully determined value by applying a series of three operations: tan-1, sin (or cos) and then multiplication by zero.
The Original "Nullity" Paper
It should be pointed out that the above development is not what is contained in James Anderson's original paper Exact Numerical Computation of the Rational General Linear Transformations, but it may provide a useful starting point for thinking about what Anderson is attempting to achieve with his concept of "transrational" numbers.
To perform the computations I just described, we need one indeterminate number representing 0/0, another indeterminate number representing an indeterminate angle, and then a third indeterminate number representing possible values from a finite interval. However Anderson manages to get by with just a single "nullity" value to represent both 0/0 and the angle of a line with that slope. He does this by using a representation of an angle θ by the value d/n where d and n determine a Pythagorean triple, i.e. the right-angled triangle with sides d2+n2, 2dn and d2+n2. The angle θ is determined by:
After a bit of algebra this gives:
This scheme allows any angle determined by a Pythagorean triangle to be represented by a rational number, including the angle angle π/2 which is represented by the "fraction" 1/0 (and also by its reciprocal 0/1). It seems plausible that an indeterminate angle should be represented by an indeterminate fraction which can take a value equal to any valid fraction or to the "infinite" value of 1/0, and this indeterminate value corresponds to the "fraction" 0/0.
Apart from the question as to the meaningfulness of 0/0, there are various potential problems that this indirect representation of angles may cause, including:
- Only angles corresponding to certain rational ratios have exact representations.
- Simple addition of angles doesn't work any more.
- The size of numerators and denominators may not be constrained (i.e. fixed word-size computer arithmetic might not be sufficient).
In the paper Anderson goes on to suggest that the representation of angles as "transrational" numbers might be useful in certain contexts, allowing as it does calculation without any special treatment required for when the value 0/0 occurs. I will have to confess to not being familiar with the relevant areas of mathematics the Anderson refers to, in particular the Jacobi algorithm, so I will leave it as an exercise for the reader to determine how useful such a representation might be, and whether the advantages outweigh the various possible disadvantages.
Anderson has also posted two papers Perspex Machine VIII: Axioms of Transreal Arithmetic and Perspex Machine IX: Transreal Analysis which explain "transrational" and "transreal" arithmetic as axiomatic systems. In the "Transreal Arithmetic" paper Anderson tells us that the axioms of this arithmetic have been checked in Isabelle HOL. This presumably refutes the claim that "Trans-Real Arithmetic" doesn't make sense, but I think it still begs the question as to whether the new arithmetic has some non-trivial interpretation, in particular as to whether there is any clear logical difference between Anderson's "nullity" and the more traditional understanding of "not a number" or "indeterminate" (i.e. our information about a value which could be any possible value).