Strategies for Temporal Resolution

Verifying that a temporal logic speci cation satis es a temporal property requires some form of theorem proving. However, although proof procedures exist for such logics, many are either unsuitable for automatic implementation or only deal with small fragments of the logic. In this thesis the algorithms for, and strategies to guide, a fully automated temporal resolution theorem prover are given, proved correct and evaluated. An approach to applying resolution, a proof method for classical logics suited to mechanisation, to temporal logics has been developed by Fisher. The method involves translation to a normal form, classical style resolution within states and temporal resolution over states. It has only one temporal resolution rule and is therefore particularly suitable as the basis of an automated temporal resolution theorem prover. As the application of the temporal resolution rule is the most costly part of the method, involving search amongst graphs, di erent algorithms on which to base an implementation are developed. The correctness of each algorithm is given and a comparison of their performance is made. Strategies have been useful in classical resolution to guide the application of the resolution rule, making proofs more e cient and generating less redundant information. Similarly, a range of strategies related to each step of the temporal resolution theorem prover are suggested to improve the e ciency of the basic system. Heuristics to reduce the amount of information input to the temporal resolution step are described. Suggestions are given on how a classical resolution theorem prover might be incorporated to perform resolution within states. For each of these heuristics and strategies, correctness is considered and results given for a set of examples. The suitability of Fisher's temporal resolution method to mechanisation, the algorithms developed for temporal resolution and the strategies and heuristics developed for each stage of the resolution method together means that temporal resolution provides a viable option for automated temporal theorem proving. 7 Declaration No portion of the work referred to in this thesis has been submitted in support of an application for another degree or quali cation of this or any other university or other institution of learning. However, although a depthrst search algorithm was published originally my MSc. Thesis, "A Graph-Based Approach to Resolution in Temporal Logics", the version presented in Chapter 3 is a signi cant improvement. 8 Copyright Copyright in text of this thesis rests with the Author. Copies (by any process) either in full, or of extracts, may be made only in accordance with instructions given by the Author and lodged in the John Rylands University Library of Manchester. Details may be obtained from the Librarian. This page must form part of any such copies made. Further copies (by any process) of copies made in accordance with such instructions may not be made without the permission (in writing) of the Author. The ownership of any intellectual property rights which may be described in this thesis is vested in the University of Manchester, subject to any prior agreement to the contrary, and may not be made available for use by third parties without the written permission of the University, which will prescribe the terms and conditions of any such agreement. Further information on the conditions under which disclosures and exploitation may take place is available from the head of Department of Computer Science. 9 Acknowledgements I would like to thank my supervisors Prof. Howard Barringer and Dr. Michael Fisher for their support, guidance, and encouragement during my years at Manchester. Thanks to everyone in the Temple Group in the Department of Computer Science at the University of Manchester particularly to Graham Gough for his helpful comments and assistance, David Carlisle for his patience and help with many LATEX and other questions, Rajeev Gor e for his encouragement and advice and Martin Peim for the many invaluable discussions, suggestions and for writing the Emacs Lisp interface between Prolog and Otter. My gratitude is extended to Sean Bechhofer for reading an earlier draft of this thesis. The nancial support from the Engineering and Physical Sciences Research Council is gratefully acknowledged. I would also like to thank my family and friends for their understanding and patience and for being there when I needed them. Thanks particularly to Sean for his support in so many ways and for keeping me going at the end. I do appreciate it. 10 The Author The author graduated from the University of Hull in 1986 with a B.Sc. Honours Degree in Mathematics and Management Sciences. After teaching mathematics for three years, and working as a software engineer in a commercial environment for two years, she joined the Computer Science Department at the University of Manchester in October 1991. Graduating from the University of Manchester in 1992 with an M.Sc. in Computer Science she continued to study for a Ph.D. 11 Dedication This thesis is dedicated to Sam Blundell. 12 Chapter