Asynchronously Communicating Visibly Pushdown Systems [chapter]

Domagoj Babić, Zvonimir Rakamarić
2013 Lecture Notes in Computer Science  
We introduce an automata-based formal model suitable for specifying, modeling, analyzing, and verifying asynchronous task-based and message-passing programs. Our model consists of visibly pushdown automata communicating over unbounded reliable point-to-point firstin-first-out queues. Such a combination unifies two branches of research, one focused on task-based models, and the other on models of messagepassing programs. Our model generalizes previously proposed models that have decidable
more » ... ility in several ways. Unlike task-based models of asynchronous programs, our model allows sending and receiving of messages even when stacks are not empty, without imposing restrictions on the number of context-switches or communication topology. Our model also generalizes the well-known communicating finite-state machines with recognizable channel property allowing (1) individual components to be visibly pushdown automata, which are more suitable for modeling (possibly recursive) programs, (2) the set of words (i.e., languages) of messages on queues to form a visibly pushdown language, which permits modeling of remote procedure calls and simple forms of counting, and (3) the relations formed by tuples of such languages to be synchronized, which permits modeling of complex interactions among processes. In spite of these generalizations, we prove that the composite configuration and control-state reachability are still decidable for our model. 1 Informally, a relation is recognizable if the concatenation of all the languages that are elements of the relation tuple is a regular language (see Sec. 3.3).
doi:10.1007/978-3-642-38592-6_16 fatcat:7dyumv5k6fhbtbbwkawlbpx5ci