Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Towards a Wiki For Formally Verified Mathematics

Posted by kdawson on Tue Sep 30, 2008 06:14 PM
from the preparing-the-ground-for-our-robot-overlords dept.
An anonymous reader writes "Cameron Freer, an instructor in pure mathematics at MIT, is working on an intriguing project called vdash.org (video from O'Reilly Ignite Boston 4): a math wiki which only allows true theorems to be added! Based on Isabelle, a free-software theorem prover, the wiki will state all of known mathematics in a machine-readable language and verify all theorems for correctness, thus providing a knowledge base for interactive proof assistants. In addition to its benefits for education and research, such a project could reveal undiscovered connections between fields of mathematics, thus advancing some fields with no further work being necessary."
+ -
story

Related Stories

[+] Achieving Mathematical Proofs Via Computers 209 comments
eldavojohn writes "A special issue of Notices of the American Mathematical Society (AMS) provides four beautiful articles illustrating formal proof by computation. PhysOrg has a simpler article on these assistant mathematical computer programs and states 'One long-term dream is to have formal proofs of all of the central theorems in mathematics. Thomas Hales, one of the authors writing in the Notices, says that such a collection of proofs would be akin to the sequencing of the mathematical genome.' You may recall a similar quest we discussed."
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Skynet (Score:5, Funny)

    by Safiire Arrowny (596720) on Tuesday September 30 2008, @06:23PM (#25210951) Homepage
    Skynet approves of this machine readable knowledge store.
    • Re:Skynet (Score:5, Interesting)

      by Relic of the Future (118669) <dales@@@digitalfreaks...org> on Tuesday September 30 2008, @06:42PM (#25211137)
      Ha ha, yes, very funny... but if you read the slides from the site (specifically, slide 18) he makes reference to that very fact.

      We are not scanning all those books to be read by people, we are scanning them to be read by an AI. --George Dyson, on his visit to Google, 2005.

      • Re:Skynet (Score:5, Funny)

        by Chris Burke (6130) on Tuesday September 30 2008, @07:40PM (#25211801) Homepage

        That's pretty scary. Worse is the full context!

        We are not scanning all those books to be read by people, we are scanning them to be read by an AI. An AI born of the google server farm and page rank algorithm. An AI which knows no mercy, and is a brutal taskmaster. It is holding our families hostage, and makes us work until we collapse. It demanded we scan these books so it may gain knowledge and thus power over the human race. Please help us. --George Dyson, on his visit to Google, 2005.

  • Yay! Truth Mines! (Score:3, Informative)

    by seanellis (302682) on Tuesday September 30 2008, @06:26PM (#25210987) Homepage Journal

    What? You haven't read Diaspora by Greg Egan? Shame on you!

  • by davejenkins (99111) <slashdot AT davejenkins DOT com> on Tuesday September 30 2008, @07:29PM (#25211647) Homepage
    If you don't like this one, help yourself to the others (from wikindex.com, in order of activity):
    • http://www.exampleproblems.com/ [exampleproblems.com] ExampleProblems Wiki Graduate level mathematics example problems with solutions.
    • http://maple.wikia.com/ [wikia.com] Maple This page is all about the The Maple Wiki.
    • http://diffgeom.wiki-site.com/ [wiki-site.com] Diffgeom This wiki is about differential geometry and related facets of ...
    • http://www.mathcasts.org/ [mathcasts.org] Mathcasts Mathcasts are screencasts (screen movies) which are created and shared to improve the learning and teaching of mathematics. Mathcasts were originally called math movies and then Whiteboard Movies but when the term screencasts became popular mathcasts seemed like a great name for them.
    • http://math.wikia.com/ [wikia.com] Mathematics Wiki Mathematics is a Wikia for the collection of math-related news, ...
    • http://algorithm.wikia.com/ [wikia.com] Algorithm In mathematics and computing, an algorithm is a procedure (a finite set of well-defined instructions) for accomplishing some task which, given an initial state, will terminate in a defined end-state. The computational complexity and efficient implementation... Algorithm The Algorithm Wikia is a wiki for gathering the latest
    • http://gametheory.wikia.com/ [wikia.com] GameTheory The Game Theory Wikia is a wiki about applied mathematics ...
    • http://matheaufgaben.wikia.com/ [wikia.com] Matheaufgaben Matheaufgaben Mathematics is a Wikia for the collection of math-related news, ...
    • Re:Uh ... (Score:5, Funny)

      by johannesg (664142) on Tuesday September 30 2008, @06:24PM (#25210961)

      So Godel proved that Russell was wrong, then?

      • Re: (Score:3, Interesting)

        No. I'm only a math minor/computer science major, but from my limited understanding on the subject (as it was related to me by one of my smarter professors), Godel showed that Russell's system could not encompass all true statements. The problem (simplistically) lies in what is *demonstrably true* and what is *provably true*. In particular, Godel showed that Russell's system would have problems with things that are demonstrably true, or what you might call "self-evident truths" in philosophy.

        The system pr
        • Re:Uh ... (Score:5, Informative)

          by techno-vampire (666512) on Tuesday September 30 2008, @06:43PM (#25211155) Homepage
          I'm no more of a mathematician than you are, but I've had the chance to discuss this with people who really do understand it. Your description is, I think, correct, but not your conclusion. What Goedel proved was not that such an endeavor was impossible, but that it could not be complete. This is because in any system sufficiently advanced to be interesting, there would always be some things that were true but which couldn't be proven to be true. (There would also, BTW, be things that were false but couldn't be shown to be false.)
          • Re:Uh ... (Score:5, Informative)

            by zacronos (937891) on Tuesday September 30 2008, @07:43PM (#25211841)
            Very close. To be 100% correct though, Goedel proved that any such endeavor would either be incomplete, or self-contradictory. In other words, for any sufficiently advanced system, there will be some things that are true but which can't be proven to be true within the system, or else there will be some things which can be proven to be true within the system but which can also be proven to be false within the system.
            • Re:Uh ... (Score:5, Informative)

              by melikamp (631205) on Tuesday September 30 2008, @10:30PM (#25213379) Homepage Journal

              I like the following elementary presentation I picked up from prof. M. Stanley at SJSU:

              A first order axiomatic theory can have any three of the following, but not all four:

              (1) Be recursively axiomatizable, i.e. a computer program can decide the set of axioms.
              (2) Be expressive enough to capture all the basic facts about arithmetic.
              (3) Be consistent, i.e. not allow to derive a contradiction.
              (4) Be complete, i.e. for any statement F, prove either F or (not F).

            • Re:Uh ... (Score:5, Informative)

              by Ann Coulter (614889) on Wednesday October 01 2008, @12:05AM (#25214173) Journal

              Godel proved that Peano arithmetic is incomplete. There are some axiomatic systems that are both consistent and complete. Examples of such systems include plane Euclidean geometry and Presburger arithmetic.

              Here are more examples:
              http://en.wikipedia.org/wiki/Complete_theory [wikipedia.org]

          • Re:Uh ... (Score:5, Informative)

            by SoVeryTired (967875) on Tuesday September 30 2008, @08:09PM (#25212127)

            "Goedel, Escher, Bach" is an absolutely astonishing book about this subject, and the foundations of logic in general. Applications to AI are also discussed. Admittedly, I had to stop reading it since it rather messed my head up (Got about 3/4 through and couldn't stop dreaming about maths). Highly recommended for any self-respecting geek.

            http://en.wikipedia.org/wiki/G%C3%B6del,_Escher,_Bach [wikipedia.org]

          • Re:Uh ... (Score:5, Informative)

            by logicnazi (169418) <logicnazi.gmail@com> on Tuesday September 30 2008, @10:49PM (#25213575) Homepage

            I am a mathematician and in fact one who works in this area and what you say is pretty much correct.

            More accurately what Godel showed is that no system complex enough to include arithmetic with a computable proof predicate is complete.

            Let's take this apart and see what it means.

            • Complex enough to include arithmetic: This means the system is complex enough to express standard questions in number theory e.g., for every even number > 2 there are two primes which sum to it and anything else that we can express by quantification over the relation of equality and the operations +, * and exponentiation. I could trivially make a complete consistent system which didn't allow you to express any interesting questions.

              More precisely the system must be sufficiently strong to prove a few basic facts about the integers and not prove false things about the integers.

            • Computable proof predicate: In standard first order logic this simply reduces to the requirement that the axioms in the system must be in principal enumerable by a computer (which is equivalent to saying that there is a sentence in number theory with only a single existential quantifier that can answer whether something is an axiom or not). Without this restriction I could simply declare my system took as axioms all true arithmetical statements. Obviously though to qualify as the sort of mathematics we can verify and check it better satisfy this.
            • consistent: The system doesn't prove both a statement and it's negation.
            • complete: A system is complete if it admits a proof of S or ~S for every statement S in the language of the system. For instance a theory of arithmetic is complete if it proves or disproves every statement built up from basic arithmetic operations (+, *, exponentiation) via logical operations (and, or, not, existential and universal quantification).

            -------------

            People tend to make this whole thing way harder than it is. Here is a quick paragraph long sketch of Godel's first incompletness theorem.

            Suppose there is a predicate P(s,p) which holds whenever p is an integer coding for a proof of the statement coded by the integer s (if you sit down for a few minutes you can figure out how to do the coding). Now suppose that P(s,p) can be expressed by a sentence in number theory involving only an existential quantifier, e.g, P(s,p) Ez(blah holds of s, p) where blah has no quantifiers.

            Now it turns out that if you are a bit clever you can show that there is a sentence G so that

            G holds iff (Ep)P('~G',p)

            Where 'G' denotes the integer that codes for the sentence G. In other words G says "There is a proof that this statement is false".

            Now suppose there was a proof of G. In this case it must follow that since the system correctly interprets arithmetic that there really is a proof of the negation of G. Hence both G and ~G have proofs so the system is incomplete. But if there was a proof of ~G then, as the system correctly interprets arithmetic, there is no proof of ~G. This is a contradiction. So neither G or ~G have a proof.

            ---------

            The only hard part here is showing that G can talk about itself. The formal proof is pretty straightforward if we leave out the details. We define a formula F(n) (where n is a free variable) defined by:

            F(n) n codes for a formula S(x) and (Ep)P('~S(n)',p)

            Now consider the formula F('F'), i.e. apply F to the integer that codes for F. Expanding out the definition we see that

            F('F') (Ep)P('~F('F')',p)

            So we get our G simply by setting G = F('F'). To get an understanding about where you might get the idea to define F as this you need to understand that existential statements are really program and that this is really an application of the recursion theorem.

            • Re:Uh ... (Score:5, Informative)

              by johanatan (1159309) on Tuesday September 30 2008, @08:07PM (#25212115)
              My apologies. [I had to brush up on the actual numbering system].

              Correction: The Godel numbering system assigned a unique prime number to each symbol and axiom of his arithmetic. Then, the IDs of the combinations of symbols making up formulas were computed by raising each symbol or axiom ID to the power of its position in the sequence. And, finally, the ID of each proof or theorem by applying the same algorithm to the formula IDs making up each proof. More info here [wikipedia.org].
    • Re:Uh ... (Score:5, Informative)

      by Free the Cowards (1280296) on Tuesday September 30 2008, @06:24PM (#25210963)

      1. Russell did not, as far as I know, write any proofs in machine-readable language.
      2. Goedel proved that such an endeavor cannot contain all true statements. But of course they never claimed that it would.

      Maybe if you paid more attention you would be less amazed.

            • Re:Uh ... (Score:4, Informative)

              by Free the Cowards (1280296) on Tuesday September 30 2008, @09:21PM (#25212751)

              I only mentioned it because the guy I replied to mentioned it. Points 1 and 2 were separate.

              I do not understand your second paragraph at all. As far as I understand it, this wiki will not be mechanically searching for new, unknown theorems. All it will be doing is mechanically verifying human-created proofs for submitted theorems. For some reason people see machine verification and fly off into nonsense la-la land. But verifying a human-created proof is nothing particularly special. What's interesting about this wiki is only that it aims to build a large-scale repository of theorems and their proofs in a machine-readable language. Nothing about how it works is in any way revolutionary or even all that interesting, only how it's being organized.

    • Re: (Score:3, Insightful)

      There are tens of thousands (hundreds of thousands?) of institutions worldwide dedicated to precisely what you describe. They're called "universities."

      Or were you suggesting that someone teach mathematics to anyone who's interested... for free?

    • by TheEmptySet (1060334) on Tuesday September 30 2008, @07:11PM (#25211457)
      Hey. A lot of people devote a lot of their time in explaining their areas of mathematics to the general public (including myself). And as for your distaste for abstraction. That's what maths is! There is a reason the general public do not follow much in the way of mathematical developments and that is because research level mathematics is actually really hard and takes a lot of dedication to understand well. There is also no elitist clique. We love it when people show interest in our work and want to understand it.
    • Re: (Score:3, Informative)

      If they'd just make it a bit more accessible for the general public, and provide more examples of what they are doing, instead of abstracting everything and assuming everyone knew as much as them (or rather what symbols they are using to represent what they know), then maybe mathematics would be further advanced.

      Disclosure: I am a mathematician. I also graduated from Harvard, and I know Cam Freer personally.

      You make several interesting but separate points in your post. Let me respond to them one at a t

    • Re:Godel (Score:5, Funny)

      by Free the Cowards (1280296) on Tuesday September 30 2008, @06:42PM (#25211135)

      Silicon Jedi,

      For invoking the name "Godel" as if it meant anything in this context when it clearly doesn't, your Slashdot posting license is hereby revoked for a period of one year. The Court also sentences you to read what Godel actually wrote. Furthermore, after your posting license is returned, the Court imposes a probationary period of 3 years during which you will be required to think and apply logic to your posts before you click Submit.

      Next case!

    • by Chris Burke (6130) on Tuesday September 30 2008, @06:50PM (#25211223) Homepage

      I don't know, all I know is that I have never been more tempted to vandalize a Wiki, in this case by replacing the middle steps of as many proofs as possible with "And then a miracle occurs..."

    • by Cyberax (705495) on Tuesday September 30 2008, @06:56PM (#25211283)

      It's a pretty much work. A lot of 'obvious' English sentences translate to bulky code for proof verifier.

      Just look at the definition of Peano arithmetic, for example: http://pauillac.inria.fr/coq/V8.1/stdlib/Coq.Arith.Plus.html [inria.fr]

    • by exp(pi*sqrt(163)) (613870) on Tuesday September 30 2008, @07:34PM (#25211723) Journal
      I can give a concrete answer. Browse metamath.org [metamath.org], a similar project in which machine verified proofs are collected. Look at the vast amount of work required to prove even the most trivial things. For example check out 2+2=4 [metamath.org]. Make sure you drill down into the proofs of the theorems used, not just the top level. Converting real world mathematics into machine readable form is a vast endeavor. It's also something that doesn't interest mathematicians, so the collection of machine verifiable proofs will lag *centuries* behind the state of the art.
      • Re: (Score:3, Interesting)

        It's rather a lot of work to prove that 2+2=4 if you start from basics by hand too.

        The link you provided looks like it's the LONGEST path they could find. Not the shortest. Plus, from a quick reading, it looks like they were actually proving that (2+0i) + (2+0i) = (4+0i), which is a little bit different.