1,421 research outputs found
Priorities Without Priorities: Representing Preemption in Psi-Calculi
Psi-calculi is a parametric framework for extensions of the pi-calculus with
data terms and arbitrary logics. In this framework there is no direct way to
represent action priorities, where an action can execute only if all other
enabled actions have lower priority. We here demonstrate that the psi-calculi
parameters can be chosen such that the effect of action priorities can be
encoded.
To accomplish this we define an extension of psi-calculi with action
priorities, and show that for every calculus in the extended framework there is
a corresponding ordinary psi-calculus, without priorities, and a translation
between them that satisfies strong operational correspondence. This is a
significantly stronger result than for most encodings between process calculi
in the literature.
We also formally prove in Nominal Isabelle that the standard congruence and
structural laws about strong bisimulation hold in psi-calculi extended with
priorities.Comment: In Proceedings EXPRESS/SOS 2014, arXiv:1408.127
Formalising the pi-calculus using nominal logic
We formalise the pi-calculus using the nominal datatype package, based on
ideas from the nominal logic by Pitts et al., and demonstrate an implementation
in Isabelle/HOL. The purpose is to derive powerful induction rules for the
semantics in order to conduct machine checkable proofs, closely following the
intuitive arguments found in manual proofs. In this way we have covered many of
the standard theorems of bisimulation equivalence and congruence, both late and
early, and both strong and weak in a uniform manner. We thus provide one of the
most extensive formalisations of a process calculus ever done inside a theorem
prover.
A significant gain in our formulation is that agents are identified up to
alpha-equivalence, thereby greatly reducing the arguments about bound names.
This is a normal strategy for manual proofs about the pi-calculus, but that
kind of hand waving has previously been difficult to incorporate smoothly in an
interactive theorem prover. We show how the nominal logic formalism and its
support in Isabelle accomplishes this and thus significantly reduces the tedium
of conducting completely formal proofs. This improves on previous work using
weak higher order abstract syntax since we do not need extra assumptions to
filter out exotic terms and can keep all arguments within a familiar
first-order logic.Comment: 36 pages, 3 figure
On the Computation Power of Name Parameterization in Higher-order Processes
Parameterization extends higher-order processes with the capability of
abstraction (akin to that in lambda-calculus), and is known to be able to
enhance the expressiveness. This paper focuses on the parameterization of
names, i.e. a construct that maps a name to a process, in the higher-order
setting. We provide two results concerning its computation capacity. First,
name parameterization brings up a complete model, in the sense that it can
express an elementary interactive model with built-in recursive functions.
Second, we compare name parameterization with the well-known pi-calculus, and
provide two encodings between them.Comment: In Proceedings ICE 2015, arXiv:1508.0459
Separability in the Ambient Logic
The \it{Ambient Logic} (AL) has been proposed for expressing properties of
process mobility in the calculus of Mobile Ambients (MA), and as a basis for
query languages on semistructured data. We study some basic questions
concerning the discriminating power of AL, focusing on the equivalence on
processes induced by the logic . As underlying calculi besides MA we
consider a subcalculus in which an image-finiteness condition holds and that we
prove to be Turing complete. Synchronous variants of these calculi are studied
as well. In these calculi, we provide two operational characterisations of
: a coinductive one (as a form of bisimilarity) and an inductive one
(based on structual properties of processes). After showing to be stricly
finer than barbed congruence, we establish axiomatisations of on the
subcalculus of MA (both the asynchronous and the synchronous version), enabling
us to relate to structural congruence. We also present some
(un)decidability results that are related to the above separation properties
for AL: the undecidability of on MA and its decidability on the
subcalculus.Comment: logical methods in computer science, 44 page
On the Distributability of Mobile Ambients
Modern society is dependent on distributed software systems and to verify
them different modelling languages such as mobile ambients were developed. To
analyse the quality of mobile ambients as a good foundational model for
distributed computation, we analyse the level of synchronisation between
distributed components that they can express. Therefore, we rely on earlier
established synchronisation patterns. It turns out that mobile ambients are not
fully distributed, because they can express enough synchronisation to express a
synchronisation pattern called M. However, they can express strictly less
synchronisation than the standard pi-calculus. For this reason, we can show
that there is no good and distributability-preserving encoding from the
standard pi-calculus into mobile ambients and also no such encoding from mobile
ambients into the join-calculus, i.e., the expressive power of mobile ambients
is in between these languages. Finally, we discuss how these results can be
used to obtain a fully distributed variant of mobile ambients.Comment: In Proceedings EXPRESS/SOS 2018, arXiv:1808.08071. Conference version
of arXiv:1808.0159
A type checking algorithm for qualified session types
We present a type checking algorithm for establishing a session-based
discipline in the pi calculus of Milner, Parrow and Walker. Our session types
are qualified as linear or unrestricted. Linearly typed communication channels
are guaranteed to occur in exactly one thread, possibly multiple times;
afterwards they evolve as unrestricted channels. Session protocols are
described by a type constructor that denotes the two ends of one and the same
communication channel. We ensure the soundness of the algorithm by showing that
processes consuming all linear resources are accepted by a type system
preserving typings during the computation and that type checking is consistent
w.r.t. structural congruence.Comment: In Proceedings WWV 2011, arXiv:1108.208
COWS: A Timed Service-Oriented Calculus
COWS (Calculus for Orchestration of Web Services) is a foundational language for Service Oriented Computing that combines in an original way a number of ingredients borrowed from well-known process calculi, e.g. asynchronous communication, polyadic synchronization, pattern matching, protection, delimited receiving and killing activities, while resulting different from any of them. In this paper, we extend COWS with timed orchestration constructs, this way we obtain a language capable of completely formalizing the semantics of WS-BPEL, the âde factoâ standard language for orchestration of web services. We present the semantics of the extended language and illustrate its peculiarities and expressiveness by means of several examples
CaSPiS: A Calculus of Sessions, Pipelines and Services
Service-oriented computing is calling for novel computational models and languages with well
disciplined primitives for client-server interaction, structured orchestration and unexpected events handling. We present CaSPiS, a process calculus where the conceptual abstractions of sessioning and pipelining play a central role for modelling service-oriented systems. CaSPiS sessions are two-sided, uniquely named and can be nested. CaSPiS pipelines permit orchestrating the flow of data produced by different sessions. The calculus is also equipped with operators for handling (unexpected) termination of the partnerâs side of a session. Several examples are presented to provide evidence of the flexibility of the chosen set of primitives. One key contribution is a fully abstract encoding of Misra et al.âs orchestration language Orc. Another main result shows that in CaSPiS it is possible to program a âgraceful terminationâ of nested sessions, which guarantees that no session is forced to hang forever after the loss of its partner
- âŠ