Library f_equivalence

The equivalence between PTS and PTSF.
Require Import base.

Require Import f_term f_env f_typ f_typ2 .

Require Import ut_term ut_red ut_env ut_typ ut_sr ut_typ_eq.

Require Import final_result.

Require Import List Lt Le Gt Plus Minus Peano_dec Compare_dec.

Require Import term red env typ_annot glue strip final_result.


Module f_equiv_mod (X:term_sig) (Y:pts_sig X) (TM:term_mod X) (EM: env_mod X TM) (RM: red_mod X TM) (UTM:ut_term_mod X)
  (UEM: ut_env_mod X UTM) (URM: ut_red_mod X UTM) (PTS : ut_sr_mod X Y UTM UEM URM) (PTSe : ut_typ_eq_mod X Y UTM UEM URM PTS)
  (PTS_ATR: glue_mod X Y TM EM RM UTM UEM URM) (FTM: f_term_mod X) (FEM: f_env_mod X FTM).
Interactive Module f_equiv_mod started


Import X Y UTM UEM URM TM EM RM PTS PTSe PTS_ATR FTM FEM.
Warning: Notation _ →' _ was already used in scope UT_scope


Include (final_mod X Y TM EM RM UTM UEM URM PTS PTSe PTS_ATR).

Include (f_typ2_mod X Y FTM FEM UTM URM UEM PTS).


tactics for PTSeq2PTSF
This tactic will destruct an induction hypothesis H for the theorem PTSeq2PTSF, and then converts the context to Δ using context_conversion and then convert the types of the new terms to T. If Δ or T is empty, no conversion is done for that part.

Ltac destruct_typ_equiv := fun H Δ T =>
let Γ := fresh "Γ" with HH := fresh "HH" with M := fresh "M" with N := fresh "N" with A := fresh "A" with eqΓ := fresh "eqΓ"
with eqM := fresh "eqM" with eqN := fresh "eqN" with eqA := fresh "eqA" with HMN := fresh "HMN" with HM := fresh "HM" with HN := fresh "HN"
with T0 := fresh "T" with S := fresh "S" with eqT := fresh "eqT" with eqS := fresh "eqS" with HT := fresh "HT" with H0 := fresh "H"
with Hta := fresh "Hta" with HHta := fresh "HHta" with Δwf := fresh "Δwf" with eqΔ := fresh "eqΔ" with C := fresh "C" with D := fresh "D"
with eqC := fresh "eqC" with eqD := fresh "eqD" with HCD := fresh "HCD" with hT := fresh "hT" with eqC1 := fresh "eqCC"
with eqC2 := fresh "eqCCC" with T1 := fresh "TT" with eqT1 := fresh "eqTT" with HT1 := fresh "HHT" in
match (type of H) with
| exists _ _ _ _ _,_ => destruct H as (Γ&HH&M&N&A&eqΓ&eqM&eqN&eqA&HM&HN&HMN);
  match Δ with
  | True =>
      match T with
          | True => idtac
          | _ => destruct (erasure_equality _ _ _ _ T _ HMN HM HN) as (T0&S&eqT&eqS&?HT&?HS&hT&HT);[eauto|try (left;eauto;fail);right;eauto| ];
      rewrite eqM in eqT;rewrite eqN in eqS;clear M N eqM eqN HMN HM HN
      end
  | _ => assert (εc Δ = εc Γ) as eqΔ;[rewrite eqΓ;simpl;trivial;f_equal;trivial|];
      destruct context_conversion as (temp1&temp2&_);
      assert (Δ) as Δwf;[(eapply wf_typ;eassumption)||(eapply wf_cons;eassumption)|];
      destruct (temp1 _ _ _ HM Δ Δwf) as (C&D&eqC&eqD&HCD);[symmetry;assumption|];rewrite eqM in eqC;rewrite eqA in eqD;clear HM;
      destruct (erasure_term _ T _ _ HCD) as (T0&eqT&HT);[eauto|try (left;eauto;fail);try (right;eauto;fail);eapply TypeCorrect;eassumption| ];
       rewrite <- eqT in eqC;clear C D eqT eqD HCD;
      destruct (temp1 _ _ _ HN Δ Δwf) as (C&D&eqC1&eqD&HCD);[symmetry;assumption|];rewrite eqN in eqC1;rewrite eqA in eqD;clear HN;
      destruct (erasure_term _ T _ _ HCD) as (T1&eqT1&HT1);[eauto|try (left;eauto;fail);try (right;eauto;fail);eapply TypeCorrect;eassumption| ];
       rewrite <- eqT1 in eqC1;clear C D eqT1 eqD HCD;
      destruct (temp2 _ _ _ _ HMN Δ Δwf) as (hT&C&D&eqC2&eqD&HCD);[symmetry;assumption|];
      rewrite eqM in eqC2;rewrite <- eqC in eqC2;rewrite eqN in eqD;rewrite <- eqC1 in eqD;
      destruct (erasure_equality2 _ _ _ _ _ _ _ _ HCD HT HT1 eqC2 eqD);
      clear M N Γ temp1 temp2 Δwf eqM eqN C D eqC2 eqD HCD hT eqΔ eqΓ HMN
  end
| _ => destruct H as (Γ&M&N&eqΓ&eqM&eqN&HMN);
  match Δ with
  | True => idtac
  | _ => assert (εc Δ = εc Γ) as eqΔ;[rewrite eqΓ;simpl;trivial;f_equal;trivial|];
      destruct context_conversion as (temp&_&_);
      destruct (temp _ _ _ HMN Δ) as (C&D&eqC&eqD&HCD);[(eapply wf_typ;eassumption)||(eapply wf_cons;eassumption)|symmetry;assumption|clear temp];
      try rewrite <- eqC in eqM;try rewrite <- eqD in eqN; clear M N Γ eqΓ eqΔ eqC eqD HMN;rename C into M, D into N,HCD into HMN
  end;
  match T with
  | True => idtac
  | _ => destruct (erasure_term _ T _ _ HMN) as (T0&eqT&HT);[eauto|try (left;eauto;fail);right;eauto| ];
      rewrite <- eqT in eqM;clear M N eqT eqN HMN; rename eqM into eqT
  end
end;subst.
destruct_typ_equiv is defined



Ltac search_prod_equiv :=
let HeqX := fresh "HeqX" with Htp := fresh "Htp" with Hetp := fresh "Hetp" with s := fresh "s" in
match goal with
 | eq : ε ?x = (Π (?A), ?B)%UT,HT : _ _ : ?x |- _ =>
 rewrite <- erasure_erasure_outer in eq at 1;remember (erasure_outer x) as X eqn:HeqX;
 destruct X;simpl in eq;try discriminate;[|symmetry in HeqX;apply erasure_outer_not_conv in HeqX; elim HeqX];
 destruct (TypeCorrect _ _ _ HT) as [(?&Htp)|(s&Htp)];[subst;simpl in HeqX;discriminate|];
 destruct (erasure_outer_typing _ _ _ Htp) as (?&Hetp);
 rewrite <- HeqX in Hetp;
 destruct (gen_pi _ _ _ _ Hetp) as (?s&?s&?s&?&_&?&?);injection eq;intros;subst
end.
search_prod_equiv is defined



The implication PTSeq -> PTSf

Theorem PTSeq2PTSF : (forall Γ M N , Γ e M : N ->exists Γ' M' N' ,εc Γ'=Γ/\ε M'=M/\ε N'=N/\ Γ' M' : N')/\
                     (forall Γ M N A, Γ e M = N : A->exists Γ' H M' N' A',εc Γ'=Γ/\ε M'=M/\ε N'=N/\ε A'=A/\Γ' M' : A'/\Γ' N' : A'/\Γ' H : M' = N')/\
                     (forall Γ , Γ e ->exists Γ' ,εc Γ'=Γ/\ Γ' ).
1 subgoals, subgoal 1 (ID 26)
  
  ============================
   (forall (Γ : UEM.Env) (M N : UTM.Term),
    Γ ⊢e M : N ->
    exists (Γ' : Env) (M' N' : Term),
      εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N') /\
   (forall (Γ : UEM.Env) (M N A : UTM.Term),
    Γ ⊢e M = N : A ->
    exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
      εc Γ' = Γ /\
      ε M' = M /\
      ε N' = N /\
      ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N') /\
   (forall Γ : UEM.Env, Γ ⊣e -> exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣)

(dependent evars:)


apply (PTSe.typ_induc);intros.
17 subgoals, subgoal 1 (ID 49)
  
  Γ : UEM.Env
  s : Sorts
  t : Sorts
  a : Ax s t
  w : Γ ⊣e
  H : exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = !s%UT /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 55) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = #v%UT /\ ε N' = A /\ Γ' ⊢ M' : N'
subgoal 3 (ID 66) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (Π (A), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 5 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 6 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 7 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 11 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 12 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 13 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 14 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 15 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 16 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 17 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)


destruct H as (?&?&?).
17 subgoals, subgoal 1 (ID 205)
  
  Γ : UEM.Env
  s : Sorts
  t : Sorts
  a : Ax s t
  w : Γ ⊣e
  x : Env
  H : εc x = Γ
  H0 : x ⊣
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = !s%UT /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 55) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = #v%UT /\ ε N' = A /\ Γ' ⊢ M' : N'
subgoal 3 (ID 66) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (Π (A), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 5 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 6 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 7 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 11 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 12 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 13 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 14 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 15 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 16 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 17 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)

exists x,!s,!t;simpl;intuition.
16 subgoals, subgoal 1 (ID 55)
  
  Γ : UEM.Env
  A : UTM.Term
  v : nat
  w : Γ ⊣e
  H : exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
  i : (A ↓ v ⊂ Γ)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = #v%UT /\ ε N' = A /\ Γ' ⊢ M' : N'

subgoal 2 (ID 66) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (Π (A), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 5 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 6 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 10 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 11 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 12 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 13 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 14 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 15 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 16 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)


destruct H as (?&?&?).
16 subgoals, subgoal 1 (ID 246)
  
  Γ : UEM.Env
  A : UTM.Term
  v : nat
  w : Γ ⊣e
  x : Env
  H : εc x = Γ
  H0 : x ⊣
  i : (A ↓ v ⊂ Γ)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = #v%UT /\ ε N' = A /\ Γ' ⊢ M' : N'

subgoal 2 (ID 66) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (Π (A), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 5 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 6 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 10 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 11 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 12 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 13 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 14 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 15 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 16 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)


destruct (erasure_item_lift_rev _ _ _ _ H i) as (?&?&?);subst.
16 subgoals, subgoal 1 (ID 272)
  
  v : nat
  x : Env
  H0 : x ⊣
  x0 : Term
  H2 : x0 ↓ v ⊂ x
  w : εc x ⊣e
  i : (ε x0 ↓ v ⊂ εc x)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc x /\ ε M' = #v%UT /\ ε N' = ε x0 /\ Γ' ⊢ M' : N'

subgoal 2 (ID 66) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (Π (A), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 5 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 6 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 10 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 11 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 12 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 13 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 14 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 15 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 16 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)


eexists x,#v,x0;simpl;intuition.
15 subgoals, subgoal 1 (ID 66)
  
  Γ : UEM.Env
  A : UTM.Term
  B : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  t0 : Γ ⊢e A : !s%UT
  H : exists (Γ' : Env) (M' N' : Term),
        εc Γ' = Γ /\ ε M' = A /\ ε N' = !s%UT /\ Γ' ⊢ M' : N'
  t1 : A :: Γ ⊢e B : !t%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = A :: Γ /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = (Π (A), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 5 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 9 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 10 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 11 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 13 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 14 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 15 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)


destruct_typ_equiv H True !s.
15 subgoals, subgoal 1 (ID 376)
  
  B : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  t1 : ε T :: εc Γ0 ⊢e B : !t%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = (Π (ε T), B)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 5 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 9 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 10 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 11 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 13 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 14 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 15 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using ,)


destruct_typ_equiv H0 (T::Γ0) !t.
15 subgoals, subgoal 1 (ID 498)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T0 : Term
  HT0 : T :: Γ0 ⊢ T0 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (Π (ε T), ε T0)%UT /\ ε N' = !u%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 80) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 4 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 5 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 9 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 10 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 11 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 13 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 14 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 15 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using ,)


exists Γ0,(Π(T),T0),!u;intuition;eapply cProd;eassumption.
14 subgoals, subgoal 1 (ID 80)
  
  Γ : UEM.Env
  A : UTM.Term
  b : UTM.Term
  B : UTM.Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢e A : !s1%UT
  H : exists (Γ' : Env) (M' N' : Term),
        εc Γ' = Γ /\ ε M' = A /\ ε N' = !s1%UT /\ Γ' ⊢ M' : N'
  t0 : A :: Γ ⊢e B : !s2%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = A :: Γ /\ ε M' = B /\ ε N' = !s2%UT /\ Γ' ⊢ M' : N'
  t1 : A :: Γ ⊢e b : B
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = A :: Γ /\ ε M' = b /\ ε N' = B /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\
     ε M' = (λ [A], b)%UT /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 4 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 8 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 9 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 10 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 13 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 14 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using ,)


destruct_typ_equiv H True !s1.
14 subgoals, subgoal 1 (ID 612)
  
  b : UTM.Term
  B : UTM.Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s1
  t : εc Γ0 ⊢e ε T : !s1%UT
  t0 : ε T :: εc Γ0 ⊢e B : !s2%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = B /\ ε N' = !s2%UT /\ Γ' ⊢ M' : N'
  t1 : ε T :: εc Γ0 ⊢e b : B
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = b /\ ε N' = B /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], b)%UT /\ ε N' = (Π (ε T), B)%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 4 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 8 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 9 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 10 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 13 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 14 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using ,)


destruct_typ_equiv H0 (T::Γ0) !s2.
14 subgoals, subgoal 1 (ID 743)
  
  b : UTM.Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s1
  t : εc Γ0 ⊢e ε T : !s1%UT
  T0 : Term
  HT0 : T :: Γ0 ⊢ T0 : !s2
  t0 : ε T :: εc Γ0 ⊢e ε T0 : !s2%UT
  t1 : ε T :: εc Γ0 ⊢e b : ε T0
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = b /\ ε N' = ε T0 /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], b)%UT /\ ε N' = (Π (ε T), ε T0)%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 4 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 8 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 9 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 10 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 13 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 14 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using ,)


destruct_typ_equiv H1 (T::Γ0) T0.
14 subgoals, subgoal 1 (ID 867)
  
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s1
  t : εc Γ0 ⊢e ε T : !s1%UT
  T0 : Term
  HT0 : T :: Γ0 ⊢ T0 : !s2
  t0 : ε T :: εc Γ0 ⊢e ε T0 : !s2%UT
  T1 : Term
  HT1 : T :: Γ0 ⊢ T1 : T0
  t1 : ε T :: εc Γ0 ⊢e ε T1 : ε T0
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\ ε N' = (Π (ε T), ε T0)%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 89) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'
subgoal 3 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 4 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 8 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 9 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 10 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 12 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 13 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 14 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using ,)


