## Towards a Definition of an Algorithm (2005)

### Cached

### Download Links

Citations: | 3 - 0 self |

### BibTeX

@MISC{Yanofsky05towardsa,

author = {Noson S. Yanofsky},

title = {Towards a Definition of an Algorithm},

year = {2005}

}

### 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.

### Citations

718 | Introduction to Algorithms, Second Edition
- Cormen, Leiserson, et al.
- 2001
(Show Context)
Citation Context ...ce class of such trees will be called an algorithm. Universal properties of the category of all algorithms are given. 1 Introduction In their excellent text Introduction to Algorithms, Second Edition =-=[5]-=-, Corman, Leiserson, Rivest, and Stein begin Section 1.1 with a definition of an algorithm: Informally, an algorithm is any well-defined computational procedure that takes some value, or set of values... |

429 |
Higher Order Categorical Logic
- Lambek, Scott
- 1986
(Show Context)
Citation Context ...tive. Proof Theory. There are many similarities between our work and work in proof theory. Many times, one sees two proofs that are essentially the same. In a sense, Lambek and Scott’s excellent book =-=[9]-=- has the proof theory version of this paper. They look at equivalence classes of proofs to get categories with extra structure. There is a belief that a program/algorithm implementing a function f is ... |

395 |
Category theory for computing science
- Barr, Wells
- 1990
(Show Context)
Citation Context ...makes things unnecessarily complicated. However, we are certain that any proposition that can be said about the second type of recursion, can also be said for the third type. See [1] Section 7.5, and =-=[2]-=- Section 5.5. Although primitive recursive functions are usually described as closed only under composition and recursion, there is, in fact, another implicit operation, bracket, for which the functio... |

333 |
The Art of Computer Programming, Volume 1: Fundamental algorithms
- Knuth
- 1968
(Show Context)
Citation Context ...hnical book of 1180 pages not have a “formal” definition of an algorithm? 2. What is meant by “well-defined?” 3. The term “procedure” is as vague as the term “algorithm.” What is a “procedure?” Knuth =-=[7, 8]-=- has been a little more precise in specifying the requirements demanded for an algorithm. But he writes “Of course if I am pinned down and asked to explain more precisely what I mean by these remarks,... |

130 |
Categories for the working mathematician, second edition
- Lane
- 1998
(Show Context)
Citation Context ... hexagon law or the third Reidermeister move. Given the idempotence and hexagon laws, it is a theorem that there is a unique twist map made of smaller twist maps between any two products of elements (=-=[9]-=- Section XI.4). Bracket and Projections. A bracket followed by a projection onto the first output means the second output is ignored. In terms of trees, this amounts to f ≈ π B×C B ◦ 〈f, g〉sTowards a ... |

42 |
Toposes, triples and theories. Grundlehren der mathematischen Wissenschaften 278
- Wells
- 1985
(Show Context)
Citation Context ...bstantial. It simply makes things unnecessarily complicated. However, we are certain that any proposition that can be said about the second type of recursion, can also be said for the third type. See =-=[1]-=- Section 7.5, and [2] Section 5.5. Although primitive recursive functions are usually described as closed only under composition and recursion, there is, in fact, another implicit operation, bracket, ... |

19 | Algorithms: a quest for absolute definitions
- Blass, Gurevich
- 2003
(Show Context)
Citation Context ...the halting problem.” They are as “real” as the number e or the set Z. See [6] for an excellent philosophical overview of the subject. Many researchers have given definitions over the years. Refer to =-=[3]-=- for a historical survey of some of these definitions. One must also read the important work of Yiannis Moschovakis, e.g., [12]. Many of the given definitions are of the form “An algorithm is a progra... |

12 |
Cartesian categories with natural numbers object
- Romàn
- 1989
(Show Context)
Citation Context ...products and natural numbers objects. This category has been studied by Joyal in an unpublished manuscript about “arithmetical universes” (see [11] for a history). This category was also looked at in =-=[14]-=- and [13]. They characterized what type of functions can be represented4 Noson S. Yanofsky in such categories. Although the category has been studied, the connection with the notion of an algorithm h... |

4 |
Computation models and function algebras. Handbook of Computability Theory
- Clote
- 1999
(Show Context)
Citation Context ...oot of T is R , otherwise it is 0. It is known that a primitive recursive function that can be expressed by a tree with Rdepth of n or less is an element of Grzegorczyk’s hierarchy class E n+1 . (See =-=[4]-=-, Theorem 3.31 for sources.) Complexity theory deals with the partial order of all functions {f|f : N −→ R + } where f(n) f ≤ g iff Limn→∞ < ∞. g(n) For every algorithm we can associate a function tha... |

2 |
Selected Papers on
- KNUTH
- 1996
(Show Context)
Citation Context ...hnical book of 1180 pages not have a “formal” definition of an algorithm? 2. What is meant by “well-defined?” 3. The term “procedure” is as vague as the term “algorithm.” What is a “procedure?” Knuth =-=[7, 8]-=- has been a little more precise in specifying the requirements demanded for an algorithm. But he writes “Of course if I am pinned down and asked to explain more precisely what I mean by these remarks,... |

2 |
Joyal’s arithmetic universes via type theory
- Maietti
(Show Context)
Citation Context ...nitial category in the 2-category of all categories with products and natural numbers objects. This category has been studied by Joyal in an unpublished manuscript about “arithmetical universes” (see =-=[11]-=- for a history). This category was also looked at in [14] and [13]. They characterized what type of functions can be represented4 Noson S. Yanofsky in such categories. Although the category has been ... |

1 |
Algorithms: A Quest for Absolute Definitions.” Available on the web
- Blass, Gurevich
(Show Context)
Citation Context ...the halting problem.” They are as “real” as the number e or the set Z. See [6] for an excellent philosophical overview of the subject. Many researchers have given definitions over the years. Refer to =-=[3]-=- for a historical survey of some of these definitions. One must also read the important work of Yiannis Moschovakis, e.g., [10]. Many of the given definitions are of the form “An algorithm is a progra... |

1 |
What algorithms could not be. 2006 Thesis in
- Dean
(Show Context)
Citation Context ...ses like “Mergesort runs in n lg n time”. We quantify over all algorithms, e.g., “There does not exist an algorithm to solve the halting problem.” They are as “real” as the number e or the set Z. See =-=[6]-=- for an excellent philosophical overview of the subject. Many researchers have given definitions over the years. Refer to [3] for a historical survey of some of these definitions. One must also read t... |

1 |
What Is an Algorithm?” Available on his web page
- Moschovakis
(Show Context)
Citation Context ...subject. Many researchers have given definitions over the years. Refer to [3] for a historical survey of some of these definitions. One must also read the important work of Yiannis Moschovakis, e.g., =-=[10]-=-. Many of the given definitions are of the form “An algorithm is a program in this language/system/machine.” This does not really conform to the current meaning of the word “algorithm.” This is more i... |

1 |
What Is an Algorithm?” Available on his web
- Moschovakis
(Show Context)
Citation Context ...subject. Many researchers have given definitions over the years. Refer to [3] for a historical survey of some of these definitions. One must also read the important work of Yiannis Moschovakis, e.g., =-=[12]-=-. Many of the given definitions are of the form “An algorithm is a program in this language/system/machine.” This does not really conform to the current usage of the word “algorithm.” This is more in ... |