Results 1 -
8 of
8
Why dependent types matter
- In preparation, http://www.e-pig.org/downloads/ydtm.pdf
, 2005
"... We exhibit the rationale behind the design of Epigram, a dependently typed programming language and interactive program development system, using refinements of a well known program—merge sort—as a running example. We discuss its relationship with other proposals to introduce aspects of dependent ty ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
We exhibit the rationale behind the design of Epigram, a dependently typed programming language and interactive program development system, using refinements of a well known program—merge sort—as a running example. We discuss its relationship with other proposals to introduce aspects of dependent types into functional programming languages and sketch some topics for further work in this area. 1.
Coherence and Transitivity in Coercive Subtyping
- Information and Computation
, 2001
"... Coercive subtyping is a general approach to subtyping, inheritance and abbreviation in dependent type theories. A vital requirement for coercive subtyping is that of coherence { computational uniqueness of coercions between any two types. In this paper, we develop techniques useful in proving cohere ..."
Abstract
-
Cited by 7 (4 self)
- Add to MetaCart
Coercive subtyping is a general approach to subtyping, inheritance and abbreviation in dependent type theories. A vital requirement for coercive subtyping is that of coherence { computational uniqueness of coercions between any two types. In this paper, we develop techniques useful in proving coherence and its related result on admissibility of transitivity and substitution. In particular, we consider suitable subtyping rules for -types and -types and prove its coherence and the admissibility of substitution and transitivity rules at the type level in the coercive subtyping framework. 1
Manifest fields and module mechanisms in intensional type theory
- In TYPES 08
, 2009
"... Abstract. Manifest fields in a type of modules are shown to be expressible in intensional type theory without strong extensional equality rules. These intensional manifest fields are made available with the help of coercive subtyping. It is shown that, for both Σ-types and dependent record types, th ..."
Abstract
-
Cited by 4 (3 self)
- Add to MetaCart
Abstract. Manifest fields in a type of modules are shown to be expressible in intensional type theory without strong extensional equality rules. These intensional manifest fields are made available with the help of coercive subtyping. It is shown that, for both Σ-types and dependent record types, the with-clause for expressing manifest fields can be introduced by means of the intensional manifest fields. This provides not only a higher-order module mechanism with ML-style sharing, but a powerful modelling mechanism in formalisation and verification of OO-style program modules. 1
Weak Transitivity in Coercive Subtyping
- Types for Proofs and Programs, volume 2646 of LNCS
, 2001
"... Coercive subtyping is a general approach to subtyping, inheritance and abbreviation in dependent type theories. A vital requirement for coercive subtyping is that of coherence which essentially says that coercions between any two types must be unique. Another important task for coercive subtyping is ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
Coercive subtyping is a general approach to subtyping, inheritance and abbreviation in dependent type theories. A vital requirement for coercive subtyping is that of coherence which essentially says that coercions between any two types must be unique. Another important task for coercive subtyping is to prove the admissibility or elimination of transitivity and substitution. In this paper, we propose and study the notion of Weak Transitivity, consider suitable subtyping rules for certain parameterised inductive types and prove its coherence and the admissibility of substitution and weak transitivity in the coercive subtyping framework.
Object Languages in a Type-Theoretic Meta-Framework
- Workshop of Proof Transformation and Presentation and Proof Complexities (PTP'01
, 2001
"... . This paper concerns techniques for providing a convenient syntax for object languages implemented via a type-theoretic Logical Framework, and reports on work in progress. We first motivate the need for a type-theoretic logical framework. Firstly, we take the logical framework seriously as a me ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
. This paper concerns techniques for providing a convenient syntax for object languages implemented via a type-theoretic Logical Framework, and reports on work in progress. We first motivate the need for a type-theoretic logical framework. Firstly, we take the logical framework seriously as a meta-language for implementing object languages (including object type theories). Another reason is the goal of building domain-specific reasoning tools which are implemented using type theory technology but do not require great expertise in type theory to use productively. We then present several examples of bi-directional translations between an encoding in the framework language and a more convenient syntax. The paper ends by discussing several techniques for implementing the translations and properties that we may require for the translation. Coercive subtyping is shown to help in the translation. 1
Combining Incoherent Coercions for Σ-types
"... Coherence is a vital requirement for the correct use of coercive subtyping for abbreviation and other applications. However, some coercions are incoherent, although very useful. A typical example of such is the subtyping rules for -types: the component-wise rules and the rule of the rst projecti ..."
Abstract
- Add to MetaCart
Coherence is a vital requirement for the correct use of coercive subtyping for abbreviation and other applications. However, some coercions are incoherent, although very useful. A typical example of such is the subtyping rules for -types: the component-wise rules and the rule of the rst projection. Both of these groups of rules are often used in practice (and coherent themselves), but they are incoherent when put together directly. In this paper, we study this case for -types by introducing a new subtyping relation and the resulting system enjoys the properties of coherence and admissibility of substitution and transitivity.
Categories and Subject Descriptors: F.4.1 [Mathematical Logic and Formal Languages]: Mathematical Logic—Lambda Calculus and Related Systems; Mechanical Theorem Proving General Terms: Theory
"... We construct a logic-enriched type theory LTTw that corresponds closely to the predicative system of foundations presented by Hermann Weyl in Das Kontinuum. We formalise many results from that book in LTTw, including Weyl’s definition of the cardinality of a set and several results from real analysi ..."
Abstract
- Add to MetaCart
We construct a logic-enriched type theory LTTw that corresponds closely to the predicative system of foundations presented by Hermann Weyl in Das Kontinuum. We formalise many results from that book in LTTw, including Weyl’s definition of the cardinality of a set and several results from real analysis, using the proof assistant Plastic that implements the logical framework LF. This case study shows how type theory can be used to represent a non-constructive foundation for mathematics.
Intensional Manifest Fields in Module Types ✩
"... A manifest field in a type of modules is a field whose expected data is not only of a certain type but the same as a specific object of that type. All of the previous approaches to manifest fields in type theory are based on some extensional notions of computational equality. In this paper, we show ..."
Abstract
- Add to MetaCart
A manifest field in a type of modules is a field whose expected data is not only of a certain type but the same as a specific object of that type. All of the previous approaches to manifest fields in type theory are based on some extensional notions of computational equality. In this paper, we show that this is unnecessary: manifest fields are expressible in intensional type theories without extensional equality rules. These intensional manifest fields are made available with the help of coercive subtyping. It is shown that, for both Σ-types and dependent record types, the with-clause for expressing manifest fields can be introduced by means of the intensional manifest fields. This provides an internal mechanism in intensional type theories to express definitional entries in module types, which has useful applications including, for example, the representation of higher-order modules with ML-style sharing.

