A Translation of Intersection and Union Types

Similar documents
Characterisation of Strongly Normalising λµ-terms

Strong normalisation and the typed lambda calculus

Brief Notes on the Category Theoretic Semantics of Simply Typed Lambda Calculus

Characterisation of Strongly Normalising λµ-terms

CS792 Notes Henkin Models, Soundness and Completeness

Development Separation in Lambda-Calculus

Untyped Lambda Calculus

Unary PCF is Decidable

CIS 500 Software Foundations Fall October. CIS 500, 6 October 1

Development Separation in Lambda-Calculus

AN ESTIMATION FOR THE LENGTHS OF REDUCTION SEQUENCES

arxiv: v1 [math.lo] 24 Feb 2014

École normale supérieure, MPRI, M2 Year 2007/2008. Course 2-6 Abstract interpretation: application to verification and static analysis P.

TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC

How not to prove Strong Normalisation

Semantic Types for Classes and Mixins

Typed Lambda Calculi Lecture Notes

Matching [for] the Lambda Calculus of Objects

Non replication of options

Chapter 4. Cardinal Arithmetic.

Two Notions of Sub-behaviour for Session-based Client/Server Systems

THE NUMBER OF UNARY CLONES CONTAINING THE PERMUTATIONS ON AN INFINITE SET

A semantics for concurrent permission logic. Stephen Brookes CMU

COMBINATORICS OF REDUCTIONS BETWEEN EQUIVALENCE RELATIONS

MITCHELL S THEOREM REVISITED. Contents

0.1 Equivalence between Natural Deduction and Axiomatic Systems

UPWARD STABILITY TRANSFER FOR TAME ABSTRACT ELEMENTARY CLASSES

Cut-free sequent calculi for algebras with adjoint modalities

Introduction to Type Theory August 2007 Types Summer School Bertinoro, It. Herman Geuvers Nijmegen NL. Lecture 3: Polymorphic λ-calculus

GUESSING MODELS IMPLY THE SINGULAR CARDINAL HYPOTHESIS arxiv: v1 [math.lo] 25 Mar 2019

Intersection-Types à la Church

Characterising Strong Normalisation for Explicit Substitutions

Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals

Sy D. Friedman. August 28, 2001

Extender based forcings, fresh sets and Aronszajn trees

Interpolation of κ-compactness and PCF

Gödel algebras free over finite distributive lattices

Retractable and Speculative Contracts

3 The Model Existence Theorem

Generalising the weak compactness of ω

Notes on the symmetric group

Game Theory: Normal Form Games

ADDING A LOT OF COHEN REALS BY ADDING A FEW II. 1. Introduction

arxiv: v2 [math.lo] 13 Feb 2014

Level by Level Inequivalence, Strong Compactness, and GCH

α-structural Recursion and Induction

A Property Equivalent to n-permutability for Infinite Groups

Chain conditions, layered partial orders and weak compactness

arxiv:math/ v1 [math.lo] 15 Jan 1991

arxiv: v1 [math.lo] 27 Mar 2009

Strongly compact Magidor forcing.

Characterizing large cardinals in terms of layered partial orders

Silver type theorems for collapses.

Stability in geometric & functional inequalities

arxiv:math/ v1 [math.lo] 9 Dec 2006

Computational Independence

Introduction to Probability Theory and Stochastic Processes for Finance Lecture Notes

On the Number of Permutations Avoiding a Given Pattern

CATEGORICAL SKEW LATTICES

Equivalence between Semimartingales and Itô Processes

1 Dynamic programming

More On λ κ closed sets in generalized topological spaces

Orthogonality to the value group is the same as generic stability in C-minimal expansions of ACVF

2 Deduction in Sentential Logic

4: SINGLE-PERIOD MARKET MODELS

TWO-PERIODIC TERNARY RECURRENCES AND THEIR BINET-FORMULA 1. INTRODUCTION

SAT and DPLL. Introduction. Preliminaries. Normal forms DPLL. Complexity. Espen H. Lian. DPLL Implementation. Bibliography.

THE OPERATIONAL PERSPECTIVE

Lie Algebras and Representation Theory Homework 7

}w!"#$%&'()+,-./012345<ya FI MU. A Calculus of Coercive Subtyping. Faculty of Informatics Masaryk University Brno

