CORDIS - Resultados de investigaciones de la UE
CORDIS

From correct to high-quality reactive systems

Final Report Summary - QUALITY (From correct to high-quality reactive systems)

Traditional formal methods are based on a Boolean satisfaction notion: a reactive system satisfies, or not, a given specification. Accordingly, verification and synthesis algorithms and tools refer to the correctness of systems with respect to their specifications and ignore the quality in which the specification is satisfied.
We develop formal methods that address the quality of systems. Our results include the following contributions:

We developed a multi-valued specification formalism for on-going behaviors. Our formalism contains both propositional quality operators (such as max, min, or weighted average) and temporal quality operators (such as discounting of the future in eventualities). In addition to introducing the formalism, we studied decision problems for it, the border of decidability, and automatic generation of quality specifications. The formalisms have already been used by the formal-methods community, for example in improved synthesis of schedulers. The solutions to the problems require advances in the theory of weighted automata. We developed constructions for approximated determination of lattice and weighted automata, and a heuristic for approximating a solution to the undecidable weighted-containment problem. We introduced and solved the problem of parametrized weighted containment, where our algorithm finds an assignment for missing components of the automaton, subject to constraints. We introduced and solved the problem of weighted automata stochastization, where a nondeterministic weighted automaton is converted to an approximating probabilistic one.

We studied trade-offs between different quality measures. Traditional measures refer to the size of systems. We study the trade-off between size and quality (in the sense defined by our formalism). We developed a new quality measure: the amount of sensing required to the system in order to satisfy its specification. We formalize the notion of sensing in the context of formal languages and develop synthesis algorithms that minimize the required sensing.

We introduced quantity and quality to notions that are traditionally Boolean. This includes weighted safety -- a lifting of the fundamental notion of safety to the weighted setting, and a probability-based framework for ranking of vacuity results: vacuity checking is used in order to detect specifications that are satisfied in a "strange" way. Our multi-valued approach prioritizes the results of the vacuity checker, which enables the user to focus on results that are more alarming. We use quality measures also in order to tighten classifications of liveness properties and in order to generate meaningful information to designers that use formal methods. We added quality measures to the assume-guarantee approach to synthesis and developed algorithms for automatic synthesis of high-quality systems.

We studied costs as a quality measure. Multi-agents games are extensively used for modelling settings in which different entities share resources. For example, the setting in which entities need to route messages in a network is modeled by network-formation games: the network is modeled by a graph, and each agent has to select a path satisfying his reachability objective. We lift ideas from formal methods to multi-agent games: we allow objectives that are richer than reachability, we added timing considerations to the network, allowed dynamic strategies, studied networks described in a hierarchical manner, and defined an abstraction of networks. We use our game-theory results also for modelling costs in synthesis of reactive systems from components of libraries.