Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
Skip header Section
Concurrency verification: introduction to compositional and noncompositional methodsDecember 2001
Publisher:
  • Cambridge University Press
  • 40 W. 20 St. New York, NY
  • United States
ISBN:978-0-521-80608-4
Published:01 December 2001
Pages:
776
Skip Bibliometrics Section
Reflects downloads up to 20 Jan 2025Bibliometrics
Skip Abstract Section
Abstract

This is a systematic and comprehensive introduction both to compositional proof methods for the state-based verification of concurrent programs, such as the assumption-commitment and rely-guarantee paradigms, and to noncompositional methods, whose presentation culminates in an exposition of the communication-closed-layers (CCL) paradigm for verifying network protocols.

Cited By

  1. ACM
    Antonopoulos T, Koskinen E, Le T, Nagasamudram R, Naumann D and Ngo M (2023). An Algebra of Alignment for Relational Verification, Proceedings of the ACM on Programming Languages, 7:POPL, (573-603), Online publication date: 9-Jan-2023.
  2. ACM
    Jones C and Misra J Finding Effective Abstractions Theories of Programming, (23-40)
  3. Hayes I and Meinicke L Developing an Algebra for Rely/Guarantee Concurrency: Design Decisions and Challenges Unifying Theories of Programming, (176-197)
  4. Jones C Reasoning About Shared-Variable Concurrency: Interactions Between Research Threads Formal Methods. FM 2019 International Workshops, (54-72)
  5. Hayes I, Meinicke L, Winter K and Colvin R (2019). A synchronous program algebra: a basis for reasoning about shared-memory and event-based concurrency, Formal Aspects of Computing, 31:2, (133-163), Online publication date: 1-Apr-2019.
  6. Matos Pedro A, Pinto J, Pereira D and Pinho L (2018). Runtime verification of autopilot systems using a fragment of MTL-$${\int }$$?, International Journal on Software Tools for Technology Transfer (STTT), 20:4, (379-395), Online publication date: 1-Aug-2018.
  7. Broy M (2018). Theory and methodology of assumption/commitment based system interface specification and architectural contracts, Formal Methods in System Design, 52:1, (33-87), Online publication date: 1-Feb-2018.
  8. Colvin R, Hayes I and Meinicke L (2017). Designing a semantic model for a wide-spectrum language with concurrency, Formal Aspects of Computing, 29:5, (853-875), Online publication date: 1-Sep-2017.
  9. Moszkowski B and Guelev D (2017). An application of temporal projection to interleaving concurrency, Formal Aspects of Computing, 29:4, (705-750), Online publication date: 1-Jul-2017.
  10. ACM
    Siirtola A, Tripakis S and Heljanko K (2017). When Do We Not Need Complex Assume-Guarantee Rules?, ACM Transactions on Embedded Computing Systems, 16:2, (1-25), Online publication date: 14-Apr-2017.
  11. Hooman J Industrial Application of Formal Models Generated from Domain Specific Languages Essays Dedicated to Frank de Boer on Theory and Practice of Formal Methods - Volume 9660, (277-293)
  12. Groenewegen L, Kuiper R and Vink E Towards a Proof Method for Paradigm Essays Dedicated to Frank de Boer on Theory and Practice of Formal Methods - Volume 9660, (242-260)
  13. ACM
    Dongol B and Derrick J (2015). Verifying Linearisability, ACM Computing Surveys, 48:2, (1-43), Online publication date: 21-Nov-2015.
  14. Moszkowski B and Guelev D An Application of Temporal Projection toźInterleaving Concurrency Proceedings of the First International Symposium on Dependable Software Engineering: Theories, Tools, and Applications - Volume 9409, (153-167)
  15. Dongol B and Derrick J (2015). Interval-based data refinement, Science of Computer Programming, 111:P2, (214-247), Online publication date: 1-Nov-2015.
  16. ACM
    Farzan A, Kincaid Z and Podelski A (2015). Proof Spaces for Unbounded Parallelism, ACM SIGPLAN Notices, 50:1, (407-420), Online publication date: 11-May-2015.
  17. Namjoshi K and Trefler R Analysis of Dynamic Process Networks Proceedings of the 21st International Conference on Tools and Algorithms for the Construction and Analysis of Systems - Volume 9035, (164-178)
  18. ACM
    Farzan A, Kincaid Z and Podelski A Proof Spaces for Unbounded Parallelism Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, (407-420)
  19. Cimatti A and Tonetta S (2015). Contracts-refinement proof system for component-based embedded systems, Science of Computer Programming, 97:P3, (333-348), Online publication date: 1-Jan-2015.
  20. Tofan B, Travkin O, Schellhorn G and Wehrheim H (2014). Two approaches for proving linearizability of multiset, Science of Computer Programming, 96:P3, (297-314), Online publication date: 15-Dec-2014.
  21. ACM
    He F, Wang B, Yin L and Zhu L Symbolic assume-guarantee reasoning through BDD learning Proceedings of the 36th International Conference on Software Engineering, (1071-1082)
  22. ACM
    Pradella M, Morzenti A and Pietro P (2013). Bounded satisfiability checking of metric temporal logic specifications, ACM Transactions on Software Engineering and Methodology, 22:3, (1-54), Online publication date: 1-Jul-2013.
  23. Zhu H, Xu Q, Ma C, Qin S and Qiu Z The rely/guarantee approach to verifying concurrent BPEL programs Proceedings of the 10th international conference on Software Engineering and Formal Methods, (172-187)
  24. Jones C Abstraction as a unifying link for formal approaches to concurrency Proceedings of the 10th international conference on Software Engineering and Formal Methods, (1-15)
  25. ACM
    Rouff C, Buskens R, Pullum L, Cui X and Hinchey M The AdaptiV approach to verification of adaptive systems Proceedings of the Fifth International C* Conference on Computer Science and Software Engineering, (118-122)
  26. Namjoshi K and Trefler R Local symmetry and compositional verification Proceedings of the 13th international conference on Verification, Model Checking, and Abstract Interpretation, (348-362)
  27. Goncharov S and Schröder L A coinductive calculus for asynchronous side-effecting processes Proceedings of the 18th international conference on Fundamentals of computation theory, (276-287)
  28. Miné A Static analysis of run-time errors in embedded critical parallel C programs Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software, (398-418)
  29. Faber J Verification architectures Proceedings of the 8th international conference on Integrated formal methods, (136-151)
  30. Cohen A, Namjoshi K and Sa'ar Y A dash of fairness for compositional reasoning Proceedings of the 22nd international conference on Computer Aided Verification, (543-557)
  31. ACM
    Namjoshi K and Trefler R (2010). On the completeness of compositional reasoning methods, ACM Transactions on Computational Logic, 11:3, (1-22), Online publication date: 1-May-2010.
  32. Bäumler S, Balser M, Nafz F, Reif W and Schellhorn G (2010). Interactive verification of concurrent systems using symbolic execution, AI Communications, 23:2-3, (285-307), Online publication date: 1-Apr-2010.
  33. Hoang T and Abrial J Event-b decomposition for parallel programs Proceedings of the Second international conference on Abstract State Machines, Alloy, B and Z, (319-333)
  34. Emerson E Meanings of model checking Concurrency, Compositionality, and Correctness, (237-249)
  35. Broy M Synchronous message passing Concurrency, Compositionality, and Correctness, (118-126)
  36. Cohen A and Namjoshi K (2009). Local proofs for global safety properties, Formal Methods in System Design, 34:2, (104-125), Online publication date: 1-Apr-2009.
  37. Huisman M and Gurov D (2009). Composing Modal Properties of Programs with Procedures, Electronic Notes in Theoretical Computer Science (ENTCS), 203:7, (87-101), Online publication date: 1-Apr-2009.
  38. ACM
    Feng X (2009). Local rely-guarantee reasoning, ACM SIGPLAN Notices, 44:1, (315-327), Online publication date: 21-Jan-2009.
  39. ACM
    Feng X Local rely-guarantee reasoning Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (315-327)
  40. Moffat N and Goldsmith M (2008). Assumption---Commitment Support for CSP Model Checking, Journal of Automated Reasoning, 41:3-4, (365-398), Online publication date: 1-Nov-2008.
  41. Cohen A and Namjoshi K Local Proofs for Linear-Time Properties of Concurrent Programs Proceedings of the 20th international conference on Computer Aided Verification, (149-161)
  42. Li J, Sun X, Xie F and Song X Component-Based Abstraction and Refinement Proceedings of the 10th international conference on Software Reuse: High Confidence Software Reuse in Large Systems, (39-51)
  43. ACM
    Bianculli D and Ghezzi C Towards a methodology for lifelong validation of service compositions Proceedings of the 2nd international workshop on Systems development in SOA environments, (7-12)
  44. Andova S, Cremers C, Gjøsteen K, Mauw S, Mjølsnes S and Radomirović S (2008). A framework for compositional verification of security protocols, Information and Computation, 206:2-4, (425-459), Online publication date: 1-Feb-2008.
  45. Hillebrand M and Paul W On the architecture of system verification environments Proceedings of the 3rd international Haifa verification conference on Hardware and software: verification and testing, (153-168)
  46. Hillebrand M and Paul W On the Architecture of System Verification Environments Hardware and Software: Verification and Testing, (153-168)
  47. Langenstein B, Nonnengart A, Rock G and Stephan W Verification of distributed applications Proceedings of the 26th international conference on Computer Safety, Reliability, and Security, (315-328)
  48. Cohen A and Namjoshi K Local proofs for global safety properties Proceedings of the 19th international conference on Computer aided verification, (55-67)
  49. Moffat N and Goldsmith M (2007). Assumption-Commitment Support for CSP Model Checking, Electronic Notes in Theoretical Computer Science (ENTCS), 185, (121-137), Online publication date: 1-Jul-2007.
  50. Jones C (2007). Splitting atoms safely, Theoretical Computer Science, 375:1-3, (109-119), Online publication date: 20-Apr-2007.
  51. Namjoshi K Symmetry and completeness in the analysis of parameterized systems Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation, (299-313)
  52. Xie F, Yang G and Song X Compositional reasoning for hardware/software co-verification Proceedings of the 4th international conference on Automated Technology for Verification and Analysis, (154-169)
  53. Charpentier M (2006). Composing invariants, Science of Computer Programming, 60:3, (221-243), Online publication date: 1-May-2006.
  54. Jones C (2006). An Approach to Splitting Atoms Safely, Electronic Notes in Theoretical Computer Science (ENTCS), 155, (43-60), Online publication date: 1-May-2006.
  55. Babot F, Bertran M and Climent A A static communication elimination algorithm for distributed system verification Proceedings of the 7th international conference on Formal Methods and Software Engineering, (375-389)
  56. Furia C, Rossi M, Mandrioli D and Morzenti A Automated compositional proofs for real-time systems Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering, (326-340)
  57. Gössler G and Sifakis J (2005). Composition for component-based modeling, Science of Computer Programming, 55:1-3, (161-183), Online publication date: 1-Mar-2005.
  58. Compton M Stenning's protocol implemented in UDP and verified in Isabelle Proceedings of the 2005 Australasian symposium on Theory of computing - Volume 41, (21-30)
  59. ACM
    Hesselink W (2005). Eternity variables to prove simulation of specifications, ACM Transactions on Computational Logic, 6:1, (175-201), Online publication date: 1-Jan-2005.
  60. ACM
    Yu D and Shao Z Verification of safety properties for concurrent assembly code Proceedings of the ninth ACM SIGPLAN international conference on Functional programming, (175-188)
  61. ACM
    Yu D and Shao Z (2004). Verification of safety properties for concurrent assembly code, ACM SIGPLAN Notices, 39:9, (175-188), Online publication date: 19-Sep-2004.
  62. ACM
    Solanki M, Cau A and Zedan H Augmenting semantic web service descriptions with compositional specification Proceedings of the 13th international conference on World Wide Web, (544-552)
  63. Compositional verification for secure loading of smart card applets Proceedings of the Second ACM/IEEE International Conference on Formal Methods and Models for Co-Design, (211-222)
  64. ACM
    Xie F and Browne J (2003). Verified systems by composition from verified components, ACM SIGSOFT Software Engineering Notes, 28:5, (277-286), Online publication date: 1-Sep-2003.
  65. ACM
    Xie F and Browne J Verified systems by composition from verified components Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering, (277-286)
  66. Cau A, Hale R, Dimitrov J, Zedan H, Moszkowski B, Manjunathaiah M and Spivey M (2002). A Compositional Framework for Hardware/Software Co-Design, Design Automation for Embedded Systems, 6:4, (367-399), Online publication date: 1-Jul-2002.

