Nothing Special   »   [go: up one dir, main page]

skip to main content
article
Open access

A Proof System for Communicating Sequential Processes

Published: 01 July 1980 Publication History

Abstract

An axiomatic proof system is presented for proving partial correctness and absence of deadlock (and failure) of communicating sequential processes. The key (meta) rule introduces cooperation between proofs, a new concept needed to deal with proofs about synchronization by message passing. CSP's new convention for distributed termination of loops is dealt with. Applications of the method involve correctness proofs for two algorithms, one for distributed partitioning of sets, the other for distributed computation of the greatest common divisor of n numbers.

References

[1]
APT, K.R. Recursive assertions and parallel programs. Submitted for publication.
[2]
APT, K.R., DE ROEVER, W.P., AND FRANCEZ, N. Weakest precondition semantics for communicaring processes. To appear.
[3]
ASHCRO~r, E. Proving assertions about parallel programs. J. Comput. Syst. Sci. 10 (1975), 110- 135.
[4]
CHANOY, K.M., AND MISRA, J. An axiomatic proof technique for networks of communicating processes. Tech. Rep. T1~-98, Dep. of Computer Science, Univ. of Texas at Austin, 1979.
[5]
DIJKSTRA, E.W. A correctness proof for communicating processes--A small exercise. EWD-607, Burroughs, Nuenen, The Netherlands, 1977.
[6]
FRANCEZ, N. On achieving distributed termination. A CM Trans. Program, Lang. Syst. 2, 1 (January 1980), 42-55.
[7]
FRANCEZ, N., HOARE, C.A.R., LEHMANN, D.J., AND DE ROEVER, W.P. Semantics of nondeterminism, concurrency and communication. J. Comput. Syst. Sci. 19 (1979), 290-308.
[8]
FRANCEZ, N., AND PNUELI, A. A proof method for cyclic programs. Acta Inf. 9 (1978).
[9]
FRANCEZ, N., AND RODEH, M. Achieving distributed termination without freezing. Rep. TR 72, IBM Israel Scientific Center, 1980.
[10]
HOARE, C.A.R. Towards a theory of parallel programming. In Operating Systems Techniques, C.A.R. Hoare and R. Perrot, Eds., Academic Press, New York, 1972.
[11]
HOARE, C.A.R. Communicating sequential processes. Commun, ACM 21, 8 (August 1978), 666- 677.
[12]
HOWARD, J.H. Proving monitors. Commun. ACM 19, 5 (May 1976), 273-279.
[13]
LAMPORT, L. Proving the correctness of multiprocess programs. IEEE Trans. Softw. Eng. 3, 2 (1977), 125-143.
[14]
LEVlN, G.M. A proof technique for communicating sequential processes (with an example). Tech. Rep., Computer Science Dep., Cornell Univ., 1979. To be submitted to Acta Inf.
[15]
MAZVRKIEWICZ, A. A complete set of assertions on distributed systems. Inst. of Computer Science, Polish Academy of Science, 1979.
[16]
OWiCKI, S.S. A consistent and complete deductive system for the verification of parallel programs. Proc. 8th ACM Syrnp. on Theory of Computing, 1976, 73-86.
[17]
OWICKI, S.S., AND GRIES, D. Verifying properties of parallel programs: An axiomatic approach. Commun. ACM 19, 5 (May 1976), 279-285.
[18]
OWlCKI, S.S., AND GRIES, D. An axiomatic proof technique for parallel programs. L Acta Inf. 6, 1976, 319-340.

Cited By

View all
  • (2024)Verificación de Programas DistribuidosRevista Abierta de Informática Aplicada10.59471/raia2023877:2(51-70)Online publication date: 12-Feb-2024
  • (2024)Locally Abstract, Globally Concrete Semantics of Concurrent Programming LanguagesACM Transactions on Programming Languages and Systems10.1145/364843946:1(1-58)Online publication date: 16-Feb-2024
  • (2024)A proof system of the CaIT calculusFrontiers of Computer Science: Selected Publications from Chinese Universities10.1007/s11704-022-2258-318:2Online publication date: 1-Apr-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Programming Languages and Systems
ACM Transactions on Programming Languages and Systems  Volume 2, Issue 3
July 1980
195 pages
ISSN:0164-0925
EISSN:1558-4593
DOI:10.1145/357103
Issue’s Table of Contents
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: 01 July 1980
Published in TOPLAS Volume 2, Issue 3

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)90
  • Downloads (Last 6 weeks)8
Reflects downloads up to 12 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Verificación de Programas DistribuidosRevista Abierta de Informática Aplicada10.59471/raia2023877:2(51-70)Online publication date: 12-Feb-2024
  • (2024)Locally Abstract, Globally Concrete Semantics of Concurrent Programming LanguagesACM Transactions on Programming Languages and Systems10.1145/364843946:1(1-58)Online publication date: 16-Feb-2024
  • (2024)A proof system of the CaIT calculusFrontiers of Computer Science: Selected Publications from Chinese Universities10.1007/s11704-022-2258-318:2Online publication date: 1-Apr-2024
  • (2023)Towards Exogenous Coordination of Concurrent Cloud ApplicationsInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402350038934:01(1-25)Online publication date: 5-Oct-2023
  • (2023)Uniform Substitution for Dynamic Logic with Communicating Hybrid ProgramsAutomated Deduction – CADE 2910.1007/978-3-031-38499-8_6(96-115)Online publication date: 1-Jul-2023
  • (2023)Reasoning About Choreographic ProgramsCoordination Models and Languages10.1007/978-3-031-35361-1_8(144-162)Online publication date: 15-Jun-2023
  • (2022)Approximate verification of concurrent systems using token structures and invariantsInternational Journal on Software Tools for Technology Transfer (STTT)10.1007/s10009-022-00650-624:4(613-633)Online publication date: 1-Aug-2022
  • (2022)Issues in the design of a parallel object-oriented languageFormal Aspects of Computing10.1007/BF018872141:1(366-411)Online publication date: 2-Jan-2022
  • (2022)Reasoning about dynamically evolving process structuresFormal Aspects of Computing10.1007/BF012154086:3(269-316)Online publication date: 2-Jan-2022
  • (2021)Assessing the Success and Impact of Hoare’s LogicTheories of Programming10.1145/3477355.3477359(41-76)Online publication date: 4-Oct-2021
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media