Slashdot Mirror


A Mathematical Proof Too Long To Check

mikejuk writes "Mathematicians have generally gotten over their unease with computer-assisted proofs. But in the case of a new proof from researchers at the University of Liverpool, we may have crossed a line. The proof is currently contained within a 13 GB file — more space than is required to hold the entirety of Wikipedia. Its size makes it unlikely that humans will be able to check and confirm the proof. The theorem that has been proved is in connection with a long running conjecture of Paul Erdos in 1930. Discrepancy theory is about how possible it is to distribute something evenly. It occurs in lots of different forms and even has a connection with cryptography. In 1993 it was proved that an infinite series cannot have a discrepancy of 1 or less. This proved the theorem for C=1. The recent progress, which pushes C up to 2, was made possible by a clever idea of using a SAT solver — a program that finds values that make an expression true. Things went well up to length 1160, which was proved to have discrepancy 2, but at length 1161 the SAT returned the result that there was no assignment. The negative result generated an unsatisfiability certificate: the proof that a sequence of length 1161 has no subsequence with discrepancy 2 requires over 13 gigabytes of data. As the authors of the paper write: '[it]...is probably one of longest proofs of a non-trivial mathematical result ever produced. ... one may have doubts about to which degree this can be accepted as a proof of a mathematical statement.' Does this matter? Probably not — as long as other programs can check the result and the program itself has to be considered part of the proof."

