Well-structured transition system explained
In computer science, specifically in the field of formal verification, well-structured transition systems (WSTSs) are a general class of infinite state systems for which many verification problems are decidable, owing to the existence of a kind of order between the states of the system which is compatible with the transitions of the system.The first definition of a general Well-Structured Transition System (WSTS) was introduced by Alain Finkel in his ICALP 1987 paper titled "A Generalization of the Procedure of Karp and Miller to Well Structured Transition Systems".WSTS decidability results can be applied to Petri nets, lossy channel systems, and more.
Formal definition
on a set
is a quasi-ordering (i.e., a
preorder or
reflexive,
transitive binary relation) such that any infinite sequence of elements
, from
contains an increasing pair
with
. The set
is said to be
well-quasi-ordered, or shortly
wqo.
For our purposes, a transition system is a structure
lS=\langleS, → , … \rangle
, where
is any set (its elements are called
states), and
(its elements are called
transitions). In general a transition system may have additional structure like initial states, labels on transitions, accepting states, etc. (indicated by the dots), but they do not concern us here.
A well-structured transition system consists of a transition system
, such that
is a well-quasi-ordering on the set of states.
is upward compatible with
: that is, for all transitions
(by this we mean
) and for all
such that
, there exists
such that
(that is,
can be reached from
by a sequence of zero or more transitions) and
.
Well-structured systems
A well-structured system[1] is a transition system
with state set
made up from a finite
control state set
, a
data values set
, furnished with a
decidable pre-order
which is extended to states by
(q,d)\le(q',d')\Leftrightarrowq=q'\wedged\led'
, which is well-structured as defined above (
is monotonic, i.e. upward compatible, with respect to
) and in addition has a
computable set of minima for the set of predecessors of any
upward closed subset of
.
Well-structured systems adapt the theory of well-structured transition systems for modelling certain classes of systems encountered in computer science and provide the basis for decision procedures to analyse such systems, hence the supplementary requirements: the definition of a WSTS itself says nothing about the computability of the relations
,
.
Uses in Computer Science
Well-structured Systems
Coverability can be decided for any well-structured system, and so can reachability of a given control state, by the backward algorithm of Abdulla et al.[1] or for specific subclasses of well-structured systems (subject to strict monotonicity,[2] e.g. in the case of unbounded Petri nets) by a forward analysis based on a Karp-Miller coverability graph.
Backward Algorithm
The backward algorithm allows the following question to be answered: given a well-structured system and a state
, is there any transition path that leads from a given start state
to a state
(such a state is said to
cover
)?
An intuitive explanation for this question is: if
represents an error state, then any state
containing it should also be regarded as an error state. If a well-quasi-order can be found that models this "containment" of states and which also fulfills the requirement of monotonicity with respect to the transition relation, then this question can be answered.
Instead of one minimal error state
, one typically considers an upward closed set
of error states.
The algorithm is based on the facts that in a well-quasi-order
, any upward closed set has a finite set of minima, and any sequence
S1\subseteqS2\subseteq...
of upward-closed subsets of
converges after finitely many steps (1).
The algorithm needs to store an upward-closed set
of states in memory, which it can do because an upward-closed set is representable as a finite set of minima. It starts from the upward closure of the set of error states
and computes at each iteration the (by monotonicity also upward-closed) set of immediate predecessors and adding it to the set
. This iteration terminates after a finite number of steps, due to the property (1) of well-quasi-orders. If
is in the set finally obtained, then the output is "yes" (a state of
can be reached), otherwise it is "no" (it is not possible to reach such a state).
Notes and References
- Parosh Aziz Abdulla, Kārlis Čerāns, Bengt Jonsson, Yih-Kuen Tsay: Algorithmic Analysis of Programs with Well Quasi-ordered Domains (2000), Information and Computation, Vol. 160 issues 1-2, pp. 109--127
- Alain Finkel and Philippe Schnoebelen, Well-Structured Transition Systems Everywhere!, Theoretical Computer Science 256(1–2), pages 63–92, 2001.