Cardinal arithmetic: The Silver and Galvin-Hajnal Theorems

Monadic translation of sequent calculus for classical logic

Lecture 2: The Simple Story of 2-SAT

Full Abstraction for Nominal General References

Martingales. by D. Cox December 2, 2009

On Existence of Equilibria. Bayesian Allocation-Mechanisms


SAT and DPLL. Espen H. Lian. May 4, Ifi, UiO. Espen H. Lian (Ifi, UiO) SAT and DPLL May 4, / 59

Arbitrage of the first kind and filtration enlargements in semimartingale financial models. Beatrice Acciaio

CS 4110 Programming Languages and Logics Lecture #2: Introduction to Semantics. 1 Arithmetic Expressions

In this lecture, we will use the semantics of our simple language of arithmetic expressions,

Probability without Measure!

Andreas Wagener University of Vienna. Abstract

CHOICE THEORY, UTILITY FUNCTIONS AND RISK AVERSION

An effective perfect-set theorem

Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable

CARDINALITIES OF RESIDUE FIELDS OF NOETHERIAN INTEGRAL DOMAINS

SHORT-TERM RELATIVE ARBITRAGE IN VOLATILITY-STABILIZED MARKETS

ORDERED SEMIGROUPS HAVING THE P -PROPERTY. Niovi Kehayopulu, Michael Tsingelis

Value of Flexibility in Managing R&D Projects Revisited

Hints on Some of the Exercises

An Adaptive Characterization of Signed Systems for Paraconsistent Reasoning

4 Martingales in Discrete-Time

ALL LARGE-CARDINAL AXIOMS NOT KNOWN TO BE INCONSISTENT WITH ZFC ARE JUSTIFIED arxiv: v3 [math.lo] 30 Dec 2017

Long Term Values in MDPs Second Workshop on Open Games

Large Cardinals with Few Measures

Matching of Meta-Expressions with Recursive Bindings

Generalization by Collapse

The (λ, κ)-fn and the order theory of bases in boolean algebras

Laurence Boxer and Ismet KARACA

Transcription:

A Translation of Intersection and Union Types for the λ µ-calculus Kentaro Kikuchi RIEC, Tohoku University kentaro@nue.riec.tohoku.ac.jp Takafumi Sakurai Department of Mathematics and Informatics, Chiba Univeristy sakurai@math.s.chiba-u.ac.jp We introduce an intersection and union type system for the λ µ-calculus, which includes a restricted version of the traditional union-elimination rule. Strong normalisation of terms typable by the system is shown via a translation of intersection and union types into intersection and product types, relying on the result of strong normalisation of terms typable by van Bakel, Barbanera and de Liguoro s system. 1 Introduction The Curry-Howard correspondence for classical logic is now widely known and has yielded various term systems, e.g. the calculi in [BB96, Par92]. Parigot s λ µ-calculus is one of such systems, and since it is a syntactical extension of the usual λ-calculus, the type-free version of the calculus, called pure λ µ-calculus in [Par92], has also been studied. As a type assignment system for type-free λ µ-terms, van Bakel, Barbanera and de Liguoro [vbbdl11] recently introduced an intersection type system to develop model theory of the calculus. The system includes not only intersection types but also product types, and so looks involved at first sight. However, it can be naturally understood in the light of the negative translation used in [SR98], and indeed the simply typed part of the λ µ-calculus is interpreted by the systems with intersection and product types in [vbbdl11, vbbdl13]. Another approach to providing a type assignment system for type-free λ µ-terms is to employ a system with intersection and union types. In this approach, simple types inhabited by some terms correspond to implicational formulas that are provable in classical logic, and union types are used for continuations to have more than one type. There are two intersection and union type systems for the λ µ-calculus in the literature [Lau04, vb11]. In this paper we introduce another intersection and union type system where, unlike in the systems of [Lau04, vb11], union-introduction and elimination rules correspond to the usual or-introduction and elimination rules in natural deduction. To clarify the relation between the two kinds of type systems, we introduce a translation from intersection and union types to intersection and product types. Using the translation, we prove strong normalisation of terms typable by the systems with intersection and union types. 2 The λ µ-calculus First we introduce the syntax of Parigot s pure λ µ-calculus [Par92]. Definition 2.1 (Grammar of λ µ). The sets of terms and commands are defined inductively by the following grammar: M,N ::= x λx.m MN µα.c (terms) C ::= [α]m (commands) Submitted to: CL&C 14 c K. Kikuchi & T. Sakurai This work is licensed under the Creative Commons Attribution License.

