# The anchored version of the temporal framework

## Abstract

In this survey paper we present some of the recent developments in the temporal formal system for the specification, verification and development of reactive programs. While the general methodology remains very much the one presented in some earlier works on the subject, such as [MP83c,MP83a,Pnu86], there have been several technical improvements and gained insights in understanding the computational model, the logic itself, the proof system and its presentation, and connections with alternative formalisms, such as finite automata. In this paper we explicate some of these improvements and extensions.

The main difference between this and preceding versions is that here we consider a notion of validity for temporal formulae, which is *anchored* at the initial state of the computation. The paper discusses some of the consequences of this decision.

## Key words

Temporal Logic Reactive Systems Concurrent Programs Specification Verification Proof System Classification of Properties Safety Liveness Recurrence Responsiveness Progress Fairness Fair Transition System## Preview

Unable to display preview. Download preview PDF.

## References

- [AL88]M. Abadi and L. Lamport, The existence of refinement mappings,
*Proc. 3rd IEEE Symp. Logic in Comp. Sci.*, 1988, pp. 165–175.Google Scholar - [AS85]
- [AS87]B. Alpern and F.B. Schneider, Recognizing safety and liveness,
*Distributed Computing***2**, 1987, pp. 117–126.CrossRefGoogle Scholar - [AS89]B. Alpern and F.B. Schneider, Verifying temporal properties without temporal logic,
*ACM Trans. Prog. Lang. Syst.***11**, 1989.Google Scholar - [Bac80]R.J.R. Back,
*Correctness preserving program refinements: Proof theory and applications*, Mathematical Center Tracts, 131, Center for Mathematics and Computer Science (CWI), Amsterdam, 1980.Google Scholar - [BK83]R.J.R Back and R. Kurki-Suonio, Decentralization of process nets with a centalized control,
*Proc. 2nd ACM Symp. Princ. of Dist. Comp.*, 1983, pp. 131–142.Google Scholar - [BKP84]H. Barringer, R. Kuiper, and A Pnueli, Now you may compose temporal logic specifications,
*Proc. 16th ACM Symp. Theory of Comp.*, 1984, pp. 51–63.Google Scholar - [BMP83]M. Ben-Ari, Z. Manna, and A Pnueli, The temporal logic of branching time,
*Acta Informatica***20**, 1983, pp. 207–226.CrossRefGoogle Scholar - [CES86]E.M. Clarke, E.A. Emerson, and A.P. Sistla, Automatic verification of finite state concurrent systems using temporal logic specifications,
*ACM Trans. Prog. Lang. Syst.***8**, 1986, pp. 244–263.CrossRefGoogle Scholar - [CM88]K.M. Chandy and J Misra,
*Parallel Program Design*, Addison-Wesley, 1988.Google Scholar - [Dij76]E.W. Dijkstra,
*A Discipline of Programming*, Prentice-Hall, New Jersey, 1976.Google Scholar - [dRZ87]W.P. de Roever and J. Zwiers,
*Different Styles of Compositional and Modular Proof-systems for a CCS/CSP-like Language*, Technical Report, Philips Research, 1987.Google Scholar - [EH86]E.A. Emerson and J.Y. Halpern, 'sometimes’ and ‘not never’ revisited: On branching time versus linear time,
*J. ACM***33**, 1986, pp. 151–178.CrossRefGoogle Scholar - [GPSS80]D. Gabbay, A. Pnueli, S. Shelah, and J. Stavi, On the temporal analysis of fairness,
*Proc. 6th ACM Symp. Princ. of Prog. Lang.*, 1980, pp. 163–173.Google Scholar - [Gri81]D. Gries,
*The Science of Programming*, Springer, New-York, 1981.Google Scholar - [Jon87]B. Jonsson,
*Compositional Verification of Distributed Systems*, Ph.D. thesis, Uppsala University, Sweden, 1987.Google Scholar - [Kam68]J.A.W. Kamp,
*Tense Logic and the Theory of Order*, Ph.D. thesis, UCLA, 1968.Google Scholar - [Kam85]M. Kaminski, A classification of
*ω*-regular languages,*Theor. Comp. Sci.***36**, 1985, pp. 217–229.CrossRefGoogle Scholar - [KdR83]R. Koymans and W.P. de Roever, Examples of a real-time temporal logic specifications,
*The Analysis of Concurrent Systems*, Springer, 1983, pp. 231–252.Google Scholar - [KP87]S. Katz and D. Peled,
*Interleaving Set Temporal Logic*, Technical Report 456, Dept. of Computer Science, Technion, Haifa, Israel, 1987.Google Scholar - [KVdR83]R. Koymans, J. Vytopyl, and W.P. de Roever, Real-time programming and asynchronous message passing,
*Proc. 2nd ACM Symp. Princ. of Dist. Comp.*, 1983.Google Scholar - [Lam77]L. Lamport, Proving the correctness of multiprocess programs,
*Trans. on Software Engineering***1**, 1977.Google Scholar - [Lam83a]L. Lamport, Specifying concurrent program modules,
*ACM Trans. Prog. Lang. Syst.***5**, 1983, pp. 190–222.CrossRefGoogle Scholar - [Lam83b]L. Lamport, What good is temporal logic,
*Proc. IFIP Congress*(R.E.A. Mason, ed.), North-Holland, 1983, pp. 657–668.Google Scholar - [Lan69]L.H. Landweber, Decision problems for
*ω*-automata,*Mathematical Systems Theory***4**, 1969, pp. 376–384.CrossRefGoogle Scholar - [LP84]O. Lichtenstien and A. Pnueli, Checking that finite state concurrent programs satisfy their linear specification,
*Proc. 10th ACM Symp. Princ. of Prog. Lang.*, 1984, pp. 97–107.Google Scholar - [LPZ85]O. Lichtenstien, A. Pnueli, and L. Zuck, The glory of the past,
*Proc. Conf. Logics of Programs*, Lec. Notes in Comp. Sci. 193, Springer, 1985, pp. 196–218.Google Scholar - [Man74]Z. Manna,
*Mathematical Theory of Computation*, McGraw-Hill, 1974.Google Scholar - [MP71]R. McNaughton and S. Papert,
*Counter Free Automata*, MIT Press, 1971.Google Scholar - [MP83a]Z. Manna and A. Pnueli, How to cook a temporal proof system for your pet language,
*Proc. 9th ACM Symp. Princ. of Prog. Lang.*, 1983, pp. 141–154.Google Scholar - [MP83b]Z. Manna and A. Pnueli, Proving precedence properties: the temporal way,
*Proc. 10th Int. Colloq. Aut. Lang. Prog.*, Lec. Notes in Comp. Sci. 154, Springer, 1983, pp. 491–512.Google Scholar - [MP83c]Z. Manna and A. Pnueli, Verification of concurrent programs: A temporal proof system,
*Foundations of Computer Science IV, Distributed Systems: Part 2*(J.W. De-Bakker and J. Van Leuwen, eds.), Mathematical Centre Tracts 159, Center for Mathematics and Computer Science (CWI), Amsterdam, 1983, pp. 163–255.Google Scholar - [MP84]Z. Manna and A. Pnueli, Adequate proof principles for invariance and liveness properties of concurrent programs,
*Sci. Comp. Prog.***32**, 1984, pp. 257–289.CrossRefGoogle Scholar - [MP87]Z. Manna and A. Pnueli, Specification and verification of concurrent programs by ∀-automata,
*Proc. 14th ACM Symp. Princ. of Prog. Lang.*, 1987, pp. 1–12.Google Scholar - [MW78]Z. Manna and R. Waldinger, Is 'sometime’ sometimes better than ‘always'?: intermitent assertions in proving program correctness,
*Comm. ACM***21**, 1978, pp. 159–172.CrossRefGoogle Scholar - [NGO85]V. Nguyen, D. Gries, and S. Owicki, A model and temporal proof system for network of processes,
*Proc. 12th ACM Symp. Princ. of Prog. Lang.*, 1985, pp. 121–131.Google Scholar - [OL82]S. Owicki and L. Lamport, Proving liveness properties of concurrent programs,
*ACM Trans. Prog. Lang. Syst.***4**, 1982, pp. 455–495.CrossRefGoogle Scholar - [Pnu86]A. Pnueli, Applications of temporal logic to the specification and verification of reactive systems: A survey of current trends,
*Current Trends in Concurrency*, Lec. Notes in Comp. Sci. 224, Springer, 1986, pp. 510–584.Google Scholar - [QS83]J.P. Queille and J. Sifakis, Fairness and related properties in transition systems — A temporal logic to deal with fairness,
*Acta Informatica***19**, 1983, pp. 195–220.CrossRefGoogle Scholar - [Rab72]M.O. Rabin,
*Automata on Infinite Objects and Churc's Problem*, Volume 13 of*Regional Conference Series in Mathematics*, Amer. Math. Soc., 1972.Google Scholar - [Rei85]W. Reisig,
*Petri Nets: An Introduction*, Volume 4 of*EATCS Monographs on Theoretical Computer Science*, Springer, 1985.Google Scholar - [Sis85]A.P. Sistla, On caracterization of safety and liveness properties in temporal logic,
*Proc. 4th ACM Symp. Princ. of Dist. Comp.*, 1985, pp. 39–48.Google Scholar - [Str82]R.S. Street, Propositional dynamic logic with converse,
*Information and Control***54**, 1982, pp. 121–141.CrossRefGoogle Scholar - [Tho81]W. Thomas, A combinatorial approach to the theory of ω-automata,
*Inf. and Cont.***48**, 1981, pp. 261–283.CrossRefGoogle Scholar - [VW86]M.Y. Vardi and P. Wolper, Automata theoretic techniques for modal logics of programs,
*J. Comp. Sys. Sci.***32**, 1986, pp. 183–221.CrossRefGoogle Scholar - [Wag79]
- [WGS87]J. Widom, D. Gries, and F.B. Schneider, Completeness and incompleteness of trace-based network proof system,
*Proc. 14th ACM Symp. Princ. of Prog. Lang.*, 1987, pp. 27–38.Google Scholar - [Wol83]P. Wolper, Temporal logic can be more expressive,
*Inf. and Cont.***56**, 1983, pp. 72–99.CrossRefGoogle Scholar - [Zuc86]L. Zuck,
*Past Temporal Logic*, Ph.D. thesis, Weizmann Institute, 1986.Google Scholar - [Zuc87]L. Zuck, Manuscript, 1987.Google Scholar
- [Zwi88]J. Zwiers,
*Compositionality, Concurrency and Partial Correctness: Proof theories for networks of processes and their connection*, Ph.D. thesis, University of Eindhoven, The Netherlands, 1988. To appear in the LNCS-series, Springer.Google Scholar