
Why can't we divide by zero? - jwilliams
http://www.math.utah.edu/~pa/math/0by0.html
======
DanielBMarkham
The real number system is discontinuous over division.

Interestingly enough, you _can_ divide by zero. But if you do, then you can't
define integers.

~~~
abstractbill
For more on this, take a look at the
<http://en.wikipedia.org/wiki/Riemann_sphere>

~~~
hhm
How does this relate to the original comment? What I want to know is how you
can divide by 0, so that then you can't define integers.

~~~
abstractbill
I think DanielBMarkham is being rather loose with terminology here (or perhaps
talking about something other than the Riemann sphere, but it _sounds_ like
that's what he's talking about).

The problem isn't that you "can't define integers" when you introduce an
infinity. The problem is (as the article I linked to says) the resulting
system does not form a field (i.e. the usual arithmetic operations don't
behave like you would expect anymore). Follow the link to fields if you want
to know more.

~~~
hugh
Wait, but the integers don't form a field anyway (not closed under division).

~~~
emmett
They form a field under multiplication and addition.

~~~
abstractbill
Not quite: The structure is called a "ring" when you don't have division.

<http://en.wikipedia.org/wiki/Ring_%28mathematics%29>

~~~
antiform
"Mostly" true, but if you accept this statement as-is, it's a little
misleading.

The integers (with standard addition/multiplication operators) are indeed a
ring, but a ring is a very loose definition that does not reveal say too much
about the integers themselves. There are several stronger algebraic structures
than integers that don't have division.

The integers themselves are an example of a general algebraic structure called
a "domain," (or, more commonly, "integral domain") which is a commutative ring
(that is, commutative under multiplication as well), has distinct additive and
multiplicative identities, and has the property that if a and b are integers
and a*b = 0, then either a or b must be zero.

When mathematicians in the past were studying divisibility in the integers,
they have generally studied domains, because they essentially isolate the
division property among different operations. Even an integral domain is not
the strongest structure you can place on integers. There are even more
specific subclasses of integral domains that the integers fall under, but
that's best left for a class on algebraic structures and not a comment on HN.

~~~
abstractbill
Good point, I had forgotten about IDs.

------
jkent
I explained this as: Take a number, e.g. 5. Then take a small number, like
0.1. Add 0.1 to itself, and repeat, you'll eventually reach 5.

But if you take 0, and keep adding 0 to it, you'll never reach 5. So no amount
of 0's will go in to 5.

That logic breaks down if you do 0/0 though. My students never picked up on
that one but they believed me!

~~~
etal
Picturing the graphs of _y = 1/x_ and _y = cx/x_ worked for me. You can make
the "reasonable" value at x=0 be Inf, -Inf, or anything in between.

------
marvin
I'm still not convinced that you can't just say that x/0 equals infinity.
Certainly, infinity is not a number..but it has the same properties as a
transcendental number in the sense that it is impossible to describe it
accurately with finitely many digits. You wouldn't be able to use this
definition to build other theories, but it would be nice to have a settled
definition. Saying that x/0 is undefined still seems to me like a bit of a
hack.

I agree that 0/0 should be undefined. There are infinitely many possibilities
for what it could be, depending on the context.

~~~
derefr
Is it at least true that (0 < |0/0| < Infinity); that is, that 0/0 is a
finite, non-zero number?

~~~
newt0311
No. 0/0 is completely undefined. For example, consider limit as x approaches 0
of (-x)/x. This approaches (-0)/0 = 0/0 but simplifying the limit given an
answer of -1. So 0/0 is completely dependent on the characteristics of the
convergence and had no meaning in isolation. In fact, the field of real (and
complex) numbers does not even include 0 in the multiplicative group.
Therefore, dividing by 0 is nonsensical as it has no inverse as it is not in
the multiplicative field. According to the basic axioms of groups theory,
given a field _F_ with _a_ the identity of the additive group in the field and
_b_ some element of the multiplicative group, it can be proven that mul(a,b) =
a where mul is the multiplication operation. This explains why 0 times any
other number is 0. If you would like a copy of the proof, just drop me an
email.

