Constraint-based automatic verification of abstract models of multithreaded programs
Giorgio Delzanno
Abstract
We present a technique for the automated verification of abstract models of multithreaded programs providing fresh name generation, name mobility, and unbounded control. As high level specification language we adopt here an extension of communication finite-state machines with local variables ranging over an infinite name domain, called TDL programs. Communication machines have been proved very effective for representing communication protocols as well as for representing abstractions of multithreaded software. The verification method that we propose is based on the encoding of TDL programs into a low level language based on multiset rewriting and constraints that can be viewed as an extension of Petri Nets. By means of this encoding, the symbolic verification procedure developed for the low level language in our previous work can now be applied to TDL programs. Furthermore, the encoding allows us to isolate a decidable class of verification problems for TDL programs that still provide fresh name generation, name mobility, and unbounded control. Our syntactic restrictions are in fact defined on the internal structure of threads: In order to obtain a complete and terminating method, threads are only allowed to have at most one local variable (ranging over an infinite domain of names).
Create a lesson
Related papers
Challenging Benchmarks for Diagrammatic Equivalence of Circuits in TPTP and SMT-LIB
Julie Cailler, Noé Delorme, Sophie Tourret
Dynamic Polyhedral Logic
Nick Bezhanishvili, Laura Bussi, Vincenzo Ciancia et al.
Exact SAT and Constraint Programming for Job Shop Scheduling with Time-Varying Peak Power Constraints
Huy Tuan Nguyen, Duc Trung Kim Nguyen, Khanh To Van
Cycle time minimization for the simple assembly line balancing problem under peak power constraints
Bao Gia Hoang, Tuyen Van Kieu, Khanh Van To
Design and Empirical Characterization of a Hardware-Realized Turing Machine with Automated Card-Based Programming
Agrima Regmi, Jenish Pant, Pratistha Sapkota et al.
Comparison Invariants for Verifying Control Invariance
Promit Panja, André Platzer