English
Related papers

Related papers: A type system for Continuation Calculus

200 papers

We present a type system to guarantee termination of pi-calculus processes that exploits input/output capabilities and subtyping, as originally introduced by Pierce and Sangiorgi, in order to analyse the usage of channels. We show that our…

Logic in Computer Science · Computer Science 2011-08-29 Ioana Cristescu , Daniel Hirschkoff

Classical (or Boolean) type theory is the type theory that allows the type inference $\sigma \to \bot) \to \bot => \sigma$ (the type counterpart of double-negation elimination), where $\sigma$ is any type and $\bot$ is absurdity type. This…

Logic in Computer Science · Computer Science 2016-06-22 Ken Akiba

Defining substitution for a language with binders like the simply typed $\lambda$-calculus requires repetition, defining substitution and renaming separately. To verify the categorical properties of this calculus, we must repeat the same…

Logic in Computer Science · Computer Science 2025-10-15 Thorsten Altenkirch , Nathaniel Burke , Philip Wadler

Dependently typed languages such as Coq are used to specify and verify the full functional correctness of source programs. Type-preserving compilation can be used to preserve these specifications and proofs of correctness through…

Programming Languages · Computer Science 2018-08-14 William J. Bowman , Amal Ahmed

A notion of probabilistic lambda-calculus usually comes with a prescribed reduction strategy, typically call-by-name or call-by-value, as the calculus is non-confluent and these strategies yield different results. This is a break with one…

Logic in Computer Science · Computer Science 2020-02-21 Ugo Dal Lago , Giulio Guerrieri , Willem Heijltjes

In a previous work, we proved that an important part of the Calculus of Inductive Constructions (CIC), the basis of the Coq proof assistant, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui

The essence of compiling with continuations is that conversion to continuation-passing style (CPS) is equivalent to a source language transformation converting to administrative normal form (ANF). Taking as source language Moggi's…

Logic in Computer Science · Computer Science 2023-05-01 José Espírito Santo , Filipa Mendes

We propose a novel foundation for calculus that focuses on the notion of approximations while avoiding the use of limits altogether. Continuity is defined as approximation at a point, while differentiability is defined as approximation with…

History and Overview · Mathematics 2025-10-27 Michael P. Lamoureux , Matt Yedlin

Godel's theory T can be understood as a theory of the simply-typed lambda calculus that is extended to include the constant 0, the successor function S, and the operator R_tau for primitive recursion on objects of type tau. It is known that…

Logic · Mathematics 2014-10-14 Matthew P. Szudzik

Call-by-Push-Value (CBPV) is a programming paradigm subsuming both Callby-Name (CBN) and Call-by-Value (CBV) semantics. The essence of this paradigm is captured by the Bang Calculus, a (concise) term language connecting CBPV and Linear…

Logic in Computer Science · Computer Science 2023-05-08 Antonio Bucciarelli , Delia Kesner , Alejandro Ríos , Andrés Viso

This article presents a bidirectional type system for the Calculus of Inductive Constructions (CIC). It introduces a new judgement intermediate between the usual inference and checking, dubbed constrained inference, to handle the presence…

Programming Languages · Computer Science 2021-04-20 Meven Lennon-Bertrand

We define a new cost model for the call-by-value lambda-calculus satisfying the invariance thesis. That is, under the proposed cost model, Turing machines and the call-by-value lambda-calculus can simulate each other within a polynomial…

Logic in Computer Science · Computer Science 2007-05-23 Ugo Dal Lago , Simone Martini

Name-passing calculi are foundational models for mobile computing. Research into these models has produced a wealth of results ranging from relative expressiveness to programming pragmatics. The diversity of these results call for…

Logic in Computer Science · Computer Science 2015-08-04 Yuxi Fu , Han Zhu

In a previous work, we proved that almost all of the Calculus of Inductive Constructions (CIC), which is the basis of the proof assistant Coq, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui

This document introduces a generalization of calculus that treats both continuous and discrete variables on an equal footing. This generalization of calculus was developed independently of the "Calculus on Time Scales" literature but may be…

Classical Analysis and ODEs · Mathematics 2013-02-26 Jay Kaminsky

We prove that orthogonal constructor term rewrite systems and lambda-calculus with weak (i.e., no reduction is allowed under the scope of a lambda-abstraction) call-by-value reduction can simulate each other with a linear overhead. In…

Programming Languages · Computer Science 2012-08-03 Ugo Dal Lago , Simone Martini

Step-indexed semantic models of types were proposed as an alternative to purely syntactic safety proofs using subject-reduction. Building upon the work by Appel and others, we introduce a generalized step-indexed model for the call-by-name…

Programming Languages · Computer Science 2011-05-17 Benedikt Meurer

We define the syntax and reduction relation of a recursively typed lambda calculus with a parallel case-function (a parallel conditional). The reduction is shown to be confluent. We interpret the recursive types as information systems in a…

Logic in Computer Science · Computer Science 2008-06-12 Fritz Müller

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

We define a variant of realizability where realizers are pairs of a term and a substitution. This variant allows us to prove the normalization of a simply-typed call-by-need $$\lambda$-$calculus with control due to Ariola et al. Indeed, in…

Logic in Computer Science · Computer Science 2018-03-05 Étienne Miquey , Hugo Herbelin