Results 1 -
7 of
7
A Semantical Storage Operator Theorem For All Types
, 1997
"... Storage operators are -terms which simulate call-by-value in call-by-name for a given set of terms. Krivine's storage operator theorem shows that any term of type :D ! :D , where D is the Godel translation of D, is a storage operator for the terms of type D when D is a data-type or a formula ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
Storage operators are -terms which simulate call-by-value in call-by-name for a given set of terms. Krivine's storage operator theorem shows that any term of type :D ! :D , where D is the Godel translation of D, is a storage operator for the terms of type D when D is a data-type or a formula with only positive second order quantifiers. We prove that a new semantical version of Krivine's theorem is valid for every types. This also gives a simpler proof of Krivine's theorem using the properties of data-types. Key words: -calculus. Types. AF 2 type system. Storage operators. Godel translations. 1 Introduction. The notion of storage operator was introduced by Krivine in [3]. A storage operator for a set of terms D is a term T simulating call-by-value in headreduction for all elements in D: for t in D, (T ' t) head-reduces to (' t 0 ) where t 0 fi t only depends on the normal form of t (the actual definition is slightly more complex). The storage operator theorem is valid for a typ...
Simple Proof of the Completeness Theorem for Second Order Classical and Intuitionistic Logic
"... We present a simpler way than usual to deduce the completeness theorem for the second-oder classical logic from the rst-order one. We also extend our method to the case of second-order intuitionnistic logic. 1 ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We present a simpler way than usual to deduce the completeness theorem for the second-oder classical logic from the rst-order one. We also extend our method to the case of second-order intuitionnistic logic. 1
System ST - Toward A Type System for Extraction AND Proof of Programs
, 2001
"... We introduce a new type system called \System ST" (ST stands for SubTyping), based on subtyping, and prove the basic property of the system. We show the extraordinary expressive power of the system which leads us to think that it could be a good candidate for doing both proof and extraction of pr ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
We introduce a new type system called \System ST" (ST stands for SubTyping), based on subtyping, and prove the basic property of the system. We show the extraordinary expressive power of the system which leads us to think that it could be a good candidate for doing both proof and extraction of programs.
Completeness, Minimal Logic and Programs Extraction
"... We formalize, in the AF 2 type system, a completeness and correctness theorem for a modied Kripke semantics for minimal logic. We show that any program extracted from a proof of the completeness theorem translates an higher-order encoding of a -term into a Debruijn encoding of another -term with the ..."
Abstract
- Add to MetaCart
We formalize, in the AF 2 type system, a completeness and correctness theorem for a modied Kripke semantics for minimal logic. We show that any program extracted from a proof of the completeness theorem translates an higher-order encoding of a -term into a Debruijn encoding of another -term with the same type. We also show that any program extracted from the correctness theorem performs the reverse translation. Moreover in both cases, there is one proof which corresponds to a program that does not change the underlying -term. Key words: -calculus. Types. AF 2 type system. Intuitionnistic Logic. Program Extraction. 1 Introduction The Curry-Howard isomorphism [2] establishes a correspondence between proofs and programs. We can extract a correct program from a proof of its specication. But to what specication corresponds a mathematical theorem like the completeness theorem ? More precisely, is there a property characterizing any program extracted from a proof of the completene...
Type Checking in System . . .
"... The main contribution of this paper is a partial type-checking algorithm for the system F and its use in a programming language like ML. We dene this system as an extension of the second-order -calculus (system F) verifying the preservation of type during computation (subject-reduction) for -red ..."
Abstract
- Add to MetaCart
The main contribution of this paper is a partial type-checking algorithm for the system F and its use in a programming language like ML. We dene this system as an extension of the second-order -calculus (system F) verifying the preservation of type during computation (subject-reduction) for -reduction (this result fails for -reduction in system F). Our presentation is based on an original notion of sub-typing which includes all the handling of quantication rules. 1 Introduction. Motivation. Type systems have proved to be useful for many modern functional programming languages such as ML, Miranda, Haskell, . . . . In most cases, the basis of the type system is Milner's algorithm [12]. The main characteristic of these type systems is polymorphism which allows the programmer to write generic functions that can work on arguments of dierent types. However it is often insucient: polymorphic recursion, existential types or the state monad of Haskell are treated using specic exte...
Getting results from programs extracted from classical proofs.
, 2002
"... We present a new method to extract from a classical proof of ∀x(I[x] → ∃y(O[y] ∧ S[x, y])) a program computing y from x. This method applies when O is a data type and S is a decidable predicate. Algorithms extracted this way are often far better than a stupid enumeration of all the possible outputs ..."
Abstract
- Add to MetaCart
We present a new method to extract from a classical proof of ∀x(I[x] → ∃y(O[y] ∧ S[x, y])) a program computing y from x. This method applies when O is a data type and S is a decidable predicate. Algorithms extracted this way are often far better than a stupid enumeration of all the possible outputs and this is verified on a non trivial example: a proof of Dickson’s lemma. 1 Introduction. Since Griffin and Felleisen [7, 8], we know a relation between classical proofs and programs. However, it is not true that from a classical proof of the existence of an object you can compute this object. This would clearly be a contradiction with the existence of provably total but non computable functions (such as a function saying
unknown title
, 905
"... Simple proof of the completeness theorem for second order classical and intuitionistic logic by reduction to first-order mono-sorted logic ∗ ..."
Abstract
- Add to MetaCart
Simple proof of the completeness theorem for second order classical and intuitionistic logic by reduction to first-order mono-sorted logic ∗

