2005
DOI: 10.1145/1075382.1075387
|View full text |Cite
|
Sign up to set email alerts
|

Analysis of recursive state machines

Abstract: Recursive state machines (RSMs) enhance the power of ordinary state machines by allowing vertices to correspond either to ordinary states or to potentially recursive invocations of other state machines. RSMs can model the control flow in sequential imperative programs containing recursive procedure calls. They can be viewed as a visual notation extending Statecharts-like hierarchical state machines, where concurrency is disallowed but recursion is allowed. They are also related to various models of pushdown sy… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
5

Citation Types

1
247
0

Year Published

2005
2005
2014
2014

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 203 publications
(248 citation statements)
references
References 21 publications
1
247
0
Order By: Relevance
“…Our research is also related to previous work on tableau systems for the verification of infinite-state systems [6,20], model checking based on pushdown systems [5,7,8] or recursive state machines [2], temporal logics for nested calls and returns [3,1], interprocedural dataflow analysis [18], and abstract interpretation (cf. e.g., the completeness result of [17]).…”
Section: Introductionmentioning
confidence: 93%
See 2 more Smart Citations
“…Our research is also related to previous work on tableau systems for the verification of infinite-state systems [6,20], model checking based on pushdown systems [5,7,8] or recursive state machines [2], temporal logics for nested calls and returns [3,1], interprocedural dataflow analysis [18], and abstract interpretation (cf. e.g., the completeness result of [17]).…”
Section: Introductionmentioning
confidence: 93%
“…In particular, we derived an algorithmic solution to problem (1) stated above (see [11, p. 855]). Here, we give a precise solution to the (considerably more complex) problem (2), showing that every disjunction-free behavioural formula can be characterised by a finite set of structural formulae: a program satisfies the behavioural formula if and only if it satisfies some structural formula from the set. For example, the results of this paper allow to derive that the behavioural property "method a never calls method b" is characterised by the (set of) structural properties "there is no call-to-b instruction in (the text of) method a" and "in (the text of) method a, every call-to-b instruction and every return instruction is preceded by some call-to-a instruction" (and hence, due to recursion, control can never reach a call-to-b instruction).…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…Instead of word automata one uses nested-word automata (NWAs) [6] or equivalently visibly pushdown automata [5], a restricted class of pushdown automata, where the input symbols determine when the pushdown automaton can push or pop symbols from its stack. For instance, model checking regular nested-word properties of recursive state machines, which can model control flows of imperative programs [3,4], and of Boolean programs [7], which are widely used as abstractions in software model checking, can be carried out in an automata-theoretic setting, similar to finite-state model checking [23]. That is, the traces of a recursive state machine or a Boolean program are described by an NWA and the negation of the specification, which is given as a formula in a temporal logic over nested words like CaRet [4], NWTL [2], and μNWTL [10], is translated into a language-equivalent NWA.…”
Section: Introductionmentioning
confidence: 99%
“…Static analysis tools such as MC/Coverity [1] and Uno [2], and model checking tools such as SLAM [3] are based on inter-procedural algorithms for propagating dataflow information [4,5,6,7]. These algorithms perform a reachability analysis that always starts from scratch.…”
Section: Introductionmentioning
confidence: 99%