English
Related papers

Related papers: Substitution Without Copy and Paste

200 papers

Categories with families (CwFs) have been used to define the semantics of type theory in type theory. In the setting of Homotopy Type Theory (HoTT), one of the limitations of the traditional notion of CwFs is the requirement to set-truncate…

Logic in Computer Science · Computer Science 2025-12-10 Thorsten Altenkirch , Ambrus Kaposi , Szumi Xie

Proof assistants and programming languages based on type theories usually come in two flavours: one is based on the standard natural deduction presentation of type theory and involves eliminators, while the other provides a syntax in…

Logic in Computer Science · Computer Science 2015-07-30 Nicolas Guenot , Daniel Gustafsson

Term rewriting systems have a simple syntax and semantics and facilitate proofs of correctness. However, they are not as popular in industry or academia as imperative languages. We define a term rewriting based abstract programming language…

Programming Languages · Computer Science 2020-07-08 David Plaisted , Lee Barnett

In this paper we use finite vector spaces (finite dimension, over finite fields) as a non-standard computational model of linear logic. We first define a simple, finite PCF-like lambda-calculus with booleans, and then we discuss two finite…

Logic in Computer Science · Computer Science 2014-09-29 Benoît Valiron , Steve Zdancewic

Metaprogramming enables the generation of performant code, while gradual typing facilitates the smooth migration from untyped scripts to robust statically typed programs. However, combining these features with imperative state -…

Programming Languages · Computer Science 2026-02-24 Tianyu Chen , Darshal Shetty , Jeremy G. Siek , Chao-Hong Chen , Weixi Ma , Arnaud Venet , Rocky Liu

Lambda calculus is the basis of functional programming and higher order proof assistants. However, little is known about combinatorial properties of lambda terms, in particular, about their asymptotic distribution and random generation.…

Logic in Computer Science · Computer Science 2013-07-05 Katarzyna Grygiel , Pierre Lescanne

We adapt Fiore, Plotkin, and Turi's treatment of abstract syntax with binding, substitution, and holes to account for languages with second-class sorts. These situations include programming calculi such as the Call-by-Value lambda-calculus…

Programming Languages · Computer Science 2026-03-03 Marcelo P. Fiore , Ohad Kammar , Georg Moser , Sam Staton

As originally proposed, type classes provide overloading and ad-hoc definition, but can still be understood (and implemented) in terms of strictly parametric calculi. This is not true of subsequent extensions of type classes. Functional…

Programming Languages · Computer Science 2016-12-28 J. Garrett Morris

The key to any nameless representation of syntax is how it indicates the variables we choose to use and thus, implicitly, those we discard. Standard de Bruijn representations delay discarding maximally till the leaves of terms where one is…

Logic in Computer Science · Computer Science 2018-07-12 Conor McBride

We introduce a universe of regular datatypes with variable binding information, for which we define generic formation and elimination (i.e. induction /recursion) operators. We then define a generic alpha-equivalence relation over the types…

Programming Languages · Computer Science 2018-07-06 Ernesto Copello , Nora Szasz , Álvaro Tasistro

Abstract clones serve as an algebraic presentation of the syntax of a simple type theory. From the perspective of universal algebra, they define algebraic theories like those of groups, monoids and rings. This link allows one to study the…

Programming Languages · Computer Science 2025-04-15 Nayan Rajesh

We propose a way to unify two approaches of non-cloning in quantum lambda-calculi: logical and algebraic linearities. The first approach is to forbid duplicating variables, while the second is to consider all lambda-terms as…

Logic in Computer Science · Computer Science 2019-12-06 Alejandro Díaz-Caro , Gilles Dowek , Juan Pablo Rinaldi

We present a probabilistic version of PCF, a well-known simply typed universal functional language. The type hierarchy is based on a single ground type of natural numbers. Even if the language is globally call-by-name, we allow a…

Logic in Computer Science · Computer Science 2015-11-05 Thomas Ehrhard , Michele Pagani , Christine Tasson

We propose an intersection type system for an imperative lambda-calculus based on a state monad and equipped with algebraic operations to read and write to the store. The system is derived by solving a suitable domain equation in the…

Programming Languages · Computer Science 2022-02-25 Ugo de'Liguoro , Riccardo Treglia

The denotational semantics of the untyped lambda-calculus is a well developed field built around the concept of solvable terms, which are elegantly characterized in many different ways. In particular, unsolvable terms provide a consistent…

Logic in Computer Science · Computer Science 2022-07-19 Beniamino Accattoli , Giulio Guerrieri

Repetition avoidance has been studied since Thue's work. In this paper, we considered another type of repetition, which is called pseudo-power. This concept is inspired by Watson-Crick complementarity in DNA sequence and is defined over an…

Formal Languages and Automata Theory · Computer Science 2009-11-13 Ehsan Chiniforooshan , Lila Kari , Zhi Xu

Convertibility checking - determining whether two lambda-terms are equal up to reductions - is a crucial component of proof assistants and dependently-typed languages. Practical implementations often use heuristics to quickly conclude that…

Logic in Computer Science · Computer Science 2026-01-12 Nathanaëlle Courant , Xavier Leroy

We consider the complexities of substitutive sequences over a binary alphabet. By studying various types of special words, we show that, knowing some initial values, its complexity can be completely formulated via a recurrence formula…

Combinatorics · Mathematics 2015-07-16 Bo Tan , Zhi-Xiong Wen , Yiping Zhang

We give a categorical semantics for a call-by-value linear lambda calculus. Such a lambda calculus was used by Selinger and Valiron as the backbone of a functional programming language for quantum computation. One feature of this lambda…

Logic in Computer Science · Computer Science 2008-01-08 Peter Selinger , Benoît Valiron

We try to build, provably in ZFC, for a first order T a model in which any isomorphism between two Boolean algebras is definable. The problem, compared to [Sh:384], is with pseudo-finite Boolean algebras. A side benefit is that we do not…

Logic · Mathematics 2016-01-15 Saharon Shelah