English
Related papers

Related papers: Reasoning about modular datatypes with Mendler ind…

200 papers

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

We present an extension to the $\mathtt{mathlib}$ library of the Lean theorem prover formalizing the foundations of computability theory. We use primitive recursive functions and partial recursive functions as the main objects of study, and…

Logic in Computer Science · Computer Science 2019-07-19 Mario Carneiro

Guided by Tarksi's fixpoint theorem in order theory, we show how to derive monotone recursive types with constant-time roll and unroll operations within Cedille, an impredicative, constructive, and logically consistent pure typed lambda…

Programming Languages · Computer Science 2023-06-22 Christopher Jenkins , Aaron Stump

The Dependent Object Types (DOT) calculus incorporates concepts from functional languages (e.g. modules) with traditional object-oriented features (e.g. objects, subtyping) to achieve greater expressivity (e.g. F-bounded polymorphism).…

Programming Languages · Computer Science 2025-10-27 Yu Xiang Zhu , Amos Robinson , Sophia Roshal , Timothy Mou , Julian Mackay , Jonathan Aldrich , Alex Potanin

Clocked Type Theory (CloTT) is a type theory for guarded recursion useful for programming with coinductive types, allowing productivity to be encoded in types, and for reasoning about advanced programming language features using an abstract…

Logic in Computer Science · Computer Science 2018-04-19 Bassel Mannaa , Rasmus Ejlers Møgelberg

We present an extensive mechanization of the meta-theory of Martin-L\"of Type Theory (MLTT) in the Coq proof assistant. Our development builds on pre-existing work in Agda to show not only the decidability of conversion, but also the…

Programming Languages · Computer Science 2023-10-11 Arthur Adjedj , Meven Lennon-Bertrand , Kenji Maillard , Pierre-Marie Pédrot , Loïc Pujet

Well-known principles of induction include monotone induction and different sorts of non-monotone induction such as inflationary induction, induction over well-founded sets and iterated induction. In this work, we define a logic formalizing…

Artificial Intelligence · Computer Science 2007-05-23 Marc Denecker , Eugenia Ternovska

Higher-order logic HOL offers a very simple syntax and semantics for representing and reasoning about typed data structures. But its type system lacks advanced features where types may depend on terms. Dependent type theory offers such a…

Logic in Computer Science · Computer Science 2023-05-25 Colin Rothgang , Florian Rabe , Christoph Benzmüller

We develop synthetic notions of oracle computability and Turing reducibility in the Calculus of Inductive Constructions (CIC), the constructive type theory underlying the Coq proof assistant. As usual in synthetic approaches, we employ a…

Logic in Computer Science · Computer Science 2023-07-31 Yannick Forster , Dominik Kirst , Niklas Mück

The logic FO(ID) uses ideas from the field of logic programming to extend first order logic with non-monotone inductive definitions. Such logic formally extends logic programming, abductive logic programming and datalog, and thus formalizes…

Logic in Computer Science · Computer Science 2012-07-12 Ping Hou , Johan Wittocx , Marc Denecker

Despite recent advances in automating theorem proving in full first-order theories, inductive reasoning still poses a serious challenge to state-of-the-art theorem provers. The reason for that is that in first-order logic induction requires…

Logic in Computer Science · Computer Science 2021-07-19 Johannes Schoisswohl , Laura Kovács

We propose a method to adapt functional logic programming to deal with reasoning on coinductively interpreted programs as well as on inductively interpreted programs. In order to do so, we consider a class of objects interesting for this…

Programming Languages · Computer Science 2012-03-06 Ronald de Haan

We present new induction principles for the syntax of dependent type theories, which we call relative induction principles. The result of the induction principle relative to a functor F into the syntax is stable over the codomain of F. We…

Logic in Computer Science · Computer Science 2021-07-20 Rafaël Bocquet , Ambrus Kaposi , Christian Sattler

Recently we presented a concise survey of the formulation of the induction and coinduction principles, and some concepts related to them, in programming languages type theory and four other mathematical disciplines. The presentation in type…

Logic in Computer Science · Computer Science 2019-03-14 Moez A. AbdelGawad

This paper introduces an expressive class of quotient-inductive types, called QW-types. We show that in dependent type theory with uniqueness of identity proofs, even the infinitary case of QW-types can be encoded using the combination of…

Logic in Computer Science · Computer Science 2022-03-15 Marcelo Fiore , Andrew M. Pitts , S. C. Steenkamp

Despite recent advances in automating theorem proving in full first-order theories, inductive reasoning still poses a serious challenge to state-of-the-art theorem provers. The reason for that is that in first-order logic induction requires…

Logic in Computer Science · Computer Science 2021-06-10 Johannes Schoisswohl , Laura Kovacs

Inference systems are a widespread framework used to define possibly recursive predicates by means of inference rules. They allow both inductive and coinductive interpretations that are fairly well-studied. In this paper, we consider a…

Logic in Computer Science · Computer Science 2023-06-22 Francesco Dagnino

We consider a general prescriptive type system with parametric polymorphism and subtyping for logic programs. The property of subject reduction expresses the consistency of the type system w.r.t. the execution model: if a program is…

Logic in Computer Science · Computer Science 2009-09-25 Jan-Georg Smaus , Francois Fages , Pierre Deransart

We present AlgCo (Algebraic Coinductives), a practical framework for inductive reasoning over commonly used coinductive types such as conats, streams, and infinitary trees with finite branching factor. The key idea is to exploit the notion…

Logic in Computer Science · Computer Science 2023-04-10 Alexander Bagnall , Gordon Stewart , Anindya Banerjee

It is commonly agreed that the success of future proof assistants will rely on their ability to incorporate computations within deduction in order to mimic the mathematician when replacing the proof of a proposition P by the proof of an…

Logic in Computer Science · Computer Science 2007-07-10 Frédéric Blanqui , Jean-Pierre Jouannaud , Pierre-Yves Strub