effective procedure a step-by-step recipe for computing the values of a function. It determines what is to be done at each step, without requiring any ingenuity of anyone (or any machine) executing it. The input and output of the procedure consist of items that can be processed mechanically. Idealizing a little, inputs and outputs are often taken to be strings on a finite alphabet. It is customary to extend the notion to procedures for manipulating natural numbers, via a canonical notation. Each number is associated with a string, its numeral. Typical examples of effective procedures are the standard grade school procedures for addition, multiplication, etc. One can execute the procedures without knowing anything about the natural numbers. The term ‘mechanical procedure’ or ‘algorithm’ is sometimes also used. A function f is computable if there is an effective procedure A that computes f. For every m in the domain of f, if A were given m as input, it would produce f(m) as output. Turing machines are mathematical models of effective procedures. Church’s thesis, or Turing’s thesis, is that a function is computable provided there is a Turing machine that computes it. In other words, for every effective procedure, there is a Turing machine that computes the same function. See also CHURCH’S THESIS, COMPUTER THEORY , TURING MACHIN. S.Sha.