16 research outputs found

    Relating Church-Style and Curry-Style Subtyping

    Full text link
    Type theories with higher-order subtyping or singleton types are examples of systems where computation rules for variables are affected by type information in the context. A complication for these systems is that bounds declared in the context do not interact well with the logical relation proof of completeness or termination. This paper proposes a natural modification to the type syntax for F-Omega-Sub, adding variable's bound to the variable type constructor, thereby separating the computational behavior of the variable from the context. The algorithm for subtyping in F-Omega-Sub can then be given on types without context or kind information. As a consequence, the metatheory follows the general approach for type systems without computational information in the context, including a simple logical relation definition without Kripke-style indexing by context. This new presentation of the system is shown to be equivalent to the traditional presentation without bounds on the variable type constructor.Comment: In Proceedings ITRS 2010, arXiv:1101.410

    A Typed Operational Semantics for Type Theory

    No full text
    Untyped reduction provides a natural operational semantics for type theory. Normalization results say that such a semantics is sound. However, this reduction does not take type information into account and gives no information about canonical forms for terms. We introduce a new operational semantics, which we call typed operational semantics, which defines a reduction to normal form for terms which are well-typed in the type theory. The central result of the thesis is soundness of the typed operational semantics for the original system. Completeness of the semantics is straightforward. We demonstrate that this equivalence between the declarative and operational presentations of type theory has important metatheoretic consequences: results such as strengthening, subject reduction and strong normalization follow by straightforward induction on derivations in the new system. We introduce these ideas in the setting of the simply typed lambda calculus. We then extend the techniques to Luo's system UTT, which is Martin-Löf's Logical Framework extended by a general mechanism for inductive types, a predicative universe and an impredicative universe of propositions. We also give a proof-irrelevant set-theoretic semantics for UTT

    Sequent Combinators: A Hilbert System for the Lambda Calculus

    No full text
    This paper introduces a Hilbert system for lambda calculus called sequent combinators. Sequent combinators address many of the problems of Hilbert systems, which have led to the more widespread adoption of natural deduction systems in computer science. This suggests that Hilbert systems, with their more uniform approach to meta-variables and substitution, may be a more suitable framework than lambda calculus for type theories and programming languages

    Typed Operational Semantics for Higher Order

    No full text
    Bounded operator abstraction is a language construct relevant to object oriented programming languages and to ML2000, the successor to Standard ML. In this paper, we introduce Fω ≤,avariantofFω <:with this feature and with Cardelli and Wegner’s kernel Fun rule for quantifiers. We define a typed operational semantics with subtyping and prove that it is equivalent with Fω ≤ , using a Kripke model to prove soundness. The typed operational semantics provides a powerful tool to establish the metatheoretic properties of Fω ≤ , such as Church–Rosser, subject reduction, the admissibility of structural rules, and the equivalence with the algorithmic presentation of the system.

    Anti-symmetry of higher-order subtyping and equality by subtyping

    No full text

    Decidability of Higher-Order Subtyping via Logical Relations

    No full text
    This paper uses logical relations for the first time to study the decidability of typechecking and subtyping. The result is proved for F ! , a language with higher-order subtyping and bounded operator abstraction not previously known to be decidable. The proof is via an intermediate system called a typed operational semantics, leading to a powerful and uniform technique for showing metatheoretic results of type systems with subtyping, such as strong normalization, subject reduction and decidability of subtyping. 1 Introduction During the last decade, object-oriented programming languages such as Smalltalk, C++, Modula 3, and Java have become popular because they encourage and facilitate software reuse and abstract design. One attempt to give a theoretical understanding of these object-oriented programming languages has been to introduce type systems with features to model constructs from object-oriented programming languages [5, 7], for example bounded quantification [15] and recur..

    Anti-Symmetry of Higher-Order Subtyping

    No full text
    . This paper shows that the subtyping relation of a higherorder lambda calculus, F ! , is anti-symmetric. It exhibits the rst such proof, establishing in the process that the subtyping relation is a partial order|reexive, transitive, and anti-symmetric up to -equality. While a subtyping relation is reexive and transitive by denition, anti-symmetry is a derived property. The result, which may seem obvious to the nonexpert, is technically challenging, and had been an open problem for almost a decade. In this context, typed operational semantics for subtyping oers a powerful new technology to solve the problem: of particular importance is our extended rule for the well-formedness of types with head variables. The paper also gives a presentation of F ! without a relation for -equality, apparently the rst such, and shows its equivalence with the traditional presentation. 1 Introduction Object-oriented programming languages such as Smalltalk, C++, Modula 3, and ..

    Candidates for Substitution

    No full text
    this paper we explore a uniform proof of thinning and substitution which isolates several simple candidate-style conditions on context morphisms arising from the Kripke construction. The proof exploits the evident similarity of the properties of thinning and substitution, when considered more generally as a property of context morphisms

    Typed Operational Semantics for Higher Order Subtyping

    No full text
    Bounded operator abstraction is a language construct relevant to object oriented programming languages and to ML2000, the successor to Standard ML. In this paper, we introduce F ! , a variant of F ! !: with this feature and with Cardelli and Wegner's kernel Fun rule for quantifiers. We define a typed operational semantics with subtyping and prove that it is equivalent with F ! , using a Kripke model to prove soundness. The typed operational semantics provides a powerful tool to establish the metatheoretic properties of F ! , such as Church--Rosser, subject reduction, the admissibility of structural rules, and the equivalence with the algorithmic presentation of the system. 1 Introduction During the last decade, object-oriented programming languages such as Smalltalk, C++, Modula 3, and Java have become popular because they encourage and facilitate software reuse and abstract design. In this time, the theoretical community has struggled to achieve a balance between safety and..
    corecore