Termination of recursive functions and productivity of corecursive functions are important for maintaining logical consistency in proof assistants. However, contemporary proof assistants, such as Coq, rely on syntactic criteria that prevent users from easily writing obviously terminating or productive programs, such as quicksort. This is troublesome, since there exist theories for type-based termination- and productivity-checking. In this paper, we present a design and implementation of sized type checking and inference for Coq. We extend past work on sized types for the Calculus of (Co)Inductive Constructions (CIC) with support for global definitions found in Gallina, and extend the sized-type inference algorithm to support completel...
International audienceEmerging trends in proof styles and new applications of interactive proof assi...
International audienceWe propose a new language for writing programs with dependent types on top of ...
We present a rich type system with subtyping for an extension of System F. Our type constructors inc...
Termination of recursive functions and productivity of corecursive functions are important for maint...
Contemporary proof assistants such as Coq require that recursive functions be terminating and corecu...
Many contemporary proof assistants based on dependent type theories such as Coq and Agda are founded...
Proof assistants based on dependent type theory are gaining adoption as a tool to develop certified ...
International audienceSized types have been developed to make termination checking more perspicuous,...
In type theory, programming and reasoning with possibly non-terminating programs and potentially inf...
Computer proof assistants vary along many dimensions. Among the mature implementations, the Coq syst...
International audienceCoq is built around a well-delimited kernel that perfoms typechecking for defi...
Sized types are a modular and theoretically well-understood tool for checking termination of recur-s...
Abstract. We propose a new language for writing programs with de-pendent types on top of the Coq pro...
Over their more than 50 years of existence, proof assistants have established themselves as tools gu...
International audienceDependent Type Theory as implemented into proof assistants and programming lan...
International audienceEmerging trends in proof styles and new applications of interactive proof assi...
International audienceWe propose a new language for writing programs with dependent types on top of ...
We present a rich type system with subtyping for an extension of System F. Our type constructors inc...
Termination of recursive functions and productivity of corecursive functions are important for maint...
Contemporary proof assistants such as Coq require that recursive functions be terminating and corecu...
Many contemporary proof assistants based on dependent type theories such as Coq and Agda are founded...
Proof assistants based on dependent type theory are gaining adoption as a tool to develop certified ...
International audienceSized types have been developed to make termination checking more perspicuous,...
In type theory, programming and reasoning with possibly non-terminating programs and potentially inf...
Computer proof assistants vary along many dimensions. Among the mature implementations, the Coq syst...
International audienceCoq is built around a well-delimited kernel that perfoms typechecking for defi...
Sized types are a modular and theoretically well-understood tool for checking termination of recur-s...
Abstract. We propose a new language for writing programs with de-pendent types on top of the Coq pro...
Over their more than 50 years of existence, proof assistants have established themselves as tools gu...
International audienceDependent Type Theory as implemented into proof assistants and programming lan...
International audienceEmerging trends in proof styles and new applications of interactive proof assi...
International audienceWe propose a new language for writing programs with dependent types on top of ...
We present a rich type system with subtyping for an extension of System F. Our type constructors inc...