Hacker News new | ask | show | jobs
by python123 5931 days ago
0 is additive identity. 0+y=y for all integers y. 0 is an integer, so 0+0=0. 0+0 is closed under addition, so (0+0) is an integer, so x(0+0) = x0 for all integers x. By distributive law, x0 + x0 = x0. By closure under multiplication, x0 is an integer. By additive inverses, there exists an integer (-x0), such that x0 + (-x0) = 0. Because (-x0) is an integer, x0 + x0 + (-x0) = x0+(-x0). By associative property of addition and the transitive property of equality, x0 + 0 = 0. By the additive identity, x*0 = 0.
2 comments

Excellent walk-through, thank you. You also removed one of my uses of additive inverses, which gets us closer to not needing the negative integers. I have two ideas for getting rid of the last use of them in your last step, but I'm sure they're kosher.

1) From the equation x0 + x0 = x0, you don't need inverses, just cancellation. I believe that cancellation is a strictly weaker property.

2) From the equation x0 + x0 = x0, note that x0 is the additive identity. Inverses are unique, thus x0 = 0.

Unfortunately, I'm not familiar enough with Peano arithmetic to know if proving either of these statements requires the statement we're trying to prove, that x*0 = 0. I'm more familiar with algebra, where inverses exist axiomatically. But at least we've weakened the hypotheses!

To prove something about multiplication you first need to provide a definition of multiplication. So what is you definition of multiplication? The usual definition is:

    a*0 = 0
    a*S(b) = a*b+a
Cancellation follows from injectivity of S by induction.
No, you can't say x0 is the additive identity because 0 is the only additive identity. That would be equivalent to x0=0. Your way is fine if you just use what archgoon wrote to complete it.
This is exactly the proof in the case of vector spaces.