Definition: Algorithm (Effective Procedure)
An algorithm $\mathcal A$ (sometimes also called an effective procedure) is a step-by-step procedure for solving a problem fulfilling the following properties:
- $\mathcal A$ consists of a finite number of instructions (each instruction is being an expression of a formal language).
- $\mathcal A,$ if carried out without error, always produces the desired solution to the problem in a finite number of steps.
- $\mathcal A$ can be carried out purely mechanically, without any insight or ingenuity.
- Lawler; Lenstra; Rinnooy Kan; Shmoys: "The Traveling Salesman Problem", Wiley-Interscience, 1985