exists Γ0,(λ[T],T1),(Π(T),T0);intuition;eapply cAbs;eassumption.
13 subgoals, subgoal 1 (ID 89)
  
  Γ : UEM.Env
  a : UTM.Term
  b : UTM.Term
  A : UTM.Term
  B : UTM.Term
  t : Γ ⊢e a : (Π (A), B)%UT
  H : exists (Γ' : Env) (M' N' : Term),
        εc Γ' = Γ /\ ε M' = a /\ ε N' = (Π (A), B)%UT /\ Γ' ⊢ M' : N'
  t0 : Γ ⊢e b : A
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = Γ /\ ε M' = b /\ ε N' = A /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = (a · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 3 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 7 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 8 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 12 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 13 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using ,)


destruct_typ_equiv H True True.
13 subgoals, subgoal 1 (ID 950)
  
  b : UTM.Term
  A : UTM.Term
  B : UTM.Term
  Γ0 : Env
  M : Term
  N : Term
  eqN : ε N = (Π (A), B)%UT
  HMN : Γ0 ⊢ M : N
  t0 : εc Γ0 ⊢e b : A
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = εc Γ0 /\ ε M' = b /\ ε N' = A /\ Γ' ⊢ M' : N'
  t : εc Γ0 ⊢e ε M : (Π (A), B)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M · b)%UT /\ ε N' = (B [ ← b])%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 3 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 7 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 8 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 12 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 13 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using ,)


search_prod_equiv.
13 subgoals, subgoal 1 (ID 1189)
  
  b : UTM.Term
  Γ0 : Env
  M : Term
  N : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer N
  HMN : Γ0 ⊢ M : N
  s : Sorts
  Htp : Γ0 ⊢ N : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e b : ε X1
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = εc Γ0 /\ ε M' = b /\ ε N' = ε X1 /\ Γ' ⊢ M' : N'
  eqN : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M · b)%UT /\ ε N' = (ε X2 [ ← b])%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 3 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 7 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 8 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 12 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 13 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using ,)


destruct (erasure_term _ (Π (X1), X2) _ _ HMN) as (T0&eqT&HT5);[rewrite <- erasure_erasure_outer at 1;rewrite HeqX;trivial|try (left;eauto;fail);right;eauto| ].
13 subgoals, subgoal 1 (ID 1209)
  
  b : UTM.Term
  Γ0 : Env
  M : Term
  N : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer N
  HMN : Γ0 ⊢ M : N
  s : Sorts
  Htp : Γ0 ⊢ N : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e b : ε X1
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = εc Γ0 /\ ε M' = b /\ ε N' = ε X1 /\ Γ' ⊢ M' : N'
  eqN : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M · b)%UT /\ ε N' = (ε X2 [ ← b])%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 3 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 7 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 8 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 12 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 13 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using ,)


destruct_typ_equiv H0 Γ0 X1.
13 subgoals, subgoal 1 (ID 1366)
  
  Γ0 : Env
  M : Term
  N : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer N
  HMN : Γ0 ⊢ M : N
  s : Sorts
  Htp : Γ0 ⊢ N : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  T : Term
  eqN : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  HT : Γ0 ⊢ T : X1
  t0 : εc Γ0 ⊢e ε T : ε X1
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M · ε T)%UT /\ ε N' = (ε X2 [ ← ε T])%UT /\ Γ' ⊢ M' : N'

subgoal 2 (ID 98) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'
subgoal 3 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 7 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 8 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 9 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 11 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 12 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 13 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using ,)


exists Γ0,(T0·T),(X2 [ T]);simpl;rewrite erasure_subst;rewrite eqT;intuition;eapply cApp;eassumption.
12 subgoals, subgoal 1 (ID 98)
  
  Γ : UEM.Env
  a : UTM.Term
  A : UTM.Term
  B : UTM.Term
  s : Sorts
  t : Γ ⊢e A = B : !s%UT
  H : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
        εc Γ' = Γ /\
        ε M' = A /\
        ε N' = B /\
        ε A' = !s%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  t0 : Γ ⊢e a : A
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = Γ /\ ε M' = a /\ ε N' = A /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = a /\ ε N' = B /\ Γ' ⊢ M' : N'

subgoal 2 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 6 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 7 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 11 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 12 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using ,)


destruct_typ_equiv H True !s.
12 subgoals, subgoal 1 (ID 1542)
  
  a : UTM.Term
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  t0 : εc Γ0 ⊢e a : ε T
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = εc Γ0 /\ ε M' = a /\ ε N' = ε T /\ Γ' ⊢ M' : N'
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = a /\ ε N' = ε S /\ Γ' ⊢ M' : N'

subgoal 2 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 6 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 7 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 11 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 12 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using ,)


destruct_typ_equiv H0 Γ0 T.
12 subgoals, subgoal 1 (ID 1672)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : Γ0 ⊢ T0 : T
  t0 : εc Γ0 ⊢e ε T0 : ε T
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε T0 /\ ε N' = ε S /\ Γ' ⊢ M' : N'

subgoal 2 (ID 104) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = !s%UT /\
   ε N' = !s%UT /\
   ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 6 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 7 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 11 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 12 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using ,)


exists Γ0,(T0hT),S;intuition;eapply cConv;eassumption.
11 subgoals, subgoal 1 (ID 104)
  
  Γ : UEM.Env
  s : Sorts
  t : Sorts
  a : Ax s t
  w : Γ ⊣e
  H : exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = !s%UT /\
     ε N' = !s%UT /\
     ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 5 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 6 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 10 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 11 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using ,)


destruct H as (?&?&?).
11 subgoals, subgoal 1 (ID 1719)
  
  Γ : UEM.Env
  s : Sorts
  t : Sorts
  a : Ax s t
  w : Γ ⊣e
  x : Env
  H : εc x = Γ
  H0 : x ⊣
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = !s%UT /\
     ε N' = !s%UT /\
     ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 110) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = #v%UT /\
   ε N' = #v%UT /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 5 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 6 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 10 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 11 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using ,)


eexists x,_,!s,!s,!t;intuition;eapply cRefl;eapply cSort;eassumption.
10 subgoals, subgoal 1 (ID 110)
  
  Γ : UEM.Env
  v : nat
  A : UTM.Term
  w : Γ ⊣e
  H : exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
  i : (A ↓ v ⊂ Γ)%UT
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = #v%UT /\
     ε N' = #v%UT /\
     ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using ,)


destruct H as (?&?&?);destruct (erasure_item_lift_rev _ _ _ _ H i) as (?&?&?).
10 subgoals, subgoal 1 (ID 1865)
  
  Γ : UEM.Env
  v : nat
  A : UTM.Term
  w : Γ ⊣e
  x : Env
  H : εc x = Γ
  H0 : x ⊣
  i : (A ↓ v ⊂ Γ)%UT
  x0 : Term
  H1 : ε x0 = A
  H2 : x0 ↓ v ⊂ x
  ============================
   exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = #v%UT /\
     ε N' = #v%UT /\
     ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'

subgoal 2 (ID 123) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
   εc Γ' = Γ /\
   ε M' = (Π (A), B)%UT /\
   ε N' = (Π (A'), B')%UT /\
   ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using ,)


eexists x,_,#v,#v,x0;intuition;eapply cRefl;eapply cVar;eassumption.
9 subgoals, subgoal 1 (ID 123)
  
  Γ : UEM.Env
  A : UTM.Term
  A' : UTM.Term
  B : UTM.Term
  B' : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  t0 : Γ ⊢e A = A' : !s%UT
  H : exists (Γ' : Env) (H : Prf) (M' N' A'0 : Term),
        εc Γ' = Γ /\
        ε M' = A /\
        ε N' = A' /\
        ε A'0 = !s%UT /\
        (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H : M' = N'
  t1 : A :: Γ ⊢e B = B' : !t%UT
  H0 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
         εc Γ' = A :: Γ /\
         ε M' = B /\
         ε N' = B' /\
         ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A'0 : Term),
     εc Γ' = Γ /\
     ε M' = (Π (A), B)%UT /\
     ε N' = (Π (A'), B')%UT /\
     ε A'0 = !u%UT /\ (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using ,)


