skip to main content
10.1145/41625.41626acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free Access

Specification and verification of concurrent programs by A ∀ automata

Published:01 October 1987Publication History

ABSTRACT

∀-automata are non-deterministic finite-state automata over infinite sequences. They differ from conventional automata in that a sequence is accepted if all runs of the automaton over the sequence are accepting. These automata are suggested as a formalism for the specification and verification of temporal properties of concurrent programs. It is shown that they are as expressive as extended-temporal-logic (ETL), and in some cases provide a more compact representation of properties than temporal logic. A structured diagram notation is suggested for the graphical representation of these automata. A single sound and complete proof rule is presented for proving that all computations of a program have the property specified by a ∀-automaton.

References

  1. K. Apt, G.D. Plotkin -- Countable Nondeterminism and Random Assignment, JACM 33, 4 (1986), 724-767. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. B. Alpern, F.B. Schneider -- Verifying Temporal Properties without using Temporal Logic, Technical Report TR 85-723, Cornell University (December 1985).Google ScholarGoogle Scholar
  3. E.M. Clarke, E.A. Emerson, A.P. Sistla -- Automatic Verification of Finite-State Concurrent Systems using Temporal Logic specifications, TOPLS 8, 2 (april 1986), 244-263. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. E.W. Dijkstra -- A Discipline of Programming, Prentice Hall (1976). Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. E.A. Emerson, C.L. Lei -- Modalities for Model Checking: Branching Time Strikes Back, 12th Symp. on Principles of Programming Languages (1985), 84-96. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. R.W. Floyd -- Assigning Meanings to Programs, in Mathematical Aspects of Computer Science, 19th Symp. of Appl. Math., American Mathematical Society, Providence (1967), 19-32.Google ScholarGoogle Scholar
  7. N. Francez -- Fairness, Springer-Verlag (1986).Google ScholarGoogle Scholar
  8. O. Grumberg, N. Francez, J.A. Makowsky, W.P. deRoever -- A Proof Rule for Fair Termination of Guarded Commands, Information and Control 66 (1985), 83- 102. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. D. Harel -- Statecharts: A Visual Formalism for Complex Systems, Technical Report, Weizmann Institute (1984).Google ScholarGoogle Scholar
  10. D. Harel -- Effective Transformations on Infinite Trees, with Applications to High Undecidability, Dominoes, and Fairness, JACM 33, 1 (1986), 224-248. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. C.A.R. Hoare -- An Axiomatic Approach to Computer Programming, CACM 12 (1969), 576-583. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. O. Lichtenstein, A. Pnueli -- Checking that Finite-State Concurrent Programs Satisfy their Linear Specifications, 12th Symp. on Principles of Programming Languages (1985), 97-107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Lehmann, A. Pnueli, J. Stavi -- Impartiality, Justice and Fairness: The Ethics of Concurrent Termination, LNCS 115, Springer-Verlag (1981). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Z. Manna, A. Pnueli -- The Temporal Framework for Concurrent Programming, in The Correctness Problem in Computer Science (R.S. Boyer, J.S. Moore, eds.), Academic Press (1981), 215-274.Google ScholarGoogle Scholar
  15. Z. Manna, A. Pnueli -- Adequate Proof Principles for Invariances and Liveness Properties of Concurrent Programs, Science of Computer Programming 4 (1984), 257-289. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Z. Manna, A. Pnueli -- Specification and Verification of Concurrent Programs by ¿-Automata, Computer Science Report, Stanford University (January 1987).Google ScholarGoogle Scholar
  17. S. Owicki, L. Lamport -- Proving Liveness Properties of Concurrent Programs, TOPLAS 4, 3 (1982), 455-495. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. G.L. Peterson -- Myths about the Mutual-exclusion Problem, Information Processing Letters 12, 3 (1981), 115-116.Google ScholarGoogle ScholarCross RefCross Ref
  19. F.A. Stomp, W.P. deRoever, R.T. Gerth -- The μ-Calculus as an Assertion Language for Fairness Arguments, Technical Report 84-12, Utrecht (1984).Google ScholarGoogle Scholar
  20. M.Y. Vardi, P. Wolper -- An Automata-theoretic Approach to Automatic Program Verification, IEEE Symp. on Logic in Computer Science, Cambridge (1986), 332- 344.Google ScholarGoogle Scholar
  21. P. Wolper -- Temporal Logic can be More Expressive, 22nd Symp. on Foundations of Computer Science (1981), 340-348. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. P. Wolper, M.Y. Vardi, A.P. Sistla -- Reasoning about Infinite Computation Paths, 24th IEEE Symp. on Foundations of Computer Science, Tucson (1983), 185-194. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Specification and verification of concurrent programs by A ∀ automata

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              POPL '87: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
              October 1987
              326 pages
              ISBN:0897912152
              DOI:10.1145/41625

              Copyright © 1987 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 1 October 1987

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              POPL '87 Paper Acceptance Rate29of108submissions,27%Overall Acceptance Rate824of4,130submissions,20%

              Upcoming Conference

              POPL '25

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader