If:

- program is stronger than proof
- I show the program
- I show the demo

then wtf is the article good for?

**UPDATE:** at figshare, they think about that. Great!

**UPDATE 2:** for no particular reason, here is an accompanying short video done with the program

**UPDATE 3:** See “Publish your computer code: it is good enough” by Nick Barnes, Nature 467, 753 (2010) | doi:10.1038/467753a

“I accept that the necessary and inevitable change I call for cannot be made by scientists alone. Governments, agencies and funding bodies have all called for transparency. To make it happen, they have to be prepared to make the necessary policy changes, and to pay for training, workshops and initiatives. But the most important change must come in the attitude of scientists. If you are still hesitant about releasing your code, then ask yourself this question: does it perform the algorithm you describe in your paper? If it does, your audience will accept it, and maybe feel happier with its own efforts to write programs. If not, well, you should fix that anyway.”

____________________________________________________________

“In theory, there is no difference between theory and practice. But, in practice, there is. ” – Jan L. A. van de Snepscheut

The problem I see is the potential problem between intention and implementation. Just because you have a (computer) program does not mean it embodies everything you are intending and if it is supposed to be the source of “insight” things might get lost in translation over implementation specifics, shortcuts, and hidden optimizations. Not everyone is a programmer and (even if you were) reading code is not always as linear or straight forward as a written document explaining things outside of the scope of the chosen coding technique or language from the demo.

I don’t agree, there is a recent trend in math saying that programs are always to be preferred to proof, because the level of rigour is greater. Even more, a solution of a problem in the form of a program is always better than any proof on paper,say, because more constructive. You can always deduce the proof from the program. I shall look for references, that’s a long discussion (involving pros and cons from constructive mathematics to type theory).

So, indeed, programs are better than proofs.

It is not true that math proofs are easier to read than programs. A mathematician forms on a time scale comparable to the one of a musician. So, yes, for a formed mathematician, if the proof fails in his area of expertise then the proof is more easy to understand than the program.

The only really valid argument pro proof is social, or math is an extremely social activity, just like music, there are lots of shared things in the air when you communicate a proof.

But the question is: what is the article good for, compared with the program and the demo, which can be checked even if you don’t understand the proof?

The forced answer: for nobody else than bureaucrats.

Finally the real point I want to make is that in all these screamings and shoutings about the fact that legacy publishers are useless, THE REVOLUTION ALREADY HAPPENED: in github and alike.

It would be good to move the discussion in that direction, but as with proofs, people like to discuss as a social activity more than for achieving a goal.

A necessary addition: I’m a mathematician, not a programmer, so I speak about programs which have an interesting mathematical content, without being difficult to understand from a pure programming point of view.

The program I allude to is very simple from a programming point of view, there is no clever programming technique involved. The questions are mathematical, for example what is the meaning of the all_node_atom field for the ports of nodes, with numbers from 0 to 5? There is a beautiful math explanation for this, showing that the graph rewrites arrange naturally in a symmetric 6X6 matrix with 15 positions occupied by the moves and with 21 empty positions.

Then again I doubt very much that the assistant of the bored scholar asked to review the article will dedicate enough brain time to appreciate that part of the proof, unless it gives him or her a direct advantage, like the solution to a hard conjecture, or anything with some commercial value in the academic world.