Information and Computation - Semantics of Data Types
Programming in Martin-Lo¨f's type theory: an introduction
Programming in Martin-Lo¨f's type theory: an introduction
Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
Universal Algebra in Type Theory
TPHOLs '99 Proceedings of the 12th International Conference on Theorem Proving in Higher Order Logics
Recursive Families of Inductive Types
TPHOLs '00 Proceedings of the 13th International Conference on Theorem Proving in Higher Order Logics
Nested General Recursion and Partiality in Type Theory
TPHOLs '01 Proceedings of the 14th International Conference on Theorem Proving in Higher Order Logics
Recursive Definitions in Type Theory
Proceedings of the Conference on Logic of Programs
Modelling general recursion in type theory
Mathematical Structures in Computer Science
A coinductive monad for prop-bounded recursion
PLPV '07 Proceedings of the 2007 workshop on Programming languages meets program verification
Recursive Coalgebras from Comonads
Electronic Notes in Theoretical Computer Science (ENTCS)
Recursive coalgebras from comonads
Information and Computation - Special issue: Seventh workshop on coalgebraic methods in computer science 2004
General recursion in type theory
TYPES'02 Proceedings of the 2002 international conference on Types for proofs and programs
TLCA'07 Proceedings of the 8th international conference on Typed lambda calculi and applications
Partial recursive functions in martin-löf type theory
CiE'06 Proceedings of the Second conference on Computability in Europe: logical Approaches to Computational Barriers
Recursive functions with higher order domains
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
Hi-index | 0.00 |
Our goal is to define a type of partial recursive functions in constructive type theory. In a series of previous articles, we studied two different formulations of partial functions and general recursion. We could obtain a type only by extending the theory with either an impredicative universe or with coinductive definitions. Here we present a new type constructor that eludes such entities of dubious constructive credentials. We start by showing how to break down a recursive function definition into three components: the first component generates the arguments of the recursive calls, the second evaluates them, and the last computes the output from the results of the recursive calls. We use this dissection as the basis for the introduction rule of the new type constructor. Every partial recursive function is associated with an inductive domain predicate; evaluation of the function requires a proof that the input values satisfy the predicate. We give a constructive justification for the new construct by interpreting it into the base type theory. This shows that the extended theory is consistent and constructive.