Hacker News new | ask | show | jobs
by hyp0 4279 days ago
Reading this story in Hofstadner's GEB destroyed my ability to accept mathematical proofs as "proven". I just don't find them convincing; but more like using authorised forms o argument within an artificially stylised tradition (like English Literature). And I wonder if alien mathematics will reveal our mathematics as embarassingly parochial - and not the universal common ground usually assumed.

So, instead of proof, I have to fall back on intuition and working code, with their severe limitations.

However... studying mathematical proof has at times informed and grown my intuition, by revealing new ways to see a problem and new (bizarre and unintuitive) ways to decompose it.

I might have been better off never having seen this story.

5 comments

Why would you be better off? I don't see any advantage in having the overly optimistic belief that there's some universal, correct set of axioms.

You can still do all the math you could do before -- and if Carroll or GEB gets you more interested in the fundamentals of math, you can do even more.

Yes, you have to accept some basis of mathematics, and you now understand that some true things will be unprovable in the basis you just accepted. But that doesn't stop you from proving things.

I think you might have just transferred your optimism about math to code instead. How do you know your programming language is doing what you asked it to? That you asked it to do the right thing at all? That the compiled code has the correct behavior? That your hardware works as advertised and is not failing at the moment? In both code and math, you have to accept some abstractions that you're not going to worry about, but the things you do with math are certainly more verifiable.

Better off, because I could have learnt the conventional axioms as a skill, like the perceptual and motor skills comprising reading, writing, arithmetic. And only later question them.

My "optimism" is more for my intuition; working code is experimental confirmation.

It's easier to be optimistic about code than proofs. Firstly, working code only needs to work in the specific cases you're using (that you test for); but a proof must work in every possible case. Thus, working code is simpler and easier to check, because it's aiming at less. My code almost always confirms my intuition.

Yes, it's also helpful to have the automatic, mechanical check of executable code; and as you say, this relies on compilers, OSes, silicon, hardware. (Though, anecdotally, I have noticed subtle problems that I eventually diagnosed and confirmed to be compiler and hardware bugs.) BTW, yes I have tried COQ (proof assistant; somewhat mechanical proof checking), but simple ideas become very complex to prove, and the problem of bugs in COQ itself etc is of greater concern, for the next reason:

Secondly, and relatedly, is that the standard is much lower for code. It just needs to work. Whereas a mathematical proof is supposed to be absolutely true. In other words, I don't ask as much from code. If there turns out to be a bug, it's just learning more about the problem; about the world. It's an engineering flaw. But if my proof is wrong, the game is lost.

An argument against my intuition is probably more telling. Though my faith in it has turned out to be justified many many times, I certainly can be wrong. My only real excuse is that, as a human being, I have nothing else to fall back on but my sense of reality and reason. That's my hardware; if it's wrong, I really am lost. So I might as well trust it. Fortunately, it's almost always right; probably because I try to see things from many angles and check them in many ways before my intutive sense is fully formed.

> I think you might have just transferred your optimism about math to code instead.

To add to your point, if someone begins to doubt the utility of mathematical logic and responds by refocusing his attention from logic to code, he's somehow overlooking the fact that code is built on a foundation of mathematical logic.

Wait wait wait, proofs are still possible! The lesson of Godel's theorem is that you can have correctness or completeness, but not both within the same formal system. So you can have a system that yields only true statements, it just won't be able to encompass all true statements; or you can have a system that does encompass all true statements, but from which it is impossible to exclude some falsehoods.
> Reading this story in Hofstadner's GEB destroyed my ability to accept mathematical proofs as "proven".

That's too bad, because the anecdote doesn't challenge the basis for mathematical proofs or logical reasoning, in fact it requires it as a precondition for the anecdote to move forward. Remember that Gödel's incompleteness theorems don't argue that there are no true statements, only that some of them cannot be proven true.

> So, instead of proof, I have to fall back on intuition ...

You might be better off reviewing the structure of logic and mathematical proof. Start here:

http://en.wikipedia.org/wiki/Euclid's_theorem

My reasoning is that, if there's one proof sufficiently transparent to win acceptance from a skeptic of logic, then there might be two ... ad infinitum.

