Rajeev Alur, Aditya Kanade, Gera Weiss
Requirements of reactive systems are usually specified by classifying system executions as desirable and undesirable. To
specify
prioritized requirements, we propose to associate a rank with each execution. This leads to optimization analogs
of verification and synthesis problems in which we compute the ``best'' requirement that can be satisfied or enforced from a
given state. The classical definitions of acceptance criteria for automata can be generalized to ranking conditions. In
particular, given a mapping of states to colors, the
Büchi ranking condition maps an execution to the highest color
visited infinitely often by the execution, and the
cyclic ranking condition with cycle
k maps an execution to the
modulo-
k value of the highest color repeating infinitely often. The well-studied parity acceptance condition is a special
case of cyclic ranking with cycle 2, and we show that the cyclic ranking condition
can specify all
&omega-regular ranking
functions. We show that the classical characterizations of acceptance conditions by fixpoints over sets generalize to
characterizations of ranking conditions by fixpoints over an appropriately chosen lattice of coloring functions. This
immediately leads to symbolic algorithms for solving verification and synthesis problems. Furthermore, the precise complexity of
a decision problem for ranking conditions is no more than the corresponding acceptance version, and in particular, we show how
to solve Büchi ranking games in quadratic time.
Proceedings of the 20th International Conference on Computer Aided Verification (CAV),
Lecture Notes in Computer Science 5123, 2008, pp. 240-253,
©
Springer.
PDF.
DBLP.