CARET Analysis of Multithreaded Programs

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 consid...

Full description

Saved in:
Bibliographic Details
Published inLogic-Based Program Synthesis and Transformation pp. 73 - 90
Main Authors Nguyen, Huu-Vu, Touili, Tayssir
Format Book Chapter
LanguageEnglish
Published Cham Springer International Publishing
SeriesLecture Notes in Computer Science
Online AccessGet full text

Cover

Loading…
More Information
Summary: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 Systems. 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.
Bibliography:This work was partially funded by the FUI project AiC.
ISBN:3319944592
9783319944593
ISSN:0302-9743
1611-3349
DOI:10.1007/978-3-319-94460-9_5