PLANNER is a language for proving theorems and manipulating models in a robot. The language is built out of a number of problem solving primitives together with a hierarchical control structure. Statements can be asserted and perhaps later withdrawn as the state of the world changes. Conclusions can be drawn from these various changes in state. Goals can be established and dismissed when they are satisfied . The deductive system of PLANNER is subordinate to the hierarchical control structure in order to make the language efficient . The use of a general purpose matching language makes the deductive system more powerful.