In my humble opinion, proofs by contradiction are not the best examples of mathematical reasoning to be presented to the uninitiated. It has been my experience that people untrained in mathematics find it difficult to (intuitively) accept them as valid.
Euclid's proof isn't a proof by contradiction. As the wikipedia page says:

>"Euclid is often erroneously reported to have proved this result by contradiction"

It simply says that if you are constructing a list of primes, you can always add one more to the list, therefore there are infinitely many.

The overall structure of the proof is not by contradiction, but one of the steps is. The Wikipedia article calls this out, right after the sentence you quoted.
Also, even though it's correct that Euclid didn't pose it as a proof by contradiction, it can certainly be posed that way, and I often use that form when presenting it to nonmathematicians.
Not everyone thinks the same way. There are certainly lay persons out there who do not find proofs by contradiction jarring when they come across them for the first time. I remember I was one of them.

But the impression I get from my (possibly biased) sample is that most non-trained people intuitively see proof by contradiction (or any form of nonconstructive proof, really) as a way of "cheating", because it asserts something does or does not exist without actually producing a (counter)example. YMMV, of course.

Thanks for the link; I now feel a little more convinced by Euclid's Theorem than last time I looked at it.

Though I still don't feel fully convinced by it; I don't fully see it. It's entirely possible my obstacle is not so much my skepticism as my stupidity :-)

I'd be interested in hearing why you're not fully convinced.

There seem to be 2 parts to the proof. If you have a list of primes:

    You can generate another number from that list
    You can always get a prime from that number to add to the list
I'm guessing it's the second part that isn't clicking with you, but perhaps I'm wrong.

As for 'stupidity', I wouldn't worry about it. The only people I've ever had call me a moron or question my intelligence in any way have always been people who were less intelligent than I am. And that's not because I'm a genius ;-)

