Results 1 - 10
of
18
Logics and Type Systems
, 1993
"... from the last declaration in \Delta (which is p:'). (oe-E) In fact the ([\Theta]) is not exactly the ([\Theta]) that is found by induction. Possibly some of the free variables in ([\Theta]) are renamed. What happens is the following: 1. Consider the proof-context \Delta 1 ] \Delta 2 and especially ..."
Abstract
-
Cited by 73 (5 self)
- Add to MetaCart
from the last declaration in \Delta (which is p:'). (oe-E) In fact the ([\Theta]) is not exactly the ([\Theta]) that is found by induction. Possibly some of the free variables in ([\Theta]) are renamed. What happens is the following: 1. Consider the proof-context \Delta 1 ] \Delta 2 and especially the renaming of the declared variables in \Delta 2 that has been caused by the operation ]. 2. Rename the free proof-variables in ([\Theta]) accordingly, obtaining say, ([\Theta 0 ]). 3. Apply ([\Sigma]) to ([\Theta 0 ]). (There will in practice be no confusion if we just write ([\Theta]) instead.) Of course the intended meaning is that the judgement below the double lines is derivable if the judgement above the lines is. This will be proved later in Theorem 3.2.8. It should be clear at this point however that there is a one-to-one correspondence between the occurrences of ' as a (non-discharged) premise in the deduction and declarations p:' in \Delta. Notation. If for \Sigma a deducti...
Pure type systems formalized
- Proceedings of the International Conference on Typed Lambda Calculi and Applications
, 1993
"... ..."
Implicit Syntax
- Informal Proceedings of First Workshop on Logical Frameworks
, 1992
"... A proof checking system may support syntax that is more convenient for users than its `official' language. For example LEGO (a typechecker for several systems related to the Calculus of Constructions) has algorithms to infer some polymorphic instantiations (e.g. pair 2 true instead of pair nat bo ..."
Abstract
-
Cited by 18 (2 self)
- Add to MetaCart
A proof checking system may support syntax that is more convenient for users than its `official' language. For example LEGO (a typechecker for several systems related to the Calculus of Constructions) has algorithms to infer some polymorphic instantiations (e.g. pair 2 true instead of pair nat bool 2 true) and universe levels (e.g. Type instead of Type(4)). Users need to understand such features, but do not want to know the algorithms for computing them. In this note I explain these two features by non-deterministic operational semantics for "translating" implicit syntax to the fully explicit underlying formal system. The translations are sound and complete for the underlying type theory, and the algorithms (which I will not talk about) are sound (not necessarily complete) for the translations. This note is phrased in terms of a general class of type theories. The technique described has more general application. 1 Introduction Consider the usual formal system, !, for simp...
Pure Type Systems with Definitions
, 1993
"... In this paper, an extension of Pure Type Systems (PTS's) with definitions is presented. We prove this extension preserves many of the properties of PTS's. The main result is a proof that for many PTS's, including the Calculus of Constructions, this extension preserves strong normalisation. ..."
Abstract
-
Cited by 17 (0 self)
- Add to MetaCart
In this paper, an extension of Pure Type Systems (PTS's) with definitions is presented. We prove this extension preserves many of the properties of PTS's. The main result is a proof that for many PTS's, including the Calculus of Constructions, this extension preserves strong normalisation.
Normalisation in Lambda Calculus and its relation to Type Inference
, 1996
"... Presentation of Rewriting and Typing 13 2 Abstract Rewriting Systems 15 2.1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 15 2.2 Abstract Rewriting Systems : : : : : : : : : : : : : : : : : : : : : : : : : : 15 2.3 Morphisms : : : : : : : : : : : : : : : : : : ..."
Abstract
-
Cited by 15 (1 self)
- Add to MetaCart
Presentation of Rewriting and Typing 13 2 Abstract Rewriting Systems 15 2.1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 15 2.2 Abstract Rewriting Systems : : : : : : : : : : : : : : : : : : : : : : : : : : 15 2.3 Morphisms : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 16 2.4 Properties of Abstract Rewriting Systems : : : : : : : : : : : : : : : : : : : 18 2.5 Strategies : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 19 2.6 Criteria : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 21 2.7 Conclusions and Related Work : : : : : : : : : : : : : : : : : : : : : : : : : 24 3 Topology 27 3.1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 27 3.2 Topology : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 28 3.3 Equivalence : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 30 3.4 Topological Characte...
Implicit Coercions in Type Systems
- In Selected Papers from the International Workshop TYPES '95
, 1995
"... . We propose a notion of pure type system with implicit coercions. In our framework, judgements are extended with a context of coercions \Delta and the application rule is modified so as to allow coercions to be left implicit. The setting supports multiple inheritance and can be applied to all type ..."
Abstract
-
Cited by 13 (1 self)
- Add to MetaCart
. We propose a notion of pure type system with implicit coercions. In our framework, judgements are extended with a context of coercions \Delta and the application rule is modified so as to allow coercions to be left implicit. The setting supports multiple inheritance and can be applied to all type theories with \Pi-types. One originality of our work is to propose a computational interpretation for implicit coercions. In this paper, we demonstrate how this interpretation allows a strict control on the logical properties of pure type systems with implicit coecions. 1 Introduction The increasing importance of mathematical software has been accompanied by a drift of mainstream mathematics towards mathematical logic and the foundations of mathematics. Before mathematical software, formal systems were generally seen both by logicians and mathematicians as safe heavens into which mathematics could theoretically be embedded. With powerful mathematical software, there is now a genuine interes...
Pure Type Systems in Rewriting Logic
- In Proc. of LFM’99: Workshop on Logical Frameworks and Meta-Languages
, 1999
"... . The logical and operational aspects of rewriting logic as a logical framework are illustrated in detail by representing pure type systems as object logics. More precisely, we apply membership equational logic, the equational sublogic of rewriting logic, to specify pure type systems as they can be ..."
Abstract
-
Cited by 10 (2 self)
- Add to MetaCart
. The logical and operational aspects of rewriting logic as a logical framework are illustrated in detail by representing pure type systems as object logics. More precisely, we apply membership equational logic, the equational sublogic of rewriting logic, to specify pure type systems as they can be found in the literature and also a new variant of pure type systems with explicit names that solves the problems with closure under -conversion in a very satisfactory way. Furthermore, we use rewriting logic itself to give a formal operational description of type checking, that directly serves as an ecient type checking algorithm. The work reported here is part of a more ambitious project concerned with the development in Maude [7] of a proof assistant for OCC, the open calculus of constructions, an equational extension of the calculus of constructions. 1 Introduction This paper is a detailed case study on the ease and naturalness with which a family of higher-order formal systems, namely...
Second-order unification and type inference for Church-style polymorphism
- In Conference Record of POPL 98: The 25TH ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
, 1998
"... We present a proof of the undecidability of type inference for the Church-style system F --- an abstraction of polymorphism. A natural reduction from the second-order unification problem to type inference leads to strong restriction on instances --- arguments of variables cannot contain variables. T ..."
Abstract
-
Cited by 10 (0 self)
- Add to MetaCart
We present a proof of the undecidability of type inference for the Church-style system F --- an abstraction of polymorphism. A natural reduction from the second-order unification problem to type inference leads to strong restriction on instances --- arguments of variables cannot contain variables. This requires another proof of the undecidability of the second-order unification since known results use variables in arguments of other variables. Moreover, our proof uses elementary techniques, which is important from the methodological point of view, because Goldfarb's proof [Gol81] highly relies on the undecidability of the tenth Hilbert's problem. 1 1 Introduction The Church-style system F was independently introduced by Girard [Gir72] and Reynolds [Rey74] as an extension of the simply-typed -calculus a type system introduced of H. B. Curry [Cur69]. As usual for type systems, the decidability of so called sequent decision problems was considered. A sequent decision problem in some ty...
On Implicit Arguments
, 1995
"... A typechecker for a typed -calculus having implicit arguments is presented. The typechecker works in such a way that the uniqueness of implicit arguments is always preserved during reduction. Consequently, when it compares two terms by reduction, it can reduce them without inferring implicit argumen ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
A typechecker for a typed -calculus having implicit arguments is presented. The typechecker works in such a way that the uniqueness of implicit arguments is always preserved during reduction. Consequently, when it compares two terms by reduction, it can reduce them without inferring implicit arguments. Before describing the typechecker, we analyze various situations where the uniqueness of implicit arguments is not preserved by naively defined reduction. ANY OTHER IDENTIFYING INFORMATION OF THIS REPORT The preliminary version of this paper appeared in Logic, Language and Computation, Lecture Notes in Computer Science, Vol.792, 1994, pp.10-30. DISTRIBUTION STATEMENT First issue 40 copies. This technical report is available via anonymous FTP from ftp.is.s.u-tokyo.ac.jp (directory /pub/tech-reports). SUPPLEMENTARY NOTES REPORT DATE January 1, 1995 TOTAL NO. OF PAGES 31 WRITTEN LANGUAGE English NO. OF REFERENCES 12 DEPARTMENT OF INFORMATION SCIENCE Faculty of Science, Universit...
The Calculus of Constructions and Higher Order Logic
- In preparation
, 1992
"... The Calculus of Constructions (CC) ([Coquand 1985]) is a typed lambda calculus for higher order intuitionistic logic: proofs of the higher order logic are interpreted as lambda terms and formulas as types. It is also the union of Girard's system F! ([Girard 1972]), a higher order typed lambda calcul ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
The Calculus of Constructions (CC) ([Coquand 1985]) is a typed lambda calculus for higher order intuitionistic logic: proofs of the higher order logic are interpreted as lambda terms and formulas as types. It is also the union of Girard's system F! ([Girard 1972]), a higher order typed lambda calculus, and a first order dependent typed lambda calculus in the style of de Bruijn's Automath ([de Bruijn 1980]) or Martin-Lof's intuitionistic theory of types ([Martin-Lof 1984]). Using the impredicative coding of data types in F! , the Calculus of Constructions thus becomes a higher order language for the typing of functional programs. We shall introduce and try to explain CC by exploiting especially the first point of view, by introducing a typed lambda calculus that faithfully represent higher order predicate logic (so for this system the Curry-Howard `formulas-as-types isomorphism' is really an isomorphism.) Then we discuss some propositions that are provable in CC but not in the higher or...

