On-the-fly reachability and cycle detection for recursive state machines

Rajeev Alur, Swarat Chaudhuri, Kousha Etessami, P. Madhusudan

Research output: Contribution to journalConference article

Abstract

Searching the state space of a system using enumerative and on-the-fly depth-first traversal is an established technique for model checking finite-state systems. In this paper, we propose algorithms for on-the-fly exploration of recursive state machines, or equivalently pushdown systems, which are suited for modeling the behavior of procedural programs. We present algorithms for reachability (is a bad state reachable?) as well as for fair cycle detection (is there a reachable cycle with progress?). We also report on an implementation of these algorithms to check safety and liveness properties of recursive boolean programs, and its performance on existing benchmarks.

Original languageEnglish (US)
Pages (from-to)61-76
Number of pages16
JournalLecture Notes in Computer Science
Volume3440
StatePublished - Sep 19 2005
Event11th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2005, held as part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2005 - Edinburgh, United Kingdom
Duration: Apr 4 2005Apr 8 2005

Fingerprint

State Machine
Reachability
Cycle
Liveness
Model checking
Model Checking
State Space
Safety
Benchmark
Modeling

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Cite this

On-the-fly reachability and cycle detection for recursive state machines. / Alur, Rajeev; Chaudhuri, Swarat; Etessami, Kousha; Madhusudan, P.

In: Lecture Notes in Computer Science, Vol. 3440, 19.09.2005, p. 61-76.

Research output: Contribution to journalConference article

Alur, Rajeev ; Chaudhuri, Swarat ; Etessami, Kousha ; Madhusudan, P. / On-the-fly reachability and cycle detection for recursive state machines. In: Lecture Notes in Computer Science. 2005 ; Vol. 3440. pp. 61-76.
@article{526545cb9fb7475bb0a9756971fc883e,
title = "On-the-fly reachability and cycle detection for recursive state machines",
abstract = "Searching the state space of a system using enumerative and on-the-fly depth-first traversal is an established technique for model checking finite-state systems. In this paper, we propose algorithms for on-the-fly exploration of recursive state machines, or equivalently pushdown systems, which are suited for modeling the behavior of procedural programs. We present algorithms for reachability (is a bad state reachable?) as well as for fair cycle detection (is there a reachable cycle with progress?). We also report on an implementation of these algorithms to check safety and liveness properties of recursive boolean programs, and its performance on existing benchmarks.",
author = "Rajeev Alur and Swarat Chaudhuri and Kousha Etessami and P. Madhusudan",
year = "2005",
month = "9",
day = "19",
language = "English (US)",
volume = "3440",
pages = "61--76",
journal = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
issn = "0302-9743",
publisher = "Springer Verlag",

}

TY - JOUR

T1 - On-the-fly reachability and cycle detection for recursive state machines

AU - Alur, Rajeev

AU - Chaudhuri, Swarat

AU - Etessami, Kousha

AU - Madhusudan, P.

PY - 2005/9/19

Y1 - 2005/9/19

N2 - Searching the state space of a system using enumerative and on-the-fly depth-first traversal is an established technique for model checking finite-state systems. In this paper, we propose algorithms for on-the-fly exploration of recursive state machines, or equivalently pushdown systems, which are suited for modeling the behavior of procedural programs. We present algorithms for reachability (is a bad state reachable?) as well as for fair cycle detection (is there a reachable cycle with progress?). We also report on an implementation of these algorithms to check safety and liveness properties of recursive boolean programs, and its performance on existing benchmarks.

AB - Searching the state space of a system using enumerative and on-the-fly depth-first traversal is an established technique for model checking finite-state systems. In this paper, we propose algorithms for on-the-fly exploration of recursive state machines, or equivalently pushdown systems, which are suited for modeling the behavior of procedural programs. We present algorithms for reachability (is a bad state reachable?) as well as for fair cycle detection (is there a reachable cycle with progress?). We also report on an implementation of these algorithms to check safety and liveness properties of recursive boolean programs, and its performance on existing benchmarks.

UR - http://www.scopus.com/inward/record.url?scp=24644501837&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=24644501837&partnerID=8YFLogxK

M3 - Conference article

AN - SCOPUS:24644501837

VL - 3440

SP - 61

EP - 76

JO - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

JF - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

SN - 0302-9743

ER -