Skip to main content
Top
Published in: International Journal on Software Tools for Technology Transfer 4/2022

07-04-2022 | General

Approximate verification of concurrent systems using token structures and invariants

Authors: Pedro Antonino, Thomas Gibson-Robinson, A. W. Roscoe

Published in: International Journal on Software Tools for Technology Transfer | Issue 4/2022

Log in

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Distributed systems often rely on token structures to avoid undesired states and behave correctly. While conservative token structures ensure that a fixed number of tokens exist at all times, existential structures guarantee that tokens cannot be completely eliminated. In this paper, we show how a SAT/SMT checker can be used to automatically detect such token structures in concurrent systems and how to derive the natural invariants they preserve. We use these invariants to improve the precision of a deadlock-checking framework that is based on local analysis. Moreover, we conducted some practical experiments to demonstrate that this new framework is as efficient as similar incomplete techniques for deadlock-freedom analysis while handling a different class of systems.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
Setting the polarity of SAT variables, so that the solver first decides to assign variables to false, can substantially speed this minimisation process.
 
2
We would need to replace \((\bigvee _{\begin{array}{c} i \in \{1 \ldots n\} \\ \wedge {\mathcal {A}}(p_i) \end{array}} t_{i,{\hat{s}}_i})\) by \((\sum _{\begin{array}{c} i \in \{1 \ldots n\} \\ \wedge {\mathcal {A}}(p_i) \end{array}} t_{i,{\hat{s}}_i} > 0)\) in updating \({\mathcal {F}}\) in Minimise.
 
