This is a problem which has caused numerous mathematical problems when developing computer code algorithms. The APL programming language, for example, results in 0 “divide” 0 = 1, not an error or overflow. This has proven very useful in certain cases, but a serious problem in others. What are the conditions or “rules” which should be applied to this problem, e.g. when does 0/0 =1 (or some x) or 0/0 = 0 ? … and what test(s) should be conducted first?
In simple arithmetic, any number divided by zero is an undefined result. Any attempt to perform such operations is verboten.
If you want to define a result for it, it could be anything you find useful. If I were writing any sort of math into a program, and was using a language that didn’t error when encountering division by zero, I’d code in tests for this sort of math, and make sure it is dealt with in the way my math requires. In most cases, 0/0=1 wouldn’t work for me, nor would 0/0=0.
And from high school mathematics you may remember these four operations having indeterminate results:
infinity - infinity
0 * infinity
infinity / infinity
infinity / 0
I got as far as third-semester calculus in college, and not until I began copyediting math textbooks a few years ago did I find a satisfactory (and elegant) explanation (by one of my authors) of the definitions of dividing by zero.
Dividing any nonzero number by zero:
[ul]If (say) 7/0 equals x, then there must be some number x for which x times 0 equals 7. But any number times 0 equals 0, and no number can be multiplied by zero to obtain 7, so there is no such x. The solution is undefined.[/ul]
Dividing zero by zero:
[ul]If 0/0 equals x, then conversely there is some number x such that x times 0 equals 0. But in this case, x can be any number, because anything times zero is zero. The solution is indeterminate.[/ul]
I wish I’d had that explanation when I was back in school and had to remember which was which.
Hi Arnold, remember those, but where is 0/0? In the case of x/x as x approaches 0 equals 1 up until when x is absolute zero. How can we test if 0/0 = 1 (or some x) or 0/0 =0? This causes alot less overflow problems if properly implemented when developing code.
I’m trying to get my Social Security number changed to the empty set in the hope that all my creditors will no longer be able to find me.
It depends.
In a strict arithmetical sense, performing the operation 0/0 results in an indeterminate solution.
It’s a different story if you’re talking about taking the limit of the quotient of two expressions that both happen to equal zero at some value. For instance, suppose you want to evaluate f(x) / g(x) at some value ‘a’ where f(a)=g(a)= 0. In this case:
f(a) / g(a) = 0/0, which is still indeterminate, but
lim(as x approaches a) [f(x)/g(x)] = lim(as x approaches a) [f’(x) / g’(x)] = f’(a) / g’(a) (L’Hopital’s Rule)
So in your x/x example, if x = 0, then x/x has an indeterminate solution, but the lim(as x approaches 0) [x/x] = 1
It really depends on the type of application you are programming as to whether you wish to implement the arithmetic definition or to implement a limiting-case type of definition.
I don’t know much about math or programming, but as I recall, 0/0 can be either undefined, 1 or 0, depending on what you want it to be. It’s purely definition, not mathematical. I remember doing a proof in calculus two years ago, and we were told to let 0/0=1. But later, in a linear algebra class, a proof could only be done if 0/0=0. As for undefined…we never did much math with that value…
But as I said, I don’t know much about math or programming…
Zero divided by zero. So, you want to take nothing, and divide it into no parts, hm?
As a great philosopher, I believe it was Foghorn Leghorn, once said, “Two nuthins is nuthin’.”
Or as my high school physics teacher so memorably put it:
“Trying to divide zero by zero is just dumb. It’s like saying: 'I’ve got no money, and no one to give it to. What do I do?”
Dr. Doom - when writing code where you divide x by y, I would write a test of the type
if y > 0 then result = x / y
else result = undetermined
It depends on the application what value you would assign to “result” in case of a 0 demoninator.
Or, as the other noted sage, Billy Squire noted,
“Nothin’ from nothin’ leaves nothin’
You gotta have somethin’
If you wanna be with me.”
Aaaaaaah! Heresy!! Heresy!!! Burn him!!!
That was Billy Preston.
Why not just make up a letter for 1/0, like was done for the square root of negative 1.
Lets call it m (for “made-up” numbers):
1/0 = m
7/0 = 7m
0/0 = 0m = 0
Easy huh?
This could open up a whole new section of mathematics.
Numbers involving m could be called “Complicated numbers”.
Originally posted by Arnold Winkelried
And from high school mathematics you may remember these four operations having indeterminate results:infinity - infinity
0 * infinity
infinity / infinity
infinity / 0
I don’t get some of these. I’m not questioning them as such (math is not my strong suit) but rather asking for the reasoning behind some of these.
infinity - infinity – I’m wishy-washy on this one. Anything minus itself should be zero. However, infinity/2=infinity so theoretically could I have a bigger infinity minus a smaller infinity (not sure that makes any meaningful sense) thus getting an undetermined result for infinity - infinity?
0 * infinity – Should equal zero in my mind. Although infinity has no set value it reads to me as “infinity zero times” which should equal zero. You have something NO times…or zero.
infinity / infinity – Again, while infinity may not have a set value anything can go into itself one time so shouldn’t this equal 1?
infinity / 0 – I think I get this one…anything divided by zero is undetermined.
Looking through the above it seems the problem lies in the fact that infinity is not really a defined value. Nevertheless shouldn’t the 0*infinity and infinity/infinity still work out to be zero and 1 respectively?
Again, I fully believe that what Arnold posted is how the mathematics world views this. People MUCH smarter than me who have dedicated their lives to this study have figured this all out to be this way so I’m not trying to second guess them. I’m just hoping for an explanation.
c_goat;
0/0 = 0*m = 0
0/0 = m/m = 1
That is why it is indeterminate.
I found about 100 holes in that after I posted it. It was really just a joke. Making fun of the naming convention for imaginary numbers :).
There’s also the fact that:
7/0 can be (7/1 * m) or (7/2 * m) or (7/3 * m) or whatever.
*Originally posted by Jeff_42 *
infinity - infinity – I’m wishy-washy on this one. Anything minus itself should be zero. However, infinity/2=infinity so theoretically could I have a bigger infinity minus a smaller infinity (not sure that makes any meaningful sense) thus getting an undetermined result for infinity - infinity?
0 * infinity – Should equal zero in my mind. Although infinity has no set value it reads to me as “infinity zero times” which should equal zero. You have something NO times…or zero.
infinity / infinity – Again, while infinity may not have a set value anything can go into itself one time so shouldn’t this equal 1?
The problem is that the statement “x = infinity-infinity” is supposed to mean the same thing as “x+infinity = infinity”. But any finite number x satisfies the second equation, so that means that any finite number x must satisfy the first equation as well, not just 0. Thus “infinity-infinity” is an indeterminate quantity. “infinity/infinity” has pretty much the same problem.
“0infinity" is a little more subtle, but not much: "0infinity = y” should mean the same thing as “0 = y/infinity”, but again any finite number would work for y.
You’re correct that the crux of the problem is that infinity is not a well-defined quantity. There is a system of numbers called ordinal numbers in which you have numbers like “w+1”, "3w", and “w^2”, where “w” is the first infinite number in the system. (That should be a greek letter omega, but I’m limited by ASCII here.) Then w-w=0, w0=0, and w/w=1, just like you’d expect.
But even in the ordinal numbers, you still can’t divide by zero.
*Originally posted by Arnold Winkelried *
Dr. Doom - when writing code where you divide x by y, I would write a test of the type
if y > 0 then result = x / y
else result = undetermined
Arnold, this is only one of many 0/0 coding problems, and involves the calculation of the “t” of two means, or let’s use t^2 if we can’t agree that the sqrt(0)=0 for now. We have two sets of data, x1= 5 5 5 5 5 and x2= 5 5 5 5 5 5 and
t^2 = f(u1-u2)/g((s1^2 + s2^2)/df-2). The result is 0/0. This is not, however, an undetermined result. The numerator determines the result. If the two means are equal, then t=0, regardless of the g(s1^2 + s2^2/df-2) denominator, and statistically the populations cannot be considered different. This is obviously a very simple 0/0=0 problem, many are, but what about 0/0=1 and other 0/0=0 problems?
-DD
Math Geek wrote:
“0infinity" is a little more subtle, but not much: "0infinity = y” should mean the same thing as “0 = y/infinity”, but again any finite number would work for y.
Of course, any finite number divided by infinity is as near to zero as you can get without actually being zero (forever approaching but never reaching zero).
Didn’t Douglas Adam’s use this concept to prove there was no life in the universe in his Hitchhikers books?
Anyway…thanks for the explanation!