Results 1 
6 of
6
ECC, an Extended Calculus of Constructions
, 1989
"... We present a higherorder calculus ECC which can be seen as an extension of the calculus of constructions [CH88] by adding strong sum types and a fully cumulative type hierarchy. ECC turns out to be rather expressive so that mathematical theories can be abstractly described and abstract mathematics ..."
Abstract

Cited by 84 (4 self)
 Add to MetaCart
We present a higherorder calculus ECC which can be seen as an extension of the calculus of constructions [CH88] by adding strong sum types and a fully cumulative type hierarchy. ECC turns out to be rather expressive so that mathematical theories can be abstractly described and abstract mathematics may be adequately formalized. It is shown that ECC is strongly normalizing and has other nice prooftheoretic properties. An !\GammaSet (realizability) model is described to show how the essential properties of the calculus can be captured settheoretically.
Type Checking with Universes
, 1991
"... Various formulations of constructive type theories have been proposed to serve as the basis for machineassisted proof and as a theoretical basis for studying programming languages. Many of these calculi include a cumulative hierarchy of "universes," each a type of types closed under a collectio ..."
Abstract

Cited by 24 (6 self)
 Add to MetaCart
Various formulations of constructive type theories have been proposed to serve as the basis for machineassisted proof and as a theoretical basis for studying programming languages. Many of these calculi include a cumulative hierarchy of "universes," each a type of types closed under a collection of typeforming operations. Universes are of interest for a variety of reasons, some philosophical (predicative vs. impredicative type theories), some theoretical (limitations on the closure properties of type theories), and some practical (to achieve some of the advantages of a type of all types without sacrificing consistency.) The Generalized Calculus of Constructions (CC ! ) is a formal theory of types that includes such a hierarchy of universes. Although essential to the formalization of constructive mathematics, universes are tedious to use in practice, for one is required to make specific choices of universe levels and to ensure that all choices are consistent. In this pa...
A Comparative Study of Some Type Systems for Functional Languages
, 1995
"... 4.66> constructor ! (in CCs and in SDDP as a special case of \Pidependent type), and the corresponding abstraction mechanism for terms. In both versions of CC and in SDDP this constructor may be used at all levels of the hierarchy and also across the levels. This is more restricted in SML and in ..."
Abstract
 Add to MetaCart
4.66> constructor ! (in CCs and in SDDP as a special case of \Pidependent type), and the corresponding abstraction mechanism for terms. In both versions of CC and in SDDP this constructor may be used at all levels of the hierarchy and also across the levels. This is more restricted in SML and in PVS. They have no abstraction over types, although SML's polymorphic types may be considered a restricted form of such abstraction. Also, functors may be viewed as a restricted form of abstraction over (packaged) types. PVS has neither polymorphism nor functors. Theories may be parameterized by terms and types, but this is syntactic sugar rather then true functionality  cf. the example on page 16 of [2], where the definition of newstacks[t:TYPE]:THEORY is not conservative wrt t, in that it declares a new element e in t. Research supported b
Verifying (parametric) Algebras Against Specifications
, 1993
"... this paper. For the approaches 2 or 3 to be followed the syntax of axioms should first be fully elaborated which is beyond the scope of the paper. 3 Further properties ..."
Abstract
 Add to MetaCart
this paper. For the approaches 2 or 3 to be followed the syntax of axioms should first be fully elaborated which is beyond the scope of the paper. 3 Further properties
HindleyMilner for dependent and subset types
, 1995
"... syntax x , y : Var ::= : : : ff : TpVar ::= : : : c : Const ::= : : : tc : TpConst ::= : : : tp : Type ::= TpVar fi fi fi TpConst fi fi fi ((Var:Type FormSeq) ?Type) t : Term ::= Var fi fi fi Const fi fi fi (Var.Term) fi fi fi (Var:Type FormSeq.Term) fi fi fi (Term Term) f : Form :: ..."
Abstract
 Add to MetaCart
syntax x , y : Var ::= : : : ff : TpVar ::= : : : c : Const ::= : : : tc : TpConst ::= : : : tp : Type ::= TpVar fi fi fi TpConst fi fi fi ((Var:Type FormSeq) ?Type) t : Term ::= Var fi fi fi Const fi fi fi (Var.Term) fi fi fi (Var:Type FormSeq.Term) fi fi fi (Term Term) f : Form ::= (Term = Term) fi fi fi (8Var:Type FormSeq =? FormSeq) F : FormSeq ::= " fi fi fi FormSeq , Form \Gamma : Context ::= FormSeq fi fi fi Context ; (Var:Type) ; FormSeq sh : Shape ::= TpVar fi fi fi TpConst fi fi fi (Type ? Type) Parentheses may be skipped subject to usual conventions. Wherever the grammar presented requires a FormSeq or a Context and it happens to be empty ("), spurious separators (comma, semicolon, vertical bar) are skipped; e.g, (f : (k:nat)?real)? real and (k:nat);(x:real) denote respectively ((f : ((k:nat")?real)") ? real) and ;(k:nat);;(x:real); The notions of free and bound variable occurrences are the standard ones assuming the binding constructs...