329 research outputs found
An interactive semantics of logic programming
We apply to logic programming some recently emerging ideas from the field of
reduction-based communicating systems, with the aim of giving evidence of the
hidden interactions and the coordination mechanisms that rule the operational
machinery of such a programming paradigm. The semantic framework we have chosen
for presenting our results is tile logic, which has the advantage of allowing a
uniform treatment of goals and observations and of applying abstract
categorical tools for proving the results. As main contributions, we mention
the finitary presentation of abstract unification, and a concurrent and
coordinated abstract semantics consistent with the most common semantics of
logic programming. Moreover, the compositionality of the tile semantics is
guaranteed by standard results, as it reduces to check that the tile systems
associated to logic programs enjoy the tile decomposition property. An
extension of the approach for handling constraint systems is also discussed.Comment: 42 pages, 24 figure, 3 tables, to appear in the CUP journal of Theory
and Practice of Logic Programmin
Matching in the Pi-Calculus
We study whether, in the pi-calculus, the match prefix-a conditional operator
testing two names for (syntactic) equality-is expressible via the other
operators. Previously, Carbone and Maffeis proved that matching is not
expressible this way under rather strong requirements (preservation and
reflection of observables). Later on, Gorla developed a by now widely-tested
set of criteria for encodings that allows much more freedom (e.g. instead of
direct translations of observables it allows comparison of calculi with respect
to reachability of successful states). In this paper, we offer a considerably
stronger separation result on the non-expressibility of matching using only
Gorla's relaxed requirements.Comment: In Proceedings EXPRESS/SOS 2014, arXiv:1408.127
A Calculus for Orchestration of Web Services
We introduce COWS (Calculus for Orchestration of Web Services), a new foundational language for SOC whose design has been influenced by WS-BPEL, the de facto standard language for orchestration of web services. COWS 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. Several examples illustrates COWS peculiarities and show its expressiveness both for modelling imperative and orchestration constructs, e.g. web services, flow graphs, fault and compensation handlers, and for encoding other process and orchestration languages
Matching in the Pi-Calculus (Technical Report)
We study whether, in the pi-calculus, the match prefix---a conditional
operator testing two names for (syntactic) equality---is expressible via the
other operators. Previously, Carbone and Maffeis proved that matching is not
expressible this way under rather strong requirements (preservation and
reflection of observables). Later on, Gorla developed a by now widely-tested
set of criteria for encodings that allows much more freedom (e.g. instead of
direct translations of observables it allows comparison of calculi with respect
to reachability of successful states). In this paper, we offer a considerably
stronger separation result on the non-expressibility of matching using only
Gorla's relaxed requirements.Comment: This report extends a paper in EXPRESS/SOS'14 and provides the
missing proof
A uniform framework for modelling nondeterministic, probabilistic, stochastic, or mixed processes and their behavioral equivalences
Labeled transition systems are typically used as behavioral models of concurrent processes, and the labeled transitions define the a one-step state-to-state reachability relation. This model can be made generalized by modifying the transition relation to associate a state reachability distribution, rather than a single target state, with any pair of source state and transition label. The state reachability distribution becomes a function mapping each possible target state to a value that expresses the degree of one-step reachability of that state. Values are taken from a preordered set equipped with a minimum that denotes unreachability. By selecting suitable preordered sets, the resulting model, called ULTraS from Uniform Labeled Transition System, can be specialized to capture well-known models of fully nondeterministic processes (LTS), fully
probabilistic processes (ADTMC), fully stochastic processes (ACTMC), and of nondeterministic and probabilistic (MDP) or nondeterministic and stochastic (CTMDP) processes. This uniform treatment of different behavioral models extends to behavioral equivalences. These can be defined on ULTraS by relying on appropriate measure functions that expresses the degree of reachability of a set of states when performing
single-step or multi-step computations. It is shown that the specializations of bisimulation, trace, and testing
equivalences for the different classes of ULTraS coincide with the behavioral equivalences defined in the literature over traditional models
Bisimulation of Labelled State-to-Function Transition Systems Coalgebraically
Labeled state-to-function transition systems, FuTS for short, are
characterized by transitions which relate states to functions of states over
general semirings, equipped with a rich set of higher-order operators. As such,
FuTS constitute a convenient modeling instrument to deal with process languages
and their quantitative extensions in particular. In this paper, the notion of
bisimulation induced by a FuTS is addressed from a coalgebraic point of view. A
correspondence result is established stating that FuTS-bisimilarity coincides
with behavioural equivalence of the associated functor. As generic examples,
the equivalences underlying substantial fragments of major examples of
quantitative process algebras are related to the bisimilarity of specific FuTS.
The examples range from a stochastic process language, PEPA, to a language for
Interactive Markov Chains, IML, a (discrete) timed process language, TPC, and a
language for Markov Automata, MAL. The equivalences underlying these languages
are related to the bisimilarity of their specific FuTS. By the correspondence
result coalgebraic justification of the equivalences of these calculi is
obtained. The specific selection of languages, besides covering a large variety
of process interaction models and modelling choices involving quantities,
allows us to show different classes of FuTS, namely so-called simple FuTS,
combined FuTS, nested FuTS, and general FuTS
Towards a Unified Framework for Declarative Structured Communications
We present a unified framework for the declarative analysis of structured
communications. By relying on a (timed) concurrent constraint programming
language, we show that in addition to the usual operational techniques from
process calculi, the analysis of structured communications can elegantly
exploit logic-based reasoning techniques. We introduce a declarative
interpretation of the language for structured communications proposed by Honda,
Vasconcelos, and Kubo. Distinguishing features of our approach are: the
possibility of including partial information (constraints) in the session
model; the use of explicit time for reasoning about session duration and
expiration; a tight correspondence with logic, which formally relates session
execution and linear-time temporal logic formulas
Connector algebras for C/E and P/T nets interactions
A quite fourishing research thread in the recent literature on component based system is concerned with the algebraic properties of different classes of connectors. In a recent paper, an algebra of stateless connectors was presented that consists of five kinds of basic connectors, namely symmetry, synchronization, mutual exclusion, hiding and inaction, plus their duals and it was shown how they can be freely composed in series and in parallel to model sophisticated "glues". In this paper we explore the expressiveness of stateful connectors obtained by adding one-place buffers or unbounded buffers to the stateless connectors. The main results are: i) we show how different classes of connectors exactly correspond to suitable classes of Petri nets equipped with compositional interfaces, called nets with boundaries; ii) we show that the difference between strong and weak semantics in stateful connectors is reflected in the semantics of nets with boundaries by moving from the classic step semantics (strong case) to a novel banking semantics (weak case), where a step can be executed by taking some "debit" tokens to be given back during the same step; iii) we show that the corresponding bisimilarities are congruences (w.r.t. composition of connectors in series and in parallel); iv) we show that suitable monoidality laws, like those arising when representing stateful connectors in the tile model, can nicely capture concurrency aspects; and v) as a side result, we provide a basic algebra, with a finite set of symbols, out of which we can compose all P/T nets, fulfilling a long standing quest
Behavioural Equivalence for Infinite Systems—Partially Decidable!
For finite-state systems non-interleaving equivalences are computationallyat least as hard as interleaving equivalences. In this paper we showthat when moving to infinite-state systems, this situation may changedramatically.We compare standard language equivalence for process description languages with two generalizations based on traditional approaches capturing non-interleaving behaviour, pomsets representing global causal dependency, and locality representing spatial distribution of events.We first study equivalences on Basic Parallel Processes, BPP, a processcalculus equivalent to communication free Petri nets. For this simpleprocess language our two notions of non-interleaving equivalences agree.More interestingly, we show that they are decidable, contrasting a result ofHirshfeld that standard interleaving language equivalence is undecidable.Our result is inspired by a recent result of Esparza and Kiehn, showingthe same phenomenon in the setting of model checking.We follow up investigating to which extent the result extends to largersubsets of CCS and TCSP. We discover a significant difference betweenour non-interleaving equivalences. We show that for a certain non-trivialsubclass of processes between BPP and TCSP, not only are the two equivalences different, but one (locality) is decidable whereas the other (pomsets) is not. The decidability result for locality is proved by a reduction to the reachability problem for Petri nets
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
- …