I can follow the steps, but not see it. Like turn-by-turn directions, but no map. Perhaps also because I couldn't come up with it on my own - I don't see the family of which it is an instance (partly, this is the magic open-endedness of mathematics, it's not predictable).

But I'm seeing more: start with some primes. They needn't be consective or ordered, just some primes. Any old primes will do. eg 2 and 5 are OK (skipping 3).

Now multiply them all to get p. Obviously, p is divisible by all the primes we started with, because we just created it by multiplying them. eg 2 * 5 = 10

Note that p will generally be quite a bit bigger than the primes. Typically, you'll have the primes bunched up near the left of the number line, perhaps with some primes skipped between them, then a big gap to p, and continuing to infinity on the right.

Now we add one to p. This is just to the right of p on the number line. This p+1 is either prime or it isn't.

1. If it's prime, then there is a prime other than the ones we started with. eg 10 + 1 = 11

2. If it's not prime, it has divisors. This proof claims it must include divisors that are prime but are not among those we started with. <-- THIS IS THE BIT I DON'T GET

You can keep doing this, including that new prime (ie either p+1 itself or a prime divisor of it), showing there are infinitely many primes.

So, yes, it's the second part.

> 2. If it's not prime, it has divisors. This proof claims it must include divisors that are prime but are not among those we started with. <-- THIS IS THE BIT I DON'T GET

This step of the proof invokes the Fundamental Theorem of Arithmetic [0]: the statement that every natural number can be expressed as a unique product of primes (uniqueness isn't the important bit here, just the fact that such a factorization exists).

So you need to accept the Fundamental Theorem of Arithmetic as true before you can fully understand this proof.

[0] http://en.wikipedia.org/wiki/Fundamental_theorem_of_arithmet...

To expand a bit further: this is an example of the "rabbit-hole" nature of mathematics. All but the most trivial theorems depend on previous results, and in most cases you cannot realistically follow all the dependencies until you get to the first principles, also known as axioms (and even then, there's the question of which axioms you are willing to accept!)

In order to be able to understand and appreciate mathematical proofs, you have to develop the ability to accept the truthness of a result - and to realize the consequences of it being true - even though you do not yet understand why it is true. You have to learn to accept the ensuing confusion as a natural state of mind (read [0] if this idea intrigues you).

[0] http://j2kun.svbtle.com/mathematicians-are-chronically-lost-...

EDIT I can see the divisor that must exist cannot be one of the given primes: taking just one of them, multiplied by the product of the rest, the next number it divides after p must be one extra addition of it, which will be greater than our number p+1. Therefore, it isn't a divisor. The same argument excludes all the other initial primes.

So this means: it has a divisor not in the initial primes (actually, I think it must have two). But why should it be prime?

I think a given divisor does not need to be prime; but it must not be divisible by an initial prime. I guess this means that either it itself is prime, or it has divisors which in turn are either prime or have divisors etc. None of these divisors are an initial prime, because then they would also be divisors of p+1, which we have established they are not.

So I guess that's the proof... but I don't feel sure of it. There are too many steps, and I'm not 100% sure of them, and can't see the whole. Perhaps I've not covered some possibility in some step - how could I be sure I've covered them all? Maybe as it becomes more familiar, I will come to see it.

Remember the role of axioms, which another poster has explained in a different way. The issue in question (not itself an axiom but one that requires acceptance of axioms) is whether each composite (i.e. non-prime) is uniquely composed of primes.

To prove this for yourself, try assembling a composite number out of non-prime factors. Then, to make sure of your result, decompose your factors into the primes from which they were composed. Finally, restate your factorization by replacing your factors with the primes that compose them.

Example: the composite number 32 is normally factored as 2^5, i.e. four multiplications of the prime number 2. Let's say I want to falsify the idea that all positive integers are either prime or uniquely composed of primes, so I instead compose 32 using the nonprime factors 8 and 4.

Then I factor 8 and 4, and discover that their prime factors are also factors of 32 --

8 = 2^3

4 = 2^2

32 = 2^5

-- so I have proven the original thesis: all positive integers are either themselves prime or are uniquely composed of primes.

The idea I am trying to convey is that the original claim doesn't mean one cannot assemble a composite out of non-primes, only that the composite number is also representable by a unique prime factorization.

More depth here: http://en.wikipedia.org/wiki/Prime_factor

> "So this means: it has a divisor not in the initial primes (actually, I think it must have two). But why should it be prime?"

Ok, this is the heart of the issue. If the new number is a prime, all is well and good, but if the number isn't prime, why should it's divisors be?

The simple answer is: they don't have to be. If you have divisors that aren't prime, then keep dividing till you hit some that are. The definition of a prime number is one that can only be divided by itself, so for any non-prime number, you must be able to keep finding factors until they're all prime!

Let's take an example. Our list of primes is {5,7} which are nice small numbers to use. By following the rule of "multiply and add 1" we get:

    5 * 7 + 1 = 36.
Ok, so let's break 36 down. We get:

    36 = 2 * 18
Right, well, 2 isn't on our list, but let's face it: 2 isn't a real prime. None of the other primes like it. It's even. Nor is 18 on our list, but that's not prime (and that was your objection before), so let's break 18 down.

    36 = 2 * 2 * 9
Well, that's a bit better. We have another unpopular 2, but we also got a 9, and even though 9 isn't prime, it's probably primier than 2 is. Continue on:

    36 = 2 * 2 * 3 * 3
There we go. Now we actually have a proper prime number, "3", that we can add to our list.

And you see (I hope) that none of these numbers could possibly be on our original list, because all the numbers already on that list give a remainder of "1" when we divide "36". Yet we must, inevitably, hit a prime number because we just keep dividing till we do!

> I think a given divisor does not need to be prime; but it must not be divisible by an initial prime.

But that's how prime is defined -- indivisible by any other numbers except 1. If you statement is true -- that a given number "must not be divisible by an initial prime", that means the number is itself prime.

Positive integers fall into precisely two categories:

1. Not divisible by any smaller numbers except 1.

2. Divisible by one or more smaller numbers.

Those in category (1) are prime. Those in category (2) are composite. There is no third possibility.

To see the power of a given proof, try to imagine what would be required to refute it, falsify it. This is by no means the only avenue of attack, but it's instructive. Also, it resembles the approach used by scientists with respect to falsifiable scientific theories (which aren't the same thing as mathematical proofs).
> Reading this story in Hofstadner's GEB destroyed my ability to accept mathematical proofs as "proven".

I'm not sure I understand why. If the tortoise had insisted that one plus one is three, would it have destroyed your ability to accept arithmetic?

I'm not sure what Carroll intended by this piece, but what I take from it is that there's no sense arguing with irrational people. One can certainly claim to accept A, and accept if-A-then-B, but deny B; one can also claim that up is down and the sky is candy-striped.

That was/is such a dilemma.