7,563 research outputs found
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
Algorithmic Verification of Asynchronous Programs
Asynchronous programming is a ubiquitous systems programming idiom to manage
concurrent interactions with the environment. In this style, instead of waiting
for time-consuming operations to complete, the programmer makes a non-blocking
call to the operation and posts a callback task to a task buffer that is
executed later when the time-consuming operation completes. A co-operative
scheduler mediates the interaction by picking and executing callback tasks from
the task buffer to completion (and these callbacks can post further callbacks
to be executed later). Writing correct asynchronous programs is hard because
the use of callbacks, while efficient, obscures program control flow.
We provide a formal model underlying asynchronous programs and study
verification problems for this model. We show that the safety verification
problem for finite-data asynchronous programs is expspace-complete. We show
that liveness verification for finite-data asynchronous programs is decidable
and polynomial-time equivalent to Petri Net reachability. Decidability is not
obvious, since even if the data is finite-state, asynchronous programs
constitute infinite-state transition systems: both the program stack and the
task buffer of pending asynchronous calls can be potentially unbounded.
Our main technical construction is a polynomial-time semantics-preserving
reduction from asynchronous programs to Petri Nets and conversely. The
reduction allows the use of algorithmic techniques on Petri Nets to the
verification of asynchronous programs.
We also study several extensions to the basic models of asynchronous programs
that are inspired by additional capabilities provided by implementations of
asynchronous libraries, and classify the decidability and undecidability of
verification questions on these extensions.Comment: 46 pages, 9 figure
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
Abstracting Asynchronous Multi-Valued Networks: An Initial Investigation
Multi-valued networks provide a simple yet expressive qualitative state based
modelling approach for biological systems. In this paper we develop an
abstraction theory for asynchronous multi-valued network models that allows the
state space of a model to be reduced while preserving key properties of the
model. The abstraction theory therefore provides a mechanism for coping with
the state space explosion problem and supports the analysis and comparison of
multi-valued networks. We take as our starting point the abstraction theory for
synchronous multi-valued networks which is based on the finite set of traces
that represent the behaviour of such a model. The problem with extending this
approach to the asynchronous case is that we can now have an infinite set of
traces associated with a model making a simple trace inclusion test infeasible.
To address this we develop a decision procedure for checking asynchronous
abstractions based on using the finite state graph of an asynchronous
multi-valued network to reason about its trace semantics. We illustrate the
abstraction techniques developed by considering a detailed case study based on
a multi-valued network model of the regulation of tryptophan biosynthesis in
Escherichia coli.Comment: Presented at MeCBIC 201
Multiplicative-Additive Proof Equivalence is Logspace-complete, via Binary Decision Trees
Given a logic presented in a sequent calculus, a natural question is that of
equivalence of proofs: to determine whether two given proofs are equated by any
denotational semantics, ie any categorical interpretation of the logic
compatible with its cut-elimination procedure. This notion can usually be
captured syntactically by a set of rule permutations.
Very generally, proofnets can be defined as combinatorial objects which
provide canonical representatives of equivalence classes of proofs. In
particular, the existence of proof nets for a logic provides a solution to the
equivalence problem of this logic. In certain fragments of linear logic, it is
possible to give a notion of proofnet with good computational properties,
making it a suitable representation of proofs for studying the cut-elimination
procedure, among other things.
It has recently been proved that there cannot be such a notion of proofnets
for the multiplicative (with units) fragment of linear logic, due to the
equivalence problem for this logic being Pspace-complete.
We investigate the multiplicative-additive (without unit) fragment of linear
logic and show it is closely related to binary decision trees: we build a
representation of proofs based on binary decision trees, reducing proof
equivalence to decision tree equivalence, and give a converse encoding of
binary decision trees as proofs. We get as our main result that the complexity
of the proof equivalence problem of the studied fragment is Logspace-complete.Comment: arXiv admin note: text overlap with arXiv:1502.0199
SPDL Model Checking via Property-Driven State Space Generation
In this report we describe how both, memory and time requirements for stochastic model checking of SPDL (stochastic propositional dynamic logic) formulae can significantly be reduced. SPDL is the stochastic extension of the multi-modal program logic PDL.\ud
SPDL provides means to specify path-based properties with or without timing restrictions. Paths can be characterised by so-called programs, essentially regular expressions, where the executability can be made dependent on the validity of test formulae. For model-checking SPDL path formulae it is necessary to build a product transition system (PTS)\ud
between the system model and the program automaton belonging to the path formula that is to be verified.\ud
In many cases, this PTS can be drastically reduced during the model checking procedure, as the program restricts the number of potentially satisfying paths. Therefore, we propose an approach that directly generates the reduced PTS from a given SPA specification and an SPDL path formula.\ud
The feasibility of this approach is shown through a selection of case studies, which show enormous state space reductions, at no increase in generation time.\u
From types to type requirements: Genericity for model-driven engineering
The final publication is available at Springer via http://dx.doi.org/10.1007/s10270-011-0221-0Model-driven engineering (MDE) is a software engineering paradigm that proposes an active use of models during the development process. This paradigm is inherently type-centric, in the sense that models and their manipulation are defined over the types of specific meta-models. This fact hinders the reuse of existing MDE artefacts with other meta-models in new contexts, even if all these meta-models share common characteristics. To increase the reuse opportunities of MDE artefacts, we propose a paradigm shift from type-centric to requirement-centric specifications by bringing genericity into models, meta-models and model management operations. For this purpose, we introduce so-called concepts gathering structural and behavioural requirements for models and meta-models. In this way, model management operations are defined over concepts, enabling the application of the operations to any meta-model satisfying the requirements imposed by the concept. Model templates rely on concepts to define suitable interfaces, hence enabling the definition of reusable model components. Finally, similar to mixin layers, templates can be defined at the meta-model level as well, to define languages in a modular way, as well as layers of functionality to be plugged-in into other meta-models. These ideas have been implemented in MetaDepth, a multi-level meta-modelling tool that integrates action languages from the Epsilon family for model management and code generation.This work has been sponsored by the Spanish Ministry of Science and Innovation with projects METEORIC (TIN2008-02081) and Go Lite (TIN2011-24139), and by the R&D program of the Community of Madrid with project “e-Madrid” (S2009/TIC-1650)
- …