destruct_typ_equiv H True !s.
9 subgoals, subgoal 1 (ID 2121)
  
  B : UTM.Term
  B' : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  t1 : ε T :: εc Γ0 ⊢e B = B' : !t%UT
  H0 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
         εc Γ' = ε T :: εc Γ0 /\
         ε M' = B /\
         ε N' = B' /\
         ε A' = !t%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (Π (ε T), B)%UT /\
     ε N' = (Π (ε S), B')%UT /\
     ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using ,)


destruct_typ_equiv H0 (T::Γ0) !t.
9 subgoals, subgoal 1 (ID 2390)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (Π (ε T), ε T0)%UT /\
     ε N' = (Π (ε S), ε TT)%UT /\
     ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using ,)


assert (S :: Γ0 (TT 1 # 1) [ #0 (hT ) h 1] : !t).
10 subgoals, subgoal 1 (ID 2392)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  ============================
   S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t

subgoal 2 (ID 2393) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (Π (ε T), ε T0)%UT /\
   ε N' = (Π (ε S), ε TT)%UT /\
   ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using ,)

change !t with ((!t 1 # 1) [ #0 hT h 1]); eapply subst_typ; repeat (try eassumption;econstructor).
9 subgoals, subgoal 1 (ID 2393)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (Π (ε T), ε T0)%UT /\
     ε N' = (Π (ε S), ε TT)%UT /\
     ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using ,)


edestruct erasure_injectivity_term.
12 subgoals, subgoal 1 (ID 2430)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ?2422 ⊢ ?2420 : ?2423

subgoal 2 (ID 2432) is:
 ?2422 ⊢ ?2421 : ?2424
subgoal 3 (ID 2434) is:
 ε ?2420 = ε ?2421
subgoal 4 (ID 2438) is:
 exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (Π (ε T), ε T0)%UT /\
   ε N' = (Π (ε S), ε TT)%UT /\
   ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'
subgoal 5 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 6 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 7 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 11 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 12 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 open, ?2421 open, ?2422 open, ?2423 open, ?2424 open,)

eexact HHT.
11 subgoals, subgoal 1 (ID 2432)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   T :: Γ0 ⊢ ?2421 : ?2424

subgoal 2 (ID 2434) is:
 ε TT = ε ?2421
subgoal 3 (ID 2438) is:
 exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (Π (ε T), ε T0)%UT /\
   ε N' = (Π (ε S), ε TT)%UT /\
   ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'
subgoal 4 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 5 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 6 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 10 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 11 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 open, ?2422 using , ?2423 using , ?2424 open,)

eapply subst_typ;[eexact H0|eexact HT|repeat (try eassumption;econstructor)..].
10 subgoals, subgoal 1 (ID 2434)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ε TT = ε (((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1])

subgoal 2 (ID 2438) is:
 exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (Π (ε T), ε T0)%UT /\
   ε N' = (Π (ε S), ε TT)%UT /\
   ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using ,)


rewrite erasure_lem2 at 1.
10 subgoals, subgoal 1 (ID 2486)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ε ((TT ↑ 1 # 1) [ ← #0 ∽ ?2462]) =
   ε (((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1])

subgoal 2 (ID 2438) is:
 exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (Π (ε T), ε T0)%UT /\
   ε N' = (Π (ε S), ε TT)%UT /\
   ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 open,)

rewrite erasure_lem2 at 1.
10 subgoals, subgoal 1 (ID 2514)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ε (((TT ↑ 1 # 1) [ ← #0 ∽ ?2462] ↑ 1 # 1) [ ← #0 ∽ ?2490]) =
   ε (((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1])

subgoal 2 (ID 2438) is:
 exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (Π (ε T), ε T0)%UT /\
   ε N' = (Π (ε S), ε TT)%UT /\
   ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 open, ?2490 open,)

reflexivity.
9 subgoals, subgoal 1 (ID 2438)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (Π (ε T), ε T0)%UT /\
     ε N' = (Π (ε S), ε TT)%UT /\
     ε A' = !u%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using ,)


eexists Γ0,_,(Π(T),T0),(Π(S),(TT 1 # 1) [ #0 hT h 1]),!u;intuition;try eapply cProd;try eassumption.
10 subgoals, subgoal 1 (ID 2538)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   ε (Π (S), (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) = (Π (ε S), ε TT)%UT

subgoal 2 (ID 2548) is:
 Γ0 ⊢ ?2520 : Π (T), T0 = Π (S), (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 open, ?2691 using , ?2692 using , ?2696 using , ?2697 using ,)


simpl;f_equal;trivial.
10 subgoals, subgoal 1 (ID 2702)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   ε ((TT ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1 †]) = ε TT

subgoal 2 (ID 2548) is:
 Γ0 ⊢ ?2520 : Π (T), T0 = Π (S), (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 open, ?2691 using , ?2692 using , ?2696 using , ?2697 using ,)


simpl;rewrite erasure_subst.
10 subgoals, subgoal 1 (ID 2717)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   (ε (TT ↑ 1 # 1)%F [ ← ε (#0%F ∽ hT ↑h 1 †)])%UT = ε TT

subgoal 2 (ID 2548) is:
 Γ0 ⊢ ?2520 : Π (T), T0 = Π (S), (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 open, ?2691 using , ?2692 using , ?2696 using , ?2697 using ,)

change (ε (#0%F hT h 1 )) with (ε #0).
10 subgoals, subgoal 1 (ID 2719)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   (ε (TT ↑ 1 # 1)%F [ ← ε #0%F])%UT = ε TT

subgoal 2 (ID 2548) is:
 Γ0 ⊢ ?2520 : Π (T), T0 = Π (S), (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
subgoal 3 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 open, ?2691 using , ?2692 using , ?2696 using , ?2697 using ,)

rewrite <- erasure_subst; rewrite_l_rev erasure_lem1;f_equal;trivial.
9 subgoals, subgoal 1 (ID 2548)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   Γ0 ⊢ ?2520 : Π (T), T0 = Π (S), (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 open, ?2691 using , ?2692 using , ?2696 using , ?2697 using ,)


eapply cProdEq;try eassumption.
9 subgoals, subgoal 1 (ID 2746)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = !t%UT
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : T :: Γ0 ⊢ T0 : !t
  TT : Term
  HHT : T :: Γ0 ⊢ TT : !t
  x : Prf
  H : T :: Γ0 ⊢ x : T0 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T0 = ε TT : !t%UT
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H1 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   T :: Γ0 ⊢ ?2732 : T0 =
   ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]

subgoal 2 (ID 139) is:
 exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
   εc Γ' = Γ /\
   ε M'0 = (λ [A], M)%UT /\
   ε N' = (λ [A'], M')%UT /\
   ε A'0 = (Π (A), B)%UT /\
   (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 open, ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using ,)


eapply cTrans;[eexact H|eassumption].
8 subgoals, subgoal 1 (ID 139)
  
  Γ : UEM.Env
  A : UTM.Term
  A' : UTM.Term
  B : UTM.Term
  M : UTM.Term
  M' : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  t0 : Γ ⊢e A = A' : !s%UT
  H : exists (Γ' : Env) (H : Prf) (M' N' A'0 : Term),
        εc Γ' = Γ /\
        ε M' = A /\
        ε N' = A' /\
        ε A'0 = !s%UT /\
        (Γ' ⊢ M' : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H : M' = N'
  t1 : A :: Γ ⊢e M = M' : B
  H0 : exists (Γ' : Env) (H : Prf) (M'0 N' A' : Term),
         εc Γ' = A :: Γ /\
         ε M'0 = M /\
         ε N' = M' /\
         ε A' = B /\ (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M'0 = N'
  t2 : A :: Γ ⊢e B : !t%UT
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = A :: Γ /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (H2 : Prf) (M'0 N' A'0 : Term),
     εc Γ' = Γ /\
     ε M'0 = (λ [A], M)%UT /\
     ε N' = (λ [A'], M')%UT /\
     ε A'0 = (Π (A), B)%UT /\
     (Γ' ⊢ M'0 : A'0) /\ (Γ' ⊢ N' : A'0) /\ Γ' ⊢ H2 : M'0 = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using ,)


destruct_typ_equiv H True !s.
8 subgoals, subgoal 1 (ID 2883)
  
  B : UTM.Term
  M : UTM.Term
  M' : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  t1 : ε T :: εc Γ0 ⊢e M = M' : B
  H0 : exists (Γ' : Env) (H : Prf) (M'0 N' A' : Term),
         εc Γ' = ε T :: εc Γ0 /\
         ε M'0 = M /\
         ε N' = M' /\
         ε A' = B /\ (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M'0 = N'
  t2 : ε T :: εc Γ0 ⊢e B : !t%UT
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  ============================
   exists (Γ' : Env) (H : Prf) (M'0 N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M'0 = (λ [ε T], M)%UT /\
     ε N' = (λ [ε S], M')%UT /\
     ε A' = (Π (ε T), B)%UT /\
     (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M'0 = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using ,)


destruct_typ_equiv H1 (T::Γ0) !t.
8 subgoals, subgoal 1 (ID 3014)
  
  M : UTM.Term
  M' : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  t1 : ε T :: εc Γ0 ⊢e M = M' : ε T0
  H0 : exists (Γ' : Env) (H : Prf) (M'0 N' A' : Term),
         εc Γ' = ε T :: εc Γ0 /\
         ε M'0 = M /\
         ε N' = M' /\
         ε A' = ε T0 /\
         (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M'0 = N'
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  ============================
   exists (Γ' : Env) (H : Prf) (M'0 N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M'0 = (λ [ε T], M)%UT /\
     ε N' = (λ [ε S], M')%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M'0 = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using ,)


destruct_typ_equiv H0 (T::Γ0) T0.
8 subgoals, subgoal 1 (ID 3289)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\
     ε N' = (λ [ε S], ε TT)%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using ,)


assert (S :: Γ0 (TT 1 # 1) [ #0 (hT ) h 1] : (T0 1 # 1) [ #0 hT h 1]).
9 subgoals, subgoal 1 (ID 3291)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  ============================
   S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
   : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]

subgoal 2 (ID 3292) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using ,)

eapply subst_typ;repeat (try eassumption;econstructor).
8 subgoals, subgoal 1 (ID 3292)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\
     ε N' = (λ [ε S], ε TT)%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using ,)


assert (S :: Γ0 (T0 1 # 1) [ #0 (hT ) h 1] : !t).
9 subgoals, subgoal 1 (ID 3316)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  ============================
   S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t

subgoal 2 (ID 3317) is:
 exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using ,)

change !t with ((!t 1 # 1) [ #0 hT h 1]); eapply subst_typ;repeat (try eassumption;econstructor).
8 subgoals, subgoal 1 (ID 3317)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   exists (Γ' : Env) (H2 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\
     ε N' = (λ [ε S], ε TT)%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H2 : M' = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using ,)


edestruct erasure_injectivity_term.
11 subgoals, subgoal 1 (ID 3354)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ?3346 ⊢ ?3344 : ?3347

subgoal 2 (ID 3356) is:
 ?3346 ⊢ ?3345 : ?3348
subgoal 3 (ID 3358) is:
 ε ?3344 = ε ?3345
subgoal 4 (ID 3362) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 5 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 6 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 10 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 11 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 open, ?3345 open, ?3346 open, ?3347 open, ?3348 open,)

eexact HHT.
10 subgoals, subgoal 1 (ID 3356)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   T :: Γ0 ⊢ ?3345 : ?3348

subgoal 2 (ID 3358) is:
 ε TT = ε ?3345
subgoal 3 (ID 3362) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 open, ?3346 using , ?3347 using , ?3348 open,)

eapply subst_typ;
  [eexact H0|eexact HT|repeat (try eassumption;econstructor)..].
9 subgoals, subgoal 1 (ID 3358)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ε TT = ε (((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1])

subgoal 2 (ID 3362) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using ,)

rewrite erasure_lem2 at 1;rewrite erasure_lem2 at 1.
9 subgoals, subgoal 1 (ID 3438)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  ============================
   ε (((TT ↑ 1 # 1) [ ← #0 ∽ ?3386] ↑ 1 # 1) [ ← #0 ∽ ?3414]) =
   ε (((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1])

subgoal 2 (ID 3362) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 open, ?3414 open,)

reflexivity.
8 subgoals, subgoal 1 (ID 3362)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\
     ε N' = (λ [ε S], ε TT)%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using ,)


assert (Γ0 {hT , [S]ρ(T0 1 # 1) [ #0 (hT ) h 1]} : Π (S), (T0 1 # 1) [ #0 (hT ) h 1] = Π (T), T0).
9 subgoals, subgoal 1 (ID 3443)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  ============================
   Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
   : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = Π (T), T0

subgoal 2 (ID 3444) is:
 exists (Γ' : Env) (H4 : Prf) (M' N' A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (λ [ε T], ε T1)%UT /\
   ε N' = (λ [ε S], ε TT)%UT /\
   ε A' = (Π (ε T), ε T0)%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H4 : M' = N'
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using ,)

repeat econstructor;try eassumption.
8 subgoals, subgoal 1 (ID 3444)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   exists (Γ' : Env) (H4 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\
     ε N' = (λ [ε S], ε TT)%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H4 : M' = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using ,)


subst.
8 subgoals, subgoal 1 (ID 3444)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   exists (Γ' : Env) (H4 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (λ [ε T], ε T1)%UT /\
     ε N' = (λ [ε S], ε TT)%UT /\
     ε A' = (Π (ε T), ε T0)%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H4 : M' = N'

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using ,)


eexists Γ0,_,(λ[T],T1),((λ[S],(TT 1 # 1) [ #0 hT h 1])∽_),(Π(T),T0);intuition;try eapply cAbs;try eassumption.
10 subgoals, subgoal 1 (ID 3528)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   ε ((λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510) =
   (λ [ε S], ε TT)%UT

subgoal 2 (ID 3537) is:
 Γ0 ⊢ (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510 : Π (T), T0
subgoal 3 (ID 3538) is:
 Γ0 ⊢ ?3509 : λ [T], T1 = (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 open, ?3510 open, ?3701 using , ?3702 using , ?3703 using ,)


simpl;rewrite erasure_subst.
10 subgoals, subgoal 1 (ID 3709)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   (λ [ε S], ε (TT ↑ 1 # 1)%F [ ← ε (#0%F ∽ hT ↑h 1 †)])%UT =
   (λ [ε S], ε TT)%UT

subgoal 2 (ID 3537) is:
 Γ0 ⊢ (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510 : Π (T), T0
subgoal 3 (ID 3538) is:
 Γ0 ⊢ ?3509 : λ [T], T1 = (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 open, ?3510 open, ?3701 using , ?3702 using , ?3703 using ,)

change (ε (#0%F hT h 1 )) with (ε #0).
10 subgoals, subgoal 1 (ID 3711)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   (λ [ε S], ε (TT ↑ 1 # 1)%F [ ← ε #0%F])%UT = (λ [ε S], ε TT)%UT

subgoal 2 (ID 3537) is:
 Γ0 ⊢ (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510 : Π (T), T0
subgoal 3 (ID 3538) is:
 Γ0 ⊢ ?3509 : λ [T], T1 = (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510
subgoal 4 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 open, ?3510 open, ?3701 using , ?3702 using , ?3703 using ,)

rewrite <- erasure_subst; rewrite_l_rev erasure_lem1;f_equal;trivial.
9 subgoals, subgoal 1 (ID 3537)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510 : Π (T), T0

subgoal 2 (ID 3538) is:
 Γ0 ⊢ ?3509 : λ [T], T1 = (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]) ∽ ?3510
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 open, ?3510 open, ?3701 using , ?3702 using , ?3703 using ,)


eapply cConv;[econstructor;eassumption..|eassumption].
8 subgoals, subgoal 1 (ID 3538)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ ?3509 : λ [T], T1 =
   (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1])
   ∽ ({hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]})

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 open, ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using ,)


eapply cTrans.
9 subgoals, subgoal 1 (ID 3756)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ ?3753 : λ [T], T1 = ?3755

subgoal 2 (ID 3757) is:
 Γ0 ⊢ ?3754 : ?3755 =
 (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1])
 ∽ ({hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]})
subgoal 3 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 open, ?3755 open,)

Focus 2.
1 focused subgoals (unfocused: 8)
, subgoal 1 (ID 3757)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ ?3754 : ?3755 =
   (λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1])
   ∽ ({hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]})

(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 open, ?3755 open,)

eapply cIota.
3 focused subgoals (unfocused: 8)
, subgoal 1 (ID 3761)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : ?3758

subgoal 2 (ID 3762) is:
 Γ0 ⊢ ?3759 : !?3760
subgoal 3 (ID 3763) is:
 Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]} : ?3758 = ?3759
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 using , ?3755 using , ?3758 open, ?3759 open, ?3760 open,)

econstructor;eassumption.
2 focused subgoals (unfocused: 8)
, subgoal 1 (ID 3762)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ ?3759 : !?3760

subgoal 2 (ID 3763) is:
 Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
 : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = ?3759
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 open, ?3760 open, ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using ,)

Focus 2.
1 focused subgoals (unfocused: 1-8)
, subgoal 1 (ID 3763)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
   : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = ?3759

(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 open, ?3760 open, ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using ,)

eassumption.
1 focused subgoals (unfocused: 8)
, subgoal 1 (ID 3762)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ Π (T), T0 : !?3760

(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 open, ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using ,)

econstructor;eassumption.
8 subgoals, subgoal 1 (ID 3756)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   Γ0 ⊢ ?3753 : λ [T], T1 = λ [S], (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 open, ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using ,)


eapply cAbsEq;try eassumption.
8 subgoals, subgoal 1 (ID 3805)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  T0 : Term
  t0 : εc Γ0 ⊢e ε T = ε S : !s%UT
  HT1 : T :: Γ0 ⊢ T0 : !t
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T0
  t2 : ε T :: εc Γ0 ⊢e ε T0 : !t%UT
  T1 : Term
  HT2 : T :: Γ0 ⊢ T1 : T0
  TT : Term
  HHT : T :: Γ0 ⊢ TT : T0
  x : Prf
  H : T :: Γ0 ⊢ x : T1 = TT
  t1 : ε T :: εc Γ0 ⊢e ε T1 = ε TT : ε T0
  H0 : S :: Γ0 ⊢ (TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
       : (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]
  H1 : S :: Γ0 ⊢ (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] : !t
  x0 : Prf
  H2 : T :: Γ0 ⊢ x0 : TT =
       ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]
  H3 : Γ0 ⊢ {hT †, [S]ρ(T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1]}
       : Π (S), (T0 ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] = 
       Π (T), T0
  ============================
   T :: Γ0 ⊢ ?3787 : T1 =
   ((TT ↑ 1 # 1) [ ← #0 ∽ (hT †) ↑h 1] ↑ 1 # 1) [ ← #0 ∽ hT ↑h 1]

subgoal 2 (ID 150) is:
 exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
   εc Γ' = Γ /\
   ε M'0 = (M · N)%UT /\
   ε N'0 = (M' · N')%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 open, ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using ,)


eapply cTrans;[eexact H|eassumption].
7 subgoals, subgoal 1 (ID 150)
  
  Γ : UEM.Env
  M : UTM.Term
  M' : UTM.Term
  N : UTM.Term
  N' : UTM.Term
  A : UTM.Term
  B : UTM.Term
  t : Γ ⊢e M = M' : (Π (A), B)%UT
  H : exists (Γ' : Env) (H : Prf) (M'0 N' A' : Term),
        εc Γ' = Γ /\
        ε M'0 = M /\
        ε N' = M' /\
        ε A' = (Π (A), B)%UT /\
        (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M'0 = N'
  t0 : Γ ⊢e N = N' : A
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = Γ /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  ============================
   exists (Γ' : Env) (H1 : Prf) (M'0 N'0 A' : Term),
     εc Γ' = Γ /\
     ε M'0 = (M · N)%UT /\
     ε N'0 = (M' · N')%UT /\
     ε A' = (B [ ← N])%UT /\
     (Γ' ⊢ M'0 : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H1 : M'0 = N'0

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using ,)


destruct_typ_equiv H True True.
7 subgoals, subgoal 1 (ID 3883)
  
  N : UTM.Term
  N' : UTM.Term
  A : UTM.Term
  B : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  eqA : ε A0 = (Π (A), B)%UT
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  t0 : εc Γ0 ⊢e N = N' : A
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (A), B)%UT
  ============================
   exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · N)%UT /\
     ε N'0 = (ε N0 · N')%UT /\
     ε A' = (B [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using ,)


search_prod_equiv.
7 subgoals, subgoal 1 (ID 4123)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  ============================
   exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · N)%UT /\
     ε N'0 = (ε N0 · N')%UT /\
     ε A' = (ε X2 [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using ,)


destruct (erasure_term _ (Π (X1), X2) _ _ HM) as (T0&eqT&HT5);[rewrite <- erasure_erasure_outer at 1;rewrite HeqX;trivial|try (left;eauto;fail);right;eauto| ].
7 subgoals, subgoal 1 (ID 4143)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  ============================
   exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · N)%UT /\
     ε N'0 = (ε N0 · N')%UT /\
     ε A' = (ε X2 [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using ,)


destruct (erasure_term _ (Π (X1), X2) _ _ HN) as (T1&eqT1&HT6);[rewrite <- erasure_erasure_outer at 1;rewrite HeqX;trivial|try (left;eauto;fail);right;eauto| ].
7 subgoals, subgoal 1 (ID 4190)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  ============================
   exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · N)%UT /\
     ε N'0 = (ε N0 · N')%UT /\
     ε A' = (ε X2 [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using ,)


edestruct erasure_equality2 as (L&HL).
12 subgoals, subgoal 1 (ID 4235)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  ============================
   ?4220 ⊢ ?4227 : ?4221 = ?4222

subgoal 2 (ID 4237) is:
 ?4220 ⊢ ?4223 : ?4225
subgoal 3 (ID 4239) is:
 ?4220 ⊢ ?4224 : ?4226
subgoal 4 (ID 4241) is:
 ε ?4221 = ε ?4223
subgoal 5 (ID 4243) is:
 ε ?4222 = ε ?4224
subgoal 6 (ID 4247) is:
 exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (ε M0 · N)%UT /\
   ε N'0 = (ε N0 · N')%UT /\
   ε A' = (ε X2 [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
subgoal 7 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 8 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 10 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 11 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 12 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 open, ?4221 open, ?4222 open, ?4223 open, ?4224 open, ?4225 open, ?4226 open, ?4227 open,)

eexact HMN.
11 subgoals, subgoal 1 (ID 4237)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  ============================
   Γ0 ⊢ ?4223 : ?4225

subgoal 2 (ID 4239) is:
 Γ0 ⊢ ?4224 : ?4226
subgoal 3 (ID 4241) is:
 ε M0 = ε ?4223
subgoal 4 (ID 4243) is:
 ε N0 = ε ?4224
subgoal 5 (ID 4247) is:
 exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (ε M0 · N)%UT /\
   ε N'0 = (ε N0 · N')%UT /\
   ε A' = (ε X2 [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
subgoal 6 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 7 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 9 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 10 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 11 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 open, ?4224 open, ?4225 open, ?4226 open, ?4227 using ,)

eexact HT5.
10 subgoals, subgoal 1 (ID 4239)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  ============================
   Γ0 ⊢ ?4224 : ?4226

subgoal 2 (ID 4241) is:
 ε M0 = ε T0
subgoal 3 (ID 4243) is:
 ε N0 = ε ?4224
subgoal 4 (ID 4247) is:
 exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (ε M0 · N)%UT /\
   ε N'0 = (ε N0 · N')%UT /\
   ε A' = (ε X2 [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 open, ?4225 using , ?4226 open, ?4227 using ,)

eexact HT6.
9 subgoals, subgoal 1 (ID 4241)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  ============================
   ε M0 = ε T0

subgoal 2 (ID 4243) is:
 ε N0 = ε T1
subgoal 3 (ID 4247) is:
 exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (ε M0 · N)%UT /\
   ε N'0 = (ε N0 · N')%UT /\
   ε A' = (ε X2 [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using ,)

symmetry;assumption.
8 subgoals, subgoal 1 (ID 4243)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  ============================
   ε N0 = ε T1

subgoal 2 (ID 4247) is:
 exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
   εc Γ' = εc Γ0 /\
   ε M' = (ε M0 · N)%UT /\
   ε N'0 = (ε N0 · N')%UT /\
   ε A' = (ε X2 [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using ,)

symmetry;assumption.
7 subgoals, subgoal 1 (ID 4247)
  
  N : UTM.Term
  N' : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  t0 : εc Γ0 ⊢e N = N' : ε X1
  H0 : exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = N /\
         ε N'0 = N' /\
         ε A' = ε X1 /\
         (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  ============================
   exists (Γ' : Env) (H : Prf) (M' N'0 A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · N)%UT /\
     ε N'0 = (ε N0 · N')%UT /\
     ε A' = (ε X2 [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N'0 : A') /\ Γ' ⊢ H : M' = N'0

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using ,)


destruct_typ_equiv H0 Γ0 X1.
7 subgoals, subgoal 1 (ID 4525)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · ε T)%UT /\
     ε N' = (ε N0 · ε TT)%UT /\
     ε A' = (ε X2 [ ← ε T])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using ,)


edestruct equality_subst as (K&HK); [eexact H2|eexact H|eassumption..|].
7 subgoals, subgoal 1 (ID 4551)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = (ε M0 · ε T)%UT /\
     ε N' = (ε N0 · ε TT)%UT /\
     ε A' = (ε X2 [ ← ε T])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using ,)


eexists Γ0,_,(T0·T),((T1·TT)∽_),(X2 [ T]);simpl;rewrite erasure_subst;rewrite eqT;rewrite eqT1;intuition.
9 subgoals, subgoal 1 (ID 4582)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ T0 · T : X2 [ ← T]

subgoal 2 (ID 4585) is:
 Γ0 ⊢ (T1 · TT) ∽ ?4554 : X2 [ ← T]
subgoal 3 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open,)


eapply cApp;eassumption.
8 subgoals, subgoal 1 (ID 4585)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ (T1 · TT) ∽ ?4554 : X2 [ ← T]

subgoal 2 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open, ?4737 using ,)


eapply cConv with (s:=s1).
10 subgoals, subgoal 1 (ID 4741)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ T1 · TT : ?4740

subgoal 2 (ID 4742) is:
 Γ0 ⊢ X2 [ ← T] : !s1
subgoal 3 (ID 4743) is:
 Γ0 ⊢ ?4554 : ?4740 = X2 [ ← T]
subgoal 4 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open, ?4737 using , ?4740 open,)

econstructor;eassumption.
9 subgoals, subgoal 1 (ID 4742)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ X2 [ ← T] : !s1

subgoal 2 (ID 4743) is:
 Γ0 ⊢ ?4554 : X2 [ ← TT] = X2 [ ← T]
subgoal 3 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open, ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using ,)


change (!s1) with (!s1 [ T]);eapply substitution;try eassumption.
10 subgoals, subgoal 1 (ID 4775)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   sub_in_env Γ0 T X1 0 (X1 :: Γ0) Γ0

subgoal 2 (ID 4776) is:
 X1 :: Γ0 ⊣
subgoal 3 (ID 4743) is:
 Γ0 ⊢ ?4554 : X2 [ ← TT] = X2 [ ← T]
subgoal 4 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 5 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 6 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 8 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 9 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 10 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open, ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using ,)


econstructor.
9 subgoals, subgoal 1 (ID 4776)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   X1 :: Γ0 ⊣

subgoal 2 (ID 4743) is:
 Γ0 ⊢ ?4554 : X2 [ ← TT] = X2 [ ← T]
subgoal 3 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open, ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using ,)

econstructor;eassumption.
8 subgoals, subgoal 1 (ID 4743)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ ?4554 : X2 [ ← TT] = X2 [ ← T]

subgoal 2 (ID 4586) is:
 Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ ?4554
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 open, ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using ,)

eapply cSym;eassumption.
7 subgoals, subgoal 1 (ID 4586)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ ?4553 : T0 · T = (T1 · TT) ∽ K †

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 open, ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using ,)


eapply cTrans with (T1 · TT).
8 subgoals, subgoal 1 (ID 4786)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ ?4784 : T0 · T = T1 · TT

subgoal 2 (ID 4787) is:
 Γ0 ⊢ ?4785 : T1 · TT = (T1 · TT) ∽ K †
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 open, ?4785 open,)


eapply cAppEq;eassumption.
7 subgoals, subgoal 1 (ID 4787)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ ?4785 : T1 · TT = (T1 · TT) ∽ K †

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 open, ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using ,)


eapply cIota with (s:=s1).
9 subgoals, subgoal 1 (ID 4802)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ T1 · TT : ?4800

subgoal 2 (ID 4803) is:
 Γ0 ⊢ ?4801 : !s1
subgoal 3 (ID 4804) is:
 Γ0 ⊢ K † : ?4800 = ?4801
subgoal 4 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 5 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 7 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 8 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 9 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 open, ?4801 open,)

econstructor;eassumption.
8 subgoals, subgoal 1 (ID 4803)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ ?4801 : !s1

subgoal 2 (ID 4804) is:
 Γ0 ⊢ K † : X2 [ ← TT] = ?4801
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 open, ?4810 using , ?4811 using ,)

Focus 2.
1 focused subgoals (unfocused: 7)
, subgoal 1 (ID 4804)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ K † : X2 [ ← TT] = ?4801

(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 open, ?4810 using , ?4811 using ,)

econstructor;eassumption.
7 subgoals, subgoal 1 (ID 4803)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ X2 [ ← T] : !s1

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using ,)


