844 research outputs found
Learning Linear Temporal Properties
We present two novel algorithms for learning formulas in Linear Temporal
Logic (LTL) from examples. The first learning algorithm reduces the learning
task to a series of satisfiability problems in propositional Boolean logic and
produces a smallest LTL formula (in terms of the number of subformulas) that is
consistent with the given data. Our second learning algorithm, on the other
hand, combines the SAT-based learning algorithm with classical algorithms for
learning decision trees. The result is a learning algorithm that scales to
real-world scenarios with hundreds of examples, but can no longer guarantee to
produce minimal consistent LTL formulas. We compare both learning algorithms
and demonstrate their performance on a wide range of synthetic benchmarks.
Additionally, we illustrate their usefulness on the task of understanding
executions of a leader election protocol
Learning-Based Synthesis of Safety Controllers
We propose a machine learning framework to synthesize reactive controllers
for systems whose interactions with their adversarial environment are modeled
by infinite-duration, two-player games over (potentially) infinite graphs. Our
framework targets safety games with infinitely many vertices, but it is also
applicable to safety games over finite graphs whose size is too prohibitive for
conventional synthesis techniques. The learning takes place in a feedback loop
between a teacher component, which can reason symbolically about the safety
game, and a learning algorithm, which successively learns an overapproximation
of the winning region from various kinds of examples provided by the teacher.
We develop a novel decision tree learning algorithm for this setting and show
that our algorithm is guaranteed to converge to a reactive safety controller if
a suitable overapproximation of the winning region can be expressed as a
decision tree. Finally, we empirically compare the performance of a prototype
implementation to existing approaches, which are based on constraint solving
and automata learning, respectively
Robust Linear Temporal Logic
Although it is widely accepted that every system should be robust, in the
sense that "small" violations of environment assumptions should lead to "small"
violations of system guarantees, it is less clear how to make this intuitive
notion of robustness mathematically precise. In this paper, we address this
problem by developing a robust version of Linear Temporal Logic (LTL), which we
call robust LTL and denote by rLTL. Formulas in rLTL are syntactically
identical to LTL formulas but are endowed with a many-valued semantics that
encodes robustness. In particular, the semantics of the rLTL formula is such that a "small" violation of the environment
assumption is guaranteed to only produce a "small" violation of the
system guarantee . In addition to introducing rLTL, we study the
verification and synthesis problems for this logic: similarly to LTL, we show
that both problems are decidable, that the verification problem can be solved
in time exponential in the number of subformulas of the rLTL formula at hand,
and that the synthesis problem can be solved in doubly exponential time
Inferring Properties in Computation Tree Logic
We consider the problem of automatically inferring specifications in the
branching-time logic, Computation Tree Logic (CTL), from a given system.
Designing functional and usable specifications has always been one of the
biggest challenges of formal methods. While in recent years, works have focused
on automatically designing specifications in linear-time logics such as Linear
Temporal Logic (LTL) and Signal Temporal Logic (STL), little attention has been
given to branching-time logics despite its popularity in formal methods. We
intend to infer concise (thus, interpretable) CTL formulas from a given finite
state model of the system in consideration. However, inferring specification
only from the given model (and, in general, from only positive examples) is an
ill-posed problem. As a result, we infer a CTL formula that, along with being
concise, is also language-minimal, meaning that it is rather specific to the
given model. We design a counter-example guided algorithm to infer a concise
and language-minimal CTL formula via the generation of undesirable models. In
the process, we also develop, for the first time, a passive learning algorithm
to infer CTL formulas from a set of desirable and undesirable Kripke
structures. The passive learning algorithm involves encoding a popular CTL
model-checking procedure in the Boolean Satisfiability problem
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
- …