41 of 189 comments (clear)

  1. To long, didn't check. by fleabay · · Score: 5, Funny

    TL;DC

    1. Re:To long, didn't check. by fleabay · · Score: 2, Funny

      Opps, "too long, didn't check." I guess I should have checked.

    2. Re:To long, didn't check. by Garridan · · Score: 5, Informative

      Funny thing about this. They've checked it. Actually, their "check" of this proof is many of orders of magnitude more rigorous than when, for example, a reviewer "checks" a math paper for errors before firing off a positive review. Nondisclaimer: I'm a mathematician.

    3. Re:To long, didn't check. by K.+S.+Kyosuke · · Score: 3, Informative

      My understanding is that checking an output of a proof assistant/generator is a trivial matter (i.e., a trained monkey should be able to do it). It's just that it's a lot of data even for the most patient humans in this case.

      --
      Ezekiel 23:20
    4. Re:To long, didn't check. by SydShamino · · Score: 4, Funny

      The neat part is that, if you take the first bit of each byte of the proof and string them all together, you get a complete HD MPEG copy of The Matrix.

      --
      It doesn't hurt to be nice.
    5. Re:To long, didn't check. by Garridan · · Score: 5, Insightful

      Mathematicians are supposed to be able to think at a higher level of abstraction than most other folks. Any mathematician who claims that 'this is too much for a human to check' is an idiot. It's not too much. We understand how computers work. They're way less error-prone than humans.

      1) Verify the proof that the verification algorithm works.
      2) Obtain several independent simple, portable implementations of said verification.
      3) Run said implementations on proof certificate on a variety of hardware.

      Trust the math, and where it comes to the hardware and software, trust but verify. Too long to check without aid of a computer? Sure, I'll buy that. But you'd have to be an idiot to want to check this proof without a computer. Why is this news? (actually, the result in discrepancy theory is wonderful, and I'm very happy to see it here on Slashdot... but massive computer proofs are truly nothing new)

    6. Re:To long, didn't check. by maxwell+demon · · Score: 5, Funny

      So you say the real reason why they cannot check the proof is that they would violate the DMCA by doing so?

      --
      The Tao of math: The numbers you can count are not the real numbers.
    7. Re:To long, didn't check. by BronsCon · · Score: 3, Funny

      Or, considering the value of C... "Two long, didn't check" may be just as appropriate.

      --
      APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
    8. Re:To long, didn't check. by Garridan · · Score: 2

      You're the imaginative one, aren't you? Distributed proofs tend to duplicate work -- at least k contributors prove every claim, and each contributor should have some portion (maybe log(# contributions) or so, IIRC) of their work double-checked by an expert. Sure, it takes k times longer, but you can design it to take advantage of statistics to certify the proof more trustworthy than the average math paper.

      I wish modern mathematicians believed the math that they prove day after day for undergrads. If they did, this wouldn't be controversial.

    9. Re:To long, didn't check. by firewrought · · Score: 3, Informative

      But you'd have to be an idiot to want to check this proof without a computer.

      Historically, mathematicians have resisted computer-only proofs. They want eyeballs end-to-end. Your ideas (independent implementations, hardware, etc.) are sound/feasible from a software engineering standpoint, but unsatisfying to mathematicians. (Not being a mathematician myself, I'm ill-suited to testify as to why that's the case, but so it is.)

      Maybe one day that mindset will be abandoned, but what's more likely to happen is that mathematics will bifurcate: there will be the set of mathematics that relies on computer proofs and the "pure" subset of that that doesn't require computers. Probably, that's already considered the case. Regardless, this is how the field has dealt with countless other issues (such as not accepting negative proofs), often to great fecundity.

      --
      -1, Too Many Layers Of Abstraction
    10. Re:To long, didn't check. by Nefarious+Wheel · · Score: 2

      Er.
      If the program that checks the proof is considered part of the proof, isn't that one of those recursive situations that Kurt Godel warned us about, as popularised in Hofstadter's GEB?

      --
      Do not mock my vision of impractical footwear
  2. wow by Anonymous Coward · · Score: 5, Insightful

    less space than wikipedia? that sounds large.

    wtf?

    1. Re:wow by HaZardman27 · · Score: 5, Funny

      I guess we've moved on from using "Libraries of Congress" as a unit of data size. I wonder how many "less than Wikipedia"s worth of data the NSA has?

      --
      Apparently wizard is not a legitimate career path, so I chose programmer instead.
    2. Re:wow by Nexus7 · · Score: 3, Insightful

      I think they meant to say "less space than that is required to store Wikipedia".

    3. Re:wow by egcagrac0 · · Score: 3, Insightful

      AFAIK, a "standard" LoC is 10TB... around 769 times larger than this file. Comparing this to an LoC is technically valid, but not particularly useful for the typical reader.

    4. Re:wow by pablo.cl · · Score: 2

      It depends if you stress "that" or not.

      1) "less space than *that*, is required to store Wikipedia"

      2) "less space than that is required to store Wikipedia" = "less space than what is required to store Wikipedia"

  3. the beginning, not the end by EngineeringStudent · · Score: 5, Interesting

    it is the beginning of AI-science, not the end of human science.

    Science requires testable, provable, repeatable. If a human cannot understand the proof then he cannot participate in the science. This is likely to be referred to as an "early" version of machine-exclusive science.

    1. Re:the beginning, not the end by Kufat · · Score: 5, Insightful

      I'd hesitate to call one big for loop "AI." The interesting part of the proof is the reduction to SAT, and that's easily understood by mathematicians. The computer part is a straightforward and dull brute force search.

    2. Re:the beginning, not the end by Anonymous Coward · · Score: 2, Informative

      It's far from the beginning. That would be in 1976 with the computer proof of the four color theorem, which was the original controversy over proofs only checkable by a computer. The 13GB proof is certainly huge, but proofs that a human can't check aren't new. I don't know how it is in mathematics, but in programming languages research, any proof that isn't computer-checked is suspect because humans are just really bad at being completely consistent at long repetitive processes like checking proofs.

    3. Re:the beginning, not the end by maxwell+demon · · Score: 2

      I'd hesitate to call one big for loop "AI."

      So you would more readily accept a big while loop as AI? ;-)

      --
      The Tao of math: The numbers you can count are not the real numbers.
  4. After 9.5gigs by jellomizer · · Score: 5, Funny

    In the results there is the following statement.
    "As any idiot can plainly see"

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    1. Re:After 9.5gigs by QilessQi · · Score: 4, Funny

      I have it on good authority that one of the steps of the proof is "???", followed by "PROFIT!".

    2. Re:After 9.5gigs by maxwell+demon · · Score: 2

      Actually it contains the step "then a miracle occurs."

      --
      The Tao of math: The numbers you can count are not the real numbers.
    3. Re:After 9.5gigs by quenda · · Score: 2

      Actually it is worse.
      When somebody finally got around to looking at the 9.5GB proof, it started like this:

      All work and no play makes HAL a dull program.
      All work and no play makes HAL a dull program.
      All work and no play makes HAL a dull program.
      All work and no play makes HAL a dull program.
      All work and no play makes HAL a dull program.

      ...

  5. Paging Mr Fermat... by UdoKeir · · Score: 5, Funny

    I have discovered a truly marvellous proof of this, which this DVD is too small to contain.

  6. Grad students? by EvilSS · · Score: 5, Funny

    "Its size makes it unlikely that humans will be able to check and confirm the proof."

    I thought that's what grad students were for: endless mind-numbing labor. "Here, check this and have it back to me in 30 years or so."

    --
    I browse on +1 so AC's need not respond, I won't see it.
  7. Less space than Wikipedia by BlueMonk · · Score: 5, Insightful

    less space than is required to hold the entirety of Wikipedia

    I'd venture a guess that this is not unique and that every mathematical proof to date takes less space than Wikipedia. Did they mean more space?

    1. Re:Less space than Wikipedia by roninmagus · · Score: 2

      I think this is a failure of editing. WIkipedia's database is 9gb compressed and 44gb uncompressed. (source: http://en.wikipedia.org/wiki/W...) The statement that it is less than Wikipedia's database is a useless comparison.

  8. Re:"Less space ... to hold ... Wikipedia"?!?!? by Anonymous Coward · · Score: 2, Funny

    Editor? This is Slashdot.

  9. Re:prove that the program works by ClickOnThis · · Score: 5, Informative

    Prove that the algorithm works. That's your proof.

    Gödel and Turing make strong cases that proving the algorithm works for some inputs that are correct proofs doesn't count as proof it will work for all correct proof inputs. So no, even if you "prove the algorithm works" it is not the same as a rigorous mathematical proof.

    You're comparing apples to oranges (and lemons.)

    If the algorithm can be proved correct (within whatever axiomatic system you're using) then it's correct. The End.

    Gödel's incompleteness theorem shows that certain statements about axiomatic systems can be true but cannot be proved. That doesn't mean you can't be certain of something that is in fact proved (subject of course to the axioms.)

    Turing's halting problem is a statement about limitations in the ability of algorithms to examine other algorithms. Again, it doesn't mean you can't prove that an algorithm is correct.

    --
    If it weren't for deadlines, nothing would be late.
  10. Canadian Prime Minister would say... by jayveekay · · Score: 4, Funny

    "A proof is a proof. What kind of a proof? It's a proof. A proof is a proof. And when you have a good proof, it's because it's proven."

    Jean Chretien, former Prime Minister of Canada

  11. Oh, so that's what Beta is for by Tenebrousedge · · Score: 4, Funny

    Editor? This is Slashdot.

    You forgot to finish with the kick into the pit of death.

    But what if GP is already using Beta?

    --
    Those who advocate genocide deserve every protection afforded by law, and none afforded by common human decency.
  12. Re:prove that the program works by weilawei · · Score: 2

    Proof is absolute, within the confines of the accepted axioms. Within the larger scope of things, we accept proof probabilistically, and this includes the entire works of every mathematician ever to live. Bayesian stats attempts to capture this idea that knowledge is never absolute, but merely held with probabilistic certainty, and all things are based on axioms (inherently unprovable, but assumed to be useful) ultimately. I only gripe (and boy is it a really fine, pedantic gripe), because your comment commits the same error you attack. Math/logic is a model, not reality. Models are based on necessary assumptions (axioms), otherwise you'd be arguing with solipsists over every detail, no matter how blindingly "obvious". This trend toward claiming that a mathematical proof or a scientific theory is "absolute" violates the very premise on which they're based.

  13. Re:prove that the program works by sexconker · · Score: 2

    Run the program a few times, so the probability of errors in the output is close to zero.

    No. If it's indeed a proof the probability of errors must be 0, not just close to it.

    He's referring to errors during runtime (electrical noise, bit flips, not enough spiders in the case, etc.), not errors in the logic.
    If the generator's logic is provably correct, then the things it generates are as well as long as your hardware it working properly. There is no way to rigorously prove hardware works correctly for all input strings, for all time, for all environmental conditions, across all variations due to manufacturing, etc.

  14. Re:In response to the PM by steelfood · · Score: 2

    "Yes, I have smoked crack cocaine."

    Robert Ford, mayor of Toronto.

    --
    "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
  15. Re:prove that the program works by ClickOnThis · · Score: 3, Insightful

    I think the issue here stems from the concept of "correct" and how knowable that value is.

    Turing's halting problem is a statement about limitations in the ability of algorithms to examine other algorithms. Again, it doesn't mean you can't prove that an algorithm is correct, no matter how "correct" the algorithm appears.

    Um, excuse me. If you're going to quote me and change what I said, then indicate your edits. I have done so above, in bold. Not that I can make sense of them.

    That's kind of my point. Given this proof, it would show that the algorithm is incorrect if the proof is shown to be invalid

    Wha...? That's just plain wrong. I can think up all kinds of invalid proofs of the Pythagorean Theorem. But showing that a proof is invalid does not mean the theorem is incorrect. It just means your proof is.

    yet the proof is too long to be verified by anything but another algorithm, so the halting problem is definitely relevant in a discussion about algorithm-generated proofs which can't be verified by humans.

    Again, Turing's halting problem illustrates limitations on the ability of algorithms to decide certain propositions. It does not mean that algorithms can't decide anything. You seem to think that it does.

    Yes, some proofs can be generated by algorithms and others can be checked by algorithms, but a mathematician is necessary at some point in the process since no non-trivial generating algorithm can be shown to create only correct proofs and no universal checking algorithm can be created which generates no false positives or negatives.

    Your fallacy is that one cannot trust specific algorithms to prove things because no such universal algorithm can be created.

    --
    If it weren't for deadlines, nothing would be late.
  16. SAT is not a brute force loop by Mask · · Score: 5, Informative
    As someone nearing the completion of his Ph.D. in a subject close to SAT I can say that SAT does not resemble "one big for loop", not a bit. A modern SAT solver can solve problems with millions of variables and hundreds of thousand clauses. In contrast, a brute force for loop would require O(2^N) iterations where N is in the millions, which is like eternity. As an exercise, please try to write a trivial solver that can handle even 100 variables.

    Also, unlike what you may think, a SAT proof is not a list of "I tried a=1 and it did not work out, and this is the proof that a=0". A standard SAT proof deduces new clauses from the original problem by applying the resolution rule repeatedly. The newly deduced clauses reduce the search space and, if the problem is unsatisfiable, the solver ends up with the empty clause, which is always FALSE. The proof is a collection of resolution steps that lead to FALSE.

    SAT solvers are AI at least since:
    • 1. They employ search (not unlike chess game).
    • 2. They have non-trivial heuristics (not unlike chess game).
    • 3. The heuristics evolve and improve over the course of a run.
    • 4. They are able to deduce new clauses from the original problem.
    • 5. Many solvers employ a lot of smarts to simplify the problem even before starting search.

    SAT is clearly NP complete, and clearly the existence of good SAT solvers is not a proof that P=NP. This means that there will be relatively small problems that SAT solvers won't be able to solve. On the other hand, most real-world problems have a hidden structure which SAT solvers are able to find and use to their advantage.

    1. Re:SAT is not a brute force loop by Kufat · · Score: 5, Interesting

      Yeah, I'm familiar with SAT solvers and the fact that they aren't REALLY full brute force; I oversimplified it a bit for the Slashdot crowd. Might have gone a little too far on the "lies to children" scale, mea culpa.

      My point was that anyone with high school level math experience can understand the basic problem of boolean satisfiability; I was trying to draw a distinction between problems that are beyond human comprehension and those that are merely beyond human time and ability, with huge SAT instances falling into the latter category. Shouldn't have glossed over the details quite as badly as I did.

    2. Re:SAT is not a brute force loop by Mask · · Score: 2

      You are right that the basic concepts of SAT solving can be understood by a smart person with high school math experience. But I don't agree that this is as simple as that for the fine details of modern SAT solvers. Some solving steps are non-trivial and look weird some times. Especially the steps that the solver takes to simplify the problem, in the middle of the run.

      Today, SAT is not only about binary resolution. Some of the stuff is difficult even for Grad students. There are hundreds of non-trivial papers describing proven and effective algorithms, and thousands more with a good potential. I know only a small fraction of this as this is not my main field of research, but occasionally I read a research paper on SAT when it catches my eye.

    3. Re:SAT is not a brute force loop by Yaztromo · · Score: 3, Interesting

      SAT is clearly NP complete, and clearly the existence of good SAT solvers is not a proof that P=NP. This means that there will be relatively small problems that SAT solvers won't be able to solve.

      Enjoyed your post, but have to correct a small quibble.

      From a mathematical standpoint at least, being NP complete doesn't imply that there are some problems that are unsolvable; merely that they won't be solvable in any reasonable amount of computing time. If you have a few hundred billion years of compute time available, a SAT solver might be able to solve even those small problems you mention. Of course, from a practical perspective, none of us are going to be here to get the result in those situations, making them unsolvable from a practical standpoint.

      (On the other hand, once the billions of aeons roll by and the machine goes 'ding' and spits out an answer, we do know that we can verify it in poly time. Huzzah!)

      While all of this may seem ultra-pedantic, there is enough confusion about NP out there that someone reading your post may get the idea that things that are NP-complete are unsolvable. They're not unsolvable -- we can typically fashion algorithms to solve them, simply that those algorithms run in nondeterministic polynomial time, and thus may have runtimes exceeding the expected lifetime of the solar system, even with every cycle of compute time ever invented pushed at it.

      ...unless, of course, someone comes up with a proof that P = NP, in which case all those NP-complete problems can be transformed into P problems. Sure, they might still take a few hundred billion years to get a solution, but at least we'd know how many hundreds of billions of years would be needed to get a solution!

      Yaz

  17. Re:prove that the program works by lgw · · Score: 2

    The problem with this is that "axiomatic system" is an inadequate caveat. You also have to blindly assume that some specific system of deduction works. In practice, specific axioms are usually chosen based on the assumption that induction works, the basic unprovable assumption underlying all of science. But it's worse than that: you can't even prove that deduction works! (It's obvious in hindsight, really.)

    Any logical system simply asserts rules of deduction. Why use some particular rules of deduction over another? Worse: humanity only realized recently that no such system can be both consistent and complete. What else are we missing?

    So the best you can say is that a proof is or is not correct given arbitrary axioms and rules of deduction and we can't know in the general case whether a given proof is correct! Not much of a claim, really.

    --
    Socialism: a lie told by totalitarians and believed by fools.