An ABC proof too tough even for mathematicians
bostonglobe.com
bostonglobe.com
http://quomodocumque.wordpress.com/2012/09/03/mochizuki-on-a...
Edit: Minhyong Kim's initial thoughts seem very interesting as well!
http://mathoverflow.net/questions/106560/what-is-the-underly...
And for the less mathematically-inclined:
Mathematics is the same, to an extent; one guy working alone for 14 years is likely to have missed ideas and perspectives that could illuminate flaws in his reasoning. Maths bugs. If he's produced hundreds of pages of complex reasoning, on his own, however smart he is I'd say there's a high chance he's missed something.
Humans need to collaborate in areas of high complexity. With a single brain, there's too high a chance of bias hiding the problems.
And even if they locked themselves for 14 years, there is no "single mind at work" there. Mathematics are built "on the shoulder of giants" through generations of brain dedicated to it. There is no such thing as pure invention - new discoveries lead to new theorems, new leads that other people take on.
Abstract Maths is like having a Organic Chemist working on understanding the transformation of food at the molecular level. A Software Programmer is like a cook who knows how to mix and prepare food in order to make a delicious dish out of it.
@btilly: it seems as though that would be a correct assertion.
@jacques_chester: I did not know that, does he have a piece on programming languages he found disconcerting? Did he prefer Church over Turing?
I don't think programming languages can really go beyond being strictly mathematical though..
My point is that Dijkstra was kinda big on programming-as-strict-mathematics; a loosey-goosey super flexible language like Ruby would not have met with his favour, IMO.
http://en.wikiquote.org/wiki/Edsger_W._Dijkstra
But especially "On the Cruelty of Really Teaching Computer Science".
http://en.wikipedia.org/wiki/The_Cruelty_of_Really_Teaching_...
I think it is a false debate to say that one discipline is poorer or more valuable than the other. We need both Mathematicians to advance the theories and Programmers to apply their learnings into the real world. Everyone has its place.
I'd be more worried about this attitude if I thought you had much comprehension of the overlap of these fields. To take your own example, many machine learning algorithms begin with N-dimensional spaces (you know, the kind programmers can't comprehend) and go from there—support vector machines are the obvious example ("a support vector machine constructs a hyperplane or set of hyperplanes in a high- or infinite-dimensional space"). But that's just the beginning; the Curry-Howard isomorphism shows that proofs and programs are the same thing. That theorem provers exist at all seems to undermine your original point. The category-extras package for Haskell, which is a set of abstract algebraic entities that, to my knowledge, are used exclusively for mathematical experimentation and not of any practical application at all.
On the other side of the coin, the only practical applications of number theory have been in cryptography, and the big name there (RSA) is simply modular arithmetic combined with things we expect to be true about large primes. This level of math produces practically applicable results roughly every thirty to fifty years. It's wonderful when it happens, but the idea that mathematicians are consistently churning out theories of practical import is laughable. We do have people doing that, and we call them applied mathematicians and computer scientists.
Are most programmers sufficiently mathematical? No—Dijkstra bemoaned this at great length. Does this mean that mathematicians are somehow a superset of programmers? Absolutely not.
Let me be clear. I'm arguing with your tone and the implication behind your ham-handed analogies. What you've simply stated (we need both), I agree with.
Programming benefits greatly from a tiny section of mathematics and the more deeply the connection between the fields grows the more we'll see strong justification for universal patterns in programming and strong realization of abstract mathematics.
It's also a bit of a strawman to pick just number theory as the only field of mathematics to examine for practicality. Our world as we know it today would not exist without diffeq and your own example of machine learning really is just applications of optimization, statistics, probability, and abstract geometry.
"We need them both" is an unrefined statement. They are apples and oranges, though a mathematical programmer might be uniquely powerful as might a programming mathematician (Djikstra?).
I chose number theory specifically because that's the subject of the ABC conjecture whose proof spawned this whole debate.
"A Software Programmer is like a cook who has an undergraduate degree in Organic Chemistry." May be a more apt analogy.
It isn't a new algebra, calculus, or geometry. Not to minimize the accomplishment at all, but it happens a handful of times a generation.
From my own experience; the more I am connected, the more I share and optimize existing ideas. If left on my own, I will come up with rough but more original ones.
As a counter example: Time Cube guy came up with Time Cube in the way I describe.
So long as the original intuition is actually correct, then any bug will probably be patchable. (Obviously there's no guarantee!)
To stretch analogies:
It seems like you're analogy is saying: My card pyramid is built, but now if I remove a card, it all falls down.
The more apt analogy is: When you're building a structure, you might be off a little the first time you build it, but if the overarching design is sound it will still work out and you can fix it and try to be perfect again. If the overarching design is not sound, you won't be able to build it at all.
What I'm trying to say is, problems in the more bottom layers are very unlikely.
From http://en.wikipedia.org/wiki/Fermat%27s_Last_Theorem :
However, it soon became apparent that Wiles's initial proof was incorrect. A critical portion of the proof contained an error in a bound on the order of a particular group. The error was caught by several mathematicians refereeing Wiles's manuscript.[112] including Katz, who alerted Wiles on 23 August 1993.[113]
Wiles and his former student Richard Taylor spent almost a year trying to repair the proof, without success.[114] On 19 September 1994, Wiles had a flash of insight...
But nobody would quite yet. Instead he announces one more thing, he's used this OS to control a rocket ship and send a satellite to Mars far before anyone else has even come close!
Now, assuming he didn't lie there, you really want to figure out what he invented because he just seems to be vastly more powerful than you.
And the MathOverflow discussion referenced: http://mathoverflow.net/questions/106560/what-is-the-underly...
It tried to explain both the dynamics in math research and the problem at hand, and in the end explained neither.
> Mochizuki attended Phillips Exeter Academy and graduated in 2 years. He entered Princeton University as an undergraduate at age 16 and received a Ph.D. under the supervision of Gerd Faltings at age 23.
He is 43 Years old now, I assume he is 100% committed to Mathematics. These people fascinate me, having a feedback loop that is unbreakable. Especially for topics where you have a knowledge of something and almost nobody else is the world is capable of understanding you. It's like Star Trek for the mind.
It is clear that he has already done some very great things in mathematics, so even if there was a flaw in his proof, I would think his papers would still have many deep insights that no else had thought of. I mean, it's not like mathematicians are pressed for time -- if I was one I would certainly dedicate a lot of time to studying something interesting like this.
I think you've just misinterpreted some of the language used.
"if Mochizuki is able to build up sufficient trust with his peers"
"if an error is found early in the vetting process, the math world will likely move on without bothering to explore the rest of the mathematical universe Mochizuki has created"
I was basing my post on these quotes.
Plus: mathematicians really don't have spare time to learn every area that comes along. Allegedly Poincare was the last true polymath. Given how math has been developing for centuries and you never really need to throw things away it continually becomes harder to get up to speed in any particular field. There's a famous quote about how the Princeton undergraduate math program is so rigorous that it brings you up to speed, to the point of early twentieth century mathematics. In this way math is incomparable to CS.
I find this claim very surprising.Saying that "there is no new profound number theory" implies a deep understanding of the totality of Mochizuki's work, which as far as I know is so complex and far from the current state of the art that nobody really understands it yet.
Mochizuki's work may prove to be right, and it may prove to be wrong. But saying there is no new profound number theory at this point seems a little premature.
I cannot really give a complete explanation, being unfamiliar with his papers. But to argue by analogy, suppose I had invented a difficult and programming language. How might I persuade you to learn it? One way would be to use it to solve problems that are known to be difficult very easily, elegantly, or extensibly.
It is the same with "inter-universal geometry". One should not have to follow Mochizuki's work all the way through his proof of ABC to know whether it is good for anything. What is the quickest route to a surprise? What can Mochizuki now do with less effort than the existing experts?
The absence of good answers is behind skepticism of the proof.
Mathematicians, and especially the very best mathematicians, are very eager to learn. I don't know of any great mathematician who demonstrates a "lack of intellectual curiosity".
That said, there is much more mathematics available than anyone has time to read. It can easily take an hour a page, or more, to read a dense research paper. Mathematicians, like everyone else, have to be selective about what they choose to learn.
It is very rare for great work to be ignored, but here is one example:
Take the Fermat-Wiles proof. It's probably the most significant number theory result of the last century, yet it doesn't contain new profound number theory. Its genius is the use of elliptic curves, which is algebraic geometry.
I'm not saying Mochizuki's proof doesn't contain new profound number theory, but this is a very possible outcome, we just don't know yet.
So Mochizuki has almost certainly defined some new objects and proven some things about them. But mathematicians do that all the time (admittedly on a smaller scale). If you just want to look at something, there's plenty of "new territory" around - stuff that doesn't require learning a new notation, and hasn't had Mochizuki looking at it for ten years already. The only reason some arbitrary new structure is interesting enough to spend your time learning about is if you can tie it back to number theory.
I'd be really interested if you could justify this! Sure, group theory has a huge number of applications across mathematics, but to say that it reduces to group theory "most of the time" seems completely implausible.
Have you tried thinking up new mathematical objects? What do you tend to come up with? (Not snarky, I'm genuinely interested - maybe some people's creativity works differently to mine)
Yes, I have. Off the top of my head, the objects I'm interested in are often monoidal, but usually lack inverses.
Strings don't have any natural group structure (though as free monoids there is an obvious way to extend them into free groups), nor metric spaces or context-free grammars or finite state machines.
Of course groups are ubiquitous, but I think your claims of universality are vastly exaggerated.
The estimate that I was told for the average mathematician reading the average math proof is one page per day.
Thus the average mathematician facing this will see 750 pages just to becomes of the the 50 people who have mastered the basics of anabelian geometry. That's 2 years. Then you have to take on some unknown number of years to learn "inter-universal geometry". Then your reward for doing this is that you are qualified to read a 512 page proof, which is again going to be a year and a half. Along the way if you find a mistake in any of it, your reward is to confirm the immediate guess that most mathematicians have which is that there is likely a mistake somewhere. (But with this much math, you'll probably find several "mistakes" that aren't before you find a real one.)
This is years of work, that has nothing to do with anything that you're already working on. And believe me, a professional mathematician has no shortage of problems to work on, in areas that they already have the background for.
If you think that this is unreasonable, well, why don't you volunteer to fix it? Reading the proof shouldn't take you much longer than it would take to become a mathematician. And you can learn anabelian geometry during grad school, so that time is not all wasted.
Ah, well I did not know this. I appreciate the enlightenment. I see the trepidation of reading the whole thing then.
Edit - lest this sound too negative, one should realize that the Bieberbach proof took a long time to be accepted.
Doesn't that mean that verifying proofs is then based on a super handwavy process where a bunch of researchers come to a consensus and say "yes, this is correct"? Ugh!
What if they all overlook some crucial aspect because of the way they were trained, or their entrenched / ingrained assumptions?
When you describe a proof with words like you say, aren't there quibbles over semantic things? But I thought the whole point of a proof was that you leave nothing to semantics. Everything logically follows from each other.
I thought the main issue with proofs systems was that encoding the concepts into code was tedious. Could we maybe have a common database of well-known proofs, axioms, concepts etc, so that you wouldn't have to rewrite common ideas from scratch? Like a package manager with proof-libraries?
Or is this an issue with the expression power of proofs languages?
>Wait, so you're saying it's easier for humans to prove complex theorems than computers?
Of course! If proving theorems could be readily automated, this would have been done already. Indeed, automation has succeeded for some kinds of problems (e.g. google Wilf and Zeilberger's "WZ method" in combinatorics for a particularly successful example)
>Doesn't that mean that verifying proofs is then based on a super handwavy process where a bunch of researchers come to a consensus and say "yes, this is correct"?
Basically, yes.
>What if they all overlook some crucial aspect because of the way they were trained, or their entrenched / ingrained assumptions?
This happens surprisingly rarely. It helps that we are trained to constantly question our entrenched assumptions.
>Could we maybe have a common database of well-known proofs, axioms, concepts etc, so that you wouldn't have to rewrite common ideas from scratch?
Various books fill this purpose. But the problem is that theorems are difficult to encapsulate. For example, a theorem will say "Assume X, Y, and Z. Then A and B are true." and you need to use it in some situation where Z isn't true, but some appropriate variant of Z is, and any expert would know how to conclude that A and B are true. This is when the handwaviness comes in.
Mistakes do happen. But surprisingly rarely.
It doesn't need to create the proof, just validate it. See P vs NP.
In some sense we won't really know whether a proof is rock-solid until we have run it through a verifier, using a proven-correct verifier on proven-correct hardware.
If theorem provers grow to be more easy to use, we may require proofs to be verified, but we aren't there yet by a wide stretch.
For an idea about how hard this can be, check out http://www.cs.ru.nl/~freek/comparison/comparison.pdf:
"In 1998, Tom Hales proved the Kepler Conjecture […] with a proof that is in the same category as the Four Color Theorem proof in that it relies on a large amount of computer computation. For this reason the referees of the Annals of Mathematics, where he submitted this proof, did not feel that they could check his work. And then he decided to formalize his proof to force them to admit that it was correct. He calculated that this formalization effort would take around twenty man-years"
(that effort is ongoing at http://code.google.com/p/flyspeck/wiki/FlyspeckFactSheet)
But - and this is key - these errors are usually fixable or the area is not understood well enough and requires more attention to detail. The human intuition is quite powerful.
Usually a lot of previously known errors will crop up despite that the system already works mostly as intended.
>This happens surprisingly rarely. It helps that we are trained to constantly question our entrenched assumptions.
It also helps that finding a counterexample to a widely accepted proof tends to enhance one's career and reputation.
http://terrytao.wordpress.com/career-advice/there%E2%80%99s-...
Computer proofs tend to be brute force. For example: Are all games of Freecell winnable? But a brute force run of all Freecell games just tells us that all but one game is winnable, but tells us nothing about what's happening or why.
Complicated theorems, like the four-color theorem, are different point. Note there though that the original proof of the four-color theorem, which was based on a computer enumeration, was not convincing to many mathematicians when it first came out, in part because it wasn't feasible to verify manually. Researching now, I see that a proof verified by Coq now exists, which I think reduces the amount of distrust.
Yes, mathematicians "come to a consensus." And they make mistakes. Proofs are sometimes believed to be correct for several decades before being shown to be incorrect, though for important proofs - proofs that others depend on - that's extremely rare. But it isn't super handwavy. They've developed processes over time to help identify flaws. This link outlined a few of them: many people work in the same area, so they can cross-check, and workshops and other meetings serve as a way to spread knowledge and get feedback. Note how it will be a couple of years before the proof is published.
If there's a missing crucial aspect, then that may reveal new types of math. Consider the work of Cantor. Quoting Wikipedia, it was "so counter-intuitive—even shocking—that it encountered resistance from mathematical contemporaries such as Leopold Kronecker and [others], while Ludwig Wittgenstein raised philosophical objections. Some Christian theologians (particularly neo-Scholastics) saw Cantor's work as a challenge to the uniqueness of the absolute infinity in the nature of God ... The objections to his work were occasionally fierce: Poincaré referred to Cantor's ideas as a "grave disease" infecting the discipline of mathematics, and Kronecker's public opposition and personal attacks included describing Cantor as a "scientific charlatan", a "renegade" and a "corrupter of youth.""
Nowadays, Cantor's work is considered the origin for set theory.
Part of the training in math is to make those "semantic things" well-defined.
If you go further into the philosophy involved, then you start dealing with formalism, where everything is reduced to symbols manipulated by a grammar (hence how Stephenson's 'Anathem' refers to computers as 'syntactic devices'), and with Zermelo–Fraenkel set theory, which is one of the most common foundations of mathematics. However, then you have things like the continuum hypothesis and the axiom of choice which are not part of the the ZF set theory, leading to ZFC set theory. And at this point I'm well beyond what I know about the philosophy of mathematics.
Suffice it to say that a full formalist description of a theorem, such that it can be reduced to a machine proof, is hard. Take a look at "Principia Mathematica" by Whitehead and Russell. Among other things, it used logic to show that 1+1=2. (See the end of the proof at http://en.wikipedia.org/wiki/File:Principia_Mathematica_theo... - "The above proposition is occasionally useful.") That might give you a idea of what the effort looks like.
Formally, a proof is a sequence of assertions, where each one is an axiom or follows from previous ones. Humans are better at proofs because they have good and well-developed intuition; it's bit like coding in assembly vs coding in a high level language. The fact that you deal with infinite objects is not relevant.
In more concrete terms .. and I am so far outside my knowledge that I barely know what I am saying ... I read in the Coq FAQ that "The axiom of unique choice together with classical logic (e.g. excluded-middle) are inconsistent in the variant of the Calculus of Inductive Constructions where Set is impredicative. As a consequence, the functional form of the axiom of choice and excluded-middle, or any form of the axiom of choice together with predicate extensionality are inconsistent in the Set-impredicative version of the Calculus of Inductive Constructions."
In other words, proofs involving "axiom of unique choice together with classical logic" cannot be expressed in at least Coq. While it might be possible to use a machine to check tools which assume the axiom of unique choice, it would no doubt take a lot of work if one needs to build such a system from scratch.
And that is the scenario - where it's much more difficult to develop a mechanical tool than to come up with a proof that enough for humans - that I am contemplating.
For every set A and function f : A -> P(A) there exists y in P(A) such that for all x, f(x) /= y.
Proof: Define y = {a: a is not in f(a)}. If f(x) = y, then f(x) = {a: a is not in f(a)}, but this implies x is in f(x) <=> x is not in f(x), contradiction.
It does not mention infinity anywhere! It only says that there cannot be a surjection between one set and the other. We could call this situation "transfinite" but this is only a name; under the hood, this is a normal proof of properties of functions, using very natural reasoning rules. That's why I disagreed - there's nothing special in Cantor's proof from a formal viewpoint, possible concerns are of psychological/historical nature, which are not relevant to a machine.
It is true that changing foundations might require rewriting the prover. However, humans also need time to adjust to a new formal system. For example, it takes a lot of effort to get a good grasp of intuitionistic logic. This might be a concern, but ZFC is a very well-grounded common framework for mathematicians, and this is extremely unlikely to change. Perhaps calculus of constructions, as a version of lambda calculus, is closer to computation, and this is why it was chosen in Coq. I'm not sure. Mizar (another theorem-proving environment) is based on an extension of ZFC. [ZFC is untyped - everything is a set, while CoC has a rich type system.]
Small nitpick: It's not like proofs involving unique choice + excluded middle cannot be expressed in Coq; they can, but as the system is inconsistent, they have no value, as everything is provable.
NB I am a programmer and very weak in theory.
Currently, yes. But I don't see that this is necessarily true. Why do you think it is?
These two statements seem to contradict, unless you grant that the mind either fudges the proof or constructs new axioms such that the proof can be valid. Why do you assume a program can never do this?
Really? I don't see what reason we have to believe that this is true.
Do you have an example of this? I have an extremely difficult time comprehending it. Also, I was under the impression that there weren't necessarily propositions that are not algorithmically possible to reach, but rather, there are always propositions a given algorithm cannot solve.
I just meant undecidable propositions.
> Do you have an example
Maybe check out the conclusion on p.76 of this book[1] by Penrose (and the argument supporting it that begins on p.72.): "Human mathematicians are not using a knowably sound algorithm in order to ascertain mathematical truth".
His example is our knowledge that a certain computation will not halt, and the impossibility of constructing an algorithm that can prove that fact.
More flippantly, you know that you can examine the soundness of your own reasoning, but no algorithm can reach conclusions about its own correctness.
at the time there was still a school of artificial
intelligence that assumed that a big computer running a
really sophisticated program could be equivalent to a
human mind
We're talking theory, so imagine we have extremely powerful hardware, gobs of memory, understand the brain really well, and have some sort of extremely high-resolution scanning device. We could build an "emulator" that would simulate the brain's "hardware" and then load a scan of someone's brain onto it as "software". The system as a whole is just a big computer running a sophisticated program but it's equivalent to a human mind. This mind running on a computer would have the same strengths and
weaknesses as the mind had when running on a biological brain when it comes to determining the truth values of propositions in arithmetic (and everywhere else).Often times, a proof is (much) more complicated than just mixing theorems A, B, and C together to get result D. Many times proofs will require developing entirely new mathematical structures, or can be done only in steps.
As an example, a friend of mine just proved a great theorem about whether or not Hessenberg varieties can be paved by affines. Ignoring what this actually means, the proof involved firstly recognizing that a Hessenberg variety actually fits within a spectrum - it is somehow "between" other types of well- (or better-) understood varieties. These are paved by affines in (somewhat) obvious ways, and so it is natural to try to use the "between-ness" of the Hessenberg variety to construct a "between-ish" paving. This isn't a proof, but it is a direction (one that turned out to be fruitful). It would be very hard for a computer to have made this intuitive leap.
And it almost works. Except now you can't reduce things like you would like, and you need to construct multi-level fiber bundles in order to get the triviality that you want. And wait - this only works if the Hessenberg variety that we started with has such-and-such property.
So she's reduced the problem to a simpler problem. How does she know it is simpler? Intuition. A computer would have a very hard time recognizing whether or not this is actually simpler (even if it could get there). It turns out that this property holds when our Hessenberg variety is constructed from an element whose semisimple part under the Jordan decomposition is regular. So she has proved it for a huge class of varieties, but not all. Such a partial result would also be very difficult for a computer, since it isn't exactly what she set out to do. She's only partly there. But even this part is huge.
And there isn't anything hand-wavy about her argument, either. It's perfectly grounded in well-established theorems, all of which she understands the proof for. It's just that the original concept was shakey - the "between-ness". She had to work to ground it. It would have been exceptionally hard for a computer to make several of the intuitive leaps necessary to come up with the ideas for the proof in the first place.
http://en.wikipedia.org/wiki/Kepler_conjecture#A_formal_proo...
In this universe, at least...
http://www.kurims.kyoto-u.ac.jp/~motizuki/Inter-universal%20...
And the preceding three for context:
http://www.kurims.kyoto-u.ac.jp/~motizuki/Inter-universal%20...
http://www.kurims.kyoto-u.ac.jp/~motizuki/Inter-universal%20...
http://www.kurims.kyoto-u.ac.jp/~motizuki/Inter-universal%20...
Advances in computing power seem to be a more worrisome threat to RSA, especially for RSA-1024 whose factorization is probably already feasible (http://www.cs.tau.ac.il/~tromer/papers/cbtwirl.pdf). And once advances in quantum computing become reality, quantum algorithms should be able to very quickly break even RSA-2048 (http://en.wikipedia.org/wiki/Shors_algorithm).
Here's one from http://mathoverflow.net/questions/2556: There is a gamma ray telescope design using mod p quadratic residues to construct a mask. Gamma rays cannot be focused, so this design uses a redundant array of detectors separated from the mask to reconstruct directional information.
Cicidas have a cyclic life spanning a prime number of years. It is supposed that this is because a predator has harder job aligning with the cycle. http://en.wikipedia.org/wiki/Predator_satiation
I believe that the Möbius function is important in advanced physics: http://en.wikipedia.org/wiki/Mobius_function#Physics
There's a legend that generals used the Chinese remainer theorem to count soldiers.
Elementary number theory was a motivating factor and foundation for development of the whole mathematics - algebra, analysis, even logic. Did you know that proving Godel's incompleteness theorem requires using primes? http://mathoverflow.net/questions/19857/has-decidability-got... Transcendence of pi also needs primes. http://mathoverflow.net/questions/21367/proof-that-pi-is-tra.... I did not realize that earlier. Usage of primes is often invisible. Even if there was no cryptography or ECCs, it would be silly to demand practical applications from this subject - it is a foundation for almost everything in mathematics, sometimes rather concealed.
You can basically use them whenever you need a number that has as few relations to other numbers as possible.
Anyway, as math is the language we use to model the universe around us, any mathematical property is likely to be a property of the universe in some way too (if maths is a proper model).