@MISC{Yanofsky05towardsa, author = {Noson S. Yanofsky}, title = {Towards a Definition of an Algorithm}, year = {2005} }
Bookmark
OpenURL
Abstract
We define an algorithm to be the set of programs that implement or express that algorithm. The set of all programs is partitioned into equivalence classes. Two programs are equivalent if they are “essentially ” the same program. The set of all equivalence classes is the category of all algorithms. In order to explore these ideas, the set of primitive recursive functions is considered. Each primitive recursive function can be described by many labeled binary trees that show how the function is built up. Each tree is like a program that shows how to compute a function. We give relations that say when two such trees are “essentially” the same. An equivalence class of such trees will be called an algorithm.