2 A Translation of Intersection and Union Types for the λ µ-calculus where x and α range over denumerable sets of λ-variables and µ-variables, respectively. The notions of free and bound variables are defined as usual, with both λ and µ as binders. The sets of free λ-variables and µ-variables of a term M are denoted by FV λ (M) and FV µ (M), respectively. We identify α-convertible terms. Definition 2.2 (Reduction system of λ µ). The reduction rules are: (β) (λx.m)n M[x := N] (µ) (µα.c)n µα.c[α N] where [x := N] is usual capture-free substitution, and [α N] in the rule (µ) replaces inductively each occurrence in C of the form [α]p by [α](pn). The reduction relation β,µ is defined by the contextual closure of the rules (β) and (µ). A term M is said to be strongly normalising if there is no infinite β,µ-reduction sequence out of M. The set of strongly normalising terms is denoted by SN β,µ. 3 An intersection and union type system for the λ µ-calculus In this section we introduce an intersection and union type system for the λ µ-calculus. The types we define here are of three kinds, following the definition in [Lau04] (without the empty intersection). Definition 3.1. The sets T A,T I and T U of three kinds of types are defined inductively by the following grammar: T A : A,B ::= ϕ I U (arrow types) T I : I,J ::= U I J (intersection types) T U : U,V ::= A U V (union types) where ϕ ranges over a denumerable set of type variables. We identify types modulo associativity and commutativity of and, and use to denote the equivalence. Γ,x : I x : I (Ax) Γ M : U α : U, Γ µα.[α]m : U (µ 1) Γ M : V α : U,γ : V, Γ µα.[γ]m : U γ : V, (µ 2) Γ,x : I M : U Γ λx.m : I U ( I) Γ M : I U Γ N : I Γ MN : U ( E) Γ M : I Γ M : J Γ M : I J ( I) Γ M : I J Γ M : I ( E) Γ M : I J Γ M : J ( E) Γ M : U Γ M : U V ( I) Γ M : V Γ M : U V ( I) Γ M : U V Γ,x : U xn : I Γ,x : V xn : I Γ MN : I where x / FV λ (N) ( E) Figure 1: Type assignment system λ µ

K. Kikuchi & T. Sakurai 3 The type assignment system λ µ is defined by the rules in Figure 1. A type environment, ranged over by Γ, is defined as a finite set of pairs {x 1 : I 1,...,x n : I n } where the λ-variables are pairwise distinct. The typing context Γ,x : I denotes the union Γ {x : I} where x does not appear in Γ. Similarly for typing contexts with µ-variables {α 1 : U 1,...,α n : U m }, ranged over by, except that the types are restricted to union types. We write Γ M : I if Γ M : I is derivable with the rules in Figure 1. The rule ( E) in Figure 1 is a rather restricted version of the traditional union-elimination rule that would have the form: Γ M : U V Γ,x : U N : I Γ,x : V N : I Γ N[x := M] : I This general version causes the subject-reduction problem as in the case of an intersection and union type system for λ-terms (cf. [BDCdL95]). Though our rule ( E) might look too restrictive, the system λ µ is more general than the intersection and union type systems proposed in [Lau04] and [vb11] in the sense that if a term is typable in one of their systems without the empty intersection then it is typable in λ µ (cf. Section 5). An example of a judgement that is derivable in λ µ but not in the systems in [Lau04, vb11] is x : ϕ 1 x : ϕ 1 ϕ 2. Example 3.2. The term (µα.[α](λy.µγ.[α]y))z is typable in the system λ µ as follows. Let A ϕ 1 ϕ 2 and Γ = {z : ϕ 1 A}, and let D 1 be the following derivation: Let D 2 be the following derivation: Let D 3 be the following derivation: Then we have Γ,y : A y : A γ : ϕ 3,α : A (A ϕ 3 ) (Ax) Γ,y : A y : A (A ϕ 3 ) γ : ϕ 3,α : A (A ϕ 3 ) ( I) (µ 2 ) Γ,y : A µγ.[α]y : ϕ 3 α : A (A ϕ 3 ) ( I) Γ λy.µγ.[α]y : A ϕ 3 α : A (A ϕ 3 ) Γ λy.µγ.[α]y : A (A ϕ 3 ) α : A (A ϕ 3 ) ( I) (µ 1 ) Γ µα.[α](λy.µγ.[α]y) : A (A ϕ 3 ) (Ax) Γ,x : A x : A (Ax) Γ,x : A z : ϕ 1 A ( E) Γ,x : A z : ϕ 1 ( E) Γ,x : A xz : ϕ 2 Γ,x : A xz : ϕ 2 ϕ 3 ( I) (Ax) Γ,x : A ϕ 3 x : A ϕ 3 (Ax) Γ,x : A ϕ 3 z : ϕ 1 A ( E) Γ,x : A ϕ 3 z : A ( E) Γ,x : A ϕ 3 xz : ϕ 3 Γ,x : A ϕ 3 xz : ϕ 2 ϕ 3 ( I). D 1 Γ µα.[α](λy.µγ.[α]y) : A (A ϕ 3 ). D 2 Γ,x : A xz : ϕ 2 ϕ 3 Γ (µα.[α](λy.µγ.[α]y))z : ϕ 2 ϕ 3 Note that this term is not typable without using the rules for.. D 3 Γ,x : A ϕ 3 xz : ϕ 2 ϕ 3 ( E)