Literature
1.
go back to reference Agerwala, T., Choed-Amphai, Y.C.: A synthesis rule for concurrent systems. In: Design Automation, 1978. 15th Conference on, pp. 305–311. IEEE (1978) Agerwala, T., Choed-Amphai, Y.C.: A synthesis rule for concurrent systems. In: Design Automation, 1978. 15th Conference on, pp. 305–311. IEEE (1978)
2.
go back to reference Andrews, G.R., Schneider, F.B.: Concepts and notations for concurrent programming. ACM Comput. Surv. 15(1), 3–43 (1983)CrossRef Andrews, G.R., Schneider, F.B.: Concepts and notations for concurrent programming. ACM Comput. Surv. 15(1), 3–43 (1983)CrossRef
4.
go back to reference Antonino, P., Gibson-Robinson, T., Roscoe, A.: Efficient deadlock-freedom checking using local analysis and SAT solving. In: IFM, no. 9681 in LNCS, pp. 345–360. Springer (2016) Antonino, P., Gibson-Robinson, T., Roscoe, A.: Efficient deadlock-freedom checking using local analysis and SAT solving. In: IFM, no. 9681 in LNCS, pp. 345–360. Springer (2016)
5.
go back to reference Antonino, P., Gibson-Robinson, T., Roscoe, A.: Tighter reachability criteria for deadlock freedom analysis. In: FM, no. 9995 in LNCS. Springer (2016) Antonino, P., Gibson-Robinson, T., Roscoe, A.: Tighter reachability criteria for deadlock freedom analysis. In: FM, no. 9995 in LNCS. Springer (2016)
7.
go back to reference Antonino, P., Gibson-Robinson, T., Roscoe, A.W.: The automatic detection of token structures and invariants using SAT checking. In: TACAS, no. 10206 in LNCS, pp. 249–265. Springer (2017) Antonino, P., Gibson-Robinson, T., Roscoe, A.W.: The automatic detection of token structures and invariants using SAT checking. In: TACAS, no. 10206 in LNCS, pp. 249–265. Springer (2017)
8.
go back to reference Antonino, P., Gibson-Robinson, T., Roscoe, A.W.: Checking static properties using conservative SAT approximations for reachability. LNCS (2017) Antonino, P., Gibson-Robinson, T., Roscoe, A.W.: Checking static properties using conservative SAT approximations for reachability. LNCS (2017)
9.
go back to reference Antonino, P., Gibson-Robinson, T., Roscoe, A.W.: Efficient verification of concurrent systems using local-analysis-based approximations and SAT solving. Formal Asp. Comput. 31(3), 375–409 (2019)MathSciNetCrossRef Antonino, P., Gibson-Robinson, T., Roscoe, A.W.: Efficient verification of concurrent systems using local-analysis-based approximations and SAT solving. Formal Asp. Comput. 31(3), 375–409 (2019)MathSciNetCrossRef
10.
go back to reference Antonino, P., Gibson-Robinson, T., Rosco, A..W.: Efficient verification of concurrent systems using synchronisation analysis and SAT/SMT solving. ACM Trans. Softw. Eng. Methodol. 28(3), 18:1-18:43 (2019)CrossRef Antonino, P., Gibson-Robinson, T., Rosco, A..W.: Efficient verification of concurrent systems using synchronisation analysis and SAT/SMT solving. ACM Trans. Softw. Eng. Methodol. 28(3), 18:1-18:43 (2019)CrossRef
11.
go back to reference Antonino, P., Oliveira, M.M., Sampaio, A., Kristensen, K., Bryans, J.: Leadership election: an industrial SoS application of compositional deadlock verification. NFM, LNCS 8430, 31–45 (2014) Antonino, P., Oliveira, M.M., Sampaio, A., Kristensen, K., Bryans, J.: Leadership election: an industrial SoS application of compositional deadlock verification. NFM, LNCS 8430, 31–45 (2014)
13.
go back to reference Apt, K.R., Francez, N., De Roever, W.P.: A proof system for communicating sequential processes. ACM Trans. Program. Lang. Syst. (TOPLAS) 2(3), 359–385 (1980)CrossRef Apt, K.R., Francez, N., De Roever, W.P.: A proof system for communicating sequential processes. ACM Trans. Program. Lang. Syst. (TOPLAS) 2(3), 359–385 (1980)CrossRef
14.
go back to reference Attie, P.C., Bensalem, S., Bozga, M., Jaber, M., Sifakis, J., Zaraket, F.A.: An abstract framework for deadlock prevention in BIP. In: FORTE, no. 7892 in LNCS, pp. 161–177. Springer (2013) Attie, P.C., Bensalem, S., Bozga, M., Jaber, M., Sifakis, J., Zaraket, F.A.: An abstract framework for deadlock prevention in BIP. In: FORTE, no. 7892 in LNCS, pp. 161–177. Springer (2013)
16.
go back to reference Attie, P.C., Chockler, H.: Efficiently verifiable conditions for deadlock-freedom of large concurrent programs. In: VMCAI, pp. 465–481. Springer (2005) Attie, P.C., Chockler, H.: Efficiently verifiable conditions for deadlock-freedom of large concurrent programs. In: VMCAI, pp. 465–481. Springer (2005)
17.
go back to reference Audemard, G., Simon, L.: Predicting Learnt Clauses Quality in Modern SAT Solvers. IJCAI’09, pp. 399–404. San Francisco, CA, USA (2009) Audemard, G., Simon, L.: Predicting Learnt Clauses Quality in Modern SAT Solvers. IJCAI’09, pp. 399–404. San Francisco, CA, USA (2009)
18.
go back to reference Baier, C., Katoen, J.P.: Principles of Model Checking (Representation and Mind Series). The MIT Press, United States (2008)MATH Baier, C., Katoen, J.P.: Principles of Model Checking (Representation and Mind Series). The MIT Press, United States (2008)MATH
19.
go back to reference Batcher, K.E.: Sorting networks and their applications. In: Proceedings of the April 30–May 2, 1968, Spring Joint Computer Conference, AFIPS ’68 (Spring), pp. 307–314. ACM, New York, NY, USA (1968). 10.1145/1468075.1468121 Batcher, K.E.: Sorting networks and their applications. In: Proceedings of the April 30–May 2, 1968, Spring Joint Computer Conference, AFIPS ’68 (Spring), pp. 307–314. ACM, New York, NY, USA (1968). 10.1145/1468075.1468121
21.
go back to reference Bensalem, S., Griesmayer, A., Legay, A., Nguyen, T.H., Sifakis, J., Yan, R.: D-finder 2: Towards efficient correctness of incremental design. In: NFM, pp. 453–458 (2011) Bensalem, S., Griesmayer, A., Legay, A., Nguyen, T.H., Sifakis, J., Yan, R.: D-finder 2: Towards efficient correctness of incremental design. In: NFM, pp. 453–458 (2011)
23.
go back to reference Biere, A., Cimatti, A., Clarke, E., Zhu, Y.: Symbolic model checking without bdds. Tools and Algorithms for the Construction and Analysis of Systems pp. 193–207 (1999) Biere, A., Cimatti, A., Clarke, E., Zhu, Y.: Symbolic model checking without bdds. Tools and Algorithms for the Construction and Analysis of Systems pp. 193–207 (1999)
24.
go back to reference Brookes, S.D., Roscoe, A.W.: Deadlock analysis in networks of communicating processes. Distrib. Comput. 4, 209–230 (1991)MathSciNetCrossRef Brookes, S.D., Roscoe, A.W.: Deadlock analysis in networks of communicating processes. Distrib. Comput. 4, 209–230 (1991)MathSciNetCrossRef
25.
go back to reference Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: 1020 states and beyond. Inform. comput. 98(2), 142–170 (1992)MathSciNetCrossRef Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: 1020 states and beyond. Inform. comput. 98(2), 142–170 (1992)MathSciNetCrossRef
26.
go back to reference Chaki, S., Clarke, E., Ouaknine, J., Sharygina, N., Sinha, N.: Concurrent software verification with states, events, and deadlocks. Form. Asp. Comput. 17(4), 461–483 (2005)CrossRef Chaki, S., Clarke, E., Ouaknine, J., Sharygina, N., Sinha, N.: Concurrent software verification with states, events, and deadlocks. Form. Asp. Comput. 17(4), 461–483 (2005)CrossRef
27.
go back to reference Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement. In: Computer aided verification, pp. 154–169. Springer (2000) Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement. In: Computer aided verification, pp. 154–169. Springer (2000)
28.
go back to reference Dijkstra, E.W.: The structure of the“the”-multiprogramming system. Commun. ACM 11(5), 341–346 (1968)CrossRef Dijkstra, E.W.: The structure of the“the”-multiprogramming system. Commun. ACM 11(5), 341–346 (1968)CrossRef
29.
go back to reference Eén, N., Sörensson, N.: Translating pseudo-boolean constraints into SAT. JSAT 2(1–4), 1–26 (2006)MATH Eén, N., Sörensson, N.: Translating pseudo-boolean constraints into SAT. JSAT 2(1–4), 1–26 (2006)MATH
30.
go back to reference Filho, M.S.C., Oliveira, M.V.M., Sampaio, A., Cavalcanti, A.: Local livelock analysis of component-based models. In: ICFEM, pp. 279–295 (2016) Filho, M.S.C., Oliveira, M.V.M., Sampaio, A., Cavalcanti, A.: Local livelock analysis of component-based models. In: ICFEM, pp. 279–295 (2016)
31.
go back to reference Gibson-Robinson, T., Armstrong, P., Boulgakov, A., Roscoe, A.: FDR3 – A Modern Refinement Checker for CSP. TACAS, LNCS 8413, 187–201 (2014)MATH Gibson-Robinson, T., Armstrong, P., Boulgakov, A., Roscoe, A.: FDR3 – A Modern Refinement Checker for CSP. TACAS, LNCS 8413, 187–201 (2014)MATH
32.
go back to reference Gibson-Robinson, T., Hansen, H., Roscoe, A., Wang, X.: Practical partial order reduction for CSP. NFM, LNCS 9058, 188–203 (2015) Gibson-Robinson, T., Hansen, H., Roscoe, A., Wang, X.: Practical partial order reduction for CSP. NFM, LNCS 9058, 188–203 (2015)
33.
go back to reference Godefroid, P., Wolper, P.: Using partial orders for the efficient verification of deadlock freedom and safety properties. FMSD 2(2), 149–164 (1993)MATH Godefroid, P., Wolper, P.: Using partial orders for the efficient verification of deadlock freedom and safety properties. FMSD 2(2), 149–164 (1993)MATH
35.
go back to reference Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, United States (1985)MATH Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, United States (1985)MATH
36.
go back to reference Lambertz, C., Majster-Cederbaum, M.: Analyzing Component-Based Systems on the Basis of Architectural Constraints. In: FSEN, pp. 64–79. Springer (2011) Lambertz, C., Majster-Cederbaum, M.: Analyzing Component-Based Systems on the Basis of Architectural Constraints. In: FSEN, pp. 64–79. Springer (2011)
37.
38.
go back to reference Martin, J., Jassim, S.: An efficient technique for deadlock analysis of large scale process networks. In: FME ’97, pp. 418–441 (1997) Martin, J., Jassim, S.: An efficient technique for deadlock analysis of large scale process networks. In: FME ’97, pp. 418–441 (1997)
39.
go back to reference Martin, J.M.R.: The design and construction of deadlock-free concurrent systems. Ph.D. thesis, University of Buckingham (1996) Martin, J.M.R.: The design and construction of deadlock-free concurrent systems. Ph.D. thesis, University of Buckingham (1996)
40.
go back to reference de Moura, L.M., Bjørner, N.: Z3: An efficient smt solver. In: TACAS, pp. 337–340 (2008) de Moura, L.M., Bjørner, N.: Z3: An efficient smt solver. In: TACAS, pp. 337–340 (2008)
43.
go back to reference Otoni, R., Cavalcanti, A., Sampaio, A.: Local analysis of determinism for CSP. In: Formal Methods: Foundations and Applications - 20th Brazilian Symposium, SBMF 2017, Recife, Brazil, November 29 - December 1, 2017, Proceedings, pp. 107–124 (2017) Otoni, R., Cavalcanti, A., Sampaio, A.: Local analysis of determinism for CSP. In: Formal Methods: Foundations and Applications - 20th Brazilian Symposium, SBMF 2017, Recife, Brazil, November 29 - December 1, 2017, Proceedings, pp. 107–124 (2017)
44.
go back to reference Ouaknine, J., Palikareva, H., Roscoe, A.W., Worrell, J.: A static analysis framework for livelock freedom in CSP. LMCS 9(3) (2013) Ouaknine, J., Palikareva, H., Roscoe, A.W., Worrell, J.: A static analysis framework for livelock freedom in CSP. LMCS 9(3) (2013)
45.
go back to reference Palikareva, H., Ouaknine, J., Roscoe, A.: SAT-solving in CSP trace refinement. Sci. Comput. Program. 77(10), 1178–1197 (2012)CrossRef Palikareva, H., Ouaknine, J., Roscoe, A.: SAT-solving in CSP trace refinement. Sci. Comput. Program. 77(10), 1178–1197 (2012)CrossRef
46.
go back to reference Peled, D.: All from one, one for all: on model checking using representatives. In: Computer Aided Verification, pp. 409–423. Springer (1993) Peled, D.: All from one, one for all: on model checking using representatives. In: Computer Aided Verification, pp. 409–423. Springer (1993)
47.
48.
go back to reference Plotkin, G.: A structural approach to operational semantics. Tech. rep., DAIMI FN-19, Computer Science Dept, Aarhus University (1981) Plotkin, G.: A structural approach to operational semantics. Tech. rep., DAIMI FN-19, Computer Science Dept, Aarhus University (1981)
49.
go back to reference Ramos, R.T.: Systematic development of trustworthy component-based systems. Ph.D. thesis, Universidade Federal de Pernambuco (2011) Ramos, R.T.: Systematic development of trustworthy component-based systems. Ph.D. thesis, Universidade Federal de Pernambuco (2011)
50.
51.
go back to reference Roscoe, A.W.: The theory and practice of concurrency. Prentice Hall, United States (1998) Roscoe, A.W.: The theory and practice of concurrency. Prentice Hall, United States (1998)
53.
go back to reference Roscoe, A.W., Gardiner, P.H.B., Goldsmith, M., Hulance, J.R., Jackson, D.M., Scattergood, J.B.: Hierarchical compression for model-checking CSP or how to check \(10^{{20}}\) dining philosophers for deadlock. In: TACAS, pp. 133–152 (1995) Roscoe, A.W., Gardiner, P.H.B., Goldsmith, M., Hulance, J.R., Jackson, D.M., Scattergood, J.B.: Hierarchical compression for model-checking CSP or how to check \(10^{{20}}\) dining philosophers for deadlock. In: TACAS, pp. 133–152 (1995)
54.
go back to reference Valmari, A.: A stubborn attack on state explosion. Form. Methods Syst. Des. 1(4), 297–322 (1992)CrossRef Valmari, A.: A stubborn attack on state explosion. Form. Methods Syst. Des. 1(4), 297–322 (1992)CrossRef
55.
go back to reference Yeh, W.J., Young, M.: Compositional reachability analysis using process algebra. In: Proceedings of the symposium on Testing, analysis, and verification, pp. 49–59. ACM (1991) Yeh, W.J., Young, M.: Compositional reachability analysis using process algebra. In: Proceedings of the symposium on Testing, analysis, and verification, pp. 49–59. ACM (1991)
Metadata
Title
Approximate verification of concurrent systems using token structures and invariants
Authors
Pedro Antonino
Thomas Gibson-Robinson
A. W. Roscoe
Publication date
07-04-2022
Publisher
Springer Berlin Heidelberg
Published in
International Journal on Software Tools for Technology Transfer / Issue 4/2022
Print ISSN: 1433-2779
Electronic ISSN: 1433-2787
DOI
https://doi.org/10.1007/s10009-022-00650-6

Other articles of this Issue 4/2022

International Journal on Software Tools for Technology Transfer 4/2022 Go to the issue

Competitions and Challenges

The probabilistic model checker Storm

Competitions and Challenges

The Log Skeleton Visualizer in ProM 6.9

Premium Partner