| | |
Summary: Subtyping with Power Types #
David Aspinall
http://www.dcs.ed.ac.uk/home/da
LFCS, University of Edinburgh, U.K.
Abstract. This paper introduces a typed #calculus called #Power , a
predicative reformulation of part of Cardelli's power type system. Power
types integrate subtyping into the typing judgement, allowing bounded
abstraction and bounded quantification over both types and terms. This
gives a powerful and concise system of dependent types, but leads to
di#culty in the metatheory and semantics which has impeded the ap
plication of power types so far. Basic properties of #Power are proved here,
and it is given a model definition using a form of applicative structures. A
particular novelty is the auxiliary system for rough typing, which assigns
simple types to terms in #Power . These ``rough'' types are used to prove
strong normalization of the calculus and to structure models, allowing a
novel form of containment semantics without a universal domain.
Keywords: type theory, subtyping, dependent types.
1 Introducing Power Types
Power types were introduced in a seminal paper by Cardelli [4]. The notion is
that Power (A) is a type ``whose elements are all of the subtypes of the type A,''
|