change (!s1) with (!s1 [ T]).
7 subgoals, subgoal 1 (ID 4818)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   Γ0 ⊢ X2 [ ← T] : !s1 [ ← T]

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using ,)

eapply substitution;try eassumption.
8 subgoals, subgoal 1 (ID 4839)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   sub_in_env Γ0 T X1 0 (X1 :: Γ0) Γ0

subgoal 2 (ID 4840) is:
 X1 :: Γ0 ⊣
subgoal 3 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 4 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 6 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 7 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 8 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using ,)


econstructor.
7 subgoals, subgoal 1 (ID 4840)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  X1 : Term
  X2 : Term
  HeqX : Π (X1), X2 = erasure_outer A0
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  s : Sorts
  Htp : Γ0 ⊢ A0 : !s
  s0 : Sorts
  s1 : Sorts
  s2 : Sorts
  H1 : Γ0 ⊢ X1 : !s0
  H2 : X1 :: Γ0 ⊢ X2 : !s1
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε X1
  eqA : (Π (ε X1), ε X2)%UT = (Π (ε X1), ε X2)%UT
  t : εc Γ0 ⊢e ε M0 = ε N0 : (Π (ε X1), ε X2)%UT
  Hetp : Γ0 ⊢ Π (X1), X2 : !s2
  T0 : Term
  eqT : ε T0 = ε M0
  HT5 : Γ0 ⊢ T0 : Π (X1), X2
  T1 : Term
  eqT1 : ε T1 = ε N0
  HT6 : Γ0 ⊢ T1 : Π (X1), X2
  L : Prf
  HL : Γ0 ⊢ L : T0 = T1
  T : Term
  HT : Γ0 ⊢ T : X1
  TT : Term
  HHT : Γ0 ⊢ TT : X1
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε T = ε TT : ε X1
  K : Prf
  HK : Γ0 ⊢ K : X2 [ ← T] = X2 [ ← TT]
  ============================
   X1 :: Γ0 ⊣

subgoal 2 (ID 156) is:
 exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = N /\
   ε N' = M /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'
subgoal 3 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 5 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 6 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 7 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using ,)

econstructor;eassumption.
6 subgoals, subgoal 1 (ID 156)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  A : UTM.Term
  t : Γ ⊢e M = N : A
  H : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
        εc Γ' = Γ /\
        ε M' = M /\
        ε N' = N /\
        ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = N /\
     ε N' = M /\
     ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 5 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 6 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using ,)


destruct_typ_equiv H True True.
6 subgoals, subgoal 1 (ID 4909)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  t : εc Γ0 ⊢e ε M0 = ε N0 : ε A0
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ε N0 /\
     ε N' = ε M0 /\
     ε A' = ε A0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 5 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 6 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using ,)

do 5 econstructor.
6 subgoals, subgoal 1 (ID 4924)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  t : εc Γ0 ⊢e ε M0 = ε N0 : ε A0
  ============================
   εc ?4911 = εc Γ0 /\
   ε ?4917 = ε N0 /\
   ε ?4920 = ε M0 /\
   ε ?4923 = ε A0 /\
   (?4911 ⊢ ?4917 : ?4923) /\
   (?4911 ⊢ ?4920 : ?4923) /\ ?4911 ⊢ ?4914 : ?4917 = ?4920

subgoal 2 (ID 165) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = P /\
   ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 4 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 5 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 6 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 open, ?4914 open, ?4917 open, ?4920 open, ?4923 open,)

intuition; eauto.
5 subgoals, subgoal 1 (ID 165)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  P : UTM.Term
  A : UTM.Term
  t : Γ ⊢e M = N : A
  H : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
        εc Γ' = Γ /\
        ε M' = M /\
        ε N' = N /\
        ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  t0 : Γ ⊢e N = P : A
  H0 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
         εc Γ' = Γ /\
         ε M' = N /\
         ε N' = P /\
         ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = M /\
     ε N' = P /\
     ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using ,)


destruct_typ_equiv H True True.
5 subgoals, subgoal 1 (ID 5066)
  
  P : UTM.Term
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  t0 : εc Γ0 ⊢e ε N0 = P : ε A0
  H0 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = ε N0 /\
         ε N' = P /\
         ε A' = ε A0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  t : εc Γ0 ⊢e ε M0 = ε N0 : ε A0
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ε M0 /\
     ε N' = P /\
     ε A' = ε A0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using ,)


destruct_typ_equiv H0 Γ0 A0.
5 subgoals, subgoal 1 (ID 5339)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  HH0 : Prf
  A : Term
  eqA : ε A = ε A0
  t : εc Γ0 ⊢e ε M0 = ε N0 : ε A0
  T : Term
  eqC : ε T = ε N0
  HT : Γ0 ⊢ T : A0
  TT : Term
  HHT : Γ0 ⊢ TT : A0
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε N0 = ε TT : ε A0
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ε M0 /\
     ε N' = ε TT /\
     ε A' = ε A0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using ,)


eapply erasure_injectivity_term in eqC as (?&?);[|eassumption..].
5 subgoals, subgoal 1 (ID 5351)
  
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A0 : Term
  HM : Γ0 ⊢ M0 : A0
  HN : Γ0 ⊢ N0 : A0
  HMN : Γ0 ⊢ HH : M0 = N0
  HH0 : Prf
  A : Term
  eqA : ε A = ε A0
  t : εc Γ0 ⊢e ε M0 = ε N0 : ε A0
  T : Term
  HT : Γ0 ⊢ T : A0
  TT : Term
  HHT : Γ0 ⊢ TT : A0
  x : Prf
  H : Γ0 ⊢ x : T = TT
  t0 : εc Γ0 ⊢e ε N0 = ε TT : ε A0
  x0 : Prf
  H0 : Γ0 ⊢ x0 : T = N0
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ε M0 /\
     ε N' = ε TT /\
     ε A' = ε A0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 175) is:
 exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = M /\
   ε N' = N /\
   ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'
subgoal 3 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using ,)


do 5 econstructor; intuition; eauto.
4 subgoals, subgoal 1 (ID 175)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  A : UTM.Term
  B : UTM.Term
  s : Sorts
  t : Γ ⊢e A = B : !s%UT
  H : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
        εc Γ' = Γ /\
        ε M' = A /\
        ε N' = B /\
        ε A' = !s%UT /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  t0 : Γ ⊢e M = N : A
  H0 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
         εc Γ' = Γ /\
         ε M' = M /\
         ε N' = N /\
         ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (H1 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = M /\
     ε N' = N /\
     ε A' = B /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H1 : M' = N'

subgoal 2 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using ,)


destruct_typ_equiv H True !s.
4 subgoals, subgoal 1 (ID 6419)
  
  M : UTM.Term
  N : UTM.Term
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  t0 : εc Γ0 ⊢e M = N : ε T
  H0 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
         εc Γ' = εc Γ0 /\
         ε M' = M /\
         ε N' = N /\
         ε A' = ε T /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = M /\
     ε N' = N /\
     ε A' = ε S /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using ,)


destruct_typ_equiv H0 Γ0 T.
4 subgoals, subgoal 1 (ID 6693)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : Γ0 ⊢ T0 : T
  TT : Term
  HHT : Γ0 ⊢ TT : T
  x : Prf
  H : Γ0 ⊢ x : T0 = TT
  t0 : εc Γ0 ⊢e ε T0 = ε TT : ε T
  ============================
   exists (Γ' : Env) (H0 : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ε T0 /\
     ε N' = ε TT /\
     ε A' = ε S /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H0 : M' = N'

subgoal 2 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using ,)


