Minds and Machines

, Volume 11, Issue 2, pp 219–237 | Cite as

Recipes, Algorithms, and Programs

  • Carol E. Cleland


In the technical literature of computer science, the concept of an effective procedure is closely associated with the notion of an instruction that precisely specifies an action. Turing machine instructions are held up as providing paragons of instructions that "precisely describe" or "well define" the actions they prescribe. Numerical algorithms and computer programs are judged effective just insofar as they are thought to be translatable into Turing machine programs. Nontechnical procedures (e.g., recipes, methods) are summarily dismissed as ineffective on the grounds that their instructions lack the requisite precision. But despite the pivotal role played by the notion of a precisely specified instruction in classifying procedures as effective and ineffective, little attention has been paid to the manner in which instructions "precisely specify" the actions they prescribe. It is the purpose of this paper to remedy this defect. The results are startling. The reputed exemplary precision of Turing machine instructions turns out to be a myth. Indeed, the most precise specifications of action are provided not by the procedures of theoretical computer science and mathematics (algorithms) but rather by the nontechnical procedures of everyday life. I close with a discussion of some of the rumifications of these conclusions for understanding and designing concrete computers and their programming languages.

action algorithm computer program effective procedure precisely specified instruction quotidian procedure symbol Turing machine 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Biuso, Julia (1997), Italian Cooking, Newport Beach: C.J. Publishing.Google Scholar
  2. Cleland, Carol E. (1993). ‘Is the Church-Turing Thesis True?’, Minds and Machines 3, pp. 283–212.Google Scholar
  3. Cleland, Carol E (1995), ‘Effective Procedures and Computable Functions’, Minds and Machines 5, pp. 9–23.Google Scholar
  4. Colburn, Timothy (1999), ‘Software, Abstraction, and Ontology’, The Monist 82, pp. 3–19.Google Scholar
  5. Copeland, Jack (1998) ‘Turing's O-machines, Searle, Penrose and the Brain,’ Analysis 58.2, pp. 129–131.Google Scholar
  6. Fetzer, James (1988), ‘Program Verification: The Very Idea’, Communications of the ACM 32, pp. 1048–1063.Google Scholar
  7. Fetzer, James (1991), 'Philosophical Aspects of Program Verification? 'Minds and Machines 1 pp. 197–216.Google Scholar
  8. Goodman, Nelson (1983), Fact, Fiction and Forecast, Cambridge: Harvard University.Google Scholar
  9. Hennie, Fred (1977), Introduction to Computability, Reading: Addison-Wesley.Google Scholar
  10. Kripke, S. A. (1982), Wittgenstein on Rules and Private Language, Oxford: Blackwell.Google Scholar
  11. Minsky, Marvin (1967), Computation: Finite and Infinite Machines, Englewood Cliffs: Prentice-Hall.Google Scholar
  12. Smith, N. K., trans., Kant's Critique of Pure Reason (V, 1), New York: St. Martins.Google Scholar
  13. Turing, Alan (1939), ‘Systems of Logic based on Ordinals’, Proceedings of the London Mathematical Society series 2, 45, pp. 161–228.Google Scholar

Copyright information

© Kluwer Academic Publishers 2001

Authors and Affiliations

  • Carol E. Cleland
    • 1
  1. 1.Department of Philosophy & Institute of Cognitive ScienceUniversity of ColoradoBoulderUSA

Personalised recommendations