199 research outputs found
Stuttering equivalence is too slow!
Groote and Wijs recently described an algorithm for deciding stuttering
equivalence and branching bisimulation equivalence, acclaimed to run in
time. Unfortunately, the algorithm does not always meet
the acclaimed running time. In this paper, we present two counterexamples where
the algorithms uses time. A third example shows that the
correction is not trivial. In order to analyse the problem we present
pseudocode of the algorithm, and indicate the time that can be spent on each
part of the algorithm in order to meet the desired bound. We also propose fixes
to the algorithm such that it indeed runs in time.Comment: 11 page
Generalized Strong Preservation by Abstract Interpretation
Standard abstract model checking relies on abstract Kripke structures which
approximate concrete models by gluing together indistinguishable states, namely
by a partition of the concrete state space. Strong preservation for a
specification language L encodes the equivalence of concrete and abstract model
checking of formulas in L. We show how abstract interpretation can be used to
design abstract models that are more general than abstract Kripke structures.
Accordingly, strong preservation is generalized to abstract
interpretation-based models and precisely related to the concept of
completeness in abstract interpretation. The problem of minimally refining an
abstract model in order to make it strongly preserving for some language L can
be formulated as a minimal domain refinement in abstract interpretation in
order to get completeness w.r.t. the logical/temporal operators of L. It turns
out that this refined strongly preserving abstract model always exists and can
be characterized as a greatest fixed point. As a consequence, some well-known
behavioural equivalences, like bisimulation, simulation and stuttering, and
their corresponding partition refinement algorithms can be elegantly
characterized in abstract interpretation as completeness properties and
refinements
Folk Theorems on the Correspondence between State-Based and Event-Based Systems
Kripke Structures and Labelled Transition Systems are the two most prominent
semantic models used in concurrency theory. Both models are commonly believed
to be equi-expressive. One can find many ad-hoc embeddings of one of these
models into the other. We build upon the seminal work of De Nicola and
Vaandrager that firmly established the correspondence between stuttering
equivalence in Kripke Structures and divergence-sensitive branching
bisimulation in Labelled Transition Systems. We show that their embeddings can
also be used for a range of other equivalences of interest, such as strong
bisimilarity, simulation equivalence, and trace equivalence. Furthermore, we
extend the results by De Nicola and Vaandrager by showing that there are
additional translations that allow one to use minimisation techniques in one
semantic domain to obtain minimal representatives in the other semantic domain
for these equivalences.Comment: Full version of SOFSEM 2011 pape
Sigref ā A Symbolic Bisimulation Tool Box
We present a uniform signature-based approach to compute the most popular bisimulations. Our approach is implemented symbolically using BDDs, which enables the handling of very large transition systems. Signatures for the bisimulations are built up from a few generic building blocks, which naturally correspond to efficient BDD operations. Thus, the definition of an appropriate signature is the key for a rapid development of algorithms for other types of bisimulation.
We provide experimental evidence of the viability of this approach by presenting computational results for many bisimulations on real-world instances. The experiments show cases where our framework can handle state spaces efficiently that are far too large to handle for any tool that requires an explicit state space description.
This work was partly supported by the German Research Council (DFG) as part of the Transregional Collaborative Research Center āAutomatic Verification and Analysis of Complex Systemsā (SFB/TR 14 AVACS). See www.avacs.org for more information
An O(mlog n) algorithm for computing stuttering equivalence and branching bisimulation
We provide a new algorithm to determine stuttering equivalence with time complexity O(mlog n), where n is the number of states and mis the number of transitions of a Kripke structure. This algorithm can also be used to determine branching bisimulation in O(m(log |Act| + log n)) time, where Act is the set of actions in a labeled transition system. Theoretically, our algorithm substantially improves upon existing algorithms, which all have time complexity of the form O(mn) at best. Moreover, it has better or equal space complexity. Practical results confirm these findings: they show that our algorithm can outperform existing algorithms by several orders of magnitude, especially when the Kripke structures are large. The importance of our algorithm stretches far beyond stuttering equivalence and branching bisimulation. The known O(mn) algorithms were already far more efficient (both in space and time) than most other algorithms to determine behavioral equivalences (including weak bisimulation), and therefore they were often used as an essential preprocessing step. This new algorithm makes this use of stuttering equivalence and branching bisimulation even more attractive.</p
Generalizing the Paige-Tarjan Algorithm by Abstract Interpretation
The Paige and Tarjan algorithm (PT) for computing the coarsest refinement of
a state partition which is a bisimulation on some Kripke structure is well
known. It is also well known in model checking that bisimulation is equivalent
to strong preservation of CTL, or, equivalently, of Hennessy-Milner logic.
Drawing on these observations, we analyze the basic steps of the PT algorithm
from an abstract interpretation perspective, which allows us to reason on
strong preservation in the context of generic inductively defined (temporal)
languages and of possibly non-partitioning abstract models specified by
abstract interpretation. This leads us to design a generalized Paige-Tarjan
algorithm, called GPT, for computing the minimal refinement of an abstract
interpretation-based model that strongly preserves some given language. It
turns out that PT is a straight instance of GPT on the domain of state
partitions for the case of strong preservation of Hennessy-Milner logic. We
provide a number of examples showing that GPT is of general use. We first show
how a well-known efficient algorithm for computing stuttering equivalence can
be viewed as a simple instance of GPT. We then instantiate GPT in order to
design a new efficient algorithm for computing simulation equivalence that is
competitive with the best available algorithms. Finally, we show how GPT allows
to compute new strongly preserving abstract models by providing an efficient
algorithm that computes the coarsest refinement of a given partition that
strongly preserves the language generated by the reachability operator.Comment: Keywords: Abstract interpretation, abstract model checking, strong
preservation, Paige-Tarjan algorithm, refinement algorith
- ā¦