eexists Γ0,_,(T0_),(TT_),S;intuition;[eapply cConv;eassumption..|].
4 subgoals, subgoal 1 (ID 6725)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : Γ0 ⊢ T0 : T
  TT : Term
  HHT : Γ0 ⊢ TT : T
  x : Prf
  H : Γ0 ⊢ x : T0 = TT
  t0 : εc Γ0 ⊢e ε T0 = ε TT : ε T
  ============================
   Γ0 ⊢ ?6695 : T0 ∽ hT = TT ∽ hT

subgoal 2 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 open, ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using ,)


eapply cTrans.
5 subgoals, subgoal 1 (ID 6832)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : Γ0 ⊢ T0 : T
  TT : Term
  HHT : Γ0 ⊢ TT : T
  x : Prf
  H : Γ0 ⊢ x : T0 = TT
  t0 : εc Γ0 ⊢e ε T0 = ε TT : ε T
  ============================
   Γ0 ⊢ ?6829 : T0 ∽ hT = ?6831

subgoal 2 (ID 6833) is:
 Γ0 ⊢ ?6830 : ?6831 = TT ∽ hT
subgoal 3 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 open, ?6830 open, ?6831 open,)

eapply cSym;eapply cIota;try eassumption.
4 subgoals, subgoal 1 (ID 6833)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : Γ0 ⊢ T0 : T
  TT : Term
  HHT : Γ0 ⊢ TT : T
  x : Prf
  H : Γ0 ⊢ x : T0 = TT
  t0 : εc Γ0 ⊢e ε T0 = ε TT : ε T
  ============================
   Γ0 ⊢ ?6830 : T0 = TT ∽ hT

subgoal 2 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 open, ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using ,)


eapply cTrans.
5 subgoals, subgoal 1 (ID 6845)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : Γ0 ⊢ T0 : T
  TT : Term
  HHT : Γ0 ⊢ TT : T
  x : Prf
  H : Γ0 ⊢ x : T0 = TT
  t0 : εc Γ0 ⊢e ε T0 = ε TT : ε T
  ============================
   Γ0 ⊢ ?6842 : T0 = ?6844

subgoal 2 (ID 6846) is:
 Γ0 ⊢ ?6843 : ?6844 = TT ∽ hT
subgoal 3 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 open, ?6843 open, ?6844 open,)

eassumption.
4 subgoals, subgoal 1 (ID 6846)
  
  s : Sorts
  Γ0 : Env
  HH : Prf
  A0 : Term
  eqA : ε A0 = !s%UT
  T : Term
  S : Term
  HT0 : Γ0 ⊢ T : !s
  HS : Γ0 ⊢ S : !s
  hT : Prf
  HT : Γ0 ⊢ hT : T = S
  HH0 : Prf
  A : Term
  eqA0 : ε A = ε T
  t : εc Γ0 ⊢e ε T = ε S : !s%UT
  T0 : Term
  HT1 : Γ0 ⊢ T0 : T
  TT : Term
  HHT : Γ0 ⊢ TT : T
  x : Prf
  H : Γ0 ⊢ x : T0 = TT
  t0 : εc Γ0 ⊢e ε T0 = ε TT : ε T
  ============================
   Γ0 ⊢ ?6843 : TT = TT ∽ hT

subgoal 2 (ID 192) is:
 exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
   εc Γ' = Γ /\
   ε M' = ((λ [A], M) · N)%UT /\
   ε N' = (M [ ← N])%UT /\
   ε A' = (B [ ← N])%UT /\
   (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 open, ?6844 using ,)

eapply cIota;try eassumption.
3 subgoals, subgoal 1 (ID 192)
  
  Γ : UEM.Env
  A : UTM.Term
  B : UTM.Term
  M : UTM.Term
  N : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  t0 : Γ ⊢e A : !s%UT
  H : exists (Γ' : Env) (M' N' : Term),
        εc Γ' = Γ /\ ε M' = A /\ ε N' = !s%UT /\ Γ' ⊢ M' : N'
  t1 : A :: Γ ⊢e B : !t%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = A :: Γ /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  t2 : A :: Γ ⊢e M : B
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = A :: Γ /\ ε M' = M /\ ε N' = B /\ Γ' ⊢ M' : N'
  t3 : Γ ⊢e N : A
  H2 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = Γ /\ ε M' = N /\ ε N' = A /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (H3 : Prf) (M' N' A' : Term),
     εc Γ' = Γ /\
     ε M' = ((λ [A], M) · N)%UT /\
     ε N' = (M [ ← N])%UT /\
     ε A' = (B [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H3 : M' = N'

subgoal 2 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 3 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using ,)


destruct_typ_equiv H True !s.
3 subgoals, subgoal 1 (ID 6935)
  
  B : UTM.Term
  M : UTM.Term
  N : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  t1 : ε T :: εc Γ0 ⊢e B : !t%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  t2 : ε T :: εc Γ0 ⊢e M : B
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = M /\ ε N' = B /\ Γ' ⊢ M' : N'
  t3 : εc Γ0 ⊢e N : ε T
  H2 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = εc Γ0 /\ ε M' = N /\ ε N' = ε T /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ((λ [ε T], M) · N)%UT /\
     ε N' = (M [ ← N])%UT /\
     ε A' = (B [ ← N])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 3 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using ,)


destruct_typ_equiv H2 Γ0 T.
3 subgoals, subgoal 1 (ID 7058)
  
  B : UTM.Term
  M : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  t1 : ε T :: εc Γ0 ⊢e B : !t%UT
  H0 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = B /\ ε N' = !t%UT /\ Γ' ⊢ M' : N'
  t2 : ε T :: εc Γ0 ⊢e M : B
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = M /\ ε N' = B /\ Γ' ⊢ M' : N'
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ((λ [ε T], M) · ε T0)%UT /\
     ε N' = (M [ ← ε T0])%UT /\
     ε A' = (B [ ← ε T0])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 3 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using ,)


destruct_typ_equiv H0 (T::Γ0) !t.
3 subgoals, subgoal 1 (ID 7189)
  
  M : UTM.Term
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  t2 : ε T :: εc Γ0 ⊢e M : ε T1
  H1 : exists (Γ' : Env) (M' N' : Term),
         εc Γ' = ε T :: εc Γ0 /\ ε M' = M /\ ε N' = ε T1 /\ Γ' ⊢ M' : N'
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ((λ [ε T], M) · ε T0)%UT /\
     ε N' = (M [ ← ε T0])%UT /\
     ε A' = (ε T1 [ ← ε T0])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 3 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using ,)


destruct_typ_equiv H1 (T::Γ0) T1.
3 subgoals, subgoal 1 (ID 7313)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  T2 : Term
  HT2 : T :: Γ0 ⊢ T2 : T1
  t2 : ε T :: εc Γ0 ⊢e ε T2 : ε T1
  ============================
   exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
     εc Γ' = εc Γ0 /\
     ε M' = ((λ [ε T], ε T2) · ε T0)%UT /\
     ε N' = (ε T2 [ ← ε T0])%UT /\
     ε A' = (ε T1 [ ← ε T0])%UT /\
     (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'

subgoal 2 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 3 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using ,)


eexists Γ0,_,((λ [T], T2) · T0),(T2 [ T0]),(T1 [ T0]);intuition;try eapply erasure_subst.
5 subgoals, subgoal 1 (ID 7339)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  T2 : Term
  HT2 : T :: Γ0 ⊢ T2 : T1
  t2 : ε T :: εc Γ0 ⊢e ε T2 : ε T1
  ============================
   Γ0 ⊢ (λ [T], T2) · T0 : T1 [ ← T0]

subgoal 2 (ID 7342) is:
 Γ0 ⊢ T2 [ ← T0] : T1 [ ← T0]
subgoal 3 (ID 7343) is:
 Γ0 ⊢ ?7315 : (λ [T], T2) · T0 = T2 [ ← T0]
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 open,)


econstructor;[econstructor|];eassumption.
4 subgoals, subgoal 1 (ID 7342)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  T2 : Term
  HT2 : T :: Γ0 ⊢ T2 : T1
  t2 : ε T :: εc Γ0 ⊢e ε T2 : ε T1
  ============================
   Γ0 ⊢ T2 [ ← T0] : T1 [ ← T0]

subgoal 2 (ID 7343) is:
 Γ0 ⊢ ?7315 : (λ [T], T2) · T0 = T2 [ ← T0]
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 open, ?7467 using , ?7474 using , ?7475 using , ?7476 using ,)


eapply substitution;try eassumption.
5 subgoals, subgoal 1 (ID 7501)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  T2 : Term
  HT2 : T :: Γ0 ⊢ T2 : T1
  t2 : ε T :: εc Γ0 ⊢e ε T2 : ε T1
  ============================
   sub_in_env Γ0 T0 T 0 (T :: Γ0) Γ0

subgoal 2 (ID 7502) is:
 T :: Γ0 ⊣
subgoal 3 (ID 7343) is:
 Γ0 ⊢ ?7315 : (λ [T], T2) · T0 = T2 [ ← T0]
subgoal 4 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 5 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 open, ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using ,)

econstructor.
4 subgoals, subgoal 1 (ID 7502)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  T2 : Term
  HT2 : T :: Γ0 ⊢ T2 : T1
  t2 : ε T :: εc Γ0 ⊢e ε T2 : ε T1
  ============================
   T :: Γ0 ⊣

subgoal 2 (ID 7343) is:
 Γ0 ⊢ ?7315 : (λ [T], T2) · T0 = T2 [ ← T0]
subgoal 3 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 4 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 open, ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using ,)

econstructor;eassumption.
3 subgoals, subgoal 1 (ID 7343)
  
  s : Sorts
  t : Sorts
  u : Sorts
  r : Rel s t u
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t0 : εc Γ0 ⊢e ε T : !s%UT
  T1 : Term
  T0 : Term
  HT0 : Γ0 ⊢ T0 : T
  t3 : εc Γ0 ⊢e ε T0 : ε T
  HT1 : T :: Γ0 ⊢ T1 : !t
  t1 : ε T :: εc Γ0 ⊢e ε T1 : !t%UT
  T2 : Term
  HT2 : T :: Γ0 ⊢ T2 : T1
  t2 : ε T :: εc Γ0 ⊢e ε T2 : ε T1
  ============================
   Γ0 ⊢ ?7315 : (λ [T], T2) · T0 = T2 [ ← T0]

subgoal 2 (ID 42) is:
 exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣
subgoal 3 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 open, ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using , ?7506 using ,)


eapply cBeta;eassumption.
2 subgoals, subgoal 1 (ID 42)
  
  ============================
   exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣

subgoal 2 (ID 197) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 using , ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using , ?7506 using , ?7508 using , ?7509 using , ?7510 using , ?7511 using ,)


