1
$\begingroup$

In A Discipline of Programming, Dijkstra wrote:

Two circumstances have changed the scene since then.* The one is the insight that, even in the case of fully deterministic machines, program testing is hardly helpful. As I have now said many times and written in many places: program testing can be quite effective for showing the presence of bugs, but is hopelessly inadequate for showing their absence. The other one is the discovery that in the meantime it has emerged that any design discipline must do justice to the fact that the design of a mechanism that is to have a purpose must be a goal-directed activity. In our special case it means that we can expect our post-condition to be the starting point of our design considerations. In a sense we shall be "working backwards".

*[i.e., since the time of irreproducibility/indeterminism (real bugs!) in computation]

A Monte Carlo algorithm is only partially "a goal-directed activity": We know very little about how the algorithmic form of the pseudorandom number generator relates to the ultimate goal of the Monte Carlo algorithm.
(which, for example, might be computing the area of a circle)

Thus, it would seem Dijkstra would be opposed to Monte Carlo algorithms, either for problem-solving or for testing, because it is unclear what the algorithmic form of a random number generator has to do with what Monte Carlo tasks are designed to accomplish.

$\endgroup$

closed as off-topic by D.W. Sep 7 '16 at 6:11

  • This question does not appear to be about computer science within the scope defined in the help center.
If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    $\begingroup$ This is perhaps more relevant at history of science and mathematics $\endgroup$ – vonbrand Mar 20 '16 at 23:52
  • $\begingroup$ @vonbrand Yes, perhaps $\endgroup$ – Geremia Mar 21 '16 at 16:28
  • $\begingroup$ @DavidRicherby Does my added explanation help? $\endgroup$ – Geremia Mar 21 '16 at 16:48
  • $\begingroup$ @Geremia It does, yes. I'm not sure I agree that MC algorithms aren't "goal-directed" but I understand the question, now. $\endgroup$ – David Richerby Mar 21 '16 at 17:25
  • $\begingroup$ @DavidRicherby MC algorithms are goal-directed, but in a weaker sense, it seems. It seems Dijkstra would think that MC algorithms are the least ideal, since the connection between the algorithm and the goal isn't as clearer. $\endgroup$ – Geremia Mar 21 '16 at 18:48