4 A Translation of Intersection and Union Types for the λ µ-calculus The next lemma shows that the system λ µ is closed under the weakening rule. Lemma 3.3. 1. If Γ t : I and x is a fresh λ-variable then Γ,x : J t : I. 2. If Γ t : I and α is a fresh µ-variable then Γ t : I α : U,. Proof. By induction on the derivations. The rule ( E) can be generalised to the following form. Lemma 3.4. The following rule is admissible in the system λ µ. Γ M : U 1 U n Γ,x : U 1 xn : I Γ,x : U n xn : I Γ MN : I ( E) n where n 2 and x / FV λ (N). Proof. By induction on n. If n > 2 then we have, by the induction hypothesis, Γ x : U 1 U n 1 (Ax). D 1 Γ,x : U 1 x N : I Γ xn : I. D n 1 Γ,x : U n 1 x N : I ( E) n 1 where Γ = Γ,x : U 1 U n 1 and each D i is obtained from the assumption by renaming x to x Hence, by the rule ( E), we can derive Γ MN : I from Γ M : U 1 U n, Γ xn : I and Γ,x : U n xn : I. 4 The type system of van Bakel, Barbanera and de Liguoro In this section we briefly recall the intersection type system in [vbbdl13], which also uses product types. Definition 4.1. The sets T D of term types and T C of continuation-stack types are defined inductively by the following grammar: T D : δ ::= ν ω ν κ ν δ δ T C : κ ::= δ ω δ κ κ κ where ν and ω are type constants. Elements of T D T C are ranged over by σ,τ,ρ. The relations D and C on T D and T C, respectively, are defined by the rules in Figure 2, where A denotes either D or C. Lemma 4.2. (δ 1 δ n ) (κ 1 κ n ) C (δ 1 κ 1 ) (δ n κ n ). Proof. By δ 1 δ n D δ i and κ 1 κ n C κ i, we have (δ 1 δ n ) (κ 1 κ n ) C δ i κ i for each i {1,...,n}. Hence (δ 1 δ n ) (κ 1 κ n ) C (δ 1 κ 1 ) (δ n κ n ). The type assignment system λ µ is defined by the rules in Figure 3. We write Γ M : δ if Γ M : δ is derivable with the rules of Figure 3. In [vbbdl13], it was shown that strongly normalising terms are characterised by means of typability in the system λ µ. The following is one direction of the characterisation theorem. Theorem 4.3 ([vbbdl13]). If Γ M : δ for some Γ,δ and, then M SN β,µ.

