Results 1 
6 of
6
CCoRN, the Constructive Coq Repository at Nijmegan
"... We present CCoRN, the Constructive Coq Repository at Nijmegen. It consists of a library of constructive algebra and analysis, formalized in the theorem prover Coq. In this paper we explain the structure, the contents and the use of the library. Moreover we discuss the motivation and the (possible) ..."
Abstract

Cited by 20 (9 self)
 Add to MetaCart
We present CCoRN, the Constructive Coq Repository at Nijmegen. It consists of a library of constructive algebra and analysis, formalized in the theorem prover Coq. In this paper we explain the structure, the contents and the use of the library. Moreover we discuss the motivation and the (possible) applications of such a library.
A LargeScale Experiment in Executing Extracted Programs
"... It is a wellknown fact that algorithms are often hidden inside mathematical proofs. If these proofs are formalized inside a proof assistant, then a mechanism called extraction can generate the corresponding programs automatically. Previous work has focused on the difficulties in obtaining a program ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
It is a wellknown fact that algorithms are often hidden inside mathematical proofs. If these proofs are formalized inside a proof assistant, then a mechanism called extraction can generate the corresponding programs automatically. Previous work has focused on the difficulties in obtaining a program from a formalization of the Fundamental Theorem of Algebra inside the Coq proof assistant. In theory, this program allows one to compute approximations of roots of polynomials. However, as we show in this work, there is currently a big gap between theory and practice. We study the complexity of the extracted program and analyze the reasons of its inefficiency, showing that this is a direct consequence of the approach used throughout the formalization.
Implicit and noncomputational arguments using monads
, 2005
"... Abstract. We provide a monadic view on implicit and noncomputational arguments. This allows us to treat Berger’s noncomputational quantifiers in the Coqsystem. We use Tait’s normalization proof and the concatenation of vectors as case studies for the extraction of programs. With little effort one ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Abstract. We provide a monadic view on implicit and noncomputational arguments. This allows us to treat Berger’s noncomputational quantifiers in the Coqsystem. We use Tait’s normalization proof and the concatenation of vectors as case studies for the extraction of programs. With little effort one can eliminate noncomputational arguments from extracted programs. One thus obtains extracted code that is not only closer to the intended one, but also decreases both the running time and the memory usage dramatically. We also study the connection between Harrop formulas, lax modal logic and the Coq type theory.
Russell O’Connor, Bas Spitters 1 A computer verified, monadic, functional implementation of the integral.
, 2008
"... Abstract. We provide a computer verified exact monadic functional implementation of the Riemann integral in type theory. Together with previous work by O’Connor, this may be seen as the beginning of the realization of Bishop’s vision to use constructive mathematics as a programming language for exac ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. We provide a computer verified exact monadic functional implementation of the Riemann integral in type theory. Together with previous work by O’Connor, this may be seen as the beginning of the realization of Bishop’s vision to use constructive mathematics as a programming language for exact analysis. 1 1.
A LargeScale Experiment in Executing Extracted Programs
"... 1 Introduction Several approaches can be used for certifying software. A first one, perhaps the most natural, is to start with an handwritten program and then inspect it formally in a suitable logical system, like Hoare logic. But there exists an alternative approach where one needs not write the pr ..."
Abstract
 Add to MetaCart
(Show Context)
1 Introduction Several approaches can be used for certifying software. A first one, perhaps the most natural, is to start with an handwritten program and then inspect it formally in a suitable logical system, like Hoare logic. But there exists an alternative approach where one needs not write the program, but rather obtains it automatically from a mathematical proof. This automatic transformation of proofs into correctbyconstruction programs is called (program) extraction.
Ivor, a Proof Engine
"... Abstract. Dependent type theory has several practical applications in the fields of theorem proving, program verification and programming language design. Ivor is a Haskell library designed to allow easy extending and embedding of a type theory based theorem prover in a Haskell application. In this ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Dependent type theory has several practical applications in the fields of theorem proving, program verification and programming language design. Ivor is a Haskell library designed to allow easy extending and embedding of a type theory based theorem prover in a Haskell application. In this paper, I give an overview of the library and show how it can be used to embed theorem proving technology in an implementation of a simple functional programming language; by using type theory as a core representation, we can construct and evaluate terms and prove correctness properties of those terms within the same framework, ensuring consistency of the implementation and the theorem prover. 1