CARET Analysis of Multithreaded Programs [chapter]

Huu-Vu Nguyen, Tayssir Touili
2018 Lecture Notes in Computer Science  
Dynamic Pushdown Networks (DPNs) are a natural model for multithreaded programs with (recursive) procedure calls and thread creation. On the other hand, CARET is a temporal logic that allows to write linear temporal formulas while taking into account the matching between calls and returns. We consider in this paper the model-checking problem of DPNs against CARET formulas. We show that this problem can be effectively solved by a reduction to the emptiness problem of Büchi Dynamic Pushdown
more » ... s. We then show that CARET model checking is also decidable for DPNs communicating with locks. Our results can, in particular, be used for the detection of concurrent malware.
doi:10.1007/978-3-319-94460-9_5 fatcat:hldudxggsva27f3e5yu6hba2wu