English
Related papers

Related papers: Evaluating Call-By-Need on the Control Stack

200 papers

The Functional Machine Calculus (FMC) was recently introduced as a generalization of the lambda-calculus to include higher-order global state, probabilistic and non-deterministic choice, and input and output, while retaining confluence. The…

Logic in Computer Science · Computer Science 2023-05-26 Chris Barrett

In this paper we invite the reader to a journey through three lambda calculi with resource control: the lambda calculus, the sequent lambda calculus, and the lambda calculus with explicit substitution. All three calculi enable explicit…

Logic · Mathematics 2013-06-11 Silvia Ghilezan , Jelena Ivetic , Pierre Lescanne , Silvia Likavec

We present new proofs of termination of evaluation in reduction semantics (i.e., a small-step operational semantics with explicit representation of evaluation contexts) for System F with control operators. We introduce a modified version of…

Programming Languages · Computer Science 2013-09-06 Małgorzata Biernacka , Dariusz Biernacki , Sergueï Lenglet , Marek Materzok

A fully-automated algorithm is developed able to show that evaluation of a given untyped lambda-expression will terminate under CBV (call-by-value). The ``size-change principle'' from first-order programs is extended to arbitrary untyped…

Programming Languages · Computer Science 2015-07-01 Neil D. Jones , Nina Bohr

We propose a model-based approach to the model checking problem for recursive schemes. Since simply typed lambda calculus with the fixpoint operator, lambda-Y-calculus, is equivalent to schemes, we propose the use of a model of…

Logic in Computer Science · Computer Science 2017-01-11 Sylvain Salvati , Igor Walukiewicz

This paper formalizes and proves correct a compilation scheme for mutually-recursive definitions in call-by-value functional languages. This scheme supports a wider range of recursive definitions than previous methods. We formalize our…

Programming Languages · Computer Science 2010-02-01 Tom Hirschowitz , Xavier Leroy , J. B. Wells

We present a technique to study normalizing strategies when termination is asymptotic, that is, it appears as a limit, as opposite to reaching a normal form in a finite number of steps. Asymptotic termination occurs in several settings,…

Logic in Computer Science · Computer Science 2022-05-24 Claudia Faggian , Giulio Guerrieri

This paper is a concise and painless introduction to the $\lambda$-calculus. This formalism was developed by Alonzo Church as a tool for studying the mathematical properties of effectively computable functions. The formalism became popular…

Logic in Computer Science · Computer Science 2015-04-01 Raul Rojas

A famous result by Milner is that the lambda-calculus can be simulated inside the pi-calculus. This simulation, however, holds only modulo strong bisimilarity on processes, i.e. there is a slight mismatch between beta-reduction and how it…

Programming Languages · Computer Science 2013-02-27 Beniamino Accattoli

We present fully abstract encodings of the call-by-name and call-by-value $\lambda$-calculus into HOcore, a minimal higher-order process calculus with no name restriction. We consider several equivalences on the $\lambda$-calculus side --…

Logic in Computer Science · Computer Science 2024-08-07 Małgorzata Biernacka , Dariusz Biernacki , Sergueï Lenglet , Piotr Polesiuk , Damien Pous , Alan Schmitt

We extend the {\lambda}-calculus with constructs suitable for relational and functional-logic programming: non-deterministic choice, fresh variable introduction, and unification of expressions. In order to be able to unify…

Programming Languages · Computer Science 2021-03-02 Pablo Barenbaum , Federico Lochbaum , Mariana Milicich

We establish a general framework for reasoning about the relationship between call-by-value and call-by-name. In languages with computational effects, call-by-value and call-by-name executions of programs often have different, but related,…

Programming Languages · Computer Science 2024-08-07 Dylan McDermott , Alan Mycroft

Slot and van Emde Boas' weak invariance thesis states that reasonable machines can simulate each other within a polynomially overhead in time. Is lambda-calculus a reasonable machine? Is there a way to measure the computational complexity…

Programming Languages · Computer Science 2017-01-11 Beniamino Accattoli , Ugo Dal Lago

The invariance thesis of Slot and van Emde Boas states that all reasonable models of computation simulate each other with polynomially bounded overhead in time and constant-factor overhead in space. In this paper we show that a family of…

Programming Languages · Computer Science 2021-02-12 Małgorzata Biernacka , Witold Charatonik , Tomasz Drab

In CSL-LICS 2014, Accattoli and Dal Lago showed that there is an implementation of the ordinary (i.e. strong, pure, call-by-name) $\lambda$-calculus into models like RAM machines which is polynomial in the number of $\beta$-steps, answering…

Logic in Computer Science · Computer Science 2015-05-15 Beniamino Accattoli , Claudio Sacerdoti Coen

Slot and van Emde Boas' weak invariance thesis states that reasonable machines can simulate each other within a polynomially overhead in time. Is $\lambda$-calculus a reasonable machine? Is there a way to measure the computational…

Logic in Computer Science · Computer Science 2014-05-15 Beniamino Accattoli , Ugo Dal Lago

We describe a derivational approach to abstract interpretation that yields novel and transparently sound static analyses when applied to well-established abstract machines for higher-order and imperative programming languages. To…

Programming Languages · Computer Science 2011-07-19 David Van Horn , Matthew Might

We consider the non-deterministic extension of the call-by-value lambda calculus, which corresponds to the additive fragment of the linear-algebraic lambda-calculus. We define a fine-grained type system, capturing the right linearity…

Logic in Computer Science · Computer Science 2012-09-12 Alejandro Díaz-Caro , Barbara Petit

We examine the relationship between the algebraic lambda-calculus, a fragment of the differential lambda-calculus and the linear-algebraic lambda-calculus, a candidate lambda-calculus for quantum computation. Both calculi are algebraic:…

Logic in Computer Science · Computer Science 2015-07-01 Ali Assaf , Alejandro Díaz-Caro , Simon Perdrix , Christine Tasson , Benoî t Valiron

In this paper we introduce a typed, concurrent $\lambda$-calculus with references featuring explicit substitutions for variables and references. Alongside usual safety properties, we recover strong normalization. The proof is based on a…

Logic in Computer Science · Computer Science 2021-02-11 Yann Hamdaoui , Benoît Valiron