exists nil;intuition.
1 subgoals, subgoal 1 (ID 197)
  
  Γ : UEM.Env
  A : UTM.Term
  s : Sorts
  t : Γ ⊢e A : !s%UT
  H : exists (Γ' : Env) (M' N' : Term),
        εc Γ' = Γ /\ ε M' = A /\ ε N' = !s%UT /\ Γ' ⊢ M' : N'
  ============================
   exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣

(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 using , ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using , ?7506 using , ?7508 using , ?7509 using , ?7510 using , ?7511 using ,)


destruct_typ_equiv H True !s.
1 subgoals, subgoal 1 (ID 7588)
  
  s : Sorts
  Γ0 : Env
  T : Term
  HT : Γ0 ⊢ T : !s
  t : εc Γ0 ⊢e ε T : !s%UT
  ============================
   exists Γ' : Env, εc Γ' = ε T :: εc Γ0 /\ Γ' ⊣

(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 using , ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using , ?7506 using , ?7508 using , ?7509 using , ?7510 using , ?7511 using , ?7572 using ,)


exists (T::Γ0);intuition;econstructor;eassumption.
No more subgoals.
(dependent evars: ?356 using , ?451 using , ?487 using , ?529 using , ?530 using , ?588 using , ?694 using , ?730 using , ?815 using , ?816 using , ?857 using , ?901 using , ?902 using , ?903 using , ?1230 using , ?1314 using , ?1315 using , ?1356 using , ?1412 using , ?1516 using , ?1620 using , ?1621 using , ?1662 using , ?1707 using , ?1708 using , ?1720 using , ?1721 using , ?1835 using ?1837 , ?1837 using , ?1866 using , ?1867 using , ?1990 using , ?2095 using , ?2201 using , ?2258 using , ?2319 using , ?2396 using , ?2397 using , ?2398 using , ?2399 using , ?2400 using ?2414 ?2413 , ?2401 using , ?2412 using , ?2413 using , ?2414 using , ?2420 using , ?2421 using ?2442 ?2440 ?2439 , ?2422 using , ?2423 using , ?2424 using ?2441 ?2440 ?2439 , ?2439 using , ?2440 using , ?2441 using , ?2442 using , ?2443 using , ?2444 using , ?2445 using , ?2446 using , ?2447 using ?2458 ?2457 , ?2448 using , ?2456 using , ?2457 using ?2440 , ?2458 using , ?2462 using , ?2490 using , ?2519 using , ?2520 using ?2732 ?2731 ?2730 , ?2691 using , ?2692 using , ?2696 using , ?2697 using , ?2730 using , ?2731 using , ?2732 using ?2748 ?2747 , ?2733 using , ?2734 using , ?2735 using , ?2736 using , ?2737 using , ?2738 using , ?2747 using , ?2748 using , ?2749 using , ?2853 using , ?2965 using , ?3001 using , ?3091 using , ?3092 using , ?3154 using , ?3219 using , ?3293 using , ?3294 using , ?3295 using , ?3296 using , ?3297 using ?3311 ?3310 , ?3298 using , ?3309 using , ?3310 using , ?3311 using , ?3320 using , ?3321 using , ?3322 using , ?3323 using , ?3324 using ?3338 ?3337 , ?3325 using , ?3336 using , ?3337 using , ?3338 using , ?3344 using , ?3345 using ?3366 ?3364 ?3363 , ?3346 using , ?3347 using , ?3348 using ?3365 ?3364 ?3363 , ?3363 using , ?3364 using , ?3365 using , ?3366 using , ?3367 using , ?3368 using , ?3369 using , ?3370 using , ?3371 using ?3382 ?3381 , ?3372 using , ?3380 using , ?3381 using ?3364 , ?3382 using , ?3386 using , ?3414 using , ?3450 using , ?3451 using , ?3452 using , ?3453 using , ?3454 using , ?3455 using , ?3500 using , ?3508 using , ?3509 using ?3754 ?3753 , ?3510 using , ?3701 using , ?3702 using , ?3703 using , ?3727 using ?3737 ?3736 , ?3728 using , ?3736 using , ?3737 using , ?3738 using , ?3739 using , ?3740 using , ?3748 using , ?3749 using , ?3753 using ?3787 ?3786 ?3785 , ?3754 using , ?3755 using , ?3758 using ?3769 ?3768 , ?3759 using , ?3760 using , ?3768 using , ?3769 using , ?3770 using , ?3771 using , ?3772 using , ?3780 using , ?3781 using , ?3785 using , ?3786 using , ?3787 using ?3807 ?3806 , ?3788 using , ?3789 using , ?3790 using , ?3791 using , ?3792 using , ?3793 using , ?3794 using , ?3795 using , ?3806 using , ?3807 using , ?3808 using , ?4164 using , ?4211 using , ?4220 using , ?4221 using , ?4222 using , ?4223 using , ?4224 using , ?4225 using , ?4226 using , ?4227 using , ?4327 using , ?4328 using , ?4390 using , ?4455 using , ?4528 using , ?4529 using , ?4530 using , ?4531 using , ?4532 using , ?4533 using , ?4534 using , ?4552 using , ?4553 using ?4785 ?4784 , ?4554 using ?4782 , ?4737 using , ?4740 using ?4749 , ?4749 using , ?4750 using , ?4763 using ?4770 , ?4764 using ?4772 , ?4765 using ?4773 , ?4770 using , ?4772 using , ?4773 using , ?4780 using , ?4782 using , ?4784 using ?4789 ?4788 , ?4785 using , ?4788 using , ?4789 using , ?4790 using , ?4791 using , ?4792 using , ?4793 using , ?4800 using ?4810 , ?4801 using , ?4810 using , ?4811 using , ?4827 using ?4834 , ?4828 using ?4836 , ?4829 using ?4837 , ?4834 using , ?4836 using , ?4837 using , ?4844 using , ?4911 using , ?4914 using ?4967 , ?4917 using , ?4920 using , ?4923 using , ?4967 using , ?5142 using , ?5143 using , ?5207 using , ?5274 using , ?5340 using ?5348 , ?5341 using , ?5342 using , ?5348 using , ?5353 using , ?5356 using ?5426 ?5425 , ?5359 using , ?5362 using , ?5365 using , ?5425 using , ?5426 using ?6194 , ?5427 using , ?6194 using ?6208 ?6207 , ?6207 using ?6251 , ?6208 using , ?6209 using , ?6251 using , ?6393 using , ?6495 using , ?6496 using , ?6558 using , ?6623 using , ?6694 using , ?6695 using ?6830 ?6829 , ?6696 using , ?6697 using , ?6819 using , ?6820 using , ?6824 using , ?6825 using , ?6829 using ?6834 , ?6830 using ?6843 ?6842 , ?6831 using , ?6834 using , ?6836 using , ?6837 using , ?6838 using , ?6842 using , ?6843 using , ?6844 using , ?6847 using , ?6848 using , ?6849 using , ?6907 using , ?7006 using , ?7007 using , ?7048 using , ?7140 using , ?7176 using , ?7261 using , ?7262 using , ?7303 using , ?7314 using , ?7315 using , ?7467 using , ?7474 using , ?7475 using , ?7476 using , ?7489 using ?7496 , ?7490 using ?7498 , ?7491 using ?7499 , ?7496 using , ?7498 using , ?7499 using , ?7506 using , ?7508 using , ?7509 using , ?7510 using , ?7511 using , ?7572 using , ?7604 using ,)


Qed.
PTSeq2PTSF is defined



Theorem PTSl2PTSF : (forall Γ M N,(Γ ⊢' M : N)%UT -> exists Γ' M' N', εc Γ'=Γ/\ε M'=M/\ε N'=N/\Γ' M' : N')/\
                    (forall Γ M N,(exists A B,(Γ ⊢' M : A)%UT/\(Γ ⊢' N : B)%UT/\ M N)-> exists Γ' M' N', εc Γ'=Γ/\ε M'=M/\ε N'=N/\Γ' M' = N')/\
                    (forall Γ ,(exists M N,(Γ ⊢' M : N)%UT) -> exists Γ' , εc Γ'=Γ/\ Γ' ).
1 subgoals, subgoal 1 (ID 7632)
  
  ============================
   (forall (Γ : UEM.Env) (M N : UTM.Term),
    (Γ ⊢' M : N)%UT ->
    exists (Γ' : Env) (M' N' : Term),
      εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N') /\
   (forall (Γ : UEM.Env) (M N : UTM.Term),
    (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
    exists (Γ' : Env) (M' N' : Term),
      εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N') /\
   (forall Γ : UEM.Env,
    (exists M N : UTM.Term, (Γ ⊢' M : N)%UT) ->
    exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣)

(dependent evars:)


repeat split;intros.
3 subgoals, subgoal 1 (ID 7655)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  H : (Γ ⊢' M : N)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N'

subgoal 2 (ID 7659) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


apply PTS.legacy2typ in H as (?&?).
3 subgoals, subgoal 1 (ID 7667)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  H : (Γ ⊢ M : N)%UT
  H0 : (Γ ⊣)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N'

subgoal 2 (ID 7659) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)

apply PTS_equiv_PTSe in H.
3 subgoals, subgoal 1 (ID 7691)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  H : Γ ⊢e M : N
  H0 : (Γ ⊣)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N'

subgoal 2 (ID 7659) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)

apply PTSeq2PTSF in H.
3 subgoals, subgoal 1 (ID 7706)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  H : exists (Γ' : Env) (M' N' : Term),
        εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N'
  H0 : (Γ ⊣)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N'

subgoal 2 (ID 7659) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


assumption.
2 subgoals, subgoal 1 (ID 7659)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  H : exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct H as (?&?&?&?&?).
2 subgoals, subgoal 1 (ID 7722)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H : (Γ ⊢' M : x)%UT
  H0 : (Γ ⊢' N : x0)%UT
  H1 : M ≡ N
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)

apply PTS.legacy2typ in H as (?&?);apply PTS.legacy2typ in H0 as (?&?).
2 subgoals, subgoal 1 (ID 7734)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct (Betac_confl _ _ H1) as (?&?&?).
2 subgoals, subgoal 1 (ID 7747)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


set (SubjectRed _ _ _ H _ H4);set (SubjectRed _ _ _ H0 _ H5).
2 subgoals, subgoal 1 (ID 7759)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct PTS_equiv_PTSe as (_&eq).
2 subgoals, subgoal 1 (ID 7767)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct (eq Γ M x1 x) as (_&eq2).
2 subgoals, subgoal 1 (ID 7775)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  eq2 : (Γ ⊢ M : x)%UT /\ (Γ ⊢ x1 : x)%UT /\ M ≡ x1 -> Γ ⊢e M = x1 : x
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct (eq Γ x1 N x0) as (_&eq3).
2 subgoals, subgoal 1 (ID 7783)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  eq2 : (Γ ⊢ M : x)%UT /\ (Γ ⊢ x1 : x)%UT /\ M ≡ x1 -> Γ ⊢e M = x1 : x
  eq3 : (Γ ⊢ x1 : x0)%UT /\ (Γ ⊢ N : x0)%UT /\ x1 ≡ N -> Γ ⊢e x1 = N : x0
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct PTSeq2PTSF as (_&eq2F&_).
2 subgoals, subgoal 1 (ID 7796)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  eq2 : (Γ ⊢ M : x)%UT /\ (Γ ⊢ x1 : x)%UT /\ M ≡ x1 -> Γ ⊢e M = x1 : x
  eq3 : (Γ ⊢ x1 : x0)%UT /\ (Γ ⊢ N : x0)%UT /\ x1 ≡ N -> Γ ⊢e x1 = N : x0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


apply eq2F in eq2;[|repeat split;try assumption; econstructor;assumption].
2 subgoals, subgoal 1 (ID 7798)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  eq2 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
          εc Γ' = Γ /\
          ε M' = M /\
          ε N' = x1 /\
          ε A' = x /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  eq3 : (Γ ⊢ x1 : x0)%UT /\ (Γ ⊢ N : x0)%UT /\ x1 ≡ N -> Γ ⊢e x1 = N : x0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


apply eq2F in eq3;[|repeat split;try assumption;apply Betac_sym;econstructor;assumption].
2 subgoals, subgoal 1 (ID 7809)
  
  Γ : UEM.Env
  M : UTM.Term
  N : UTM.Term
  x : UTM.Term
  x0 : UTM.Term
  H1 : M ≡ N
  H : (Γ ⊢ M : x)%UT
  H2 : (Γ ⊣)%UT
  H0 : (Γ ⊢ N : x0)%UT
  H3 : (Γ ⊣)%UT
  x1 : UTM.Term
  H4 : (M →→ x1)%UT
  H5 : (N →→ x1)%UT
  t := SubjectRed Γ M x H x1 H4 : (Γ ⊢ x1 : x)%UT
  t0 := SubjectRed Γ N x0 H0 x1 H5 : (Γ ⊢ x1 : x0)%UT
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  eq2 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
          εc Γ' = Γ /\
          ε M' = M /\
          ε N' = x1 /\
          ε A' = x /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  eq3 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
          εc Γ' = Γ /\
          ε M' = x1 /\
          ε N' = N /\
          ε A' = x0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct_typ_equiv eq2 True True.
2 subgoals, subgoal 1 (ID 7915)
  
  N : UTM.Term
  x0 : UTM.Term
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H5 : (N →→ ε N0)%UT
  H1 : ε M0 ≡ N
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H0 : (εc Γ0 ⊢ N : x0)%UT
  H3 : (εc Γ0 ⊣)%UT
  t0 := SubjectRed εc Γ0 N x0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : x0)%UT
  eq3 : exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
          εc Γ' = εc Γ0 /\
          ε M' = ε N0 /\
          ε N' = N /\
          ε A' = x0 /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = N /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct_typ_equiv eq3 True True.
2 subgoals, subgoal 1 (ID 7987)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


destruct context_conversion as (_&temp&_).
2 subgoals, subgoal 1 (ID 8000)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars:)


assert (Γ0) as Γ0wf;[eapply wf_typ;eassumption|].
2 subgoals, subgoal 1 (ID 8002)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using ,)


destruct (temp _ _ _ _ HMN0 Γ0 Γ0wf) as (hT&C&D&eqC2&eqD&HCD);[assumption|].
2 subgoals, subgoal 1 (ID 8035)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε C = ε M
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using ,)


rewrite eqM in eqC2;symmetry in eqC2.
2 subgoals, subgoal 1 (ID 8044)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using ,)


edestruct equality_typing as ((?&?)&_).
3 subgoals, subgoal 1 (ID 8056)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  ============================
   ?8049 ⊢ ?8050 : ?8051 = ?8052

subgoal 2 (ID 8065) is:
 exists (Γ' : Env) (M' N' : Term),
   εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 open, ?8050 open, ?8051 open, ?8052 open,)

eexact HCD.
2 subgoals, subgoal 1 (ID 8065)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using ,)


destruct (erasure_injectivity_term _ _ _ _ _ HN H6 eqC2).
2 subgoals, subgoal 1 (ID 8077)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   exists (Γ' : Env) (M' N' : Term),
     εc Γ' = εc Γ0 /\ ε M' = ε M0 /\ ε N' = ε N1 /\ Γ' ⊢ M' = N'

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using ,)


do 3 econstructor.
2 subgoals, subgoal 1 (ID 8086)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   εc ?8079 = εc Γ0 /\
   ε ?8082 = ε M0 /\ ε ?8085 = ε N1 /\ ?8079 ⊢ ?8082 = ?8085

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 open, ?8082 open, ?8085 open,)

do 3 split.
3 subgoals, subgoal 1 (ID 8096)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   ε ?8085 = ε N1

subgoal 2 (ID 8097) is:
 Γ0 ⊢ M0 = ?8085
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 open,)

eassumption.
2 subgoals, subgoal 1 (ID 8097)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   Γ0 ⊢ M0 = D

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using ,)


econstructor.
2 subgoals, subgoal 1 (ID 8100)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   Γ0 ⊢ ?8099 : M0 = D

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 open,)


eapply cTrans.
3 subgoals, subgoal 1 (ID 8104)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   Γ0 ⊢ ?8101 : M0 = ?8103

subgoal 2 (ID 8105) is:
 Γ0 ⊢ ?8102 : ?8103 = D
subgoal 3 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 open, ?8102 open, ?8103 open,)

eassumption.
2 subgoals, subgoal 1 (ID 8105)
  
  eq : forall (Γ : UEM.Env) (M N T : UTM.Term),
       Γ ⊢e M = N : T <-> (Γ ⊢ M : T)%UT /\ (Γ ⊢ N : T)%UT /\ M ≡ N
  Γ0 : Env
  HH : Prf
  M0 : Term
  N0 : Term
  A : Term
  HM : Γ0 ⊢ M0 : A
  HN : Γ0 ⊢ N0 : A
  HMN : Γ0 ⊢ HH : M0 = N0
  eq2F : forall (Γ : UEM.Env) (M N A : UTM.Term),
         Γ ⊢e M = N : A ->
         exists (Γ' : Env) (H : Prf) (M' N' A' : Term),
           εc Γ' = Γ /\
           ε M' = M /\
           ε N' = N /\
           ε A' = A /\ (Γ' ⊢ M' : A') /\ (Γ' ⊢ N' : A') /\ Γ' ⊢ H : M' = N'
  H4 : (ε M0 →→ ε N0)%UT
  H2 : (εc Γ0 ⊣)%UT
  H3 : (εc Γ0 ⊣)%UT
  Γ : Env
  HH0 : Prf
  M : Term
  N1 : Term
  A0 : Term
  eqΓ : εc Γ = εc Γ0
  eqM : ε M = ε N0
  HM0 : Γ ⊢ M : A0
  HN0 : Γ ⊢ N1 : A0
  HMN0 : Γ ⊢ HH0 : M = N1
  H : (εc Γ0 ⊢ ε M0 : ε A)%UT
  t := SubjectRed εc Γ0 ε M0 ε A H ε N0 H4 : (εc Γ0 ⊢ ε N0 : ε A)%UT
  H5 : (ε N1 →→ ε N0)%UT
  H1 : ε M0 ≡ ε N1
  H0 : (εc Γ0 ⊢ ε N1 : ε A0)%UT
  t0 := SubjectRed εc Γ0 ε N1 ε A0 H0 ε N0 H5 : (εc Γ0 ⊢ ε N0 : ε A0)%UT
  temp : forall (Γ : Env) (H : Prf) (A B : Term),
         Γ ⊢ H : A = B ->
         forall Δ : Env,
         Δ ⊣ ->
         εc Γ = εc Δ ->
         exists (H' : Prf) (A' B' : Term),
           ε A' = ε A /\ ε B' = ε B /\ Δ ⊢ H' : A' = B'
  Γ0wf : Γ0 ⊣
  hT : Prf
  C : Term
  D : Term
  eqC2 : ε N0 = ε C
  eqD : ε D = ε N1
  HCD : Γ0 ⊢ hT : C = D
  x : Term
  H6 : Γ0 ⊢ C : x
  x0 : Prf
  H7 : Γ0 ⊢ x0 : N0 = C
  ============================
   Γ0 ⊢ ?8102 : N0 = D

subgoal 2 (ID 7661) is:
 exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 open, ?8103 using ,)


