Algorithms and Their Implementations


As I taught my students the Sieve of Eratosthenes, I described the sieve verbally, then I had them "run" the sieve on paper, then program it in Visual Basic. And as I did so, I contemplated, "What is the sieve itself, apart from its implementations?"

This of course is but one more version of the problem that Plato and Aristotle grappled with, on the relation of the forms to their particulars. Plato's approach was to regard the particulars as inferior "copies" of the forms, which tended to lead to a contempt for the world of particulars, and Gnostic ideas like the creation of the sensible world by an evil demiurge. On the other hand, Aristotle emphasized the particulars, leading him to posit a God who was so totally removed from the world that He did not even know it existed.





The problem, it seemed to me as I contemplated this matter, is that each view is one-sided, and treats the algorithm and its implementations as though they could be pulled apart. But the implementations are meaningless except as implementations of the form. We might understand this by saying that the "algorithm itself" is the generative source of the implementations. But it is not something different from those implementations, nor did it stamp them out, as though on an assembly line. We might say the implementations of the form are one in being with the form, and that they are begotten, not made by it.

Furthermore, we finite beings are only able to perceive the form itself through the implementations. There is simply no way to convey to anyone else what the generative form of the algorithm is without pointing them to the form fleshed out in an implementation, or, we might say, as humans, our only path to the generative source is through the source made flesh.

But we might further notice that we haven't completed our analysis of this matter just yet: neither the generative form nor its implementation are complete without the actual running of the algorithm, until we give it life by executing it, on paper, or in our head, or on a computer. The generative form is made fully real through its implementations by the power of executing it. But that power is also one in being with the form and the implementations: we might say the execution of an algorithm proceeds from its generative form and its implementation.

Somehow, this all reminds me of something, but I'm not sure what at the moment.

1 comment:

  1. Gene, this is fascinating. What I'm trying to see is how Berkeley's Idealism fits in with all of this; doesn't he deny the existence of abstracta?

    ReplyDelete