Reviews

Gunther W. Schmidt

This rather voluminous text contains about 420 numbered definitions, theorems, lemmas, and examples. The introduction (Part 1) is nearly a book of its own, extending over 68 pages. However, one can learn much in reading it. The main parts of the book are aligned along the following chapters: “Inductive Assertion Method” (chapter 2), “Shared Variable Concurrency” (chapter 3), and “Synchronous Message Passing” (chapter 4). Together, these chapters constitute Part 2. In an analogous way, Hoare logic is studied in several chapters of Part 4. First, yet another discussion of the Hoare calculus in comparison with Floyd’s inductive assertion method is given (chapter 9). This establishes the basis for discussion of concurrency investigations on these topics: “Shared Variable Concurrency” (chapter 10), and “Synchronous Message Passing” (chapter 11). In between, Part 3 is devoted to compositional proof methods. The authors concentrate on both assumption-commitment-based reasoning and on rely-guarantee-based reasoning in studying synchronous message passing and shared-variable concurrency. Part 5 ends the book by considering the shared variable approach, with asynchronous communication. Temporal logic is used, as well as partial orders, for the handling of a logic fragment. The book is more or less self-contained. It is capable of replacing a multitude of original articles, written in a diversity of styles and notations, with one coherent text. Wherever appropriate, however, the book does refer in detail to original research, and includes many historical hints. It also provides a rich choice of exercises. I am not sure whether I should be more impressed by the picture gallery included or by the content of the book. It will certainly support the future fame of the persons included. Online Computing Reviews Service

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Recommendations