Sunday, April 9, 2017

Algorithm

One of the earliest-known entries of the word "algorithm" in a dictionary can be found in Samuel Johnson's Dictionary of the English Language from 1785.

The entry on page 130 reads (approximately): algorithm: Arabic words, which are used to imply the six operations of arithmetic, or the science of numbers.

Today, "algorithm" is defined as:
- A well-defined procedure to solve a problem.
- A clearly specified set of simple instructions to be followed to solve a problem.
- A finite, deterministic, and effective problem-solving method.
- An explicit, precise, unambiguous, mechanically-executable sequence of elementary instructions.1
- A sequence of computational steps that transform input into output.2
- A set of rules that precisely defines a sequence of operations.3
- A precisely defined set of mathematical or logical operations for the performance of a particular task.4
- A step-by-step process to efficiently reach the desired goal.5
- A systematic method for solving a problem.6
- A well-defined computational procedure that takes a variable input and halts with an output.7
- A step-by-step list of instructions for solving any instance of the problem that might arise8

1. Jeff Erickson's algorithms notes
2. Introduction to Algorithms / Cormen, Leiserson, Rivest, Stein / MIT Press link
3. Introduction to Computer Organization and Data Structures (1972 ed.) / Stone / McGraw-Hill, New York.
4. "algorithm, n." OED Online, Oxford University Press, June 2019 link
5. Arizona State University graduate course syllabus "Foundations of Algorithms" CSE 551
6. Universal Book of Mathematics / Darling / Wiley / 2004
7. Handbook of Applied Cryptography / Menezes et al / CRC Press / 2001 / p.57
8. Problem Solving with AlgoDS / Miller / Univ. Auckland / 2013 / p.4 link