Proof is a programming activity. Consequently programming environments which support proof in the large are required. We describe an environment which supports one area of proof-in-the-large: that of theory management. We present the notion of virtual theories. They give the illusion of multiple active theories allowing the user to switch between different theories at will, proving theorems and making definitions in each. The system ensures that proofs only use resources that are available in the environment of the current virtual theory. The code has been implemented on top of the HOL90 system. A side effect is that a version of autoloading is obtained for HOL90. A more radical feature that is obtained is the autoloading of tools. The system has been tested on part of a real hardware verification proof.
Unable to display preview. Download preview PDF.
- 1.Paul Curzon. Tracking design changes with formal machine-checked proof. The Computer Journal, 38(2), 1995.Google Scholar
- 2.Elsa L. Gunter. The implementation and use of abstract theories in HOL. In Proceedings of the Third HOL Users Meeting, 1990.Google Scholar
- 3.Larry Paulson. exn as dynamic type. Message sent to the comp.lang.ml newsgroup, January 1995.Google Scholar
- 4.Konrad Slind. A parameterized proof manager. In Thomas F. Melham and Juanito Camilleri, editors, Higher Order Logic Theorem Proving and Its Applications: 7th International Workshop, volume 859 of Lecture Notes in Computer Science, pages 407–423. Springer-Verlag, September 1994.Google Scholar
- 5.Donald Syme. A new interface for HOL — ideas, issues and implementation. In Proceedings of the 8th International Workshop on Higher Order Logic Theorem Proving and Its Applications, Lecture Notes in Computer Science, 1995.Google Scholar