Sorry for the rant, math major.

~~~
cheese825
I'd love to see the proof. But you did not post your email address. Could you
send it to mine?

~~~
newt0311
oops. Sorry about that. Fixed.

PS. Your email address is not posted either.

~~~
hhm
Isn't it something like this?

0=a-a, for all a

(where a-a is actually, a+(-a))

so: mul(b,0)=mul(b,(a-a))=mul(b,a)-mul(b,a)=z-z=0

~~~
newt0311
pretty much.

------
mystagogue
I took a couple of numerical analysis classes from this guy (Peter Alfeld) at
the University of Utah and he is a very entertaining teacher.

------
rms
You just need to define the undefinable.

<http://en.wikipedia.org/wiki/Hyperreal_number>

~~~
rms
Also, the naive perspective on the .999999999999_=1 debate happens because
some people intuit the hyperreals. It's in the hyperreal number system that
there can be an infinitely small difference between .99_ and 1, because that
infinitesimal is defined to exist where it isn't defined in the real number
system.

------
snorkel
I don't care how your define 1/0 as long as my program keeps running. I always
found it to be inexcusable that a run-time environment would halt a program
that tried to do N/0 as if it allowing it would cause a complete and utter
loss of data and property. Is returning NaN, null, or undefined instead really
so hard? Lazy frigging compilers, I hate you!

------
gills
A little off topic, but interesting practice for 0.

What are the mathematical ramifications of 0% capital reserves?

This is a good chance to remind the readers that the bailout bill contains a
clause to accelerate a 2006 law to 10/01/2008, which allows the Federal
Reserve to set reserve requirements for a bank to 0%.

------
etal
There was a professor who tried to get around this a couple years ago by
defining a special value called "nullity."

