English
Related papers

Related papers: Decidability of Type-checking in the Calculus of A…

200 papers

Large eliminations provide an expressive mechanism for arity- and type-generic programming. However, as large eliminations are closely tied to a type theory's primitive notion of inductive type, this expressivity is not expected within…

Programming Languages · Computer Science 2021-12-16 Christopher Jenkins , Andrew Marmaduke , Aaron Stump

The confluence of untyped \lambda-calculus with unconditional rewriting is now well un- derstood. In this paper, we investigate the confluence of \lambda-calculus with conditional rewriting and provide general results in two directions.…

Logic in Computer Science · Computer Science 2011-09-21 Frédéric Blanqui , Claude Kirchner , Colin Riba

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

The Size-Change Termination principle was first introduced to study the termination of first-order functional programs. In this work, we show that it can also be used to study the termination of higher-order rewriting in a system of…

Logic in Computer Science · Computer Science 2018-12-06 Frédéric Blanqui , Guillaume Genestier

A non-deterministic call-by-need lambda-calculus \calc with case, constructors, letrec and a (non-deterministic) erratic choice, based on rewriting rules is investigated. A standard reduction is defined as a variant of left-most outermost…

Programming Languages · Computer Science 2007-05-23 Manfred Schmidt-Schauß , Michael Huber

We consider type inference in the Hindley/Milner system extended with type annotations and constraints with a particular focus on Haskell-style type classes. We observe that standard inference algorithms are incomplete in the presence of…

Programming Languages · Computer Science 2007-05-23 Peter J Stuckey , Martin Sulzmann , Jeremy Wazny

We characterize those intersection-type theories which yield complete intersection-type assignment systems for lambda-calculi, with respect to the three canonical set-theoretical semantics for intersection-types: the inference semantics,…

Logic in Computer Science · Computer Science 2007-05-23 M. Dezani-Ciancaglini , F. Honsell , F. Alessi

It is a common knowledge that the integer functions definable in simply typed lambda-calculus are exactly the extended polynomials. This is indeed the case when one interprets integers over the type (p->p)->p->p where p is a base type…

Logic in Computer Science · Computer Science 2007-05-23 Mateusz Zakrzewski

The confluence of untyped lambda-calculus with unconditional rewriting has already been studied in various directions. In this paper, we investigate the confluence of lambda-calculus with conditional rewriting and provide general results in…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui , Claude Kirchner , Colin Riba

Despite a growing body of work at the intersection of deep learning and formal languages, there has been relatively little systematic exploration of transformer models for reasoning about typed lambda calculi. This is an interesting area of…

Programming Languages · Computer Science 2023-04-21 Brando Miranda , Avi Shinnar , Vasily Pestun , Barry Trager

Type theory plays an important role in foundations of mathematics as a framework for formalizing mathematics and a base for proof assistants providing semi-automatic proof checking and construction. Derivation of each theorem in type theory…

Logic · Mathematics 2021-02-23 Farida Kachapova

A type system is introduced for a generic Object Oriented programming language in order to infer resource upper bounds. A sound andcomplete characterization of the set of polynomial time computable functions is obtained. As a consequence,…

Programming Languages · Computer Science 2018-02-20 Emmanuel Hainry , Romain Péchoux

A typical way of analyzing the time complexity of functional programs is to extract a recurrence expressing the running time of the program in terms of the size of its input, and then to solve the recurrence to obtain a big-O bound. For…

Programming Languages · Computer Science 2020-08-03 Joseph W. Cutler , Daniel R. Licata , Norman Danner

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

We investigate an extension of nominal many-sorted signatures in which abstraction has a form of instantiation, called generalised concretion, as elimination operator (similarly to lambda-calculi). Expressions are then classified using a…

Logic in Computer Science · Computer Science 2025-10-15 Maribel Fernández , Miguel Pagano , Nora Szasz , Álvaro Tasistro

We show that the question whether a term is typable is decidable for type systems combining inclusion polymorphism with parametric polymorphism provided the type constructors are at most unary. To prove this result we first reduce the…

Logic in Computer Science · Computer Science 2007-05-23 Sabine Glesner , Karl Stroetmann

In a recent paper, a realizability technique has been used to give a semantics of a quantum lambda calculus. Such a technique gives rise to an infinite number of valid typing rules, without giving preference to any subset of those. In this…

Logic in Computer Science · Computer Science 2023-06-22 Alejandro Díaz-Caro , Octavio Malherbe

Semantic data fuels many different applications, but is still lacking proper integration into programming languages. Untyped access is error-prone while mapping approaches cannot fully capture the conceptualization of semantic data. In this…

Programming Languages · Computer Science 2016-10-25 Martin Leinberger , Ralf Lämmel , Steffen Staab

Sized types are a modular and theoretically well-understood tool for checking termination of recursive and productivity of corecursive definitions. The essential idea is to track structural descent and guardedness in the type system to make…

Programming Languages · Computer Science 2010-12-23 Andreas Abel

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