Skip to main content

Soundness and completeness of UNITY logic

  • Verification
  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 880))

Abstract

UNITY is a formalism for specifying, designing, and verifying concurrent programs. It consists of a notation for writing programs and a logic for reasoning about them. We study the questions of soundness and completeness of UNITY logic, in which the so-called Substitution Axiom plays a crucial role. The Substitution Axiom for UNITY Logic lifts Leibniz's rule for substitution of equals to the level of UNITY properties (temporal modalities). Because of its informal nature, it has been a major source of confusion and misunderstanding. It turns out that omitting the Substitution Axiom, however, renders UNITY Logic incomplete. To cope with this dilemma we postulate a simple axiom, called the Completeness Rule, to replace the Substitution Axiom, and show that UNITY Logic plus the Completeness Rule is sound and relatively complete (in the sense of Cook). Our proof reduces the soundness and completeness of the UNITY proof system to a known soundness and completeness result of a fragment of Linear Time Temporal Logic. Finally, we show that from a practical point of view old and new logic are essentially the same.

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. M. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison Wesley, 1988.

    Google Scholar 

  2. S. Cook. Soundness and completeness of an axiom system for program verification. SIAM Journal of Computing, 7(1): 70–90, 1978.

    Google Scholar 

  3. E. W. Dijkstra and C. S. Scholten. Predicate Calculus and Program Semantics. Springer-Verlag, 1989.

    Google Scholar 

  4. A. E. Emerson. Temporal and modal logic. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, pages 995–1072. Elsevier, 1990.

    Google Scholar 

  5. R. Gerth and A. Pnueli. The roots of UNITY. In Proceedings Fifth International Workshop on Software Specification and Design, Pittsburgh, Penn., May 1989.

    Google Scholar 

  6. D. Gries and F. B. Schneider. A Logical Approach to Discrete Math. Springer-Verlag, 1993.

    Google Scholar 

  7. C. S. Jutla, E. Knapp, and J. R. Rao. A predicate transformer approach to semantics of parallel programs. In ACM SIGACT/SIGOPT Symposium on Principles of Distributed Computing, pages 249–263, Aug. 1989.

    Google Scholar 

  8. E. Knapp. Refinement as a Basis For Concurrent Program Design. PhD thesis, The University of Texas at Austin, May 1992.

    Google Scholar 

  9. J. Kornerup. An analysis of the logic of unity. Unpublished manuscript, 1989.

    Google Scholar 

  10. Z. Manna and A. Pnueli. How to cook a temporal proof system for your pet language. In ACM Symposium on Principles of Programming Languages, 1983.

    Google Scholar 

  11. Z. Manna and A. Pnueli. Adequate proof principles for invariance and liveness properties of concurrent programs. Science of Computer Programming, 4(4): 257–289, 1984.

    Google Scholar 

  12. J. Misra. Soundness of the substitution axiom. Notes On Unity, (14), Mar. 1990.

    Google Scholar 

  13. J. R. Rao. On a notion of completeness for the leads-to. Notes On Unity, (24), July 1991.

    Google Scholar 

  14. B. Sanders. Eliminating the substitution axiom from UNITY logic. Formal Aspects of Computing, 3: 189–205, 1991.

    Google Scholar 

  15. J. L. A. van de Snepscheut. Personal Communication.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

P. S. Thiagarajan

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Knapp, E. (1994). Soundness and completeness of UNITY logic. In: Thiagarajan, P.S. (eds) Foundation of Software Technology and Theoretical Computer Science. FSTTCS 1994. Lecture Notes in Computer Science, vol 880. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58715-2_139

Download citation

  • DOI: https://doi.org/10.1007/3-540-58715-2_139

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58715-6

  • Online ISBN: 978-3-540-49054-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics