Results 1 
8 of
8
Universes for Generic Programs and Proofs in Dependent Type Theory
 Nordic Journal of Computing
, 2003
"... We show how to write generic programs and proofs in MartinL of type theory. To this end we consider several extensions of MartinL of's logical framework for dependent types. Each extension has a universes of codes (signatures) for inductively defined sets with generic formation, introduction, el ..."
Abstract

Cited by 42 (2 self)
 Add to MetaCart
We show how to write generic programs and proofs in MartinL of type theory. To this end we consider several extensions of MartinL of's logical framework for dependent types. Each extension has a universes of codes (signatures) for inductively defined sets with generic formation, introduction, elimination, and equality rules. These extensions are modeled on Dybjer and Setzer's finitely axiomatized theories of inductiverecursive definitions, which also have a universe of codes for sets, and generic formation, introduction, elimination, and equality rules.
Setoids in Type Theory
, 2000
"... Formalising mathematics in dependent type theory often requires to use setoids, i.e. types with an explicit equality relation, as a representation of sets. This paper surveys some possible denitions of setoids and assesses their suitability as a basis for developing mathematics. In particular, we ..."
Abstract

Cited by 30 (4 self)
 Add to MetaCart
Formalising mathematics in dependent type theory often requires to use setoids, i.e. types with an explicit equality relation, as a representation of sets. This paper surveys some possible denitions of setoids and assesses their suitability as a basis for developing mathematics. In particular, we argue that a commonly advocated approach to partial setoids is unsuitable, and more generally that total setoids seem better suited for formalising mathematics. 1
General recursion via coinductive types
 Logical Methods in Computer Science
"... Vol. 1 (2:1) 2005, pp. 1–28 ..."
Program Extraction from Large Proof Developments
, 2003
"... It is well known that mathematical proofs often contain (abstract) algorithms, but although these algorithms can be understood by a human, it still takes a lot of time and effort to implement this algorithm on a computer; moreover, one runs the risk of making mistakes in the process. From a fully... ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
It is well known that mathematical proofs often contain (abstract) algorithms, but although these algorithms can be understood by a human, it still takes a lot of time and effort to implement this algorithm on a computer; moreover, one runs the risk of making mistakes in the process. From a fully...
Higher Order Abstract Syntax in Type Theory
"... We develop a general tool to formalize higherorder languages and reason about them in a prooftool based on type theory (Coq). A language is specified by its signature, which consists of sets of sort and operation names and typing rules. These rules prescribe the sorts and bindings of each operat ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
We develop a general tool to formalize higherorder languages and reason about them in a prooftool based on type theory (Coq). A language is specified by its signature, which consists of sets of sort and operation names and typing rules. These rules prescribe the sorts and bindings of each operation. An algebra of terms is associated to a signature, using de Bruijn notation. Then a higherorder notation is built on top of the de Bruijn level, so that the user can work with metavariables instead of de Bruijn indices. We also provide recursion and induction principles formulated directly on the higherorder syntax. This generalizes work on the Hybrid approach to higherorder syntax in Isabelle and our earlier work on a constructive extension to Hybrid formalized in Coq. In particular, a large class of theorems that must be repeated for each object language in Hybrid is done once in our new approach and can be applied directly to each object language.
Coinductive Field of Exact Real Numbers and General Corecursion
, 2006
"... In this article we present a method to define algebraic structure (field operations) on a representation of real numbers by coinductive streams. The field operations will be given in two algorithms (homographic and quadratic algorithm) that operate on streams of Möbius maps. The algorithms can be se ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
In this article we present a method to define algebraic structure (field operations) on a representation of real numbers by coinductive streams. The field operations will be given in two algorithms (homographic and quadratic algorithm) that operate on streams of Möbius maps. The algorithms can be seen as coalgebra maps on the coalgebra of streams and hence they will be formalised as general corecursive functions. We use the machinery of Coq proof assistant for coinductive types to present the formalisation.
HIGHERORDER ABSTRACT SYNTAX IN TYPE THEORY
"... Abstract. We develop a general tool to formalize and reason about languages expressed using higherorder abstract syntax in a prooftool based on type theory (Coq). A language is specified by its signature, which consists of sets of sort and operation names and typing rules. These rules prescribe th ..."
Abstract
 Add to MetaCart
Abstract. We develop a general tool to formalize and reason about languages expressed using higherorder abstract syntax in a prooftool based on type theory (Coq). A language is specified by its signature, which consists of sets of sort and operation names and typing rules. These rules prescribe the sorts and bindings of each operation. An algebra of terms is associated to a signature, using de Bruijn notation. Then a higherorder notation is built on top of the de Bruijn level, so that the user can work with metavariables instead of de Bruijn indices. We also provide recursion and induction principles formulated directly on the higherorder syntax. This generalizes work on the Hybrid approach to higherorder syntax in Isabelle and our earlier work on a constructive extension to Hybrid formalized in Coq. In particular, a large class of theorems that must be repeated for each object language in Hybrid is done once in the present work and can be applied directly to each object language. §1. Introduction. We aim to use proof assistants (in our specific case Coq [9, 6]) to formally represent and reason about languages using higherorder syntax, i.e. object languages where binding operators are expressed using binding at