English
Related papers

Related papers: Eager Functions as Processes (long version)

200 papers

The $\pi$-calculus is used as a model for programming languages. Its contexts exhibit arbitrary concurrency, making them very discriminating. This may prevent validating desirable behavioural equivalences in cases when more disciplined…

Logic in Computer Science · Computer Science 2021-12-14 Daniel Hirschkoff , Enguerrand Prebet , Davide Sangiorgi

The existing call-by-need lambda calculi describe lazy evaluation via equational logics. A programmer can use these logics to safely ascertain whether one term is behaviorally equivalent to another or to determine the value of a lazy…

Programming Languages · Computer Science 2012-01-19 Stephen Chang , Matthias Felleisen

The benchmark for computation is typically given as Turing computability; the ability for a computation to be performed by a Turing Machine. Many languages exploit (indirect) encodings of Turing Machines to demonstrate their ability to…

Formal Languages and Automata Theory · Computer Science 2014-10-29 Thomas Given-Wilson

We introduce two extensions of the $\lambda$-calculus with a probabilistic choice operator, $\Lambda_\oplus^{cbv}$ and $\Lambda_\oplus^{cbn}$, modeling respectively call-by-value and call-by-name probabilistic computation. We prove that…

Logic in Computer Science · Computer Science 2019-05-13 Claudia Faggian , Simona Ronchi della Rocca

Proofs by logical relations play a key role to establish rich properties such as normalization or contextual equivalence. They are also challenging to mechanize. In this paper, we describe the completeness proof of algorithmic equality for…

Logic in Computer Science · Computer Science 2015-07-30 Andrew Cave , Brigitte Pientka

We analyse two translations from the synchronous into the asynchronous $\pi$-calculus, both without choice, that are often quoted as standard examples of valid encodings, showing that the asynchronous $\pi$-calculus is just as expressive as…

Logic in Computer Science · Computer Science 2025-02-14 Rob van Glabbeek , Ursula Goltz , Christopher Lippert , Stephan Mennicke

We study the correspondence between a concurrent lambda-calculus in administrative, continuation passing style and a pi-calculus and we derive a termination result for the latter.

Programming Languages · Computer Science 2011-02-14 Roberto Amadio

We present a call-by-need $\lambda$-calculus that enables strong reduction (that is, reduction inside the body of abstractions) and guarantees that arguments are only evaluated if needed and at most once. This calculus uses explicit…

Logic in Computer Science · Computer Science 2023-06-22 Thibaut Balabonski , Antoine Lanco , Guillaume Melquiond

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 quality criteria. There exists a bunch of…

Logic in Computer Science · Computer Science 2015-08-28 Kirstin Peters , Rob van Glabbeek

Recently, we have developed an efficient generic partition refinement algorithm, which computes behavioural equivalence on a state-based system given as an encoded coalgebra, and implemented it in the tool CoPaR. Here we extend this to a…

Data Structures and Algorithms · Computer Science 2022-11-10 Hans-Peter Deifel , Stefan Milius , Thorsten Wißmann

We study encodings of the lambda-calculus into the pi-calculus in the unexplored case of calculi with non-determinism and failures. On the sequential side, we consider lambdafail, a new non-deterministic calculus in which intersection types…

Logic in Computer Science · Computer Science 2024-02-14 Joseph W. N. Paulus , Daniele Nantes-Sobrinho , Jorge A. Pérez

Computation 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…

Logic in Computer Science · Computer Science 2014-06-24 Thomas Given-Wilson

This paper shows that the $\pi$-calculus with implicit matching is no more expressive than CCS$\gamma$, a variant of CCS in which the result of a synchronisation of two actions is itself an action subject to relabelling or restriction,…

Logic in Computer Science · Computer Science 2022-03-23 Rob van Glabbeek

The call-by-value lambda calculus can be endowed with permutation rules, arising from linear logic proof-nets, having the advantage of unblocking some redexes that otherwise get stuck during the reduction. We show that such an extension…

Logic in Computer Science · Computer Science 2023-06-22 Emma Kerinec , Giulio Manzonetto , Michele Pagani

Calculi with control operators have been studied to reason about control in programming languages and to interpret the computational content of classical proofs. To make these calculi into a real programming language, one should also…

Logic in Computer Science · Computer Science 2012-10-12 Robbert Krebbers

The elegant theory of the call-by-value lambda-calculus relies on weak evaluation and closed terms, that are natural hypotheses in the study of programming languages. To model proof assistants, however, strong evaluation and open terms are…

Logic in Computer Science · Computer Science 2016-09-21 Beniamino Accattoli , Giulio Guerrieri

To celebrate the 30th edition of EXPRESS and the 20th edition of SOS we overview how session types can be expressed in a type theory for the standard $\pi$-calculus by means of a suitable encoding. The encoding allows one to reuse results…

Programming Languages · Computer Science 2023-09-15 Ilaria Castellani , Ornela Dardha , Luca Padovani , Davide Sangiorgi

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

Logic in Computer Science · Computer Science 2019-03-14 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

Psi-calculi are a parametric framework for nominal calculi, where standard calculi are found as instances, like the pi-calculus, or the cryptographic spi-calculus and applied-pi. Psi-calculi have an interleaving operational semantics, with…

Logic in Computer Science · Computer Science 2014-10-29 Håkon Normann , Cristian Prisacariu , Thomas Hildebrandt

We study polymorphic type assignment systems for untyped lambda-calculi with effects, based on Moggi's monadic approach. Moving from the abstract definition of monads, we introduce a version of the call-by-value computational…

Logic in Computer Science · Computer Science 2020-02-10 Ugo de'Liguoro , Riccardo Treglia