K. Kikuchi & T. Sakurai 5 σ A σ σ τ A σ σ τ A τ ν D ω ν ω ν D ν δ 1 δ 2 ω C δ 1 ω (δ 1 ω) (δ 2 κ) C (δ 1 δ 2 ) κ (δ 1 κ 1 ) (δ 2 κ 2 ) C (δ 1 δ 2 ) (κ 1 κ 2 ) where κ 1 ω and κ 2 ω σ A ρ ρ A τ σ A τ σ A τ 1 σ A τ 2 σ A τ 1 τ 2 δ 1 D δ 2 δ 1 ω C δ 2 ω δ 1 D δ 2 κ 1 C κ 2 δ 1 κ 1 C δ 2 κ 2 κ 2 C κ 1 κ 1 ν D κ 2 ν Figure 2: Relations D and C Γ,x : δ x : δ (Ax) Γ M : κ ν α : κ, Γ µα.[α]m : κ ν (µ) Γ M : κ ν α : κ,γ : κ, Γ µα.[γ]m : κ ν γ : κ, (µ) Γ,x : δ M : κ ν Γ λx.m : δ κ ν (Abs) Γ M : δ κ ν Γ N : δ Γ MN : κ ν where κ is either a type in T C or ω where κ is either a type in T C or ω (App) Γ M : δ Γ M : δ Γ M : δ δ ( ) Γ M : δ δ D δ Γ M : δ ( ) Figure 3: Type assignment system λ µ 5 A translation of intersection and union types Now we introduce a translation of intersection and union types into intersection and product types, extending the translation of simple types in [vbbdl13]. The translation is defined along the structure of the three kinds of types in Definition 3.1. The aim is to prove strong normalisation of terms typable in λ µ, using this translation and the strong normalisation result of terms typable in λ µ. Definition 5.1. The mappings ( ) D : T I T D and ( ) C : T U T C are defined inductively as follows: ϕ C := ν ω (I U) C := I D U C (U V ) C := U C V C U D := U C ν (I J) D := I D J D It can be easily verified that the above mappings are well-defined. We extend the mappings to typing contexts by Γ D := {x : I D x : I Γ } and C := {α : U C α : U }. Proving the preservation of derivability in λ µ by the translation requires some observations on the system λ µ. We give a detailed proof of it in the appendix. Here we instead show the preservation of

6 A Translation of Intersection and Union Types for the λ µ-calculus derivability in the system that is obtained from λ µ by replacing the rules ( E) and ( E) with the following one: Γ M : (I 1 U 1 ) (I n U n ) Γ N : I 1 Γ N : I n Γ MN : U 1 U n ( E) where n 1. This rule is the same as one of the rules of the intersection and union type system in [vb11]. A similar rule also appeared in [Lau04]. We write Γ M : δ if Γ M : δ is derivable in this alternative system. By using the rule ( E) n in Lemma 3.4, we see that the rule ( E) is derivable in the original system λ µ, so Γ M : δ implies Γ M : δ. Theorem 5.2. If Γ M : I then Γ D M : I D C. Proof. By induction on the derivation of Γ M : I. Here we consider some cases. Γ M : V α : U,γ : V, Γ µα.[γ]m : U γ : V, (µ 2) By the induction hypothesis, we have Γ D M : V D α : U C,γ : V C, C where V D V C ν. Then by the rule (µ), we obtain Γ D µα.[γ]m : U C ν γ : V C, C. Γ,x : I M : U ( I) Γ λx.m : I U By the induction hypothesis, we have Γ D,x : I D M : U D C where U D U C ν. Then by the rule (Abs), we obtain Γ D λx.m : I D U C ν C where I D U C ν (I U) C ν (I U) D. Γ M : U Γ M : U V ( I) By the induction hypothesis, we have Γ D M : U D C where U D U C ν. From the definition of D, we have U C ν D U C V C ν. Hence by the rule ( ), we obtain Γ D M : U C V C ν C where U C V C ν (U V ) C ν (U V ) D. Γ M : (I 1 U 1 ) (I n U n ) Γ N : I 1 Γ N : I n Γ MN : U 1 U n ( E) By the induction hypothesis, we have Γ D M : ((I 1 U 1 ) (I n U n )) D C and, for all i {1,...,n}, Γ D N : I D i C. Then by the rule ( ), we have Γ D N : I D 1 ID n C. Now ((I 1 U 1 ) (I n U n )) D ((I 1 U 1 ) (I n U n )) C ν (I 1 U 1 ) C (I n U n ) C ν (I D 1 U C 1 ) (I D n U C n ) ν D (I D 1 I D n ) (U C 1 U C n ) ν (by Lemma 4.2) Hence by the rules ( ) and (App), we obtain Γ D MN : (U C 1 UC n ) ν C where (U C 1 UC n ) ν (U 1 U n ) C ν (U 1 U n ) D. Corollary 5.3. If Γ M : I for some Γ,I and, then M SN β,µ.

