Repair Theory (K. VanLehn)


Repair theory is a attempt to explain how people learn procedural skills with particular attention to how and why they make mistakes (i.e., bugs). The theory suggests that when a procedure cannot be performed, an impasse occurs and the individual applies various strategies to overcome the impasse. These strategies (meta-actions) are called repairs. Some repairs result in correct outcomes whereas others generate incorrect results and hence "buggy" procedures. Repair theory has been implemented in the form of a computer model called Sierra.

Repair theory has been developed from extensive study of children solving arithmetic problems (Brown & VanLehn, 1980). Even with simple subtraction problems, many types of bugs were found, often occurring in combinations. Such systematic errors are not to be confused with "slips" (cf. Norman, 1981) or random mistakes since they reoccur regularly in a particular student's work. On the other hand, bugs are not totally consistent:

"Students' bugs, unlike bugs in computer programs, are unstable. Students shift back and forth among bugs, a phenomenon called bug migration. The theory's explanation for bug migration is that the student has a stable underlying procedure but that the pro cedure is incomplete in such a way that the student reaches impasses on some problems. Students can apply any repair they can think of. Sometimes they choose one repair and sometimes another. The different repairs manifest themselves as different bugs. So bug migration comes from varying the choice of repairs to a stable, underlying impasse." (VanLehn, 1989) p 26.

Repair theory assumes that people primarily learn procedural tasks by induction and that bugs occur because of biases that are introduced in the examples provided or the feedback received during practice (as opposed to mistakes in memorizing formulas or i nstructions). Therefore, the implication of repair theory is that problem sets should be chosen to eliminate the bias likely to cause specific bugs. Another implication is that bugs are often introduced when students try to extend procedures beyond the in itial examples provided.


Repair theory applies to any procedural knowledge. However, to date the theory has only been fully developed in the domain of children solving subtraction problems.


If a student learns subtraction with two digit numbers and is then presented with the following problem: 365 - 109 =?, they must generate a new rule for borrowing from the left column. Unlike a two digit problem, the left adjacent and the left-most column are different creating an impasse. To resolve the impasse, the student needs to repair their current rule (Always-Borrow-Left) by making it Always-Borrow-Left Adjacent. Alternatively, the student could skip the borrowing entirely generating a different b ug called Borrow-No-Decrement-Except-Last.


1. Bugs that cause errors in procedural tasks are systematic and can be identified.

2. Once the bugs associated with a particular task are known, they can be used to improve student performance and the examples used to teach the procedure.


Brown, J.S. & VanLehn, K. (1980). Repair theory: A generative theory of bugs in procedural skills. Cognitive Science, 4, 379-426.

Norman, D.A. (1981). Categorization of action slips. Psychological Review, 88, 1-15.

VanLehn, K. (1989). Mind Bugs. Cambridge, MA: MIT Press.