[http://en.wikipedia.org/wiki/James_Anderson_%28computer_scie...](http://en.wikipedia.org/wiki/James_Anderson_%28computer_scientist%29)

~~~
orib
Which, when you look at it, is just another name for "undefined". It didn't
solve anything, and seemed to me like a bad troll on the mathematical
community.

~~~
etal
Indeed. A little knowledge is a dangerous thing.

------
maxklein
Because 0 is not a real number like the rest. It's like having a long row of
cowboy boots and a pair of highheels in the middle. 0 is different from the
rest.

------
kylec
I think of it like that blank Scrabble piece - it can be anything until you
define what it is, then it has to be that value from now on (in the
calculation).

------
huhtenberg
> _Why can't we divide by zero?_

By definition (of the division operation).

------
mattmaroon
Ok, so why does 2+2=4?

~~~
maxklein
Because if I had two apples and you gave me two oranges, I would have 4
fruits. If I asked you how many pair groups of apples you had, you'd say 2. If
I asked you how many groups of no apples you had, you are free to choose any
number, depending on how imaginative you were.

------
speek
because the math police will come after us.

~~~
eipiman
Suppose 5/0 = infinity. What does it buy you?

At the very least, one would expect that 5/0 = infinity implies that 5 = 0 *
infinity, but that is not the case. And if you insist that it is, does 4/0 =
infinity then imply that 4 = 0 * infinity, and hence 4 = 5?

~~~
speek
Infinity is not a number... its a concept.

Say you were to count every integer, you would count to infinity. Now what if
you were to count every number between 0 and 1? Would it still be infinity?

I've always thought in degrees of infinity, but either way its still not a
number.

If you kept the degrees of infinity separate, you _could_ divide 5 by zero and
it would not be the same as dividing 4 by zero.

If you wanted to play with limits, you could say the limit of 5/x as x
approaches 0 is infinity, but we don't really have a name for what x/0 would
be. Someone did come up with nullity, but that's not good enough.

Plus, you can't _have_ Zero of something. Having implies a positive net, thus
it's not correct to say that you have zero of something... you could say you
don't have something, but they're semantically different. Zero is just another
concept.

~~~
abstractbill
Take a look at Cantor's work, if you're interested in this stuff.

The number of integers is known as a _countable_ infinity.

The number of numbers between 0 and 1 is called an _uncountable_ infinity.

The proof that these are not the same (Cantor's diagonalization argument) is
my favorite proof - it's _really_ neat. It's quite clear and maybe even
obvious in retrospect (I like to explain it to friends who are curious about
higher mathematics), but probably not something you would have come up with if
you weren't Cantor!

You can ask if there's an infinity between these two, and that's actually
unprovable. You can _prove_ that, without adding more axioms to mathematics,
it's impossible to prove one way or another whether there's an infinity
between them.

Sometimes I really miss this stuff.

~~~
Retric
I never really accepted Cantor's idea. First off if you have a sequence ...1
and ...0 at infinity they are the same number so saying you flip the last bit
does not demonstrate that the above number is not in your set.

Secondly, if you take the Integer set and say N = the sum of all numbers > 0
you have counted, then you will never reach N as you go to infinity.

PS: This is why I went to CS there is no way to verify that a given proof or
program is accurate but that does not stop a program from being useful.

Edit: Restating the second argument: Start with all zero's, count in binary
from the left, 1000.. > 0100.. > 1100.. > ... and the diagonal becomes 1111111
which is basically just a higher order of infinity like N = the sum of all
prior numbers.

~~~
hhm
_I never really accepted Cantor's idea. First off if you have a sequence ...1
and ...0 at infinity they are the same number so saying you flip the last bit
does not demonstrate that the above number is not in your set._

It doesn't work like that. You want to show that you can't enumerate all
reals, so what do you do? You start enumerating all reals. Then you build a
new number, whose Nth bit is different from the Nth bit of the Nth real
number. You can do that because you have enumerated them, and we have never
talked about an infinite N so we are never flipping the last bit of the last
number nor anything similar. We are only flipping the Nth bit of the Nth
number. Number 819439243? We flip the 819439243th bit. That's all we do.

What do you do then? Well, you compare that new number you created, with the
first number, the second number, and so on. And you see that this number is
different to all the other numbers.

What does it mean? That it doesn't matter what your enumeration scheme is,
there is at least one number that will always be out of your enumeration
scheme, and so your enumeration scheme will fail (so this is an absurd also,
as we were supposing that this specific enumeration scheme -that could be any
enum scheme- was complete). So you don't have as many integers as reals, so
QED.

 _Secondly, if you take the Integer set and say N = the sum of all numbers > 0
you have counted, then you will never reach N as you go to infinity._

As you see, it doens't matter, as in this proof you never need to do the sum
of all numbers.

~~~
Retric
Countability is considered a one-to-one correspondence with the infinite set
of natural numbers.

Well let's count the natural numbers in binary, ..0000, ..0001, ..0010,
..0011, etc.

Now take the first digit of the first number and flip it,1 and the send digit
of the second number and flip it, 1, etc. This is 2^x - 1. Is it countable
because the natural numbers are countable? It's the same type of number you
created on Cantor's diagonal. But it's never in the set you have counted.
However, the same thing is true of x + 1.

The problem when constructing such numbers is there is not a final number in
the set. So saying go to Infinity and add one or take 2 to the power of that
and subtract one has no meaning.

PS: I think people don't equate them because they assume there is a difference
between making a number larger and making a fraction more precise. So, 0.1,
0.11, 0.111, 0.1111 means something different than 1, 11, 111, 1111 etc.

~~~
hhm
You aren't undestanding the proof well; the proof isn't flawed. The best way
to see it is to read it on a math book with full symbols and so on. Then you
can see that there is no flaw, as every step follows from the previous one and
that there is no philosophical reasoning about it, only maths.

I think the problem with how you are understanding it is that you think that
your enumeration is finite at any time. That's not true.

Let's suppose we are only wanting to enumerate numbers between 0 and 1. So,
you have to enumerate them like this:

0 -> some real

1 -> some real

...

n -> some real

for all naturals, so that you have infinite reals in your enumeration scheme.
Now, you build your new real number, let's call it R. R is such that its Nth
digit after the point is different than the Nth digit after the point of the
Nth number. Let's suppose our procedure goes like this:

0 -> 0.1

1 -> 0.11111

2 -> 0.0001

3 -> 0.10101010101010....

4 -> 0.111011

What is R? R is a real number. It has a well-defined value for every one of
its digits, so why wouldn't it be a real number? So we have, a real number
between 0 and 1, and an infinite enumeration of reals.

Let's see the value of R:

0 -> 0. _1_

1 -> 0.1 _1_ 111

2 -> 0.00 _0_ 1

3 -> 0.101 _0_ 1010101010....

4 -> 0.1110 _1_ 1

so R is:

0.00110 and so on.

Is R 0.00110? R has more digits, is more like 0.00110abcdefg with abcdefg
being some more digits we should calculate. R has infinite digits, not only
those, and we could calculate all of them by a finite procedure, so we aren't
doing anything magical here. What those digits' value is we don't mind, as
you'll see.

What we mind about is this: R is different to the first number. How can we
know? Because by construction, the first digit of R is different from the
first digit of the first number. Now, let's see if R is in our countable set.
If R was in our countable set, R would be in a place, for example in the
position M of the enumeration. Now, in the position M of the enumeration we
have the Mth number, and by construction, the Mth number is different to the R
number, as they have at least a digit that is different between them (and we
can even say: the Mth digit is different between them).

So, how could R be in the enumeration scheme if we can't place it at any M?
Now, that's why we have an absurd here, and that's why every enumeration
scheme for reals will be incomplete.

I wish this solves your doubts about it. Please only focus on the mathematical
demonstration, we aren't saying nothing about countability, infinities, or
very large numbers excepting when we have to.

~~~
Retric
Let's use your approach to define every other number the other uses the
classic counting method.

Every other number will be the same as your number for N-1 digits. So at
infinity your number is the same except for the last digit but two real
numbers N and N + 1/infinity are the same.

~~~
hhm
Let's see if I understand it well:

You define a numbering scheme that goes like this:

\- the first number is, say, 0

\- the Nth number is so that, its Mth digit for M<N is different to the Mth
digit in M

Do I understand you well?

~~~
hhm
If that's what you mean, then I define a new number, R, that is different to
all numbers in the sequence. It's defined as usual.

How do I know that this R number is different to all numbers in your sequence?
Well, I can take any M number from your sequence and compare it to R. However,
the Mth number is different to R in its Mth digit.

About the limit in the infinite... it doesn't matter at all... You can't take
a M value that's infinite, as we have only numbers that have a finite size
(there are infinite numbers with finite size, that's the trick on this; there
aren't integers with an infinite size for example). And if you take an M
that's finite, then you have to say that such Mth element is different to my
R.

And so on for any sequence you can build (even for sequences you can't build,
like random sequences).

Edit: possibly the big thing that's confusing you is that you can't have an
infinite number, even if there are infinite numbers. So, taking the limit of a
function is something that has a very restrict meaning that is actually not
directly related to the concept of infinity. If you check the definition of
limit it doesn't talk about infinities but about deltas, and if you use such
definition your proposed problem stops being a problem.
<http://en.wikipedia.org/wiki/Limit_>(mathematics)#Formal_definition

~~~
Retric
_possibly the big thing that's confusing you is that you can't have an
infinite number, even if there are infinite numbers_

Yep, that's new to me. So one followed by infinite zeros is not a rational
number number. I have read otherwise, but I assume it was a sloppy definition
of infinity that works when your not talking about countable numbers.

~~~
hhm
Real numbers can have infinite digits, but only after the point, such as pi.
The size of any number, even if it's real, can't be infinitely big (a real is
between two integer numbers, and integer numbers have to be finite). So yes,
1000(...)00000 with infinite 0s doesn't exist as a number.

Nice conversation anyway.

