What is Marr’s Three Level of Information Processing?

In recent work in the theoretical foundations of cognitive science, it has become commonplace to separate three distinct levels of analysis of information-processing systems. David Marr (1982) has dubbed the three levels the computational, the algorithmic, and the implementational; Zenon Pylyshyn (1984) calls them the semantic, the syntactic, and the physical; and textbooks in cognitive psychology sometimes call them the levels of content, form, and medium (e.g. Glass, Holyoak, and Santa 1979).
David Marr presents his variant on the "three levels" story. His summary of "the three levels at which any machine carrying out an information-processing task must be understood":
Computational theory: 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? What is a concept? What does it mean to learn a concept successfully?
Representation and algorithm: 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 are objects and concepts represented? How much memory (space) and computation (time) does a learning algorithm require?
Hardware implementation: How can the representation and algorithm be realized physically?
As an illustration, Marr applies this distinction to the levels of theorizing about a well-understood device: a cash register.
At the computational level, "the level of what the device does and why", Marr tells us that "what it does is arithmetic, so our first task is to master the theory of addition".
But at the level of representation and algorithm, which specifies the forms of the representations and the algorithms defined over them, "we might choose Arabic numerals for the representations, and for the algorithm we could follow the usual rules about adding the least significant digits first and `carrying' if the sum exceeds 9".
And, at the implementational level, we face the question of how those symbols and processes are actually physically implemented; e.g., are the digits implemented as positions on a ten-notch metal wheel, or as binary coded decimal numbers implemented in the electrical states of digital logic circuitry?
Putting a closer look to Marr's, we might see the three perspectives of algorithm, content of computation, and implementation as having something like the following questions associated with them:
Format and algorithm: What is the syntactic structure of the representations at this level, and what algorithms are used to transform them? What is the real structure of the virtual machine? What's the program? From this perspective, the questions are explicitly information-processing questions. Further, it's this level of functional decomposition of the system which specifies the level of organization with which we are currently concerned, and to which the other two perspectives are related.
Content, function, and interpretation: What are the relational or global functional roles of the main processes described at this level? What tasks are being performed by these processes, and why? These are centrally questions about the interpretation and global function of the parts and procedures specified in our algorithmic analysis.
Implementation: How are the primitives of the current level implemented? By another computationally characterized virtual machine? Directly in the hardware? How much decomposition (in terms of kinds of primitives, structures, abilities, etc.) is there between the current level and what is implementing it? How much of the work is done by the postulated primitives of this level as opposed to being done explicitly by the analyzed processes? The shift from algorithm to implementation is thus centrally one of levels of organization or functional decomposition; i.e. of what happens when we try to move down a level of organization.


Feel free to contact the admin for any suggestions and help.