British now divide by zero.

Either this “Dr James Anderson, from the University of Reading’s computer science department” is a crappy computer scientist (not to speak of his mathematical skills), or this is a case of really bad journalism.

Apart from having some facts wrong (infinity and -infinity aren’t numbers, they’re symbols outside of the numbers), he basically defines “0/0 = Nullity”.

Well, some of us might prefer the name “NaN” for this. “Not a Number”. In floating point calculations, 0/0 may (if you’ve disabled exceptions) return NaN.

So it is nothing new. And it’s not particularly useful either, because all it solves is not having to raise an exception, but being able to continue your calculations (which will continue to return NaN) and handle the error at the end. With modern languages designed around exception handling, this of course is rarely ever used anymore.

Some simple calculations you might find convincing:

2 * Nullity = 2 * (0/0) = (2*0)/0 = 0/0 = Nullity

Nullity + 1 = (0/0) + (1/1) = (01 + 10)/(0*1) = 0/0 = Nullity

Nullity / Nullity = (0/0) / (0/0) = (0/0) * (0/0) = (00)/(00) = (0/0) = Nullity

So if you ever have Nullity anywhere in your equation the whole equation equals nullity. There is no way to remove Nullity from your results, since even Nullity/Nullity is Nullity.

So you could just call it “I divided by zero, so the result is invalid”. Thats probably not as pretty as “Nullity”, but as useful.

Some simple calculation, why you must not be allowed to divide by zero (independently from any nullity or whatever):

1*0 = 0 = 2*0     (This equation is right, isn't it?)
1 = 2             (I divided by 0 on both sides, removing the *0 factor)

This works for any number, not only for 1 or 2. So: if you divide by zero, all your numbers are equal (if you keep standard calculus rules such as associativity, distributivity etc. used in above equations). If that is okay for you, then you can divide by zero. I do prefer having 1 life to 0 life. And if 1 = 1000000, can you give me $1000000, I’ll give you $1 back tomorrow…

But: Maybe it’s just a bad piece of journalism.

He’s a computer science guy. Maybe he knows about NaN. Maybe he’s just trying to teach kids to use NaN when calculating, instead of teaching them to never divide by zero. There might be didactic benefits from this approach.

The 1200 year old problem (Pythagoras, cited in the article lived 2500 years ago, I have no idea how they made up this number) IS easy to solve, if the result is called “invalid” instead of just having no valid result…

That won’t make your airplane land better, if it notices it’s current height is Nullity… and what if his heart pacemaker obtains a result of “nullity”, what is it supposed to do (as opposed to noticing it miscalculated?)

[Update: he has published papers on this, too. Unbelievable… So above theory that it maybe is good for educational purposes is incorrect. Anyway, journalists shouldn’t have reported on this without talking to some serious mathematicians…]

[Update: Zoy, thats why I wrote “if you keep standard calculus rules such as associativity, distributivity, etc. - and I find these exceptionally useful. The last example is not using his rules, but standard math, but treats zero like all other numbers, to show that a canonical extension will just not give useful results. My whole point is NOT that you can’t define 0/0=Nullity, but that it’s not compatible with the standard calculus we’re used to and relying on.]