K. Kikuchi & T. Sakurai 7 Proof. By Theorems 4.3 and 5.2. The above corollary is enough to show strong normalisation of terms typable in the systems (without the type constants) of [Lau04] and [vb11]. We can also prove the same result for the full system λ µ. (See Appendix A.) 6 Conclusion We have introduced an intersection and union type system with a restricted version of the traditional union-elimination rule. We have presented a translation of intersection and union types into intersection and product types, and proved via the translation strong normalisation of terms typable by the intersection and union type system. Since strong normalisation was not proved in [Lau04, vb11], this seems the first strong normalisation result of terms typable in an intersection and union type system for the λ µ-calculus. It is expected that our type system for the λ µ-calculus enjoys the subject reduction property. This is plausible since, by the side condition of the union-elimination rule, the variable to be discharged can occur only once in each premiss, in which case known counter examples do not emerge. It is also expected that all strongly normalising terms in the λ µ-calculus are typable in our system. These problems are to be investigated in future work. References [vb11] S. van Bakel. Sound and complete typing for λ µ. In Proc. ITRS 10, EPTCS 45, 31 44, 2011. [vbbdl11] [vbbdl13] [BB96] S. van Bakel, F. Barbanera and U. de Liguoro. A filter model for the λ µ-calculus. In Proc. TLCA 11, LNCS 6690, 213 228, 2011. S. van Bakel, F. Barbanera and U. de Liguoro. Characterisation of strongly normalising λ µ-terms. In Proc. ITRS 12, EPTCS 121, 1 17, 2013. F. Barbanera and S. Berardi. A symmetric lambda calculus for classical program extraction. Inform. and Comput., 125(2):103 117, 1996. [BDCdL95] F. Barbanera, M. Dezani-Ciancaglini, and U. de Liguoro. Intersection and union types: Syntax and semantics. Inform. and Comput., 119(2):202 230, 1995. [Lau04] O. Laurent. On the denotational semantics of the untyped lambda-mu calculus. Unpublished note, 2004. [Par92] M. Parigot. λ µ-calculus: An algorithmic interpretation of classical natural deduction. In Proc. LPAR 92, LNCS 624, 190 201, 1992. [SR98] T. Streicher and B. Reus. Classical logic, continuation semantics and abstract machines. J. Funct. Program., 8(6):543 572, 1998.

8 A Translation of Intersection and Union Types for the λ µ-calculus A Appendix In this appendix we prove the preservation of derivability in λ µ by the translation in Section 5. To simplify the argument, we first restrict the relations D and C to # D and # C defined by the rules in Figure 4 (where # A denotes either # D or # C ). Clearly, σ # A τ implies σ A τ. σ # A σ σ τ # A σ σ τ # A τ σ # A ρ ρ # A τ σ # A τ 1 σ # A τ 2 σ # A τ σ # A τ 1 τ 2 δ 1 # D δ 2 κ 1 # C κ 2 δ 1 κ 1 # C δ 2 κ 2 κ 2 # C κ 1 κ 1 ν # D κ 2 ν Figure 4: Relations # D and # C Lemma A.1. Let δ 1 δ n # D δ 1 δ m where none of the δ i (i {1,...,n}) and δ j ( j {1,...,m}) is an intersection. Then, for each δ j of the form κ ν, there exists δ i such that δ i κ ν and κ # C κ. Proof. By induction on the definition of # D. The next lemma is the # analogue of Lemma 4.2. Lemma A.2. (δ 1 δ n ) (κ 1 κ n ) # C (δ 1 κ 1 ) (δ n κ n ). The type assignment system λ µ # is defined by the same rules as λ µ except that the rule ( ) is replaced by the rule ( # ) with # D instead of D. (We also assume κ ω in the rules (Abs) and (App).) We write Γ # M : δ if Γ M : δ is derivable in the system λ µ #. Clearly, Γ # M : δ implies Γ M : δ. Lemma A.3. If Γ,x : δ # M : δ and x / FV λ (M) then Γ # M : δ. Proof. By induction on the derivation of Γ,x : δ # M : δ. Lemma A.4 (Generation Lemma). 1. If Γ # x : δ then there exists x : δ Γ such that δ # D δ. 2. If Γ # MN : δ then there exist κ 1,...,κ n,δ 1,...,δ n (n 1) such that (κ 1 ν) (κ n ν) # D δ and, for all i {1,...,n}, Γ # M : δ i κ i ν and Γ # N : δ i. Proof. By induction on the derivations. Now we prove the announced theorem. Theorem A.5. If Γ M : I then Γ D # M : I D C. Proof. By induction on the derivation of Γ M : I. Here we only consider the case where the last applied rule in the derivation is ( E). The other cases are proved similarly to those in the proof of Theorem 5.2 by checking that the derivations under consideration only use the rules of λ µ #.

