TY - JOUR
T1 - Deciding branching time properties for asynchronous programs
AU - Chadha, Rohit
AU - Viswanathan, Mahesh
N1 - Funding Information:
The authors would like to thank the anonymous referees for their useful comments. Their suggestions have greatly helped the exposition of the proofs in Section 5. Rohit Chadha was supported partially by NSF CCF 04-29639 and Mahesh Viswanathan was supported partially by NSF CCF 04-48178.
PY - 2009/9/28
Y1 - 2009/9/28
N2 - Asynchronous programming is a paradigm that supports asynchronous function calls in addition to synchronous function calls. Programs in such a setting can be modeled by automata with counters that keep track of the number of pending asynchronous calls for each function, as well as a call stack for synchronous recursive computation. These programs have the restriction that an asynchronous call is processed only when the call stack is empty. The decidability of the control state reachability problem for such systems was recently established. In this paper, we consider the problems of checking other branching time properties for such systems. Specifically we consider the following problems - termination, which asks if there is an infinite (non-terminating) computation exhibited by the system; control state maintainability, which asks if there is a maximal execution of the system, where all the state visited lie in some "good" set; whether the system can be simulated by a given finite state system; and whether the system can simulate a given finite state system. We present decision algorithms for all these problems.
AB - Asynchronous programming is a paradigm that supports asynchronous function calls in addition to synchronous function calls. Programs in such a setting can be modeled by automata with counters that keep track of the number of pending asynchronous calls for each function, as well as a call stack for synchronous recursive computation. These programs have the restriction that an asynchronous call is processed only when the call stack is empty. The decidability of the control state reachability problem for such systems was recently established. In this paper, we consider the problems of checking other branching time properties for such systems. Specifically we consider the following problems - termination, which asks if there is an infinite (non-terminating) computation exhibited by the system; control state maintainability, which asks if there is a maximal execution of the system, where all the state visited lie in some "good" set; whether the system can be simulated by a given finite state system; and whether the system can simulate a given finite state system. We present decision algorithms for all these problems.
KW - Asynchronous programs
KW - Model checking
KW - Well-structured transition systems
UR - http://www.scopus.com/inward/record.url?scp=69549130677&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=69549130677&partnerID=8YFLogxK
U2 - 10.1016/j.tcs.2009.01.021
DO - 10.1016/j.tcs.2009.01.021
M3 - Article
AN - SCOPUS:69549130677
SN - 0304-3975
VL - 410
SP - 4169
EP - 4179
JO - Theoretical Computer Science
JF - Theoretical Computer Science
IS - 42
ER -