16 research outputs found
Regular Model Checking Using Inference of Regular Languages
Regular model checking is a method for verifying infinite-state systems based on coding their configurations as words over a finite alphabet, sets of configurations as finite automata, and transitions as finite transducers. We introduce a new general approach to regular model checking based on inference of regular languages. The method builds upon the observation that for infinite-state systems whose behaviour can be modelled using length-preserving transducers, there is a finite computation for obtaining all reachable configurations up to a certain length n. These configurations are a (positive) sample of the reachable configurations of the given system, whereas all other words up to length n are a negative sample. Then, methods of inference of regular languages can be used to generalize the sample to the full reachability set (or an overapproximation of it). We have implemented our method in a prototype tool which shows that our approach is competitive on a number of concrete examples. Furthermore, in contrast to all other existing regular model checking methods, termination is guaranteed in general for all systems with regular sets of reachable configurations. The method can be applied in a similar way to dealing with reachability relations instead of reachability sets too
On computing fixpoints in well-structured regular model checking, with applications to lossy channel systems
We prove a general finite convergence theorem for "upward-guarded" fixpoint
expressions over a well-quasi-ordered set. This has immediate applications in
regular model checking of well-structured systems, where a main issue is the
eventual convergence of fixpoint computations. In particular, we are able to
directly obtain several new decidability results on lossy channel systems.Comment: 16 page
Learning to Prove Safety over Parameterised Concurrent Systems (Full Version)
We revisit the classic problem of proving safety over parameterised
concurrent systems, i.e., an infinite family of finite-state concurrent systems
that are represented by some finite (symbolic) means. An example of such an
infinite family is a dining philosopher protocol with any number n of processes
(n being the parameter that defines the infinite family). Regular model
checking is a well-known generic framework for modelling parameterised
concurrent systems, where an infinite set of configurations (resp. transitions)
is represented by a regular set (resp. regular transducer). Although verifying
safety properties in the regular model checking framework is undecidable in
general, many sophisticated semi-algorithms have been developed in the past
fifteen years that can successfully prove safety in many practical instances.
In this paper, we propose a simple solution to synthesise regular inductive
invariants that makes use of Angluin's classic L* algorithm (and its variants).
We provide a termination guarantee when the set of configurations reachable
from a given set of initial configurations is regular. We have tested L*
algorithm on standard (as well as new) examples in regular model checking
including the dining philosopher protocol, the dining cryptographer protocol,
and several mutual exclusion protocols (e.g. Bakery, Burns, Szymanski, and
German). Our experiments show that, despite the simplicity of our solution, it
can perform at least as well as existing semi-algorithms.Comment: Full version of FMCAD'17 pape
Regular hedge model checking
We extend the regular model checking framework so that it can handle systems with arbitrary width tree-like structures. Con gurations of a system are represented by trees of arbitrary arities, sets of con gurations are represented by regular hedge automata, and the dynamics of a system is modeled by a regular hedge transducer. We consider the problem of computing the transitive closure T + of a regular hedge transducer T. This construction is not possible in general.
Therefore, we present a general acceleration technique for computing T+. Our method consists of enhancing the termination of the iterative computation of the different compositions Ti by merging the states of the hedge transducers according to an appropriate equivalence relation that preserves the traces of the transducers. We provide a methodology for effectively deriving equivalence relations that are appropriate. We have successfully applied our technique to compute transitive closures for some mutual exclusion protocols de ned on arbitrary width tree topologies, as well as for an XML application.4th IFIP International Conference on Theoretical Computer ScienceRed de Universidades con Carreras en Informática (RedUNCI
Parameterized Synthesis with Safety Properties
Parameterized synthesis offers a solution to the problem of constructing
correct and verified controllers for parameterized systems. Such systems occur
naturally in practice (e.g., in the form of distributed protocols where the
amount of processes is often unknown at design time and the protocol must work
regardless of the number of processes). In this paper, we present a novel
learning based approach to the synthesis of reactive controllers for
parameterized systems from safety specifications. We use the framework of
regular model checking to model the synthesis problem as an infinite-duration
two-player game and show how one can utilize Angluin's well-known L* algorithm
to learn correct-by-design controllers. This approach results in a synthesis
procedure that is conceptually simpler than existing synthesis methods with a
completeness guarantee, whenever a winning strategy can be expressed by a
regular set. We have implemented our algorithm in a tool called L*-PSynth and
have demonstrated its performance on a range of benchmarks, including robotic
motion planning and distributed protocols. Despite the simplicity of L*-PSynth
it competes well against (and in many cases even outperforms) the
state-of-the-art tools for synthesizing parameterized systems.Comment: 18 page
A Robust Class of Data Languages and an Application to Learning
We introduce session automata, an automata model to process data words, i.e.,
words over an infinite alphabet. Session automata support the notion of fresh
data values, which are well suited for modeling protocols in which sessions
using fresh values are of major interest, like in security protocols or ad-hoc
networks. Session automata have an expressiveness partly extending, partly
reducing that of classical register automata. We show that, unlike register
automata and their various extensions, session automata are robust: They (i)
are closed under intersection, union, and (resource-sensitive) complementation,
(ii) admit a symbolic regular representation, (iii) have a decidable inclusion
problem (unlike register automata), and (iv) enjoy logical characterizations.
Using these results, we establish a learning algorithm to infer session
automata through membership and equivalence queries
Regular hedge model checking
We extend the regular model checking framework so that it can handle systems with arbitrary width tree-like structures. Con gurations of a system are represented by trees of arbitrary arities, sets of con gurations are represented by regular hedge automata, and the dynamics of a system is modeled by a regular hedge transducer. We consider the problem of computing the transitive closure T + of a regular hedge transducer T. This construction is not possible in general.
Therefore, we present a general acceleration technique for computing T+. Our method consists of enhancing the termination of the iterative computation of the different compositions Ti by merging the states of the hedge transducers according to an appropriate equivalence relation that preserves the traces of the transducers. We provide a methodology for effectively deriving equivalence relations that are appropriate. We have successfully applied our technique to compute transitive closures for some mutual exclusion protocols de ned on arbitrary width tree topologies, as well as for an XML application.4th IFIP International Conference on Theoretical Computer ScienceRed de Universidades con Carreras en Informática (RedUNCI
Polynomial Identification of omega-Automata
We study identification in the limit using polynomial time and data for
models of omega-automata. On the negative side we show that non-deterministic
omega-automata (of types Buchi, coBuchi, Parity, Rabin, Street, or Muller)
cannot be polynomially learned in the limit. On the positive side we show that
the omega-language classes IB, IC, IP, IR, IS, and IM, which are defined by
deterministic Buchi, coBuchi, Parity, Rabin, Streett, and Muller acceptors that
are isomorphic to their right-congruence automata, are identifiable in the
limit using polynomial time and data.
We give polynomial time inclusion and equivalence algorithms for
deterministic Buchi, coBuchi, Parity, Rabin, Streett, and Muller acceptors,
which are used to show that the characteristic samples for IB, IC, IP, IR, IS,
and IM can be constructed in polynomial time.
We also provide polynomial time algorithms to test whether a given
deterministic automaton of type X (for X in {B, C, P, R, S, M})is in the class
IX (i.e. recognizes a language that has a deterministic automaton that is
isomorphic to its right congruence automaton).Comment: This is an extended version of a paper with the same name that
appeared in TACAS2