Abstract
We present an embedding of linear time temporal logic LTL in HOL together with an elegant translation of LTL formulas into equivalent ω-automata. The translation is completely implemented by HOL rules and is therefore safe. Its implementation is mainly based on preproven theorems such that the conversion works very efficiently. In particular, it runs in linear time in terms of the given formula. The main application of this conversion is the sound integration of symbolic model checkers as (unsafe) decision procedures in the HOL theorem prover. On the other hand, the conversion also enables HOL users to directly verify temporal properties by means of HOL’s induction rules.
This work has been financed by DFG project ‘Verification of embedded systems’ and the ESPRIT LTR Project 26241 (Prosper).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
E.A. Emerson. Temporal and Modal Logic. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, pages 996–1072, Amsterdam, 1990. Elsevier Science Publishers.
K.L. McMillan. Symbolic Model Checking. Kluwer Academic Publishers, Norwell Massachusetts, 1993.
G. Holzmann. The model checker SPIN. IEEE Transactions on Software Engineering, 23(5):279–295, May 1997.
R. H. Hardin, Z. Har’El, and R. P. Kurshan. COSPAN. In Rajeev Alur and Thomas A. Henzinger, editors, Conference on Computer Aided Verification (CAV), volume 1102 of Lecture Notes in Computer Science, pages 423–427, New Brunswick, NJ, USA, July/August 1996. Springer Verlag.
A. Aziz, F. Balarin, S.-T. Cheng, R. Hojati, T. Kam, S.C. Krishnan, R.K. Ranjan, T.R. Shiple, V. Singhal, S. Tasiran, H.-Y. Wang, R.K. Brayton, and A.L. Sangiovanni-Vincentelli. HSIS: A BDD-Based Environment for Formal Verification. In ACM/IEEE Design Automation Conference (DAC), San Diego, CA, June 1994. San Diego Convention Center.
R. K. Brayton, A. L. Sangiovanni-Vincentelli, A. Aziz, S.-T. Cheng, S. Edwards, S. Khatri, Y. Kukimoto, S. Qadeer, R. K. Ranjan, T. R. Shiple, G. Swamy, T. Villa, G. D. Hachtel, F. Somenzi, A. Pardo, and S. Sarwary. VIS: A system for verification synthesis. In Computer-Aided Verification, New Brunswick, NJ, July-August 1996.
M.C. Browne, E.M. Clarke, D.L. Dill, and B. Mishra. Automatic Verification of Sequential Circuits Using Temporal Logic. IEEE Transactions on Computers, C-35(12):1034–1044, December 1986.
D.L. Dill and E.M. Clarke. Automatic verification of asynchronous circuits using temporal logic. IEE Proceedings, 133 Part E(5):276–282, September 1986.
E.M. Clarke, O. Grumberg, H. Hiraishi, S. Jha, D.E. Long, K.L. McMillan, and L.A. Ness. Verification of the Futurebus+ Cache Coherence Protocol. In D. Agnew, L. Claesen, and R. Camposano, editors, IFIP Conference on Computer Hardware Description Languages and their Applications (CHDL), pages 5–20, Ottawa, Canada, April 1993. IFIP WG10.2, CHDL’93, IEEE COMPSOC, Elsevier Science Publishers B.V., Amsterdam, Netherland.
M.J.C. Gordon and T.F. Melham. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, 1993.
N. Shankar. PVS: Combining specification, proof checking, and model checking. In M. Srivas and A. Camilleri, editors, International Conference on Formal Methods in Computer Aided Design (FMCAD), volume 1166 of Lecture Notes in Computer Science, pages 257–264, Palo Alto, CA, USA, November 1996. Springer Verlag.
E.A. Emerson and J.Y. Halpern. “sometimes” and “not never” revisited: On branching versus linear time temporal logic. Journal of the ACM, 33(1):151–178, January 1986.
E.M. Clarke and E.A. Emerson. Design and Synthesis of Synchronization Skeletons using Branching Time Temporal Logic. In D. Kozen, editor, Workshop on Logics of Programs, volume 131 of Lecture Notes in Computer Science, pages 52–71, Yorktown Heights, New York, May 1981. Springer-Verlag.
K. Schneider. CTL and equivalent sublanguages of CTL. In C. Delgado Kloos, editor, IFIP Conference on Computer Hardware Description Languages and their Applications (CHDL), pages 40–59, Toledo,Spain, April 1997. IFIP, Chapman and Hall.
K. Schneider, T. Kropf, and R. Kumar. Why Hardware Verification Needs more than Model Checking. In Higher Order Logic Theorem Proving and its Applications, Malta, 1994.
P. Loewenstein. Formal verification of state-machines using higher-order logic. In IEEE/ACM International Conference on Computer Design (ICCD), pages 204–207, 1989.
P. Loewenstein. A formal theory of simulations between infinite automata. In L.J.M. Claesen and M.J.C. Gordon, editors, Higher Order Logic Theorem Proving and its Applications, pages 227–246, Leuven, Belgium, September 1992. IFIP TC10/WG10.2, North-Holland. IFIP Transactions.
K. Schneider, R. Kumar, and T. Kropf. Alternative Proof Procedures for Finite-State Machines in Higher-Order Logic. In J.J. Joyce and C.-J.H. Seger, editors, Higher Order Logic Theorem Proving and its Applications, volume 780 of Lecture Notes in Computer Science, pages 213–227, Vancouver, Canada, August 1993. University of British Columbia, Springer-Verlag, published 1994.
D. Eisenbiegler and R. Kumar. An Automata Theory Dedicated Towards Formal Circuit Synthesis. In E.T. Schubert, P.J. Windley, and J. Alves-Foss, editors, Higher Order Logic Theorem Proving and its Applications, volume 971 of Lecture Notes in Computer Science, pages 154–169, Aspen Grove, Utah, USA, September 1995. Springer-Verlag.
K. Schneider and T. Kropf. A unified approach for combining different formalisms for hardware verification. In M. Srivas and A. Camilleri, editors, International Conference on Formal Methods in Computer Aided Design (FMCAD), volume 1166 of Lecture Notes in Computer Science, pages 202–217, Palo Alto, USA, November 1996. Springer Verlag.
S. Agerholm and H. Schjodt. Automating a model checker for recursive modal assertions in HOL. Technical Report DAIMI IR-92, DAIMI, January 1990.
J. von Wright. Mechanizing the temporal logic of actions in HOL. In M. Archer, J.J. Joyce, K.N. Levitt, and P.J. Windley, editors, Higher Order Logic Theorem Proving and its Applications, Davis, California, August 1991. IEEE Computer Society, ACM SIGDA, IEEE Computer Society Press.
L. Lamport. The temporal logic of actions. Technical Report 79, Digital Equipment Cooperation, 1991.
F. Andersen and K.D. Petersen. Recursive Boolean Functions in HOL. In M. Archer, J.J. Joyce, K.N. Levitt, and P.J. Windley, editors, Higher Order Logic Theorem Proving and its Applications, Davis, California, August 1991. IEEE Computer Society, ACM SIGDA, IEEE Computer Society Press.
K.M. Chandy and J. Misra. Parallel Program Design. Addison-Wesley, Austin, Texas, May 1989.
F. Andersen. A Theorem Prover for UNITY in Higher Order Logic. PhD thesis, Horsholm, Denmark, March 1992.
F. Andersen, K.D. Petersen, and J.S. Petterson. Program Verification using HOL-UNITY. In J.J. Joyce and C.-J.H. Seger, editors, Higher Order Logic Theorem Proving and its Applications, volume 780 of Lecture Notes in Computer Science, pages 1–16, Vancouver, Canada, August 1993. University of British Columbia, Springer-Verlag, published 1994.
K. Schneider. Translating linear temporal logic to deterministic ω-automata. In M. Pfaff and R. Hagelauer, editors, GI/ITG/GMMWorkshop Methoden des Entwurfs und der Verifikation digitaler Systeme, pages 149–158, 1997.
K. Schneider. Yet another look at LTL model checking. In IFIP WG10.5 Advanced Research Working Conference on Correct Hardware Design and Verification Methods, Lecture Notes in Computer Science, Bad Herrenalb, Germany, September 1999. Springer Verlag.
W. Thomas. Automata on infinite objects. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, pages 133–191, Amsterdam, 1990. Elsevier Science Publishers.
O. Lichtenstein and A. Pnueli. Checking that finite state concurrent programs satisfy their linear specification. In ACM Symposium on Principles of Programming Languages (POPL), pages 97–107, New York, January 1985. ACM.
O. Lichtenstein, A. Pnueli, and L. Zuck. The glory of the past. In Conference on Logics of Programs, volume 193 of Lecture Notes in Computer Science, pages 196–218, New York, 1985. Springer-Verlag.
P. Wolper. Temporal logic can be more expressive. Information and Control, 56:72–99, 1983.
P. Wolper. On the relation of programs and computations to models of temporal logic. In B. Banieqbal, H. Barringer, and A. Pnueli, editors, Temporal Logic in Specification, pages 75–123, Altrincham, UK, 1987. Springer-Verlag.
G.G de Jong. An automata theoretic approach to temporal logic. In K.G. Larsen and A. Skou, editors, Workshop on Computer Aided Verification (CAV), volume 575 of Lecture Notes in Computer Science, pages 477–487, Aalborg, July 1991. Springer-Verlag.
S. Safra. On the complexity of ω automata. In IEEE Symp.on Foundations of Computer Science, pages 319–327, 1988.
M. Vardi. An automata-theoretic approach to linear temporal logic. In Banff’ 94, 1994.
E.M. Clarke, O. Grumberg, and K. Hamaguchi. Another look at LTL model checking. In David L. Dill, editor, Conference on Computer Aided Verification (CAV), volume 818 of Lecture Notes in Computer Science, pages 415–427, Standford, California, USA, June 1994. Springer-Verlag.
K. Schneider. Model checking on product structures. In G.C. Gopalakrishnan and P.J. Windley, editors, Formal Methods in Computer-Aided Design, volume 1522 of Lecture Notes in Computer Science, pages 483–500, Palo Alto, CA, November 1998. Springer Verlag.
S.D. Johnson, P.S. Miner, and A. Camilleri. Studies of the single pulser in various reasoning systems. In T. Kropf and R. Kumar, editors, International Conference on Theorem Provers in Circuit Design (TPCD), volume 901 of Lecture Notes in Computer Science, pages 126–145, Bad Herrenalb, Germany, September 1994. Springer-Verlag. published 1995.
M. Norrish, L. Dennis, and R. Boulton. Prosper plug-in interface design. Prosper project report D3.2a, October 1998.
M. Norrish, G. Collins, L. Dennis, and R. Boulton. Prosper plug-in interface user documentation. Prosper Project Report D3.2b, November 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Schneider, K., Hoffmann, D.W. (1999). A HOL Conversion for Translating Linear Time Temporal Logic to ω-Automata. In: Bertot, Y., Dowek, G., Théry, L., Hirschowitz, A., Paulin, C. (eds) Theorem Proving in Higher Order Logics. TPHOLs 1999. Lecture Notes in Computer Science, vol 1690. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48256-3_17
Download citation
DOI: https://doi.org/10.1007/3-540-48256-3_17
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66463-5
Online ISBN: 978-3-540-48256-7
eBook Packages: Springer Book Archive