4 ms·
I think this guy has mathematics totally wrong. Maths just doesn't work today the way it did in Newton's time, and even back then people weren't satisfied with
by cchooper 18y ago
I think this guy has mathematics totally wrong. Maths just doesn't work today the way it did in Newton's time, and even back then people weren't satisfied with Newton's proofs, but they lacked an alternative so they had to use them anyway. If the author had his way, we would have refused to accept Newtonian physics for two centuries! Could you imagine the damage that would have done?
> [A]ny realistic mathematical proof will leave out a great many steps, which are considered to be the "required background knowledge"
Computer science papers are different how? Computer science != programs!
> [T]he inference rules are not always specified accurately, or are not believable if they are. This is why you will sometimes read a mathematical proof and say "I understand the reasoning, but I just don't buy it"
I think this guy just isn't too hot at mathematics. Omitting a trivial step (or domain specific knowledge) is not a lack of rigour, but a courtesy to the reader. The details can always be filled in cleanly. If you ever see a modern mathematical proof that is accepted by all mathematicians, but you don't "buy it", then I can assure you that it's you that's at fault, not the proof.
Oh, and computer science papers never leave out trivial steps or assume domain knowledge? Not the papers I've read. Once again, CS != programming!
> This is reminiscent of Whitehead and Russell's Principia Mathematica where hundreds of pages pass until the authors can prove that 1 + 1 = 2.
Surely Principia is a reductio ad absurdum of the argument that everyone should always spell out all the steps!
- tokenadult 18y agoI think this guy just isn't too hot at mathematics. Omitting a trivial step (or domain specific knowledge) is not a lack of rigour, but a courtesy to the reader. The details can always be filled in cleanly. A very astute comment. In principle, mathematical proofs are supposed to be every bit as completely described as computer programs, but perhaps not as explicitly expressed. Edsger Dijkstra used to refer to mathematical proofs as a model for computer programming. http://en.wikipedia.org/wiki/Program_derivation http://en.wikipedia.org/wiki/Program_derivation
- derefr 18y agoI'm not a mathematician, but I can imagine some sort of "library of derivation" whereupon, in order to prove something, say, based on arithmetic, you include (the language directive, not the verb) the specification of arithmetic derived in Principia Mathematica. Then the proving system follows your logic to its logic, and then to the logic they relied on, and so on, until everything is completely explicit. Basically, formal execution of bibliographies.
- kragen 18y agoDijkstra also used to talk about how computing science was a particularly difficult branch of mathematics, basically for the same reason that Vanier is asserting; he recommended that only particularly good mathematicians should switch to computing science, leaving the mediocre mathematicians to what they were already doing.
- cabalamat 18y ago> Oh, and computer science papers never leave out trivial steps or assume domain knowledge? That's irrelevant. The guy's argument is that computer programs don't leave out information: "If all this information isn't available in some form, the program simply will not work, as the interpreter/compiler will not know what to do with the program. This forces a certain intellectual honesty on the process of executing a program; nothing can be left unspecified." Clearly, computer science papers are written by humans and will typically lack rigour, which has both advantages and disadvantages. Human communication can contain bullshit, but you can't bullshit a computer.
- cchooper 18y agoHis conclusion is that computer science is more rigorous than mathematics. His argument is that programs written for computers are more explicit than proofs written for humans. The conclusion and the argument don't match up at all. Computer science, as a subject, is no more rigorous than mathematics.
- jamii 18y agoA mathematical proof is a series of steps each of which the listener is confident they could prove to be correct. The more difficult or surprising a result the more steps you will have to add to convince the listener. Similarly when you are writing a program you don't know the exact inner workings of every function you call. You should, however, be confident that they work and that you could understand them if you need to. The source for a computer program omits plenty of contextual information thats needed to make it meaningful. The only completely unambiguous interpretation of the program is the machine code which is analogous to the proofs in the principia mathematica. Its nice to know how it works in principle but you dont want to work with it unless you really have to.