1,001 research outputs found
Innocent strategies as presheaves and interactive equivalences for CCS
Seeking a general framework for reasoning about and comparing programming
languages, we derive a new view of Milner's CCS. We construct a category E of
plays, and a subcategory V of views. We argue that presheaves on V adequately
represent innocent strategies, in the sense of game semantics. We then equip
innocent strategies with a simple notion of interaction. This results in an
interpretation of CCS.
Based on this, we propose a notion of interactive equivalence for innocent
strategies, which is close in spirit to Beffara's interpretation of testing
equivalences in concurrency theory. In this framework we prove that the
analogues of fair and must testing equivalences coincide, while they differ in
the standard setting.Comment: In Proceedings ICE 2011, arXiv:1108.014
Maude: specification and programming in rewriting logic
Maude is a high-level language and a high-performance system supporting executable specification and declarative programming in rewriting logic. Since rewriting logic contains equational logic, Maude also supports equational specification and programming in its sublanguage of functional modules and theories. The underlying equational logic chosen for Maude is membership equational logic, that has sorts, subsorts, operator overloading, and partiality definable by membership and equality conditions. Rewriting logic is reflective, in the sense of being able to express its own metalevel at the object level. Reflection is systematically exploited in Maude endowing the language with powerful metaprogramming capabilities, including both user-definable module operations and declarative strategies to guide the deduction process. This paper explains and illustrates with examples the main concepts of Maude's language design, including its underlying logic, functional, system and object-oriented modules, as well as parameterized modules, theories, and views. We also explain how Maude supports reflection, metaprogramming and internal strategies. The paper outlines the principles underlying the Maude system implementation, including its semicompilation techniques. We conclude with some remarks about applications, work on a formal environment for Maude, and a mobile language extension of Maude
Executable Structural Operational Semantics in Maude
This paper describes in detail how to bridge the gap between theory and practice when implementing
in Maude structural operational semantics described in rewriting logic, where transitions
become rewrites and inference rules become conditional rewrite rules with rewrites in the conditions,
as made possible by the new features in Maude 2.0. We validate this technique using it in
several case studies: a functional language Fpl (evaluation and computation semantics, including
an abstract machine), imperative languages WhileL (evaluation and computation semantics) and
GuardL with nondeterminism (computation semantics), Kahn’s functional language Mini-ML (evaluation
or natural semantics), Milner’s CCS (with strong and weak transitions), and Full LOTOS
(including ACT ONE data type specifications). In addition, on top of CCS we develop an implementation
of the Hennessy-Milner modal logic for describing local capabilities of processes, and
for LOTOS we build an entire tool where Full LOTOS specifications can be entered and executed
(without user knowledge of the underlying implementation of the semantics). We also compare this
method based on transitions as rewrites with another one based on transitions as judgements
Tiles, Rewriting Rules and CCS
Abstract In [12] we introduced the tile model, a framework encompassing a wide class of computational systems, whose behaviour can be described by certain rewriting rules. We gathered our inspiration both from the world of term rewriting and of concurrency theory, and our formalism recollects many properties of these sources. For example, it provides a compositional way to describe both the states and the sequences of transitions performed by a given system, stressing their distributed nature. Moreover, a suitable notion of typed proof allows to take into account also those formalisms relying on the notions of synchronization and side-effects to determine the actual behaviour of a system. In this work we narrow our scope, presenting a restricted version of our tile model and focussing our attention on its expressive power. To this aim, we recall the basic definitions of the process algebras paradigm [3,24], centering the paper on the recasting of this framework in our formalism
Primitives for Contract-based Synchronization
We investigate how contracts can be used to regulate the interaction between
processes. To do that, we study a variant of the concurrent constraints
calculus presented in [1], featuring primitives for multi-party synchronization
via contracts. We proceed in two directions. First, we exploit our primitives
to model some contract-based interactions. Then, we discuss how several models
for concurrency can be expressed through our primitives. In particular, we
encode the pi-calculus and graph rewriting.Comment: In Proceedings ICE 2010, arXiv:1010.530
A Calculus of Mobility and Communication for Ubiquitous Computing
We propose a Calculus of Mobility and Communication (CMC) for the modelling
of mobility, communication and context-awareness in the setting of ubiquitous
computing. CMC is an ambient calculus with the in and out capabilities of
Cardelli and Gordon's Mobile Ambients. The calculus has a new form of global
communication similar to that in Milner's CCS. In CMC an ambient is tagged with
a set of ports that agents executing inside the ambient are allowed to
communicate on. It also has a new context-awareness feature that allows
ambients to query their location. We present reduction semantics and labelled
transition system semantics of CMC and prove that the semantics coincide. A new
notion of behavioural equivalence is given by defining capability barbed
bisimulation and congruence which is proved to coincide with barbed
bisimulation congruence. The expressiveness of the calculus is illustrated by
two case studies.Comment: In Proceedings WWV 2015, arXiv:1508.0338
Adequacy Issues in Reactive Systems: Barbed Semantics for Mobile Ambients
Reactive systems represent a meta-framework aimed at deriving behavioral congruences for those specification formalisms whose operational semantics is provided by rewriting rules.
The aim of this thesis is to address one of the main issues of the framework, concerning the adequacy of the standard observational semantics (the IPO and the saturated one) in modelling the concrete semantics of actual formalisms. The problem is that IPO-bisimilarity (obtained considering only minimal labels) is often too discriminating, while the saturated one (via all labels) may be too coarse, and intermediate proposals should then be put forward.
We then introduce a more expressive semantics for reactive systems which, thanks to its flexibility,
allows for recasting a wide variety of observational, bisimulation-based equivalences. In particular, we propose suitable notions of barbed and weak barbed semantics for reactive systems, and an efficient characterization of them through the IPO-transition systems.
We also propose a novel, more general behavioural equivalence: L-bisimilarity, which is able to recast both its IPO and saturated counterparts, as well as the barbed one. The equivalence is parametric with respect to a set L of reactive systems labels, and it is shown that under mild conditions on L it is a congruence.
In order to provide a suitable test-bed, we instantiate our proposal over the asynchronous CCS and, most importantly, over the mobile ambients calculus, whose semantics is still in a flux
- …