Efficient Verification of Concurrent Systems Using Synchronisation Analysis and SAT/SMT Solving
-
Published:2019-08-17
Issue:3
Volume:28
Page:1-43
-
ISSN:1049-331X
-
Container-title:ACM Transactions on Software Engineering and Methodology
-
language:en
-
Short-container-title:ACM Trans. Softw. Eng. Methodol.
Author:
Antonino Pedro1,
Gibson-Robinson Thomas1,
Roscoe A. W.1
Affiliation:
1. Department of Computer Science, University of Oxford, Oxford, Oxfordshire, UK
Abstract
This article investigates how the use of approximations can make the formal verification of concurrent systems scalable. We propose the idea of
synchronisation analysis
to automatically capture global invariants and approximate reachability. We calculate invariants on how components participate on global system synchronisations and use a notion of consistency between these invariants to establish whether components can effectively communicate to reach some system state. Our synchronisation-analysis techniques try to show either that a system state is unreachable by demonstrating that components cannot agree on the order they participate in system rules or that a system state is unreachable by demonstrating components cannot agree on the number of times they participate on system rules. These fully automatic techniques are applied to check deadlock and local-deadlock freedom in the
PairStatic
framework. It extends
Pair
(a recent framework where we use pure pairwise analysis of components and SAT checkers to check deadlock and local-deadlock freedom) with techniques to carry out synchronisation analysis. So, not only can it compute the same local invariants that
Pair
does, it can leverage
global
invariants found by synchronisation analysis, thereby improving the reachability approximation and tightening our verifications. We implement
PairStatic
in our DeadlOx tool using SAT/SMT and demonstrate the improvements they create in checking (local) deadlock freedom.
Funder
Innovate UK and the Aerospace Technology Institute
Engineering and Physical Sciences Research Council
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior
Publisher
Association for Computing Machinery (ACM)
Reference85 articles.
1. Pedro Antonino. 2018. Verifying Concurrent Systems by Approximations. Ph.D. Thesis. University of Oxford Oxford UK. Retrieved from: https://ora.ox.ac.uk/objects/uuid:f75c782c-a168-49b3-bfed-e2715f027157. Pedro Antonino. 2018. Verifying Concurrent Systems by Approximations. Ph.D. Thesis. University of Oxford Oxford UK. Retrieved from: https://ora.ox.ac.uk/objects/uuid:f75c782c-a168-49b3-bfed-e2715f027157.
2. Efficient Deadlock-Freedom Checking Using Local Analysis and SAT Solving
3. Pedro Antonino Thomas Gibson-Robinson and A. W. Roscoe. 2018. Experiment package. Retrieved from: www.cs.ox.ac.uk/people/pedro.antonino/tosempkg.zip. Pedro Antonino Thomas Gibson-Robinson and A. W. Roscoe. 2018. Experiment package. Retrieved from: www.cs.ox.ac.uk/people/pedro.antonino/tosempkg.zip.
Cited by
6 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Formalization and Verification of the Zab Protocol Using CSP;Parallel and Distributed Computing, Applications and Technologies;2023-11-29
2. Robust Deadlock Control for Reconfigurable Printing Manufacturing System Based on Process Algebra;IEEE Access;2023
3. Approximate verification of concurrent systems using token structures and invariants;International Journal on Software Tools for Technology Transfer;2022-04-07
4. The Process Algebra CSP;Texts in Theoretical Computer Science. An EATCS Series;2022
5. Solidifier;Proceedings of the 36th Annual ACM Symposium on Applied Computing;2021-03-22