K. Kikuchi & T. Sakurai 9 Γ M : U V Γ,x : U xn : I Γ,x : V xn : I ( E) Γ MN : I where x / FV λ (N). By the induction hypothesis, we have Γ D # M : (U V ) D C, Γ D,x : U D # xn : I D C and Γ D,x : V D # xn : I D C. Then by Lemma A.4(2), we have (a) there exist κ 1,...,κ n,δ 1,...,δ n (n 1) such that (κ 1 ν) (κ n ν) # D ID and, for all i {1,...,n}, Γ D,x : U D # x : δ i κ i ν C and Γ D,x : U D # N : δ i C, and (b) there exist κ 1,...,κ n,δ 1,...,δ n (n 1) such that (κ 1 ν) (κ n ν) # D ID and, for all k {1,...,n }, Γ D,x : V D # x : δ k κ k ν C and Γ D,x : V D # N : δ k C. Let I D (U 1 U m ) D U1 D U m D (U1 C ν) (UC m ν). Then, from (a) and Lemma A.1, we have (c) for each Uj D( UC j ν) ( j {1,...,m}), there exists κ i (i {1,...,n}) such that (c1) U C j C # κ i, (c2) Γ D,x : U D # x : δ i κ i ν C, and (c3) Γ D,x : U D # N : δ i C. Similarly, from (b) and Lemma A.1, we have (d) for each Uj D( UC j ν) ( j {1,...,m}), there exists κ k (k {1,...,n }) such that (d1) U C j C # κ k, (d2) Γ D,x : V D # x : δ k κ k ν C, and (d3) Γ D,x : V D # N : δ k C. Now, fix j {1,...,m}, and take κ i and κ k satisfying (c1)-(c3) and (d1)-(d3), respectively. From (c2), we have U D # D δ i κ i ν by Lemma A.4(1). Since U D U C ν, we have δ i κ i C # UC by Lemma A.1. Similarly, from (d2), we have δ k κ k # C VC. Hence (δ i κ i ) (δ k κ k ) # C U C V C, and so U C V C ν # D (δ i κ i ) (δ k κ k) ν # D (δ i δ k) (κ i κ k) ν (by Lemma A.2) By the induction hypothesis, we have Γ D # M : (U V ) D C where (U V ) D (U V ) C ν U C V C ν. So we have Γ D # M : (δ i δ k ) (κ i κ k ) ν C by the rule ( # ). On the other hand, from (c3) and (d3), we have Γ D # N : δ i C and Γ D # N : δ k C by Lemma A.3. Thus we have the following derivation:. Γ D M : (δ i δ k ) (κ i κ k ) ν C Γ D MN : κ i κ k ν C. Γ D N : δ i C. Γ D N : δ k C Γ D N : δ i δ k C (App) Finally, from (c1) and (d1), we have U C j # C κ i κ k, and so κ i κ k ν # D UC j ν U D j. Hence by the rule ( # ), we obtain Γ D # MN : U D j C. This argument holds for each U D j ( j {1,...,m}), so we have Γ D # MN : U D 1 UD m C. Hence Γ D # MN : I D C. Corollary A.6. If Γ M : I for some Γ,I and, then M SN β,µ. Proof. By Theorems 4.3 and A.5, and the fact that Γ D # M : I D C implies Γ D M : I D C. ( )