Hi Bengt and Simon, zimoun <zimon.touto...@gmail.com> writes:
> Note that some people are calling for bit-to-bit scientific > reproduction. I am not. Because the meaning of “same” or “equal” I am. Not as a goal in itself, because in the larger scientific context it's robust replicability that matters, not bit-for-bit re-execution. And yet, the latter matters for two reasons : - It's verifiable automatically, making it cheap and fast to check. No need to bother an expert for a qualified opinion. - If you hit a case of non-replicability (scientifically relevant differences in two computations that everybody expects to yield equivalent results), then it is nearly impossible to investigate if the individual computations are not bit-for-bit reproducible. Making scientific computations bit-for-bit reproducible is the moral equivalent of keeping a detailed lab notebook: doing your best to tell others exactly what you did. > conclusions hold. Again, transparency and full control of the > variability are fundamental here. How to argue if they are not > satisfied? Exactly, that's very similar to my second point. Or, in Bengt's formulation: > The details of Fortran version or Julia/Clang or guile > pedigree only really come into play for forensics looking > for where the abstract was implemented differently. When the forensics are called in, then... > Thus far, "show me the code" is the usual way to ask someone > what they did, and guix makes is possible to answer in great > detail. ... "show me the code" is not sufficient. You must also be sure that the code you look at is really the code that was run. And that's the role of bit-for-bit reproducibility. Cheers, Konrad.