5 research outputs found
Component-wise incremental LTL model checking
Efficient symbolic and explicit-state model checking
approaches have been developed for the verification of linear
time temporal
logic (LTL) properties. Several attempts have been made to
combine the advantages of the various algorithms. Model
checking LTL
properties usually poses two challenges: one must compute the
synchronous product of the state space and the automaton
model of the
desired property, then look for counterexamples that is
reduced to finding strongly connected components (SCCs) in
the state space
of the product. In case of concurrent systems, where the
phenomenon of state space explosion often prevents the
successful
verification, the so-called saturation algorithm has proved
its efficiency in state space exploration. This paper
proposes a new
approach that leverages the saturation algorithm both as an
iteration strategy constructing the product directly, as well
as in a
new fixed-point computation algorithm to find strongly
connected components on-the-fly by incrementally processing
the components
of the model. Complementing the search for SCCs, explicit
techniques and component-wise abstractions are used to prove
the absence
of counterexamples. The resulting on-the-fly, incremental LTL
model checking algorithm proved to scale well with the size
of
models, as the evaluation on models of the Model Checking
Contest suggests
Constraint Programming with Multi-valued Decision Diagrams: A Saturation Approach
Constraint programming is a declarative way of modeling and
solving optimization and satisfiability problems over finite
domains. Traditional solvers use search-based strategies
enhanced with various optimizations to reduce the search space.
One of such techniques involves multi-valued decision diagrams
(MDD) to maintain a superset of potential solutions, gradually
discarding combinations of values that fail to satisfy some
constraint. Instead of the relaxed MDDs representing a superset,
we propose to use exact MDDs to compute the set of solutions
directly without search, compactly encoding all the solutions
instead of enumerating them. Our solution relies on the main
idea of the saturation algorithm used in model checking to
reduce the required computational cost. Preliminary results show
that this strategy can keep the size of intermediate MDDs small
during the computation