Recently, Stephen Hartke spoke about our work on uniquely -saturated graphs, and afterwards he spoke to a very famous mathematician, who said, roughly:

“Why did you talk about the computation? You should just talk about the results and the proofs and hide the fact that you used computation.”

While this cannot be an exact quote, I believe it is a common attitude among mathematicians. While the focus is on solving problems, the use of computation is seen as a negative, so the final research papers make little mention of their computational methods. This is a **huge problem** in my opinion. While computations can report exact results, and sometimes even *prove* results, every execution is an *experiment*. It is unknown before the execution what the results will be, or how long it will take.

Computational combinatorics is a combination of mathematics, engineering, and science: We prove things, we build things, and we experiment. Since computer proofs are experiments, it is important that they be *reproducible*. Today, I want to discuss a bit about how we can improve our presentation of algorithms and computation in order to make results more reproducible.

Read the rest of this entry »