eapply cTrans; eassumption.
1 subgoals, subgoal 1 (ID 7661)
  
  Γ : UEM.Env
  H : exists M N : UTM.Term, (Γ ⊢' M : N)%UT
  ============================
   exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣

(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using ,)


destruct H as (?&?&?).
1 subgoals, subgoal 1 (ID 8118)
  
  Γ : UEM.Env
  x : UTM.Term
  x0 : UTM.Term
  H : (Γ ⊢' x : x0)%UT
  ============================
   exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣

(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using ,)


apply PTS.legacy2typ in H as (?&?).
1 subgoals, subgoal 1 (ID 8124)
  
  Γ : UEM.Env
  x : UTM.Term
  x0 : UTM.Term
  H : (Γ ⊢ x : x0)%UT
  H0 : (Γ ⊣)%UT
  ============================
   exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣

(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using ,)

apply PTS_equiv_PTSe in H.
1 subgoals, subgoal 1 (ID 8148)
  
  Γ : UEM.Env
  x : UTM.Term
  x0 : UTM.Term
  H : Γ ⊢e x : x0
  H0 : (Γ ⊣)%UT
  ============================
   exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣

(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using ,)

apply PTSeq2PTSF in H as (?&?&?&?&?&?&?).
1 subgoals, subgoal 1 (ID 8187)
  
  Γ : UEM.Env
  x : UTM.Term
  x0 : UTM.Term
  H0 : (Γ ⊣)%UT
  x1 : Env
  x2 : Term
  x3 : Term
  H : εc x1 = Γ
  H1 : ε x2 = x
  H2 : ε x3 = x0
  H3 : x1 ⊢ x2 : x3
  ============================
   exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣

(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using ,)


subst;econstructor;repeat split.
1 subgoals, subgoal 1 (ID 8200)
  
  x1 : Env
  x2 : Term
  x3 : Term
  H3 : x1 ⊢ x2 : x3
  H0 : (εc x1 ⊣)%UT
  ============================
   x1 ⊣

(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using , ?8196 using ,)

eapply wf_typ;eassumption.
No more subgoals.
(dependent evars: ?8003 using , ?8004 using , ?8049 using , ?8050 using , ?8051 using , ?8052 using , ?8079 using , ?8082 using , ?8085 using , ?8099 using ?8102 ?8101 , ?8101 using , ?8102 using ?8107 ?8106 , ?8103 using , ?8106 using , ?8107 using , ?8108 using , ?8196 using , ?8202 using , ?8203 using ,)


Qed.
PTSl2PTSF is defined



Theorem PTSF2PTSl : (forall Γ M N,Γ M : N -> (εc Γ ⊢' ε M : ε N)%UT)/\
                    (forall Γ M N,Γ M = N -> (exists A B,(εc Γ ⊢' ε M : A)%UT/\(εc Γ ⊢' ε N : B)%UT/\ ε M ε N))/\
                    (forall Γ ,Γ -> (εc Γ ⊣')%UT).
1 subgoals, subgoal 1 (ID 8215)
  
  ============================
   (forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT) /\
   (forall (Γ : Env) (M N : Term),
    Γ ⊢ M = N ->
    exists A B : UTM.Term,
      (εc Γ ⊢' ε M : A)%UT /\ (εc Γ ⊢' ε N : B)%UT /\ ε M ≡ ε N) /\
   (forall Γ : Env, Γ ⊣ -> (εc Γ ⊣')%UT)

(dependent evars:)


repeat split;intros.
3 subgoals, subgoal 1 (ID 8230)
  
  Γ : Env
  M : Term
  N : Term
  H : Γ ⊢ M : N
  ============================
   (εc Γ ⊢' ε M : ε N)%UT

subgoal 2 (ID 8234) is:
 exists A B : UTM.Term,
   (εc Γ ⊢' ε M : A)%UT /\ (εc Γ ⊢' ε N : B)%UT /\ ε M ≡ ε N
subgoal 3 (ID 8236) is:
 (εc Γ ⊣')%UT
(dependent evars:)


apply PTS.typ2legacy;apply PTSF2PTS;assumption.
2 subgoals, subgoal 1 (ID 8234)
  
  Γ : Env
  M : Term
  N : Term
  H : Γ ⊢ M = N
  ============================
   exists A B : UTM.Term,
     (εc Γ ⊢' ε M : A)%UT /\ (εc Γ ⊢' ε N : B)%UT /\ ε M ≡ ε N

subgoal 2 (ID 8236) is:
 (εc Γ ⊣')%UT
(dependent evars:)


destruct H;edestruct equality_typing as ((?&?)&(?&?));[eexact H|].
2 subgoals, subgoal 1 (ID 8278)
  
  Γ : Env
  M : Term
  N : Term
  x : Prf
  H : Γ ⊢ x : M = N
  x0 : Term
  H0 : Γ ⊢ M : x0
  x1 : Term
  H1 : Γ ⊢ N : x1
  ============================
   exists A B : UTM.Term,
     (εc Γ ⊢' ε M : A)%UT /\ (εc Γ ⊢' ε N : B)%UT /\ ε M ≡ ε N

subgoal 2 (ID 8236) is:
 (εc Γ ⊣')%UT
(dependent evars: ?8259 using , ?8260 using , ?8261 using , ?8262 using ,)


do 2 econstructor;repeat split;try apply PTS.typ2legacy;try eapply PTSF2PTS;try eassumption.
1 subgoals, subgoal 1 (ID 8236)
  
  Γ : Env
  H : Γ ⊣
  ============================
   (εc Γ ⊣')%UT

(dependent evars: ?8259 using , ?8260 using , ?8261 using , ?8262 using , ?8280 using ?8316 , ?8283 using ?8328 , ?8316 using , ?8328 using , ?8337 using ?8340 , ?8338 using ?8341 , ?8340 using ?8343 , ?8341 using ?8344 , ?8343 using , ?8344 using ,)


apply PTS.typ2legacy;apply PTSF2PTS;assumption.
No more subgoals.
(dependent evars: ?8259 using , ?8260 using , ?8261 using , ?8262 using , ?8280 using ?8316 , ?8283 using ?8328 , ?8316 using , ?8328 using , ?8337 using ?8340 , ?8338 using ?8341 , ?8340 using ?8343 , ?8341 using ?8344 , ?8343 using , ?8344 using ,)


Qed.
PTSF2PTSl is defined



Theorem PTSlequivPTSF : (forall Γ M N,(Γ ⊢' M : N)%UT <-> exists Γ' M' N', εc Γ'=Γ/\ε M'=M/\ε N'=N/\Γ' M' : N')/\
                        (forall Γ M N,(exists A B,(Γ ⊢' M : A)%UT/\(Γ ⊢' N : B)%UT/\ M N)<-> exists Γ' M' N', εc Γ'=Γ/\ε M'=M/\ε N'=N/\Γ' M' = N')/\
                        (forall Γ ,(Γ ⊣')%UT <-> exists Γ' , εc Γ'=Γ/\ Γ' ).
1 subgoals, subgoal 1 (ID 8381)
  
  ============================
   (forall (Γ : UEM.Env) (M N : UTM.Term),
    (Γ ⊢' M : N)%UT <->
    (exists (Γ' : Env) (M' N' : Term),
       εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' : N')) /\
   (forall (Γ : UEM.Env) (M N : UTM.Term),
    (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) <->
    (exists (Γ' : Env) (M' N' : Term),
       εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N')) /\
   (forall Γ : UEM.Env, (Γ ⊣')%UT <-> (exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣))

(dependent evars:)


repeat split;intros;try (eapply PTSl2PTSF;eassumption);try (destruct H as (?&?&?&?&?&?&?);subst;eapply PTSF2PTSl;eassumption);
try (destruct H as (?&?&?);subst;eapply PTSF2PTSl;eassumption).
1 subgoals, subgoal 1 (ID 8416)
  
  Γ : UEM.Env
  H : (Γ ⊣')%UT
  ============================
   exists Γ' : Env, εc Γ' = Γ /\ Γ' ⊣

(dependent evars:)


destruct H.
2 subgoals, subgoal 1 (ID 8609)
  
  ============================
   exists Γ' : Env, εc Γ' = nil /\ Γ' ⊣

subgoal 2 (ID 8614) is:
 exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣
(dependent evars:)


exists nil;repeat split;constructor.
1 subgoals, subgoal 1 (ID 8614)
  
  Γ : UEM.Env
  A : UTM.Term
  s : Sorts
  H : (Γ ⊢' A : !s)%UT
  ============================
   exists Γ' : Env, εc Γ' = A :: Γ /\ Γ' ⊣

(dependent evars:)


apply PTSl2PTSF in H as (?&?&?&?&?&?&?);subst.
1 subgoals, subgoal 1 (ID 8667)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

(dependent evars:)


edestruct TypeCorrect as [(?&?)|(?&?)];[eexact H2| |].
2 subgoals, subgoal 1 (ID 8686)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  x2 : Sorts
  H : x1 = !x2
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

subgoal 2 (ID 8691) is:
 exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣
(dependent evars: ?8670 using , ?8671 using , ?8672 using ,)


subst;simpl in H1;injection H1;intros;subst.
2 subgoals, subgoal 1 (ID 8709)
  
  s : Sorts
  x : Env
  x0 : Term
  H1 : !s%UT = !s%UT
  H2 : x ⊢ x0 : !s
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

subgoal 2 (ID 8691) is:
 exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣
(dependent evars: ?8670 using , ?8671 using , ?8672 using ,)


exists (x0::x);repeat split;econstructor;eassumption.
1 subgoals, subgoal 1 (ID 8691)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  x2 : Sorts
  H : x ⊢ x1 : !x2
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

(dependent evars: ?8670 using , ?8671 using , ?8672 using , ?8719 using ,)


edestruct erasure_injectivity_term_sort;[eexact H|eexact H1|].
1 subgoals, subgoal 1 (ID 8737)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  x2 : Sorts
  H : x ⊢ x1 : !x2
  x3 : Prf
  H0 : x ⊢ x3 : x1 = !s
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

(dependent evars: ?8670 using , ?8671 using , ?8672 using , ?8719 using , ?8723 using , ?8724 using , ?8725 using , ?8726 using ,)


edestruct equality_typing as (_&?&?);[eexact H0|].
1 subgoals, subgoal 1 (ID 8756)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  x2 : Sorts
  H : x ⊢ x1 : !x2
  x3 : Prf
  H0 : x ⊢ x3 : x1 = !s
  x4 : Term
  H3 : x ⊢ !s : x4
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

(dependent evars: ?8670 using , ?8671 using , ?8672 using , ?8719 using , ?8723 using , ?8724 using , ?8725 using , ?8726 using , ?8740 using , ?8741 using , ?8742 using , ?8743 using ,)


edestruct gen_sort as (?&?&?);[eassumption| ].
1 subgoals, subgoal 1 (ID 8773)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  x2 : Sorts
  H : x ⊢ x1 : !x2
  x3 : Prf
  H0 : x ⊢ x3 : x1 = !s
  x4 : Term
  H3 : x ⊢ !s : x4
  x5 : Sorts
  H4 : x4 = !x5
  H5 : Ax s x5
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

(dependent evars: ?8670 using , ?8671 using , ?8672 using , ?8719 using , ?8723 using , ?8724 using , ?8725 using , ?8726 using , ?8740 using , ?8741 using , ?8742 using , ?8743 using , ?8759 using , ?8760 using , ?8761 using ,)

subst.
1 subgoals, subgoal 1 (ID 8778)
  
  s : Sorts
  x : Env
  x0 : Term
  x1 : Term
  H1 : ε x1 = !s%UT
  H2 : x ⊢ x0 : x1
  x2 : Sorts
  H : x ⊢ x1 : !x2
  x3 : Prf
  H0 : x ⊢ x3 : x1 = !s
  x5 : Sorts
  H5 : Ax s x5
  H3 : x ⊢ !s : !x5
  ============================
   exists Γ' : Env, εc Γ' = ε x0 :: εc x /\ Γ' ⊣

(dependent evars: ?8670 using , ?8671 using , ?8672 using , ?8719 using , ?8723 using , ?8724 using , ?8725 using , ?8726 using , ?8740 using , ?8741 using , ?8742 using , ?8743 using , ?8759 using , ?8760 using , ?8761 using ,)


eexists (x0_::x);repeat split;do 2 econstructor;try eassumption.
No more subgoals.
(dependent evars: ?8670 using , ?8671 using , ?8672 using , ?8719 using , ?8723 using , ?8724 using , ?8725 using , ?8726 using , ?8740 using , ?8741 using , ?8742 using , ?8743 using , ?8759 using , ?8760 using , ?8761 using , ?8780 using , ?8789 using , ?8797 using , ?8798 using ,)


Qed.
PTSlequivPTSF is defined



Theorem Prod_Injective : forall Γ A B A' B' H, Γ H : Π(A), B = Π(A'), B' -> exists H K, Γ H : A = A' /\ A::Γ K : B = (B'1#1)[←#0Hh1].
1 subgoals, subgoal 1 (ID 8812)
  
  ============================
   forall (Γ : Env) (A B A' B' : Term) (H : Prf),
   Γ ⊢ H : Π (A), B = Π (A'), B' ->
   exists H0 K : Prf,
     (Γ ⊢ H0 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H0 ↑h 1]

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 8819)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  ============================
   exists H1 K : Prf,
     (Γ ⊢ H1 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H1 ↑h 1]

(dependent evars:)


edestruct equality_typing as ((?&?)&(?&?));[eexact H0|].
1 subgoals, subgoal 1 (ID 8841)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x : Term
  H1 : Γ ⊢ Π (A), B : x
  x0 : Term
  H2 : Γ ⊢ Π (A'), B' : x0
  ============================
   exists H3 K : Prf,
     (Γ ⊢ H3 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H3 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using ,)


apply gen_pi in H1 as (?&?&?&?&?&?&?).
1 subgoals, subgoal 1 (ID 8867)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x : Term
  x0 : Term
  H2 : Γ ⊢ Π (A'), B' : x0
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H1 : x = !x3
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  ============================
   exists H6 K : Prf,
     (Γ ⊢ H6 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H6 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using ,)

apply gen_pi in H2 as (?&?&?&?&?&?&?);subst.
1 subgoals, subgoal 1 (ID 8895)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  ============================
   exists H1 K : Prf,
     (Γ ⊢ H1 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H1 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using ,)


destruct PTSF2PTSl as (Htyp&Heq&_).
1 subgoals, subgoal 1 (ID 8907)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  Heq : forall (Γ : Env) (M N : Term),
        Γ ⊢ M = N ->
        exists A B : UTM.Term,
          (εc Γ ⊢' ε M : A)%UT /\ (εc Γ ⊢' ε N : B)%UT /\ ε M ≡ ε N
  ============================
   exists H1 K : Prf,
     (Γ ⊢ H1 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H1 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using ,)


edestruct Heq as (_&_&_&_&?);[econstructor;eassumption|clear Heq].
1 subgoals, subgoal 1 (ID 8940)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : ε (Π (A), B) ≡ ε (Π (A'), B')
  ============================
   exists H2 K : Prf,
     (Γ ⊢ H2 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H2 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using ,)


simpl in *.
1 subgoals, subgoal 1 (ID 8962)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  ============================
   exists H2 K : Prf,
     (Γ ⊢ H2 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H2 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using ,)

edestruct URM.PiInj.
2 subgoals, subgoal 1 (ID 8972)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  ============================
   (Π (?8965), ?8966)%UT ≡ (Π (?8967), ?8968)%UT

subgoal 2 (ID 8976) is:
 exists H10 K : Prf,
   (Γ ⊢ H10 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H10 ↑h 1]
(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 open, ?8966 open, ?8967 open, ?8968 open,)

eassumption.
1 subgoals, subgoal 1 (ID 8976)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  ============================
   exists H10 K : Prf,
     (Γ ⊢ H10 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H10 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using ,)


destruct PTSl2PTSF as (_&Heq&_).
1 subgoals, subgoal 1 (ID 8989)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  ============================
   exists H10 K : Prf,
     (Γ ⊢ H10 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H10 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using ,)


edestruct Heq as (?Γ&?A&?A'&?&?&?&?).
2 subgoals, subgoal 1 (ID 8998)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  ============================
   exists A0 B0 : UTM.Term,
     (?8992 ⊢' ?8993 : A0)%UT /\ (?8992 ⊢' ?8994 : B0)%UT /\ ?8993 ≡ ?8994

subgoal 2 (ID 9022) is:
 exists H14 K : Prf,
   (Γ ⊢ H14 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H14 ↑h 1]
(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 open, ?8993 open, ?8994 open,)

do 2 econstructor;repeat split;[eapply Htyp;eexact H4|eapply Htyp;eexact H7|eassumption].
1 subgoals, subgoal 1 (ID 9022)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  H13 : Γ0 ⊢ A0 = A'0
  ============================
   exists H14 K : Prf,
     (Γ ⊢ H14 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H14 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using ,)


destruct H13.
1 subgoals, subgoal 1 (ID 9045)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  H13 : Γ0 ⊢ x : A0 = A'0
  ============================
   exists H14 K : Prf,
     (Γ ⊢ H14 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H14 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using ,)


eapply context_conversion in H13 as (?&?&?&?&?&?);[rewrite H11 in H13;rewrite H12 in H14|eapply wf_typ;eexact H7|assumption].
1 subgoals, subgoal 1 (ID 9087)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H13 : ε x7 = ε A
  H14 : ε x8 = ε A'
  H15 : Γ ⊢ x0 : x7 = x8
  ============================
   exists H16 K : Prf,
     (Γ ⊢ H16 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H16 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using ,)


edestruct equality_typing as ((?&?)&(?&?));[eexact H15|].
1 subgoals, subgoal 1 (ID 9112)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H13 : ε x7 = ε A
  H14 : ε x8 = ε A'
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  ============================
   exists H18 K : Prf,
     (Γ ⊢ H18 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H18 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using ,)


eapply erasure_injectivity_term in H13 as (?&?);[apply cSym in H13|eassumption..].
1 subgoals, subgoal 1 (ID 9126)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H14 : ε x8 = ε A'
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  ============================
   exists H18 K : Prf,
     (Γ ⊢ H18 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H18 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using ,)


eapply erasure_injectivity_term in H14 as (?&?);[ |eassumption..].
1 subgoals, subgoal 1 (ID 9138)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  ============================
   exists H18 K : Prf,
     (Γ ⊢ H18 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H18 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using ,)


assert (exists H,Γ H : A = A') as (HH&?) by (econstructor;eapply cTrans;[eassumption|eapply cTrans;eassumption]).
1 subgoals, subgoal 1 (ID 9145)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  H9 : ε B ≡ ε B'
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  HH : Prf
  H18 : Γ ⊢ HH : A = A'
  ============================
   exists H19 K : Prf,
     (Γ ⊢ H19 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H19 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using ,)


replace ε B' with (ε ((B'1#1)[←#0HHh1])) in H9 by (symmetry;apply erasure_lem2).
1 subgoals, subgoal 1 (ID 9163)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  ============================
   exists H19 K : Prf,
     (Γ ⊢ H19 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H19 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using ,)


assert (A :: Γ (B' 1 # 1) [ #0 HH h 1] : (!x5 1 # 1) [ #0 HH h 1]) as Btyp
by (eapply subst_typ;[eassumption..|do 2 econstructor|econstructor]);simpl in Btyp.
1 subgoals, subgoal 1 (ID 9189)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  ============================
   exists H19 K : Prf,
     (Γ ⊢ H19 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H19 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using ,)


edestruct Heq as (?Γ&?B&?B'&?&?&?&?).
2 subgoals, subgoal 1 (ID 9198)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  ============================
   exists A1 B0 : UTM.Term,
     (?9192 ⊢' ?9193 : A1)%UT /\ (?9192 ⊢' ?9194 : B0)%UT /\ ?9193 ≡ ?9194

subgoal 2 (ID 9222) is:
 exists H23 K : Prf,
   (Γ ⊢ H23 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H23 ↑h 1]
(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 open, ?9193 open, ?9194 open,)

do 2 econstructor;repeat split;[eapply Htyp;eexact H5|eapply Htyp;eassumption|eassumption].
1 subgoals, subgoal 1 (ID 9222)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  H22 : Γ1 ⊢ B0 = B'0
  ============================
   exists H23 K : Prf,
     (Γ ⊢ H23 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H23 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using ,)


destruct H22.
1 subgoals, subgoal 1 (ID 9245)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  H22 : Γ1 ⊢ x13 : B0 = B'0
  ============================
   exists H23 K : Prf,
     (Γ ⊢ H23 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H23 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using ,)


eapply context_conversion in H22 as (?&?&?&?&?&?);[rewrite H20 in H22;rewrite H21 in H23|eapply wf_typ;eexact H5|assumption].
1 subgoals, subgoal 1 (ID 9287)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  x14 : Prf
  x15 : Term
  x16 : Term
  H22 : ε x15 = ε B
  H23 : ε x16 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  H24 : A :: Γ ⊢ x14 : x15 = x16
  ============================
   exists H25 K : Prf,
     (Γ ⊢ H25 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H25 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using ,)


edestruct equality_typing as ((?&?)&(?&?));[eexact H24|].
1 subgoals, subgoal 1 (ID 9312)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  x14 : Prf
  x15 : Term
  x16 : Term
  H22 : ε x15 = ε B
  H23 : ε x16 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  H24 : A :: Γ ⊢ x14 : x15 = x16
  x17 : Term
  H25 : A :: Γ ⊢ x15 : x17
  x18 : Term
  H26 : A :: Γ ⊢ x16 : x18
  ============================
   exists H27 K : Prf,
     (Γ ⊢ H27 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H27 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using , ?9293 using , ?9294 using , ?9295 using , ?9296 using ,)


eapply erasure_injectivity_term in H22 as (?&?);[apply cSym in H22|eassumption..].
1 subgoals, subgoal 1 (ID 9326)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  x14 : Prf
  x15 : Term
  x16 : Term
  H23 : ε x16 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  H24 : A :: Γ ⊢ x14 : x15 = x16
  x17 : Term
  H25 : A :: Γ ⊢ x15 : x17
  x18 : Term
  H26 : A :: Γ ⊢ x16 : x18
  x19 : Prf
  H22 : A :: Γ ⊢ x19 † : B = x15
  ============================
   exists H27 K : Prf,
     (Γ ⊢ H27 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H27 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using , ?9293 using , ?9294 using , ?9295 using , ?9296 using , ?9313 using ?9321 , ?9314 using , ?9315 using , ?9321 using ,)


eapply erasure_injectivity_term in H23 as (?&?);[ |eassumption..].
1 subgoals, subgoal 1 (ID 9338)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  x14 : Prf
  x15 : Term
  x16 : Term
  H24 : A :: Γ ⊢ x14 : x15 = x16
  x17 : Term
  H25 : A :: Γ ⊢ x15 : x17
  x18 : Term
  H26 : A :: Γ ⊢ x16 : x18
  x19 : Prf
  H22 : A :: Γ ⊢ x19 † : B = x15
  x20 : Prf
  H23 : A :: Γ ⊢ x20 : x16 = (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1]
  ============================
   exists H27 K : Prf,
     (Γ ⊢ H27 : A = A') /\ A :: Γ ⊢ K : B = (B' ↑ 1 # 1) [ ← #0 ∽ H27 ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using , ?9293 using , ?9294 using , ?9295 using , ?9296 using , ?9313 using ?9321 , ?9314 using , ?9315 using , ?9321 using , ?9327 using ?9335 , ?9328 using , ?9329 using , ?9335 using ,)


do 3 econstructor.
2 subgoals, subgoal 1 (ID 9346)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  x14 : Prf
  x15 : Term
  x16 : Term
  H24 : A :: Γ ⊢ x14 : x15 = x16
  x17 : Term
  H25 : A :: Γ ⊢ x15 : x17
  x18 : Term
  H26 : A :: Γ ⊢ x16 : x18
  x19 : Prf
  H22 : A :: Γ ⊢ x19 † : B = x15
  x20 : Prf
  H23 : A :: Γ ⊢ x20 : x16 = (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1]
  ============================
   Γ ⊢ ?9340 : A = A'

subgoal 2 (ID 9347) is:
 A :: Γ ⊢ ?9343 : B = (B' ↑ 1 # 1) [ ← #0 ∽ ?9340 ↑h 1]
(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using , ?9293 using , ?9294 using , ?9295 using , ?9296 using , ?9313 using ?9321 , ?9314 using , ?9315 using , ?9321 using , ?9327 using ?9335 , ?9328 using , ?9329 using , ?9335 using , ?9340 open, ?9343 open,)


eassumption.
1 subgoals, subgoal 1 (ID 9347)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  B' : Term
  H : Prf
  H0 : Γ ⊢ H : Π (A), B = Π (A'), B'
  x1 : Sorts
  x2 : Sorts
  x3 : Sorts
  H3 : Rel x1 x2 x3
  H4 : Γ ⊢ A : !x1
  H5 : A :: Γ ⊢ B : !x2
  x4 : Sorts
  x5 : Sorts
  x6 : Sorts
  H6 : Rel x4 x5 x6
  H7 : Γ ⊢ A' : !x4
  H8 : A' :: Γ ⊢ B' : !x5
  Htyp : forall (Γ : Env) (M N : Term), Γ ⊢ M : N -> (εc Γ ⊢' ε M : ε N)%UT
  H1 : (Π (ε A), ε B)%UT ≡ (Π (ε A'), ε B')%UT
  H2 : ε A ≡ ε A'
  HH : Prf
  H9 : ε B ≡ ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  Heq : forall (Γ : UEM.Env) (M N : UTM.Term),
        (exists A B : UTM.Term, (Γ ⊢' M : A)%UT /\ (Γ ⊢' N : B)%UT /\ M ≡ N) ->
        exists (Γ' : Env) (M' N' : Term),
          εc Γ' = Γ /\ ε M' = M /\ ε N' = N /\ Γ' ⊢ M' = N'
  Γ0 : Env
  A0 : Term
  A'0 : Term
  H10 : εc Γ0 = εc Γ
  H11 : ε A0 = ε A
  H12 : ε A'0 = ε A'
  x : Prf
  x0 : Prf
  x7 : Term
  x8 : Term
  H15 : Γ ⊢ x0 : x7 = x8
  x9 : Term
  H16 : Γ ⊢ x7 : x9
  x10 : Term
  H17 : Γ ⊢ x8 : x10
  x11 : Prf
  H13 : Γ ⊢ x11 † : A = x7
  x12 : Prf
  H14 : Γ ⊢ x12 : x8 = A'
  H18 : Γ ⊢ HH : A = A'
  Btyp : A :: Γ ⊢ (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1] : !x5
  Γ1 : Env
  B0 : Term
  B'0 : Term
  H19 : εc Γ1 = εc (A :: Γ)
  H20 : ε B0 = ε B
  H21 : ε B'0 = ε ((B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1])
  x13 : Prf
  x14 : Prf
  x15 : Term
  x16 : Term
  H24 : A :: Γ ⊢ x14 : x15 = x16
  x17 : Term
  H25 : A :: Γ ⊢ x15 : x17
  x18 : Term
  H26 : A :: Γ ⊢ x16 : x18
  x19 : Prf
  H22 : A :: Γ ⊢ x19 † : B = x15
  x20 : Prf
  H23 : A :: Γ ⊢ x20 : x16 = (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1]
  ============================
   A :: Γ ⊢ ?9343 : B = (B' ↑ 1 # 1) [ ← #0 ∽ HH ↑h 1]

(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using , ?9293 using , ?9294 using , ?9295 using , ?9296 using , ?9313 using ?9321 , ?9314 using , ?9315 using , ?9321 using , ?9327 using ?9335 , ?9328 using , ?9329 using , ?9335 using , ?9340 using , ?9343 open,)


eapply cTrans;[eassumption|eapply cTrans;eassumption].
No more subgoals.
(dependent evars: ?8822 using , ?8823 using , ?8824 using , ?8825 using , ?8910 using , ?8911 using , ?8912 using , ?8938 using , ?8965 using , ?8966 using , ?8967 using , ?8968 using , ?8992 using ?9037 , ?8993 using ?9036 , ?8994 using ?9040 , ?9024 using ?9035 , ?9027 using ?9039 , ?9035 using , ?9036 using , ?9037 using , ?9039 using , ?9040 using , ?9052 using ?9064 , ?9064 using , ?9088 using , ?9089 using , ?9093 using , ?9094 using , ?9095 using , ?9096 using , ?9113 using ?9121 , ?9114 using , ?9115 using , ?9121 using , ?9127 using ?9135 , ?9128 using , ?9129 using , ?9135 using , ?9147 using ?9150 ?9149 , ?9149 using , ?9150 using ?9155 ?9154 , ?9151 using , ?9154 using , ?9155 using , ?9156 using , ?9170 using , ?9171 using , ?9172 using , ?9173 using , ?9174 using ?9185 ?9184 , ?9175 using , ?9183 using , ?9184 using , ?9185 using , ?9192 using ?9237 , ?9193 using ?9236 , ?9194 using ?9240 , ?9224 using ?9235 , ?9227 using ?9239 , ?9235 using , ?9236 using , ?9237 using , ?9239 using , ?9240 using , ?9252 using ?9264 , ?9264 using , ?9288 using , ?9289 using , ?9293 using , ?9294 using , ?9295 using , ?9296 using , ?9313 using ?9321 , ?9314 using , ?9315 using , ?9321 using , ?9327 using ?9335 , ?9328 using , ?9329 using , ?9335 using , ?9340 using , ?9343 using ?9349 ?9348 , ?9348 using , ?9349 using ?9354 ?9353 , ?9350 using , ?9353 using , ?9354 using , ?9355 using ,)


Qed.
Prod_Injective is defined



End f_equiv_mod.
Module f_equiv_mod is defined




Index
This page has been generated by coqdoc