• [Required] Excerpt from cite:marr82 David Marr (1982) Vision Freeman Publishers (see below). From chapter 28 of Anderson, James A., Rosenfeld, Edward, Pellionisz, Andras (1988). Neurocomputing. Foundations of Research Cambridge, Mass: MIT Press. [accessible from]

Levels of description

  • Complex systems have various levels of description, e.g. description at the level of the economy (inflation rate, GDP), description at the level of individuals (personal income and behavior)

From Marr (1982, p.470)

Computational theoryRepresentation and algorithmHardware implementation
What is the goal of the computation, why is it appropriate, and what is the logic of the strategy by which it can be carried out?How can this computational theory be implemented? In particular, what is the representation for the input and output, and what is the algorithm for the transformation?How can the representation and algorithm be realized physically?

Figure 1-4

The three levels at which any machine carrying out an information-processing task must be understood.

The Three Levels

We can summarize our discussion in something like the manner shown in Figure 1-4, which illustrates the different levels at which an information-processing device must be understood before one can be said to have understood it completely. At one extreme, the top level, is the abstract computational theory of the device, in which the performance of the device is characterized as a mapping from one kind of information to another, the abstract properties of this mapping are defined precisely, and its appropriateness and adequacy for the task at hand are demonstrated. In the center is the choice of representation for the input and output and the algorithm to be used to transfer one into the other. And at the other extreme are the details of how the algorithm and representation are realized physically - the detailed computer architecture, so to speak. These three levels are coupled, but only loosely. The choice of an algorithm is influenced for example, by what it has to do and by the hardware in which it must run. But there is a wide choice available at each level, and the explication of each level involves issues that are rather independent of the other two.


Consider a calculation machine and various possible implementations of mutiplication:

Computational levelMultiplication 9x8=?
Algorithm / representation level vs. 9+9+9+9+9+9+9+9=
Hardware implementation levelmechanical vs. electronic
  • The mind can be analyzed at various levels as well.
  • A computational approach to mental processes would have to appeal to theories at all three levels.