6,401 research outputs found
Bounded LTL Model Checking with Stable Models
In this paper bounded model checking of asynchronous concurrent systems is
introduced as a promising application area for answer set programming. As the
model of asynchronous systems a generalisation of communicating automata,
1-safe Petri nets, are used. It is shown how a 1-safe Petri net and a
requirement on the behaviour of the net can be translated into a logic program
such that the bounded model checking problem for the net can be solved by
computing stable models of the corresponding program. The use of the stable
model semantics leads to compact encodings of bounded reachability and deadlock
detection tasks as well as the more general problem of bounded model checking
of linear temporal logic. Correctness proofs of the devised translations are
given, and some experimental results using the translation and the Smodels
system are presented.Comment: 32 pages, to appear in Theory and Practice of Logic Programmin
Computation Tree Logic with Deadlock Detection
We study the equivalence relation on states of labelled transition systems of
satisfying the same formulas in Computation Tree Logic without the next state
modality (CTL-X). This relation is obtained by De Nicola & Vaandrager by
translating labelled transition systems to Kripke structures, while lifting the
totality restriction on the latter. They characterised it as divergence
sensitive branching bisimulation equivalence.
We find that this equivalence fails to be a congruence for interleaving
parallel composition. The reason is that the proposed application of CTL-X to
non-total Kripke structures lacks the expressiveness to cope with deadlock
properties that are important in the context of parallel composition. We
propose an extension of CTL-X, or an alternative treatment of non-totality,
that fills this hiatus. The equivalence induced by our extension is
characterised as branching bisimulation equivalence with explicit divergence,
which is, moreover, shown to be the coarsest congruence contained in divergence
sensitive branching bisimulation equivalence
Transformations of High-Level Synthesis Codes for High-Performance Computing
Specialized hardware architectures promise a major step in performance and
energy efficiency over the traditional load/store devices currently employed in
large scale computing systems. The adoption of high-level synthesis (HLS) from
languages such as C/C++ and OpenCL has greatly increased programmer
productivity when designing for such platforms. While this has enabled a wider
audience to target specialized hardware, the optimization principles known from
traditional software design are no longer sufficient to implement
high-performance codes. Fast and efficient codes for reconfigurable platforms
are thus still challenging to design. To alleviate this, we present a set of
optimizing transformations for HLS, targeting scalable and efficient
architectures for high-performance computing (HPC) applications. Our work
provides a toolbox for developers, where we systematically identify classes of
transformations, the characteristics of their effect on the HLS code and the
resulting hardware (e.g., increases data reuse or resource consumption), and
the objectives that each transformation can target (e.g., resolve interface
contention, or increase parallelism). We show how these can be used to
efficiently exploit pipelining, on-chip distributed fast memory, and on-chip
streaming dataflow, allowing for massively parallel architectures. To quantify
the effect of our transformations, we use them to optimize a set of
throughput-oriented FPGA kernels, demonstrating that our enhancements are
sufficient to scale up parallelism within the hardware constraints. With the
transformations covered, we hope to establish a common framework for
performance engineers, compiler developers, and hardware developers, to tap
into the performance potential offered by specialized hardware architectures
using HLS
A Logic with Reverse Modalities for History-preserving Bisimulations
We introduce event identifier logic (EIL) which extends Hennessy-Milner logic
by the addition of (1) reverse as well as forward modalities, and (2)
identifiers to keep track of events. We show that this logic corresponds to
hereditary history-preserving (HH) bisimulation equivalence within a particular
true-concurrency model, namely stable configuration structures. We furthermore
show how natural sublogics of EIL correspond to coarser equivalences. In
particular we provide logical characterisations of weak history-preserving (WH)
and history-preserving (H) bisimulation. Logics corresponding to HH and H
bisimulation have been given previously, but not to WH bisimulation (when
autoconcurrency is allowed), as far as we are aware. We also present
characteristic formulas which characterise individual structures with respect
to history-preserving equivalences.Comment: In Proceedings EXPRESS 2011, arXiv:1108.407
Petri nets for systems and synthetic biology
We give a description of a Petri net-based framework for
modelling and analysing biochemical pathways, which uni¯es the qualita-
tive, stochastic and continuous paradigms. Each perspective adds its con-
tribution to the understanding of the system, thus the three approaches
do not compete, but complement each other. We illustrate our approach
by applying it to an extended model of the three stage cascade, which
forms the core of the ERK signal transduction pathway. Consequently
our focus is on transient behaviour analysis. We demonstrate how quali-
tative descriptions are abstractions over stochastic or continuous descrip-
tions, and show that the stochastic and continuous models approximate
each other. Although our framework is based on Petri nets, it can be
applied more widely to other formalisms which are used to model and
analyse biochemical networks
Process Algebras
Process Algebras are mathematically rigorous languages with well defined semantics that permit describing and verifying properties of concurrent communicating systems.
They can be seen as models of processes, regarded as agents that act and interact continuously with other similar agents and with their common environment. The agents may be real-world objects (even people), or they may be artifacts, embodied perhaps in computer hardware or software systems.
Many different approaches (operational, denotational, algebraic) are taken for describing the meaning of processes. However, the operational approach is the reference one. By relying on the so called Structural Operational Semantics (SOS), labelled transition systems are built and composed by using the different operators of the many different process algebras. Behavioral equivalences are used to abstract from unwanted details and identify those systems that react similarly to external
experiments
- …