Lemma 1.2.6 (Generation Lemma).

  • (1)
    For every variable x, context Γ, and type σ, if Γx:σ, then x:σΓ;
  • (2)
    If Γ(MN):σ, then there is a type τ such that ΓM:τσ and ΓN:τ;
  • (3)
    If Γ(λx.M):σ, then there are types τ and ρ such that Γ,x:τM:ρ and σ=(τρ).