Decidable Models of Integer-Manipulating Programs with Recursive Parallelism

Matthew Hague, Anthony Lin

Research output: Chapter in Book/Report/Conference proceedingConference contribution

45 Downloads (Pure)


We study safety verification for multithreaded programs with recursive parallelism (i.e. unbounded thread creation and recursion) as well as unbounded integer variables. Since the threads in each program configuration are structured in a hierarchical fashion, our model is state-extended ground-tree rewrite systems equipped with shared unbounded integer counters that can be incremented, decremented, and compared against an integer constant. Since the model is Turing-complete, we propose a decidable underapproximation. First, using a restriction similar to context-bounding, we underapproximate the global control by a weak global control (i.e. DAGs possibly with self-loops), thereby limiting the number of synchronisations between different threads. Second, we bound the number of reversals between non-decrementing and non-incrementing modes of the counters. Under this restriction, we show that reachability becomes NP-complete. In fact, it is poly-time reducible to satisfaction over existential Presburger formulas, which allows one to tap into highly optimised SMT solvers. Our decidable approximation strictly generalises known decidable models including (i) weakly-synchronised ground-tree rewrite systems, and (ii) synchronisation/reversal-bounded concurrent pushdown systems with counters. Finally, we show that, when equipped with reversal-bounded counters, relaxing the weak control restriction by the notion of senescence results in undecidability.
Original languageEnglish
Title of host publicationReachability Problems
Subtitle of host publication10th International Workshop, RP 2016, Aalborg, Denmark, September 19-21, 2016, Proceedings
PublisherSpringer International Publishing
Number of pages15
ISBN (Electronic)978-3-319-45994-3
ISBN (Print)978-3-319-45993-6
Publication statusE-pub ahead of print - 13 Sept 2016

Publication series

NameLecture Notes in Computer Science
PublisherSpringer International Publishing
ISSN (Print)0302-9743

Cite this