🤖 AI Summary
This study addresses the problem of verifying correctness preservation under natural reductions in parameterized concurrent programs: given a program template and (semi-)commutativity relations, it determines whether the reduction maintains correctness. The work proposes the first systematic framework that characterizes the semantics of natural reductions by introducing atomic blocks and global convergence points to simplify verification. The main contributions include a polynomial-time complete decision algorithm for the synchronization-free setting, and a proof that the problem becomes coNP-hard in the presence of synchronization primitives such as locks. Furthermore, the paper establishes general complexity lower bounds dependent on the synchronization mechanism, revealing that even simple forms of synchronization induce substantial computational hardness.
📝 Abstract
The verification of reductions, representative subsets of interleavings, simplifies correctness proofs of parameterized concurrent programs. We introduce an expressive class of syntactic reductions, which we call natural reductions. Natural reductions are specified by introducing atomic blocks and global rendezvous points in the parameterized program's thread template. We study the problem of deciding whether a given natural reduction is sound wrt. a given (semi-)commutativity relation. In the case that there is no synchronization between threads, we present a sound and complete polynomial-time algorithm. In the case where synchronization is considered, we provide a general lower bound for the problem (parametric in the synchronization mechanism), and show that the problem is coNP-hard already for a simple mechanism like locking.