3,219 research outputs found
A Process Calculus for Spatially-explicit Ecological Models
We propose PALPS, a Process Algebra with Locations for Population Systems.
PALPS allows us to produce spatially-explicit, individual-based models and to
reason about their behavior. Our calculus has two levels: at the first level we
may define the behavior of an individual of a population while, at the second
level, we may specify a system as the collection of individuals of various
species located in space, moving through their life cycle while changing their
location, if they so wish, and interacting with each other in various ways such
as preying on each other. Furthermore, we propose a probabilistic temporal
logic for reasoning about the behavior of PALPS processes. We illustrate our
framework via models of dispersal in metapopulations.Comment: In Proceedings MeCBIC 2012, arXiv:1211.347
An Intuitive Automated Modelling Interface for Systems Biology
We introduce a natural language interface for building stochastic pi calculus
models of biological systems. In this language, complex constructs describing
biochemical events are built from basic primitives of association, dissociation
and transformation. This language thus allows us to model biochemical systems
modularly by describing their dynamics in a narrative-style language, while
making amendments, refinements and extensions on the models easy. We
demonstrate the language on a model of Fc-gamma receptor phosphorylation during
phagocytosis. We provide a tool implementation of the translation into a
stochastic pi calculus language, Microsoft Research's SPiM
cJoin: join with communicating transactions
This paper proposes a formal approach to the design and programming of Long Running Transactions (LRT). We exploit techniques from process calculi to define cJoin, which is an extension of the join calculus with few well-disciplined primitives for LRT. Transactions in cJoin are intended to describe the transactional interaction of several partners, under the assumption that any partner executing a transaction may communicate only with other transactional partners. In such case, the transactions run by any party are bound to achieve the same outcome (i.e., all succeed or all fail). Hence, a distinguishing feature of cJoin, called dynamic joinability, is that ongoing transactions can be merged to complete their tasks and when this happens either all succeed or all abort. Additionally, cJoin is based on compensations, i.e., partial executions of transactions are recovered by executing user-defined programs instead of providing automatic roll-back. The expressiveness and generality of cJoin is demonstrated by many examples addressing common programming patterns. The mathematical foundation is accompanied by a prototype language implementation, which is an extension of the jocaml compiler
A flat process calculus for nested membrane interactions
The link-calculus has been recently proposed as a process calculus for representing interactions that are open (i.e. that the number of processes may vary), and multiparty (i.e. that may involve more than two processes). Here, we apply the link-calculus for expressing, possibly hierarchical and non dyadic, biological interactions. In particular, we provide a natural encoding of Cardelli's Brane calculus, a
compartment-based calculus, introduced to model the behaviour of nested membranes. Notably, the link-calculus is
at, but we can model membranes just as special processes taking part in the biological reaction. Moreover, we give evidence that the link-calculus allows one
to directly model biological phenomena at the more appropriate level of abstraction
Flux Analysis in Process Models via Causality
We present an approach for flux analysis in process algebra models of
biological systems. We perceive flux as the flow of resources in stochastic
simulations. We resort to an established correspondence between event
structures, a broadly recognised model of concurrency, and state transitions of
process models, seen as Petri nets. We show that we can this way extract the
causal resource dependencies in simulations between individual state
transitions as partial orders of events. We propose transformations on the
partial orders that provide means for further analysis, and introduce a
software tool, which implements these ideas. By means of an example of a
published model of the Rho GTP-binding proteins, we argue that this approach
can provide the substitute for flux analysis techniques on ordinary
differential equation models within the stochastic setting of process algebras
Membrane Systems and Time Petri Nets
We investigate the relationship of time Petri nets and di erent variants of
membrane systems. First we show that the added feature of \time" in time Petri nets
makes it possible to simulate the maximal parallel rule application of membrane systems
without introducing maximal parallelism to the Petri net semantics, then we de ne local
time P systems and explore how time Petri nets and the computations of local time P
systems can be related
Towards Bridging Two Cell-Inspired Models: P Systems and R Systems
We examine, from the point of view of membrane computing, the two basic
assumptions of reaction systems, the "threshold" and "no permanence" ones. In certain
circumstances (e.g., defining the successful computations by local halting), the second
assumption can be incorporated in a transition P system or in a symport/antiport P
system without losing the universality. The case of the first postulate remains open: the
reaction systems deal, deterministically, with finite sets of symbols, which is not of much
interest for computing; three ways to introduce nondeterminism are suggested and left
as research topics.Junta de Andalucía P08 – TIC 0420
Run-time Variability with First-class Contexts
Software must be regularly updated to keep up with changing requirements. Unfortunately, to install an update, the system must usually be restarted, which is inconvenient and costly. In this dissertation, we aim at overcoming the need for restart by enabling run-time changes at the programming language level. We argue that the best way to achieve this goal is to improve the support for encapsulation, information hiding and late binding by contextualizing behavior. In our approach, behavioral variations are encapsulated into context objects that alter the behavior of other objects locally. We present three contextual language features that demonstrate our approach. First, we present a feature to evolve software by scoping variations to threads. This way, arbitrary objects can be substituted over time without compromising safety. Second, we present a variant of dynamic proxies that operate by delegation instead of forwarding. The proxies can be used as building blocks to implement contextualization mechanisms from within the language. Third, we contextualize the behavior of objects to intercept exchanges of references between objects. This approach scales information hiding from objects to aggregates. The three language features are supported by formalizations and case studies, showing their soundness and practicality. With these three complementary language features, developers can easily design applications that can accommodate run-time changes
- …