17 research outputs found
On the Expressiveness of Joining
The expressiveness of communication primitives has been explored in a common
framework based on the pi-calculus by considering four features: synchronism
(asynchronous vs synchronous), arity (monadic vs polyadic data), communication
medium (shared dataspaces vs channel-based), and pattern-matching (binding to a
name vs testing name equality vs intensionality). Here another dimension
coordination is considered that accounts for the number of processes required
for an interaction to occur. Coordination generalises binary languages such as
pi-calculus to joining languages that combine inputs such as the Join Calculus
and general rendezvous calculus. By means of possibility/impossibility of
encodings, this paper shows coordination is unrelated to the other features.
That is, joining languages are more expressive than binary languages, and no
combination of the other features can encode a joining language into a binary
language. Further, joining is not able to encode any of the other features
unless they could be encoded otherwise.Comment: In Proceedings ICE 2015, arXiv:1508.04595. arXiv admin note:
substantial text overlap with arXiv:1408.145
On the Expressiveness of Intensional Communication
The expressiveness of communication primitives has been explored in a common
framework based on the pi-calculus by considering four features: synchronism
(asynchronous vs synchronous), arity (monadic vs polyadic data), communication
medium (shared dataspaces vs channel-based), and pattern-matching (binding to a
name vs testing name equality). Here pattern-matching is generalised to account
for terms with internal structure such as in recent calculi like Spi calculi,
Concurrent Pattern Calculus and Psi calculi. This paper explores intensionality
upon terms, in particular communication primitives that can match upon both
names and structures. By means of possibility/impossibility of encodings, this
paper shows that intensionality alone can encode synchronism, arity,
communication-medium, and pattern-matching, yet no combination of these without
intensionality can encode any intensional language.Comment: In Proceedings EXPRESS/SOS 2014, arXiv:1408.127
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
Musings on Encodings and Expressiveness
This paper proposes a definition of what it means for one system description
language to encode another one, thereby enabling an ordering of system
description languages with respect to expressive power. I compare the proposed
definition with other definitions of encoding and expressiveness found in the
literature, and illustrate it on a case study: comparing the expressive power
of CCS and CSP.Comment: In Proceedings EXPRESS/SOS 2012, arXiv:1208.244
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
Full abstraction for expressiveness: history, myths and facts
Dieser Beitrag ist mit Zustimmung des Rechteinhabers aufgrund einer (DFG geförderten) Allianz- bzw. Nationallizenz frei zugÀnglich.This publication is with permission of the rights owner freely accessible due to an Alliance licence and a national licence (funded by the DFG, German Research Foundation) respectively.What does it mean that an encoding is fully abstract? What does it not mean? In this position paper, we want to help the reader to evaluate the real benefits of using such a notion when studying the expressiveness of programming languages. Several examples and counterexamples are given. In some cases, we work at a very abstract level; in other cases, we give concrete samples taken from the field of process calculi, where the theory of expressiveness has been mostly developed in the last years
Expressiveness via Intensionality and Concurrency
International audienceComputation can be considered by taking into account two dimensions: extensional versus intensional, and sequential versus concurrent. Traditionally sequential extensional computation can be captured by the lambda-calculus. However, recent work shows that there are more expressive intensional calculi such as SF-calculus. Traditionally process calculi capture computation by encoding the lambda-calculus, such as in the pi-calculus. Following this increased expressiveness via intensionality, other recent work has shown that concurrent pattern calculus is more expressive than pi-calculus. This paper formalises the relative expressiveness of all four of these calculi by placing them on a square whose edges are irreversible encodings. This square is representative of a more general result: that expressiveness increases with both intensionality and concurrency
Comparing Process Calculi Using Encodings
Encodings or the proof of their absence are the main way to compare process
calculi. To analyse the quality of encodings and to rule out trivial or
meaningless encodings, they are augmented with encodability criteria. There
exists a bunch of different criteria and different variants of criteria in
order to reason in different settings. This leads to incomparable results.
Moreover, it is not always clear whether the criteria used to obtain a result
in a particular setting do indeed fit to this setting. This paper provides a
short survey on often used encodability criteria, general frameworks that try
to provide a unified notion of the quality of an encoding, and methods to
analyse and compare encodability criteria.Comment: In Proceedings EXPRESS/SOS 2019, arXiv:1908.0821