Automating Recursive Type Deenitions in Higher Order Logic 1

The expressive power of higher order logic makes it possible to deene a wide variety of types within the logic and to prove theorems that state the properties of these types concisely and abstractly. This paper contains a tutorial introduction to the logical basis for such type deenitions. Examples are given of the formal deenitions in logic of several simple types. A method is then described for systematically deening any instance of a certain class of commonly-used recursive types. The automation of this method in HOL, an interactive system for generating proofs in higher order logic, is also discussed.