Reasoning About Sequences of Memory States
Résumé
Motivated by the verification of programs with pointer variables, we introduce a temporal logic LTL\textsuperscript{mem} whose underlying assertion language is the quantifier-free fragment of separation logic and the temporal logic on the top of it is the standard linear-time temporal logic LTL. We analyze the complexity of various model-checking and satisfiability problems for LTL^mem considering various fragments of separation logic (including pointer arithmetic), various classes of models (with or without constant heap), and the influence of fixing the initial memory state. We~provide a complete picture based on these criteria. Our main decidability result is PSPACE-completeness of the satisfiability problems on the record fragment and on a classical fragment allowing pointer arithmetic. \Sigma^{0}_{1}-completeness or \Sigma^{1}_{1}-completeness results are established for various problems by reducing standard problems for Minsky machines, and underline the tightness of our decidability results.
| Origine | Fichiers produits par l'(les) auteur(s) |
|---|---|
| Licence |