Library typ_annot

Definition of PTS{atr} and proof of Confluence

In order to prove the equivalence between PTS and PTSe, Adams built a system called Typed Parallel One Step Reduction that mimics the usual parallel reduction to prove that a typed equality judgement is confluent. He emphasises the use of an additionnal annotation (the co-domain (x)B) in order to be able to track typing information, and prove that PTS{atr} enjoys the diamon property. His result is restricted to "functional" PTS. To extend it to all PTS, we added a second annotation (the domain A) and prove that every PTS is equivalent to its PTSe counterpart.
Require Import base term.

Require Import red.

Require Import env.

Require Import base.

Require Import List.

Require Import Peano_dec.

Require Import Compare_dec.

Require Import Lt Le Gt Plus Minus.


Module PTS_ATR_mod (X:term_sig) (Y:pts_sig X) (TM:term_mod X) (EM: env_mod X TM) (RM: red_mod X TM).
Interactive Module PTS_ATR_mod started


 Import X Y TM EM RM.


PTS{atr} typind definition: we define at the same time the one step and the multistep in order to keep track of some well-typed path between two possible domains in the typ_beta case.
Reserved Notation "Γ ⊢ s ▹ t : A" (at level 80, s, t, T at level 30, no associativity) .

Reserved Notation "Γ ⊣ " (at level 80, no associativity).

Reserved Notation "Γ ⊢ s ▹▹ t : T " (at level 80, s, t, T at level 30, no associativity) .


Inductive wf : Env -> Prop :=
  | wf_nil : nil
  | wf_cons : forall Γ A A' s, Γ A A' : !s -> A::Γ
where "Γ ⊣" := (wf Γ) : Typ_scope
with typ : Env -> Term -> Term -> Term -> Prop :=
 | typ_var : forall Γ x A, Γ -> A x Γ -> Γ #x #x : A
 | typ_sort : forall Γ s1 s2, Ax s1 s2 -> Γ -> Γ !s1 !s1 : !s2
 | typ_pi : forall Γ s1 s2 s3 A A' B B', Rel s1 s2 s3 ->
    Γ A A' : !s1 -> A::Γ B B' : !s2 -> Γ Π(A),B Π(A'),B' : !s3
 | typ_la : forall Γ A A' B M M' s1 s2 s3, Rel s1 s2 s3 ->
    Γ A A' : !s1 -> A::Γ B B : !s2 -> A::Γ M M' : B ->
    Γ λ[A],M λ[A'],M' : Π(A),B
 | typ_app : forall Γ M M' N N' A A' B B' s1 s2 s3, Rel s1 s2 s3 ->
   Γ A A' : !s1 -> A::Γ B B' : !s2 -> Γ M M' : Π(A),B -> Γ N N' : A ->
    Γ (M ·(A,B) N) (M'·(A',B') N') : B[ N]
 | typ_beta : forall Γ M M' N N' A A' A0 B s1 s2 s3, Rel s1 s2 s3 ->
   Γ A A : !s1 -> Γ A' A' : !s1 -> Γ A0 ▹▹ A : !s1 -> Γ A0 ▹▹ A' : !s1 ->
   A::Γ B B : !s2 -> A::Γ M M' : B -> Γ N N' : A ->
    Γ ((λ[A],M) ·(A',B) N) M'[ N'] : B[ N]
 | typ_red : forall Γ M N A B s, Γ M N : A -> Γ A B : !s -> Γ M N : B
 | typ_exp : forall Γ M N A B s, Γ M N : B -> Γ A B : !s -> Γ M N : A
where "Γ ⊢ M ▹ N : T" := (typ Γ M N T) : Typ_scope
with typ_reds : Env -> Term -> Term -> Term -> Prop :=
 | typ_reds_intro : forall Γ s t T, Γ s t : T -> Γ s ▹▹ t : T
 | typ_reds_trans : forall Γ s t u T , Γ s ▹▹ t : T -> Γ t ▹▹ u : T -> Γ s ▹▹ u : T
where "Γ ⊢ s ▹▹ t : T " := (typ_reds Γ s t T) : Typ_scope.
wf, typ, typ_reds are defined
wf_ind is defined
typ_ind is defined
typ_reds_ind is defined



Open Scope Typ_scope.


Hint Constructors wf typ typ_reds.
Warning: the hint: eapply wf_cons will only be used by eauto
Warning: the hint: eapply typ_pi will only be used by eauto
Warning: the hint: eapply typ_la will only be used by eauto
Warning: the hint: eapply typ_app will only be used by eauto
Warning: the hint: eapply typ_beta will only be used by eauto
Warning: the hint: eapply typ_red will only be used by eauto
Warning: the hint: eapply typ_exp will only be used by eauto
Warning: the hint: eapply typ_reds_trans will only be used by eauto



Scheme typ_ind' := Induction for typ Sort Prop
      with typ_reds_ind' := Induction for typ_reds Sort Prop
      with wf_ind' := Induction for wf Sort Prop.
wf_ind' is defined
typ_reds_ind' is defined
typ_ind' is defined
typ_ind', typ_reds_ind', wf_ind' are recursively defined



Combined Scheme typ_induc from typ_ind', typ_reds_ind', wf_ind'.
typ_induc is defined
typ_induc is recursively defined



Weakening property for PTS{atr} .
Theorem weakening: (forall Δ t t' T, Δ t t' : T -> forall Γ d d' s n Δ',
    ins_in_env Γ d n Δ Δ' -> Γ d d' :!s -> Δ' t 1 # n t' 1 # n : T 1 # n ) /\
(forall Δ t t' T, Δ t ▹▹ t' : T -> forall Γ d d' s n Δ',
    ins_in_env Γ d n Δ Δ' -> Γ d d' :!s -> Δ' t 1 # n ▹▹ t' 1 # n : T 1 # n ) /\
(forall Γ, Γ -> forall Δ Γ' n A A' s, ins_in_env Δ A n Γ Γ' -> Δ A A' : !s -> Γ' ).
1 subgoals, subgoal 1 (ID 120)
  
  ============================
   (forall (Δ : Env) (t t' T : Term),
    Δ ⊢ t ▹ t' : T ->
    forall (Γ : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
    ins_in_env Γ d n Δ Δ' ->
    Γ ⊢ d ▹ d' : !s -> Δ' ⊢ t ↑ 1 # n ▹ t' ↑ 1 # n : T ↑ 1 # n) /\
   (forall (Δ : Env) (t t' T : Term),
    Δ ⊢ t ▹▹ t' : T ->
    forall (Γ : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
    ins_in_env Γ d n Δ Δ' ->
    Γ ⊢ d ▹ d' : !s -> Δ' ⊢ t ↑ 1 # n ▹▹ t' ↑ 1 # n : T ↑ 1 # n) /\
   (forall Γ : Env,
    Γ ⊣ ->
    forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
    ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣)

(dependent evars:)


apply typ_induc; intros; simpl.
12 subgoals, subgoal 1 (ID 359)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ (if le_gt_dec n x then #(S x) else #x)
   ▹ (if le_gt_dec n x then #(S x) else #x) : A ↑ 1 # n

subgoal 2 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 4 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 5 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 6 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 7 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 8 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 369) is:
 Γ' ⊣
subgoal 12 (ID 370) is:
 Γ' ⊣
(dependent evars:)


destruct le_gt_dec.
13 subgoals, subgoal 1 (ID 379)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   Δ' ⊢ #(S x) ▹ #(S x) : A ↑ 1 # n

subgoal 2 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars:)

constructor.
14 subgoals, subgoal 1 (ID 382)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   Δ' ⊣

subgoal 2 (ID 383) is:
 A ↑ 1 # n ↓ S x ⊂ Δ'
subgoal 3 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 4 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 5 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 6 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 7 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 8 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars:)

eapply H; eauto.
13 subgoals, subgoal 1 (ID 383)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   A ↑ 1 # n ↓ S x ⊂ Δ'

subgoal 2 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)


destruct i as (u & ?& ?).
13 subgoals, subgoal 1 (ID 409)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   A ↑ 1 # n ↓ S x ⊂ Δ'

subgoal 2 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)


rewrite H2.
13 subgoals, subgoal 1 (ID 410)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   u ↑ (S x) ↑ 1 # n ↓ S x ⊂ Δ'

subgoal 2 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)

exists u; split.
14 subgoals, subgoal 1 (ID 414)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   u ↑ (S x) ↑ 1 # n = u ↑ (S (S x))

subgoal 2 (ID 415) is:
 u ↓ S x ∈ Δ'
subgoal 3 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 4 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 5 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 6 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 7 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 8 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)


change (S (S x)) with (1+ S x).
14 subgoals, subgoal 1 (ID 417)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   u ↑ (S x) ↑ 1 # n = u ↑ (1 + S x)

subgoal 2 (ID 415) is:
 u ↓ S x ∈ Δ'
subgoal 3 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 4 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 5 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 6 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 7 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 8 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)

rewrite liftP3; trivial.
15 subgoals, subgoal 1 (ID 419)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   0 <= n

subgoal 2 (ID 420) is:
 n <= 0 + S x
subgoal 3 (ID 415) is:
 u ↓ S x ∈ Δ'
subgoal 4 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 5 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 6 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 7 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 8 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 9 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 10 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 11 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 12 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 14 (ID 369) is:
 Γ' ⊣
subgoal 15 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)

intuition.
14 subgoals, subgoal 1 (ID 420)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   n <= 0 + S x

subgoal 2 (ID 415) is:
 u ↓ S x ∈ Δ'
subgoal 3 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 4 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 5 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 6 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 7 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 8 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)

simpl; intuition.
13 subgoals, subgoal 1 (ID 415)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   u ↓ S x ∈ Δ'

subgoal 2 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using ,)

eapply ins_item_ge.
15 subgoals, subgoal 1 (ID 468)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   ins_in_env ?466 ?464 ?465 ?467 Δ'

subgoal 2 (ID 469) is:
 ?465 <= x
subgoal 3 (ID 470) is:
 u ↓ x ∈ ?467
subgoal 4 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 5 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 6 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 7 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 8 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 9 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 10 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 11 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 12 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 14 (ID 369) is:
 Γ' ⊣
subgoal 15 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 open, ?465 open, ?466 open, ?467 open,)

apply H0.
14 subgoals, subgoal 1 (ID 469)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   n <= x

subgoal 2 (ID 470) is:
 u ↓ x ∈ Γ
subgoal 3 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 4 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 5 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 6 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 7 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 8 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using ,)


trivial.
13 subgoals, subgoal 1 (ID 470)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  u : Term
  H2 : A = u ↑ (S x)
  H3 : u ↓ x ∈ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  l : n <= x
  ============================
   u ↓ x ∈ Γ

subgoal 2 (ID 380) is:
 Δ' ⊢ #x ▹ #x : A ↑ 1 # n
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using ,)

trivial.
12 subgoals, subgoal 1 (ID 380)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  g : n > x
  ============================
   Δ' ⊢ #x ▹ #x : A ↑ 1 # n

subgoal 2 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 4 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 5 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 6 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 7 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 8 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 369) is:
 Γ' ⊣
subgoal 12 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using ,)


constructor.
13 subgoals, subgoal 1 (ID 472)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  g : n > x
  ============================
   Δ' ⊣

subgoal 2 (ID 473) is:
 A ↑ 1 # n ↓ x ⊂ Δ'
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using ,)

eapply H; eauto.
12 subgoals, subgoal 1 (ID 473)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  g : n > x
  ============================
   A ↑ 1 # n ↓ x ⊂ Δ'

subgoal 2 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 4 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 5 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 6 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 7 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 8 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 369) is:
 Γ' ⊣
subgoal 12 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using ,)

eapply ins_item_lift_lt.
14 subgoals, subgoal 1 (ID 492)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  g : n > x
  ============================
   ins_in_env ?490 ?489 n ?491 Δ'

subgoal 2 (ID 493) is:
 n > x
subgoal 3 (ID 494) is:
 A ↓ x ⊂ ?491
subgoal 4 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 5 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 6 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 7 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 8 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 open, ?490 open, ?491 open,)

apply H0.
13 subgoals, subgoal 1 (ID 493)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  g : n > x
  ============================
   n > x

subgoal 2 (ID 494) is:
 A ↓ x ⊂ Γ
subgoal 3 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 5 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 6 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 7 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using ,)

trivial.
12 subgoals, subgoal 1 (ID 494)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  g : n > x
  ============================
   A ↓ x ⊂ Γ

subgoal 2 (ID 360) is:
 Δ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 4 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 5 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 6 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 7 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 8 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 369) is:
 Γ' ⊣
subgoal 12 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using ,)

trivial.
11 subgoals, subgoal 1 (ID 360)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 3 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 4 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 5 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 6 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 7 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 369) is:
 Γ' ⊣
subgoal 11 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using ,)


econstructor; trivial.
11 subgoals, subgoal 1 (ID 498)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : forall (Δ Γ' : Env) (n : nat) (A A' : Term) (s : Sorts),
      ins_in_env Δ A n Γ Γ' -> Δ ⊢ A ▹ A' : !s -> Γ' ⊣
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊣

subgoal 2 (ID 361) is:
 Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3
subgoal 3 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 4 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 5 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 6 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 7 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 369) is:
 Γ' ⊣
subgoal 11 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using ,)

eapply H; eauto.
10 subgoals, subgoal 1 (ID 361)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ Π (A ↑ 1 # n), B ↑ 1 # (S n) ▹ Π (A' ↑ 1 # n), B' ↑ 1 # (S n) : !s3

subgoal 2 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 3 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 4 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 5 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 6 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 7 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 369) is:
 Γ' ⊣
subgoal 10 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using ,)


apply typ_pi with s1 s2; trivial.
11 subgoals, subgoal 1 (ID 515)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1

subgoal 2 (ID 516) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B' ↑ 1 # (S n) : !s2
subgoal 3 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 4 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 5 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 6 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 7 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 369) is:
 Γ' ⊣
subgoal 11 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using ,)


change !s1 with (!s1 1 # n); eapply H; eauto.
10 subgoals, subgoal 1 (ID 516)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s
  ============================
   A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B' ↑ 1 # (S n) : !s2

subgoal 2 (ID 362) is:
 Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
 : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 3 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 4 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 5 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 6 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 7 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 369) is:
 Γ' ⊣
subgoal 10 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using ,)


change !s2 with (!s2 1 # (S n)); eapply H0; eauto.
9 subgoals, subgoal 1 (ID 362)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H2 : ins_in_env Γ0 d n Γ Δ'
  H3 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ λ [A ↑ 1 # n], M ↑ 1 # (S n) ▹ λ [A' ↑ 1 # n], M' ↑ 1 # (S n)
   : Π (A ↑ 1 # n), B ↑ 1 # (S n)

subgoal 2 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 3 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 4 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 5 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 6 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 369) is:
 Γ' ⊣
subgoal 9 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using ,)


apply typ_la with s1 s2 s3; trivial.
11 subgoals, subgoal 1 (ID 551)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H2 : ins_in_env Γ0 d n Γ Δ'
  H3 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1

subgoal 2 (ID 552) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2
subgoal 3 (ID 553) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 4 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 5 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 6 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 7 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 369) is:
 Γ' ⊣
subgoal 11 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using ,)


change !s1 with (!s1 1 # n); eapply H; eauto.
10 subgoals, subgoal 1 (ID 552)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H2 : ins_in_env Γ0 d n Γ Δ'
  H3 : Γ0 ⊢ d ▹ d' : !s
  ============================
   A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2

subgoal 2 (ID 553) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 3 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 4 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 5 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 6 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 7 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 369) is:
 Γ' ⊣
subgoal 10 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using ,)


change !s2 with (!s2 1 # (S n)); eapply H0; eauto.
9 subgoals, subgoal 1 (ID 553)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H2 : ins_in_env Γ0 d n Γ Δ'
  H3 : Γ0 ⊢ d ▹ d' : !s
  ============================
   A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)

subgoal 2 (ID 363) is:
 Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
 B [ ← N] ↑ 1 # n
subgoal 3 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 4 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 5 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 6 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 369) is:
 Γ' ⊣
subgoal 9 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using ,)


eapply H1; eauto.
8 subgoals, subgoal 1 (ID 363)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
   ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n : 
   B [ ← N] ↑ 1 # n

subgoal 2 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 3 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 4 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 369) is:
 Γ' ⊣
subgoal 8 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using ,)


app with annot
change n with (0+n); rewrite substP1.
8 subgoals, subgoal 1 (ID 604)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ'
   ⊢ M ↑ 1 # (0 + n) ·( A ↑ 1 # (0 + n), B ↑ 1 # (S (0 + n)))N ↑ 1 # (0 + n)
   ▹ M' ↑ 1 # (0 + n) ·( A' ↑ 1 # (0 + n), B' ↑ 1 # (S (0 + n)))
     N' ↑ 1 # (0 + n) : (B ↑ 1 # (S (0 + n))) [ ← N ↑ 1 # n]

subgoal 2 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 3 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 4 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 369) is:
 Γ' ⊣
subgoal 8 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using ,)

simpl.
8 subgoals, subgoal 1 (ID 605)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ M ↑ 1 # n ·( A ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
   ▹ M' ↑ 1 # n ·( A' ↑ 1 # n, B' ↑ 1 # (S n))N' ↑ 1 # n
   : (B ↑ 1 # (S n)) [ ← N ↑ 1 # n]

subgoal 2 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 3 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 4 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 369) is:
 Γ' ⊣
subgoal 8 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using ,)


eapply typ_app.
12 subgoals, subgoal 1 (ID 609)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Rel ?606 ?607 ?608

subgoal 2 (ID 610) is:
 Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !?606
subgoal 3 (ID 611) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B' ↑ 1 # (S n) : !?607
subgoal 4 (ID 612) is:
 Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 5 (ID 613) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 6 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 7 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 8 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 369) is:
 Γ' ⊣
subgoal 12 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 open, ?607 open, ?608 open,)

apply r.
11 subgoals, subgoal 1 (ID 610)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1

subgoal 2 (ID 611) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B' ↑ 1 # (S n) : !s2
subgoal 3 (ID 612) is:
 Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 4 (ID 613) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 6 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 7 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 369) is:
 Γ' ⊣
subgoal 11 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using ,)

eapply H; eauto.
10 subgoals, subgoal 1 (ID 611)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B' ↑ 1 # (S n) : !s2

subgoal 2 (ID 612) is:
 Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : Π (A ↑ 1 # n), B ↑ 1 # (S n)
subgoal 3 (ID 613) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 5 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 6 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 7 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 369) is:
 Γ' ⊣
subgoal 10 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using ,)

eapply H0; eauto.
9 subgoals, subgoal 1 (ID 612)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : Π (A ↑ 1 # n), B ↑ 1 # (S n)

subgoal 2 (ID 613) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 3 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 4 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 5 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 6 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 369) is:
 Γ' ⊣
subgoal 9 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using ,)


eapply H1; eauto.
8 subgoals, subgoal 1 (ID 613)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B' ↑ 1 # n : !s2 ↑ 1 # n
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : (Π (A), B) ↑ 1 # n
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H3 : ins_in_env Γ0 d n Γ Δ'
  H4 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n

subgoal 2 (ID 364) is:
 Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
 ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n
subgoal 3 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 4 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 369) is:
 Γ' ⊣
subgoal 8 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using ,)

eapply H2; eauto.
7 subgoals, subgoal 1 (ID 364)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
   ▹ M' [ ← N'] ↑ 1 # n : B [ ← N] ↑ 1 # n

subgoal 2 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 3 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 369) is:
 Γ' ⊣
subgoal 7 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using ,)


beta with annot
change n with (0+n); rewrite 2! substP1.
7 subgoals, subgoal 1 (ID 674)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ'
   ⊢ (λ [A ↑ 1 # (0 + n)], M ↑ 1 # (S (0 + n))) ·( 
     A' ↑ 1 # (0 + n), B ↑ 1 # (S (0 + n)))N ↑ 1 # (0 + n)
   ▹ (M' ↑ 1 # (S (0 + n))) [ ← N' ↑ 1 # n]
   : (B ↑ 1 # (S (0 + n))) [ ← N ↑ 1 # n]

subgoal 2 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 3 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 369) is:
 Γ' ⊣
subgoal 7 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using ,)

simpl.
7 subgoals, subgoal 1 (ID 675)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ (λ [A ↑ 1 # n], M ↑ 1 # (S n)) ·( A' ↑ 1 # n, B ↑ 1 # (S n))N ↑ 1 # n
   ▹ (M' ↑ 1 # (S n)) [ ← N' ↑ 1 # n] : (B ↑ 1 # (S n)) [ ← N ↑ 1 # n]

subgoal 2 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 3 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 369) is:
 Γ' ⊣
subgoal 7 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using ,)


eapply typ_beta.
14 subgoals, subgoal 1 (ID 680)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Rel ?677 ?678 ?679

subgoal 2 (ID 681) is:
 Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !?677
subgoal 3 (ID 682) is:
 Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !?677
subgoal 4 (ID 683) is:
 Δ' ⊢ ?676 ▹▹ A ↑ 1 # n : !?677
subgoal 5 (ID 684) is:
 Δ' ⊢ ?676 ▹▹ A' ↑ 1 # n : !?677
subgoal 6 (ID 685) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !?678
subgoal 7 (ID 686) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 8 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 10 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 11 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 13 (ID 369) is:
 Γ' ⊣
subgoal 14 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 open, ?677 open, ?678 open, ?679 open,)

apply r.
13 subgoals, subgoal 1 (ID 681)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1

subgoal 2 (ID 682) is:
 Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1
subgoal 3 (ID 683) is:
 Δ' ⊢ ?676 ▹▹ A ↑ 1 # n : !s1
subgoal 4 (ID 684) is:
 Δ' ⊢ ?676 ▹▹ A' ↑ 1 # n : !s1
subgoal 5 (ID 685) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2
subgoal 6 (ID 686) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 7 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 9 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 10 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 12 (ID 369) is:
 Γ' ⊣
subgoal 13 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 open, ?677 using , ?678 using , ?679 using ,)

eapply H; eauto.
12 subgoals, subgoal 1 (ID 682)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1

subgoal 2 (ID 683) is:
 Δ' ⊢ ?676 ▹▹ A ↑ 1 # n : !s1
subgoal 3 (ID 684) is:
 Δ' ⊢ ?676 ▹▹ A' ↑ 1 # n : !s1
subgoal 4 (ID 685) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2
subgoal 5 (ID 686) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 6 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 7 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 8 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 9 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 11 (ID 369) is:
 Γ' ⊣
subgoal 12 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 open, ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using ,)

eapply H0; eauto.
11 subgoals, subgoal 1 (ID 683)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ ?676 ▹▹ A ↑ 1 # n : !s1

subgoal 2 (ID 684) is:
 Δ' ⊢ ?676 ▹▹ A' ↑ 1 # n : !s1
subgoal 3 (ID 685) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2
subgoal 4 (ID 686) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 5 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 6 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 7 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 8 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 10 (ID 369) is:
 Γ' ⊣
subgoal 11 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 open, ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using ,)


eapply H1; eauto.
10 subgoals, subgoal 1 (ID 684)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1

subgoal 2 (ID 685) is:
 A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2
subgoal 3 (ID 686) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 4 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 6 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 7 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 9 (ID 369) is:
 Γ' ⊣
subgoal 10 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using ,)

eapply H2; eauto.
9 subgoals, subgoal 1 (ID 685)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   A ↑ 1 # n :: Δ' ⊢ B ↑ 1 # (S n) ▹ B ↑ 1 # (S n) : !s2

subgoal 2 (ID 686) is:
 A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)
subgoal 3 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 5 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 6 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 8 (ID 369) is:
 Γ' ⊣
subgoal 9 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using ,)

eapply H3; eauto.
8 subgoals, subgoal 1 (ID 686)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   A ↑ 1 # n :: Δ' ⊢ M ↑ 1 # (S n) ▹ M' ↑ 1 # (S n) : B ↑ 1 # (S n)

subgoal 2 (ID 687) is:
 Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
subgoal 3 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 4 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 5 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 7 (ID 369) is:
 Γ' ⊣
subgoal 8 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using ,)

eapply H4; eauto.
7 subgoals, subgoal 1 (ID 687)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A ↑ 1 # n ▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A' ↑ 1 # n ▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A ↑ 1 # n : !s1 ↑ 1 # n
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ A0 ↑ 1 # n ▹▹ A' ↑ 1 # n : !s1 ↑ 1 # n
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ B ↑ 1 # n ▹ B ↑ 1 # n : !s2 ↑ 1 # n
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n (A :: Γ) Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ M' ↑ 1 # n : B ↑ 1 # n
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s : Sorts
  n : nat
  Δ' : Env
  H6 : ins_in_env Γ0 d n Γ Δ'
  H7 : Γ0 ⊢ d ▹ d' : !s
  ============================
   Δ' ⊢ N ↑ 1 # n ▹ N' ↑ 1 # n : A ↑ 1 # n

subgoal 2 (ID 365) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
subgoal 3 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 369) is:
 Γ' ⊣
subgoal 7 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using ,)


eapply H5; eauto.
6 subgoals, subgoal 1 (ID 365)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n

subgoal 2 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 3 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 4 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 369) is:
 Γ' ⊣
subgoal 6 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using ,)


apply typ_red with (A 1 # n) s.
7 subgoals, subgoal 1 (ID 788)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n

subgoal 2 (ID 789) is:
 Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s
subgoal 3 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 4 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 6 (ID 369) is:
 Γ' ⊣
subgoal 7 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using ,)

eapply H; eauto.
6 subgoals, subgoal 1 (ID 789)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s

subgoal 2 (ID 366) is:
 Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n
subgoal 3 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 4 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 369) is:
 Γ' ⊣
subgoal 6 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using ,)


change !s with (!s 1 # n); eapply H0; eauto.
5 subgoals, subgoal 1 (ID 366)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : A ↑ 1 # n

subgoal 2 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 3 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 4 (ID 369) is:
 Γ' ⊣
subgoal 5 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using ,)


apply typ_exp with (B 1 # n) s.
6 subgoals, subgoal 1 (ID 820)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n

subgoal 2 (ID 821) is:
 Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s
subgoal 3 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 4 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 5 (ID 369) is:
 Γ' ⊣
subgoal 6 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using ,)

eapply H; eauto.
5 subgoals, subgoal 1 (ID 821)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ M ↑ 1 # n ▹ N ↑ 1 # n : B ↑ 1 # n
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ A ↑ 1 # n ▹ B ↑ 1 # n : !s

subgoal 2 (ID 367) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
subgoal 3 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 4 (ID 369) is:
 Γ' ⊣
subgoal 5 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using ,)


change !s with (!s 1 # n); eapply H0; eauto.
4 subgoals, subgoal 1 (ID 367)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  t0 : Γ ⊢ s ▹ t : T
  H : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ s ↑ 1 # n ▹ t ↑ 1 # n : T ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H0 : ins_in_env Γ0 d n Γ Δ'
  H1 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n

subgoal 2 (ID 368) is:
 Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
subgoal 3 (ID 369) is:
 Γ' ⊣
subgoal 4 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using ,)


constructor; eapply H; eauto.
3 subgoals, subgoal 1 (ID 368)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ s ↑ 1 # n ▹▹ t ↑ 1 # n : T ↑ 1 # n
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Γ0 : Env) (d d' : Term) (s : Sorts) (n : nat) (Δ' : Env),
       ins_in_env Γ0 d n Γ Δ' ->
       Γ0 ⊢ d ▹ d' : !s -> Δ' ⊢ t ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n
  Γ0 : Env
  d : Term
  d' : Term
  s0 : Sorts
  n : nat
  Δ' : Env
  H1 : ins_in_env Γ0 d n Γ Δ'
  H2 : Γ0 ⊢ d ▹ d' : !s0
  ============================
   Δ' ⊢ s ↑ 1 # n ▹▹ u ↑ 1 # n : T ↑ 1 # n

subgoal 2 (ID 369) is:
 Γ' ⊣
subgoal 3 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using ,)

eauto.
2 subgoals, subgoal 1 (ID 369)
  
  Δ : Env
  Γ' : Env
  n : nat
  A : Term
  A' : Term
  s : Sorts
  H : ins_in_env Δ A n nil Γ'
  H0 : Δ ⊢ A ▹ A' : !s
  ============================
   Γ' ⊣

subgoal 2 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using ,)


inversion H; subst; clear H.
2 subgoals, subgoal 1 (ID 1168)
  
  A : Term
  A' : Term
  s : Sorts
  H0 : nil ⊢ A ▹ A' : !s
  ============================
   A :: nil ⊣

subgoal 2 (ID 370) is:
 Γ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using ,)

eauto.
1 subgoals, subgoal 1 (ID 370)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s ↑ 1 # n
  Δ : Env
  Γ' : Env
  n : nat
  A0 : Term
  A'0 : Term
  s0 : Sorts
  H0 : ins_in_env Δ A0 n (A :: Γ) Γ'
  H1 : Δ ⊢ A0 ▹ A'0 : !s0
  ============================
   Γ' ⊣

(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using , ?1169 using , ?1170 using ,)


inversion H0; subst; clear H0.
2 subgoals, subgoal 1 (ID 1272)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s ↑ 1 # n
  A0 : Term
  A'0 : Term
  s0 : Sorts
  H1 : A :: Γ ⊢ A0 ▹ A'0 : !s0
  ============================
   A0 :: A :: Γ ⊣

subgoal 2 (ID 1273) is:
 A ↑ 1 # n0 :: Δ' ⊣
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using , ?1169 using , ?1170 using ,)


eauto.
1 subgoals, subgoal 1 (ID 1273)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s ↑ 1 # n
  Δ : Env
  A0 : Term
  A'0 : Term
  s0 : Sorts
  H1 : Δ ⊢ A0 ▹ A'0 : !s0
  n0 : nat
  Δ' : Env
  H6 : ins_in_env Δ A0 n0 Γ Δ'
  ============================
   A ↑ 1 # n0 :: Δ' ⊣

(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using , ?1169 using , ?1170 using , ?1274 using , ?1275 using ,)


apply wf_cons with (A' 1 # n0) s.
1 subgoals, subgoal 1 (ID 1285)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Γ0 : Env) (d d' : Term) (s0 : Sorts) (n : nat) (Δ' : Env),
      ins_in_env Γ0 d n Γ Δ' ->
      Γ0 ⊢ d ▹ d' : !s0 -> Δ' ⊢ A ↑ 1 # n ▹ A' ↑ 1 # n : !s ↑ 1 # n
  Δ : Env
  A0 : Term
  A'0 : Term
  s0 : Sorts
  H1 : Δ ⊢ A0 ▹ A'0 : !s0
  n0 : nat
  Δ' : Env
  H6 : ins_in_env Δ A0 n0 Γ Δ'
  ============================
   Δ' ⊢ A ↑ 1 # n0 ▹ A' ↑ 1 # n0 : !s

(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using , ?1169 using , ?1170 using , ?1274 using , ?1275 using ,)


change !s with (!s 1 # n0); eauto.
No more subgoals.
(dependent evars: ?384 using , ?385 using , ?386 using , ?387 using , ?388 using , ?464 using , ?465 using , ?466 using , ?467 using , ?474 using , ?475 using , ?476 using , ?477 using , ?478 using , ?489 using , ?490 using , ?491 using , ?499 using , ?500 using , ?501 using , ?502 using , ?503 using , ?519 using , ?520 using , ?521 using , ?522 using , ?535 using , ?536 using , ?537 using , ?538 using , ?556 using , ?557 using , ?558 using , ?559 using , ?572 using , ?573 using , ?574 using , ?575 using , ?587 using , ?588 using , ?589 using , ?590 using , ?606 using , ?607 using , ?608 using , ?614 using , ?615 using , ?616 using , ?617 using , ?628 using , ?629 using , ?630 using , ?631 using , ?643 using , ?644 using , ?645 using , ?646 using , ?657 using , ?658 using , ?659 using , ?660 using , ?676 using , ?677 using , ?678 using , ?679 using , ?688 using , ?689 using , ?690 using , ?691 using , ?702 using , ?703 using , ?704 using , ?705 using , ?716 using , ?717 using , ?718 using , ?719 using , ?730 using , ?731 using , ?732 using , ?733 using , ?744 using , ?745 using , ?746 using , ?747 using , ?759 using , ?760 using , ?761 using , ?762 using , ?774 using , ?775 using , ?776 using , ?777 using , ?790 using , ?791 using , ?792 using , ?793 using , ?806 using , ?807 using , ?808 using , ?809 using , ?822 using , ?823 using , ?824 using , ?825 using , ?838 using , ?839 using , ?840 using , ?841 using , ?854 using , ?855 using , ?856 using , ?857 using , ?869 using , ?992 using , ?993 using , ?994 using , ?995 using , ?1066 using , ?1067 using , ?1068 using , ?1069 using , ?1169 using , ?1170 using , ?1274 using , ?1275 using , ?1288 using , ?1289 using , ?1290 using , ?1291 using ,)


Qed.
weakening is defined



Theorem thinning :
   forall Γ M N T A A' s,
      Γ M N : T ->
   Γ A A' : !s ->
   A::Γ M 1 N 1 : T 1.
1 subgoals, subgoal 1 (ID 1319)
  
  ============================
   forall (Γ : Env) (M N T A A' : Term) (s : Sorts),
   Γ ⊢ M ▹ N : T -> Γ ⊢ A ▹ A' : !s -> A :: Γ ⊢ M ↑ 1 ▹ N ↑ 1 : T ↑ 1

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 1328)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   A :: Γ ⊢ M ↑ 1 ▹ N ↑ 1 : T ↑ 1

(dependent evars:)


eapply weakening.
3 subgoals, subgoal 1 (ID 1346)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   ?1345 ⊢ M ▹ N : T

subgoal 2 (ID 1349) is:
 ins_in_env ?1347 ?1348 0 ?1345 (A :: Γ)
subgoal 3 (ID 1352) is:
 ?1347 ⊢ ?1348 ▹ ?1350 : !?1351
(dependent evars: ?1337 using ?1345 , ?1338 using ?1347 , ?1339 using ?1348 , ?1340 using ?1350 , ?1341 using ?1351 , ?1345 open, ?1347 open, ?1348 open, ?1350 open, ?1351 open,)

apply H.
2 subgoals, subgoal 1 (ID 1349)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   ins_in_env ?1347 ?1348 0 Γ (A :: Γ)

subgoal 2 (ID 1352) is:
 ?1347 ⊢ ?1348 ▹ ?1350 : !?1351
(dependent evars: ?1337 using ?1345 , ?1338 using ?1347 , ?1339 using ?1348 , ?1340 using ?1350 , ?1341 using ?1351 , ?1345 using , ?1347 open, ?1348 open, ?1350 open, ?1351 open,)

constructor.
1 subgoals, subgoal 1 (ID 1352)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ ⊢ A ▹ ?1350 : !?1351

(dependent evars: ?1337 using ?1345 , ?1338 using ?1347 , ?1339 using ?1348 , ?1340 using ?1350 , ?1341 using ?1351 , ?1345 using , ?1347 using , ?1348 using , ?1350 open, ?1351 open,)

apply H0.
No more subgoals.
(dependent evars: ?1337 using ?1345 , ?1338 using ?1347 , ?1339 using ?1348 , ?1340 using ?1350 , ?1341 using ?1351 , ?1345 using , ?1347 using , ?1348 using , ?1350 using , ?1351 using ,)


Qed.
thinning is defined



Theorem thinning_reds :
   forall Γ M N T A A' s,
      Γ M ▹▹ N : T ->
   Γ A A' : !s ->
   A::Γ M 1 ▹▹ N 1 : T 1.
1 subgoals, subgoal 1 (ID 1372)
  
  ============================
   forall (Γ : Env) (M N T A A' : Term) (s : Sorts),
   Γ ⊢ M ▹▹ N : T -> Γ ⊢ A ▹ A' : !s -> A :: Γ ⊢ M ↑ 1 ▹▹ N ↑ 1 : T ↑ 1

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 1381)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   A :: Γ ⊢ M ↑ 1 ▹▹ N ↑ 1 : T ↑ 1

(dependent evars:)


eapply weakening.
3 subgoals, subgoal 1 (ID 1405)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   ?1404 ⊢ M ▹▹ N : T

subgoal 2 (ID 1408) is:
 ins_in_env ?1406 ?1407 0 ?1404 (A :: Γ)
subgoal 3 (ID 1411) is:
 ?1406 ⊢ ?1407 ▹ ?1409 : !?1410
(dependent evars: ?1388 using ?1396 , ?1389 using ?1398 , ?1390 using ?1399 , ?1391 using ?1401 , ?1392 using ?1402 , ?1396 using ?1404 , ?1398 using ?1406 , ?1399 using ?1407 , ?1401 using ?1409 , ?1402 using ?1410 , ?1404 open, ?1406 open, ?1407 open, ?1409 open, ?1410 open,)

apply H.
2 subgoals, subgoal 1 (ID 1408)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   ins_in_env ?1406 ?1407 0 Γ (A :: Γ)

subgoal 2 (ID 1411) is:
 ?1406 ⊢ ?1407 ▹ ?1409 : !?1410
(dependent evars: ?1388 using ?1396 , ?1389 using ?1398 , ?1390 using ?1399 , ?1391 using ?1401 , ?1392 using ?1402 , ?1396 using ?1404 , ?1398 using ?1406 , ?1399 using ?1407 , ?1401 using ?1409 , ?1402 using ?1410 , ?1404 using , ?1406 open, ?1407 open, ?1409 open, ?1410 open,)

constructor.
1 subgoals, subgoal 1 (ID 1411)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ M ▹▹ N : T
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ ⊢ A ▹ ?1409 : !?1410

(dependent evars: ?1388 using ?1396 , ?1389 using ?1398 , ?1390 using ?1399 , ?1391 using ?1401 , ?1392 using ?1402 , ?1396 using ?1404 , ?1398 using ?1406 , ?1399 using ?1407 , ?1401 using ?1409 , ?1402 using ?1410 , ?1404 using , ?1406 using , ?1407 using , ?1409 open, ?1410 open,)

apply H0.
No more subgoals.
(dependent evars: ?1388 using ?1396 , ?1389 using ?1398 , ?1390 using ?1399 , ?1391 using ?1401 , ?1392 using ?1402 , ?1396 using ?1404 , ?1398 using ?1406 , ?1399 using ?1407 , ?1401 using ?1409 , ?1402 using ?1410 , ?1404 using , ?1406 using , ?1407 using , ?1409 using , ?1410 using ,)


Qed.
thinning_reds is defined



Lemma wf_from_typ : forall Γ M N T, Γ M N : T -> Γ .
1 subgoals, subgoal 1 (ID 1427)
  
  ============================
   forall (Γ : Env) (M N T : Term), Γ ⊢ M ▹ N : T -> Γ ⊣

(dependent evars:)


induction 1; eauto.
No more subgoals.
(dependent evars:)


Qed.
wf_from_typ is defined



Lemma wf_from_typ_reds : forall Γ M N T, Γ M ▹▹ N : T -> Γ .
1 subgoals, subgoal 1 (ID 1610)
  
  ============================
   forall (Γ : Env) (M N T : Term), Γ ⊢ M ▹▹ N : T -> Γ ⊣

(dependent evars:)


induction 1.
2 subgoals, subgoal 1 (ID 1632)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  ============================
   Γ ⊣

subgoal 2 (ID 1642) is:
 Γ ⊣
(dependent evars:)

apply wf_from_typ in H; trivial.
1 subgoals, subgoal 1 (ID 1642)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : Γ ⊣
  IHtyp_reds2 : Γ ⊣
  ============================
   Γ ⊣

(dependent evars:)


trivial.
No more subgoals.
(dependent evars:)


Qed.
wf_from_typ_reds is defined



Hint Resolve wf_from_typ wf_from_typ_reds.
Warning: the hint: eapply wf_from_typ will only be used by eauto
Warning: the hint: eapply wf_from_typ_reds will only be used by eauto



Theorem thinning_n : forall n Δ Δ',
   trunc n Δ Δ' ->
   forall M N T , Δ' M N : T -> Δ ->
               Δ M n N n : T n.
1 subgoals, subgoal 1 (ID 1659)
  
  ============================
   forall (n : nat) (Δ Δ' : list Term),
   trunc n Δ Δ' ->
   forall M N T : Term, Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n

(dependent evars:)


induction n; intros.
2 subgoals, subgoal 1 (ID 1674)
  
  Δ : list Term
  Δ' : list Term
  H : trunc 0 Δ Δ'
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  H1 : Δ ⊣
  ============================
   Δ ⊢ M ↑ 0 ▹ N ↑ 0 : T ↑ 0

subgoal 2 (ID 1682) is:
 Δ ⊢ M ↑ (S n) ▹ N ↑ (S n) : T ↑ (S n)
(dependent evars:)


inversion H; subst; clear H.
2 subgoals, subgoal 1 (ID 1742)
  
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  H1 : Δ' ⊣
  ============================
   Δ' ⊢ M ↑ 0 ▹ N ↑ 0 : T ↑ 0

subgoal 2 (ID 1682) is:
 Δ ⊢ M ↑ (S n) ▹ N ↑ (S n) : T ↑ (S n)
(dependent evars:)

rewrite 3! lift0; trivial.
1 subgoals, subgoal 1 (ID 1682)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ : list Term
  Δ' : list Term
  H : trunc (S n) Δ Δ'
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  H1 : Δ ⊣
  ============================
   Δ ⊢ M ↑ (S n) ▹ N ↑ (S n) : T ↑ (S n)

(dependent evars:)



inversion H; subst; clear H.
1 subgoals, subgoal 1 (ID 1810)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ (S n) ▹ N ↑ (S n) : T ↑ (S n)

(dependent evars:)


change (S n) with (1+n).
1 subgoals, subgoal 1 (ID 1812)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ (1 + n) ▹ N ↑ (1 + n) : T ↑ (1 + n)

(dependent evars:)


replace (M (1+n)) with ((M n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 1816)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹ N ↑ (1 + n) : T ↑ (1 + n)

(dependent evars:)


replace (N (1+n)) with ((N n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 1821)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹ N ↑ n ↑ 1 : T ↑ (1 + n)

(dependent evars:)


replace (T (1+n)) with ((T n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 1826)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹ N ↑ n ↑ 1 : T ↑ n ↑ 1

(dependent evars:)


inversion H1; subst; clear H1.
1 subgoals, subgoal 1 (ID 1877)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹ N ↑ n ↑ 1 : T ↑ n ↑ 1

(dependent evars:)


eapply thinning.
2 subgoals, subgoal 1 (ID 1880)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊢ M ↑ n ▹ N ↑ n : T ↑ n

subgoal 2 (ID 1881) is:
 Γ ⊢ x ▹ ?1878 : !?1879
(dependent evars: ?1878 open, ?1879 open,)

eapply IHn.
4 subgoals, subgoal 1 (ID 1883)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   trunc n Γ ?1882

subgoal 2 (ID 1884) is:
 ?1882 ⊢ M ▹ N : T
subgoal 3 (ID 1885) is:
 Γ ⊣
subgoal 4 (ID 1881) is:
 Γ ⊢ x ▹ ?1878 : !?1879
(dependent evars: ?1878 open, ?1879 open, ?1882 open,)

apply H3.
3 subgoals, subgoal 1 (ID 1884)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Δ' ⊢ M ▹ N : T

subgoal 2 (ID 1885) is:
 Γ ⊣
subgoal 3 (ID 1881) is:
 Γ ⊢ x ▹ ?1878 : !?1879
(dependent evars: ?1878 open, ?1879 open, ?1882 using ,)

trivial.
2 subgoals, subgoal 1 (ID 1885)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊣

subgoal 2 (ID 1881) is:
 Γ ⊢ x ▹ ?1878 : !?1879
(dependent evars: ?1878 open, ?1879 open, ?1882 using ,)


apply wf_from_typ in H2; trivial.
1 subgoals, subgoal 1 (ID 1881)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊢ x ▹ ?1878 : !?1879

(dependent evars: ?1878 open, ?1879 open, ?1882 using ,)


apply H2.
No more subgoals.
(dependent evars: ?1878 using , ?1879 using , ?1882 using ,)


Qed.
thinning_n is defined



Theorem thinning_reds_n : forall n Δ Δ',
   trunc n Δ Δ' ->
   forall M N T , Δ' M ▹▹ N : T -> Δ ->
               Δ M n ▹▹ N n : T n.
1 subgoals, subgoal 1 (ID 1906)
  
  ============================
   forall (n : nat) (Δ Δ' : list Term),
   trunc n Δ Δ' ->
   forall M N T : Term, Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n

(dependent evars:)


induction n; intros.
2 subgoals, subgoal 1 (ID 1921)
  
  Δ : list Term
  Δ' : list Term
  H : trunc 0 Δ Δ'
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  H1 : Δ ⊣
  ============================
   Δ ⊢ M ↑ 0 ▹▹ N ↑ 0 : T ↑ 0

subgoal 2 (ID 1929) is:
 Δ ⊢ M ↑ (S n) ▹▹ N ↑ (S n) : T ↑ (S n)
(dependent evars:)


inversion H; subst; clear H.
2 subgoals, subgoal 1 (ID 1989)
  
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  H1 : Δ' ⊣
  ============================
   Δ' ⊢ M ↑ 0 ▹▹ N ↑ 0 : T ↑ 0

subgoal 2 (ID 1929) is:
 Δ ⊢ M ↑ (S n) ▹▹ N ↑ (S n) : T ↑ (S n)
(dependent evars:)

rewrite 3! lift0; trivial.
1 subgoals, subgoal 1 (ID 1929)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ : list Term
  Δ' : list Term
  H : trunc (S n) Δ Δ'
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  H1 : Δ ⊣
  ============================
   Δ ⊢ M ↑ (S n) ▹▹ N ↑ (S n) : T ↑ (S n)

(dependent evars:)



inversion H; subst; clear H.
1 subgoals, subgoal 1 (ID 2057)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ (S n) ▹▹ N ↑ (S n) : T ↑ (S n)

(dependent evars:)


change (S n) with (1+n).
1 subgoals, subgoal 1 (ID 2059)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ (1 + n) ▹▹ N ↑ (1 + n) : T ↑ (1 + n)

(dependent evars:)


replace (M (1+n)) with ((M n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 2063)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹▹ N ↑ (1 + n) : T ↑ (1 + n)

(dependent evars:)


replace (N (1+n)) with ((N n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 2068)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹▹ N ↑ n ↑ 1 : T ↑ (1 + n)

(dependent evars:)


replace (T (1+n)) with ((T n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 2073)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹▹ N ↑ n ↑ 1 : T ↑ n ↑ 1

(dependent evars:)


inversion H1; subst; clear H1.
1 subgoals, subgoal 1 (ID 2124)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   x :: Γ ⊢ M ↑ n ↑ 1 ▹▹ N ↑ n ↑ 1 : T ↑ n ↑ 1

(dependent evars:)


eapply thinning_reds.
2 subgoals, subgoal 1 (ID 2127)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n

subgoal 2 (ID 2128) is:
 Γ ⊢ x ▹ ?2125 : !?2126
(dependent evars: ?2125 open, ?2126 open,)

eapply IHn.
4 subgoals, subgoal 1 (ID 2130)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   trunc n Γ ?2129

subgoal 2 (ID 2131) is:
 ?2129 ⊢ M ▹▹ N : T
subgoal 3 (ID 2132) is:
 Γ ⊣
subgoal 4 (ID 2128) is:
 Γ ⊢ x ▹ ?2125 : !?2126
(dependent evars: ?2125 open, ?2126 open, ?2129 open,)

apply H3.
3 subgoals, subgoal 1 (ID 2131)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Δ' ⊢ M ▹▹ N : T

subgoal 2 (ID 2132) is:
 Γ ⊣
subgoal 3 (ID 2128) is:
 Γ ⊢ x ▹ ?2125 : !?2126
(dependent evars: ?2125 open, ?2126 open, ?2129 using ,)

trivial.
2 subgoals, subgoal 1 (ID 2132)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊣

subgoal 2 (ID 2128) is:
 Γ ⊢ x ▹ ?2125 : !?2126
(dependent evars: ?2125 open, ?2126 open, ?2129 using ,)


apply wf_from_typ in H2; trivial.
1 subgoals, subgoal 1 (ID 2128)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall M N T : Term,
        Δ' ⊢ M ▹▹ N : T -> Δ ⊣ -> Δ ⊢ M ↑ n ▹▹ N ↑ n : T ↑ n
  Δ' : list Term
  M : Term
  N : Term
  T : Term
  H0 : Δ' ⊢ M ▹▹ N : T
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊢ x ▹ ?2125 : !?2126

(dependent evars: ?2125 open, ?2126 open, ?2129 using ,)


apply H2.
No more subgoals.
(dependent evars: ?2125 using , ?2126 using , ?2129 using ,)


Qed.
thinning_reds_n is defined



In order to prove substitution for PTS{atr}, we first need to prove some context conversion lemmas, because of the new annotation we added. We will first prove some weak form of conversion, where the ending context is supposed to be welltyped. As soon as we will have the substitution property, we will be able to prove that it's in fact always the case. Reduction in context definition .
Inductive env_red1 : Env -> Env -> Prop :=
 | red1_intro : forall Γ A B s , Γ A B : !s -> env_red1 (A::Γ) (B::Γ)
 | red1_next : forall A Γ Γ', env_red1 Γ Γ' -> env_red1 (A::Γ) (A::Γ')
.
env_red1 is defined
env_red1_ind is defined



Hint Constructors env_red1.
Warning: the hint: eapply red1_intro will only be used by eauto



Inductive env_red : Env -> Env -> Prop :=
 | r_step : forall Γ Γ', env_red1 Γ Γ' -> env_red Γ Γ'
 | r_refl : forall Γ , env_red Γ Γ
 | r_trans : forall Γ Γ' Γ'', env_red Γ Γ' -> env_red Γ' Γ'' -> env_red Γ Γ''.
env_red is defined
env_red_ind is defined



Hint Constructors env_red.
Warning: the hint: eapply r_trans will only be used by eauto



 Lemma red_item : forall n A Γ Γ' , A n Γ -> env_red1 Γ Γ' -> Γ' -> A n Γ' \/
   (forall Γ'', trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\ (exists B, exists s, Γ' A B : !s /\ B n Γ').
1 subgoals, subgoal 1 (ID 2177)
  
  ============================
   forall (n : nat) (A : Term) (Γ Γ' : Env),
   A ↓ n ⊂ Γ ->
   env_red1 Γ Γ' ->
   Γ' ⊣ ->
   A ↓ n ⊂ Γ' \/
   (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
   (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')

(dependent evars:)


induction n; intros.
2 subgoals, subgoal 1 (ID 2190)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : A ↓ 0 ⊂ Γ
  H0 : env_red1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ 0 ⊂ Γ' \/
   (forall Γ'' : list Term, trunc 1 Γ Γ'' -> trunc 1 Γ' Γ'') /\
   (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ 0 ⊂ Γ')

subgoal 2 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

destruct H as (a & ?& ?).
2 subgoals, subgoal 1 (ID 2207)
  
  A : Term
  Γ : Env
  Γ' : Env
  a : Term
  H : A = a ↑ 1
  H2 : a ↓ 0 ∈ Γ
  H0 : env_red1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ 0 ⊂ Γ' \/
   (forall Γ'' : list Term, trunc 1 Γ Γ'' -> trunc 1 Γ' Γ'') /\
   (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ 0 ⊂ Γ')

subgoal 2 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

inversion H2; subst; clear H2.
2 subgoals, subgoal 1 (ID 2256)
  
  Γ' : Env
  a : Term
  H1 : Γ' ⊣
  l : list Term
  H0 : env_red1 (a :: l) Γ'
  ============================
   a ↑ 1 ↓ 0 ⊂ Γ' \/
   (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 Γ' Γ'') /\
   (exists (B : Term) (s : Sorts), (Γ' ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ Γ')

subgoal 2 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


 inversion H0; subst; clear H0.
3 subgoals, subgoal 1 (ID 2354)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  H1 : B :: l ⊣
  ============================
   a ↑ 1 ↓ 0 ⊂ B :: l \/
   (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (B :: l) Γ'') /\
   (exists (B0 : Term) (s0 : Sorts),
      (B :: l ⊢ a ↑ 1 ▹ B0 : !s0) /\ B0 ↓ 0 ⊂ B :: l)

subgoal 2 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 3 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

inversion H1; subst; clear H1.
3 subgoals, subgoal 1 (ID 2405)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   a ↑ 1 ↓ 0 ⊂ B :: l \/
   (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (B :: l) Γ'') /\
   (exists (B0 : Term) (s1 : Sorts),
      (B :: l ⊢ a ↑ 1 ▹ B0 : !s1) /\ B0 ↓ 0 ⊂ B :: l)

subgoal 2 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 3 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

right.
3 subgoals, subgoal 1 (ID 2407)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (B :: l) Γ'') /\
   (exists (B0 : Term) (s1 : Sorts),
      (B :: l ⊢ a ↑ 1 ▹ B0 : !s1) /\ B0 ↓ 0 ⊂ B :: l)

subgoal 2 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 3 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

split; intros.
4 subgoals, subgoal 1 (ID 2412)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  Γ'' : list Term
  H : trunc 1 (a :: l) Γ''
  ============================
   trunc 1 (B :: l) Γ''

subgoal 2 (ID 2410) is:
 exists (B0 : Term) (s1 : Sorts),
   (B :: l ⊢ a ↑ 1 ▹ B0 : !s1) /\ B0 ↓ 0 ⊂ B :: l
subgoal 3 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 4 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


 inversion H; subst; clear H.
4 subgoals, subgoal 1 (ID 2485)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  Γ'' : list Term
  H6 : trunc 0 l Γ''
  ============================
   trunc 1 (B :: l) Γ''

subgoal 2 (ID 2410) is:
 exists (B0 : Term) (s1 : Sorts),
   (B :: l ⊢ a ↑ 1 ▹ B0 : !s1) /\ B0 ↓ 0 ⊂ B :: l
subgoal 3 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 4 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

constructor; intuition.
3 subgoals, subgoal 1 (ID 2410)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   exists (B0 : Term) (s1 : Sorts),
     (B :: l ⊢ a ↑ 1 ▹ B0 : !s1) /\ B0 ↓ 0 ⊂ B :: l

subgoal 2 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 3 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

exists (B 1); exists s; split.
4 subgoals, subgoal 1 (ID 2494)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   B :: l ⊢ a ↑ 1 ▹ B ↑ 1 : !s

subgoal 2 (ID 2495) is:
 B ↑ 1 ↓ 0 ⊂ B :: l
subgoal 3 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 4 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


 change !s with (!s 1).
4 subgoals, subgoal 1 (ID 2497)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   B :: l ⊢ a ↑ 1 ▹ B ↑ 1 : !s ↑ 1

subgoal 2 (ID 2495) is:
 B ↑ 1 ↓ 0 ⊂ B :: l
subgoal 3 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 4 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

eapply thinning.
5 subgoals, subgoal 1 (ID 2500)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   l ⊢ a ▹ B : !s

subgoal 2 (ID 2501) is:
 l ⊢ B ▹ ?2498 : !?2499
subgoal 3 (ID 2495) is:
 B ↑ 1 ↓ 0 ⊂ B :: l
subgoal 4 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 5 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars: ?2498 open, ?2499 open,)

trivial.
4 subgoals, subgoal 1 (ID 2501)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   l ⊢ B ▹ ?2498 : !?2499

subgoal 2 (ID 2495) is:
 B ↑ 1 ↓ 0 ⊂ B :: l
subgoal 3 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 4 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars: ?2498 open, ?2499 open,)

apply H0.
3 subgoals, subgoal 1 (ID 2495)
  
  a : Term
  l : list Term
  B : Term
  s : Sorts
  H4 : l ⊢ a ▹ B : !s
  A' : Term
  s0 : Sorts
  H0 : l ⊢ B ▹ A' : !s0
  ============================
   B ↑ 1 ↓ 0 ⊂ B :: l

subgoal 2 (ID 2355) is:
 a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)
subgoal 3 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars: ?2498 using , ?2499 using ,)

exists B; intuition.
2 subgoals, subgoal 1 (ID 2355)
  
  a : Term
  l : list Term
  Γ'0 : Env
  H4 : env_red1 l Γ'0
  H1 : a :: Γ'0 ⊣
  ============================
   a ↑ 1 ↓ 0 ⊂ a :: Γ'0 \/
   (forall Γ'' : list Term, trunc 1 (a :: l) Γ'' -> trunc 1 (a :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (a :: Γ'0 ⊢ a ↑ 1 ▹ B : !s) /\ B ↓ 0 ⊂ a :: Γ'0)

subgoal 2 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars: ?2498 using , ?2499 using ,)


 left.
2 subgoals, subgoal 1 (ID 2518)
  
  a : Term
  l : list Term
  Γ'0 : Env
  H4 : env_red1 l Γ'0
  H1 : a :: Γ'0 ⊣
  ============================
   a ↑ 1 ↓ 0 ⊂ a :: Γ'0

subgoal 2 (ID 2196) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')
(dependent evars: ?2498 using , ?2499 using ,)

exists a; intuition.
1 subgoals, subgoal 1 (ID 2196)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A : Term
  Γ : Env
  Γ' : Env
  H : A ↓ S n ⊂ Γ
  H0 : env_red1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ S n ⊂ Γ' \/
   (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
   (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ Γ')

(dependent evars: ?2498 using , ?2499 using ,)



 inversion H0; subst; clear H0.
2 subgoals, subgoal 1 (ID 2604)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A : Term
  Γ0 : Env
  A0 : Term
  B : Term
  s : Sorts
  H2 : Γ0 ⊢ A0 ▹ B : !s
  H1 : B :: Γ0 ⊣
  H : A ↓ S n ⊂ A0 :: Γ0
  ============================
   A ↓ S n ⊂ B :: Γ0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (B :: Γ0) Γ'') /\
   (exists (B0 : Term) (s0 : Sorts),
      (B :: Γ0 ⊢ A ▹ B0 : !s0) /\ B0 ↓ S n ⊂ B :: Γ0)

subgoal 2 (ID 2605) is:
 A ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

destruct H as (a & ?& ?).
2 subgoals, subgoal 1 (ID 2613)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A : Term
  Γ0 : Env
  A0 : Term
  B : Term
  s : Sorts
  H2 : Γ0 ⊢ A0 ▹ B : !s
  H1 : B :: Γ0 ⊣
  a : Term
  H : A = a ↑ (S (S n))
  H0 : a ↓ S n ∈ A0 :: Γ0
  ============================
   A ↓ S n ⊂ B :: Γ0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (B :: Γ0) Γ'') /\
   (exists (B0 : Term) (s0 : Sorts),
      (B :: Γ0 ⊢ A ▹ B0 : !s0) /\ B0 ↓ S n ⊂ B :: Γ0)

subgoal 2 (ID 2605) is:
 A ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

inversion H0; subst; clear H0.
2 subgoals, subgoal 1 (ID 2690)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  Γ0 : Env
  A0 : Term
  B : Term
  s : Sorts
  H2 : Γ0 ⊢ A0 ▹ B : !s
  H1 : B :: Γ0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ B :: Γ0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (B :: Γ0) Γ'') /\
   (exists (B0 : Term) (s0 : Sorts),
      (B :: Γ0 ⊢ a ↑ (S (S n)) ▹ B0 : !s0) /\ B0 ↓ S n ⊂ B :: Γ0)

subgoal 2 (ID 2605) is:
 A ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)


 left.
2 subgoals, subgoal 1 (ID 2692)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  Γ0 : Env
  A0 : Term
  B : Term
  s : Sorts
  H2 : Γ0 ⊢ A0 ▹ B : !s
  H1 : B :: Γ0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ B :: Γ0

subgoal 2 (ID 2605) is:
 A ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

exists a; split.
3 subgoals, subgoal 1 (ID 2696)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  Γ0 : Env
  A0 : Term
  B : Term
  s : Sorts
  H2 : Γ0 ⊢ A0 ▹ B : !s
  H1 : B :: Γ0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   a ↑ (S (S n)) = a ↑ (S (S n))

subgoal 2 (ID 2697) is:
 a ↓ S n ∈ B :: Γ0
subgoal 3 (ID 2605) is:
 A ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

trivial.
2 subgoals, subgoal 1 (ID 2697)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  Γ0 : Env
  A0 : Term
  B : Term
  s : Sorts
  H2 : Γ0 ⊢ A0 ▹ B : !s
  H1 : B :: Γ0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   a ↓ S n ∈ B :: Γ0

subgoal 2 (ID 2605) is:
 A ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

constructor; trivial.
1 subgoals, subgoal 1 (ID 2605)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A : Term
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  H : A ↓ S n ⊂ A0 :: Γ0
  ============================
   A ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)

destruct H as (a & ? & ?).
1 subgoals, subgoal 1 (ID 2708)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A : Term
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H : A = a ↑ (S (S n))
  H0 : a ↓ S n ∈ A0 :: Γ0
  ============================
   A ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ A ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)


 inversion H0; subst; clear H0.
1 subgoals, subgoal 1 (ID 2785)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)

destruct (IHn (a (S n)) Γ0 Γ'0); trivial.
4 subgoals, subgoal 1 (ID 2794)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   a ↑ (S n) ↓ n ⊂ Γ0

subgoal 2 (ID 2798) is:
 Γ'0 ⊣
subgoal 3 (ID 2803) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
subgoal 4 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)


 exists a; intuition.
3 subgoals, subgoal 1 (ID 2798)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  ============================
   Γ'0 ⊣

subgoal 2 (ID 2803) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
subgoal 3 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

inversion H1; subst; clear H1.
3 subgoals, subgoal 1 (ID 2860)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  a : Term
  H4 : a ↓ n ∈ Γ0
  A' : Term
  s : Sorts
  H0 : Γ'0 ⊢ A0 ▹ A' : !s
  ============================
   Γ'0 ⊣

subgoal 2 (ID 2803) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
subgoal 3 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

apply wf_from_typ in H0; trivial.
2 subgoals, subgoal 1 (ID 2803)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : a ↑ (S n) ↓ n ⊂ Γ'0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

subgoal 2 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)


 destruct H as ( ? & ?& ?).
2 subgoals, subgoal 1 (ID 2870)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  x : Term
  H : a ↑ (S n) = x ↑ (S n)
  H0 : x ↓ n ∈ Γ'0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

subgoal 2 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

apply inv_lift in H; subst.
2 subgoals, subgoal 1 (ID 2877)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  x : Term
  H0 : x ↓ n ∈ Γ'0
  H4 : x ↓ n ∈ Γ0
  ============================
   x ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ x ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

subgoal 2 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

left.
2 subgoals, subgoal 1 (ID 2879)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  x : Term
  H0 : x ↓ n ∈ Γ'0
  H4 : x ↓ n ∈ Γ0
  ============================
   x ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0

subgoal 2 (ID 2804) is:
 a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
 (exists (B : Term) (s : Sorts),
    (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)
(dependent evars: ?2498 using , ?2499 using ,)

exists x; intuition.
1 subgoals, subgoal 1 (ID 2804)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : (forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ'') /\
      (exists (B : Term) (s : Sorts),
         (Γ'0 ⊢ a ↑ (S n) ▹ B : !s) /\ B ↓ n ⊂ Γ'0)
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)


 destruct H.
1 subgoals, subgoal 1 (ID 2901)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists (B : Term) (s : Sorts),
         (Γ'0 ⊢ a ↑ (S n) ▹ B : !s) /\ B ↓ n ⊂ Γ'0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)

destruct H0 as ( a' & s' & ? & ?).
1 subgoals, subgoal 1 (ID 2913)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   a ↑ (S (S n)) ↓ S n ⊂ A0 :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)

right.
1 subgoals, subgoal 1 (ID 2915)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   (forall Γ'' : list Term,
    trunc (S (S n)) (A0 :: Γ0) Γ'' -> trunc (S (S n)) (A0 :: Γ'0) Γ'') /\
   (exists (B : Term) (s : Sorts),
      (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0)

(dependent evars: ?2498 using , ?2499 using ,)

split; intros.
2 subgoals, subgoal 1 (ID 2920)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  Γ'' : list Term
  H5 : trunc (S (S n)) (A0 :: Γ0) Γ''
  ============================
   trunc (S (S n)) (A0 :: Γ'0) Γ''

subgoal 2 (ID 2918) is:
 exists (B : Term) (s : Sorts),
   (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)


 inversion H5; subst; clear H5.
2 subgoals, subgoal 1 (ID 2993)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  Γ'' : list Term
  H10 : trunc (S n) Γ0 Γ''
  ============================
   trunc (S (S n)) (A0 :: Γ'0) Γ''

subgoal 2 (ID 2918) is:
 exists (B : Term) (s : Sorts),
   (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)

constructor.
2 subgoals, subgoal 1 (ID 2996)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  Γ'' : list Term
  H10 : trunc (S n) Γ0 Γ''
  ============================
   trunc (S n) Γ'0 Γ''

subgoal 2 (ID 2918) is:
 exists (B : Term) (s : Sorts),
   (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)

intuition.
1 subgoals, subgoal 1 (ID 2918)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   exists (B : Term) (s : Sorts),
     (A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ B : !s) /\ B ↓ S n ⊂ A0 :: Γ'0

(dependent evars: ?2498 using , ?2499 using ,)


 exists ( a' 1); exists s'; split.
2 subgoals, subgoal 1 (ID 3020)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ a' ↑ 1 : !s'

subgoal 2 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)

change !s' with (!s' 1).
2 subgoals, subgoal 1 (ID 3023)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   A0 :: Γ'0 ⊢ a ↑ (S (S n)) ▹ a' ↑ 1 : !s' ↑ 1

subgoal 2 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)

change (S (S n)) with (1+ S n).
2 subgoals, subgoal 1 (ID 3025)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   A0 :: Γ'0 ⊢ a ↑ (1 + S n) ▹ a' ↑ 1 : !s' ↑ 1

subgoal 2 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)


 rewrite <- lift_lift.
2 subgoals, subgoal 1 (ID 3026)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   A0 :: Γ'0 ⊢ a ↑ (S n) ↑ 1 ▹ a' ↑ 1 : !s' ↑ 1

subgoal 2 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)

inversion H1; subst; clear H1.
2 subgoals, subgoal 1 (ID 3076)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  A' : Term
  s : Sorts
  H6 : Γ'0 ⊢ A0 ▹ A' : !s
  ============================
   A0 :: Γ'0 ⊢ a ↑ (S n) ↑ 1 ▹ a' ↑ 1 : !s' ↑ 1

subgoal 2 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using ,)

eapply thinning.
3 subgoals, subgoal 1 (ID 3079)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  A' : Term
  s : Sorts
  H6 : Γ'0 ⊢ A0 ▹ A' : !s
  ============================
   Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'

subgoal 2 (ID 3080) is:
 Γ'0 ⊢ A0 ▹ ?3077 : !?3078
subgoal 3 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using , ?3077 open, ?3078 open,)

trivial.
2 subgoals, subgoal 1 (ID 3080)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  A' : Term
  s : Sorts
  H6 : Γ'0 ⊢ A0 ▹ A' : !s
  ============================
   Γ'0 ⊢ A0 ▹ ?3077 : !?3078

subgoal 2 (ID 3021) is:
 a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using , ?3077 open, ?3078 open,)

apply H6.
1 subgoals, subgoal 1 (ID 3021)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  H3 : a' ↓ n ⊂ Γ'0
  ============================
   a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0

(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)


 destruct H3 as (b & ?& ?).
1 subgoals, subgoal 1 (ID 3088)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  b : Term
  H3 : a' = b ↑ (S n)
  H5 : b ↓ n ∈ Γ'0
  ============================
   a' ↑ 1 ↓ S n ⊂ A0 :: Γ'0

(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)

exists b; split.
2 subgoals, subgoal 1 (ID 3092)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  b : Term
  H3 : a' = b ↑ (S n)
  H5 : b ↓ n ∈ Γ'0
  ============================
   a' ↑ 1 = b ↑ (S (S n))

subgoal 2 (ID 3093) is:
 b ↓ S n ∈ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)

subst.
2 subgoals, subgoal 1 (ID 3098)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  s' : Sorts
  b : Term
  H5 : b ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ b ↑ (S n) : !s'
  ============================
   b ↑ (S n) ↑ 1 = b ↑ (S (S n))

subgoal 2 (ID 3093) is:
 b ↓ S n ∈ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)

rewrite lift_lift.
2 subgoals, subgoal 1 (ID 3099)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  s' : Sorts
  b : Term
  H5 : b ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ b ↑ (S n) : !s'
  ============================
   b ↑ (1 + S n) = b ↑ (S (S n))

subgoal 2 (ID 3093) is:
 b ↓ S n ∈ A0 :: Γ'0
(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)

trivial.
1 subgoals, subgoal 1 (ID 3093)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_red1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ n ⊂ Γ')
  A0 : Term
  Γ0 : Env
  Γ'0 : Env
  H2 : env_red1 Γ0 Γ'0
  H1 : A0 :: Γ'0 ⊣
  a : Term
  H4 : a ↓ n ∈ Γ0
  H : forall Γ'' : list Term, trunc (S n) Γ0 Γ'' -> trunc (S n) Γ'0 Γ''
  a' : Term
  s' : Sorts
  H0 : Γ'0 ⊢ a ↑ (S n) ▹ a' : !s'
  b : Term
  H3 : a' = b ↑ (S n)
  H5 : b ↓ n ∈ Γ'0
  ============================
   b ↓ S n ∈ A0 :: Γ'0

(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)

constructor; trivial.
No more subgoals.
(dependent evars: ?2498 using , ?2499 using , ?3077 using , ?3078 using ,)


Qed.
red_item is defined



Lemma red1_in_env : (forall Γ M N T, Γ M N : T -> forall Γ', Γ' -> env_red1 Γ Γ'-> Γ' M N : T ) /\
 (forall Γ M N T, Γ M ▹▹ N : T -> forall Γ', Γ' -> env_red1 Γ Γ'-> Γ' M ▹▹ N : T ) /\
 (forall Γ, Γ -> True).
1 subgoals, subgoal 1 (ID 3122)
  
  ============================
   (forall (Γ : Env) (M N T : Term),
    Γ ⊢ M ▹ N : T -> forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ N : T) /\
   (forall (Γ : Env) (M N T : Term),
    Γ ⊢ M ▹▹ N : T ->
    forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹▹ N : T) /\
   (forall Γ : Env, Γ ⊣ -> True)

(dependent evars:)


apply typ_induc; intros; simpl; trivial.
10 subgoals, subgoal 1 (ID 3295)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 3296) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


destruct (red_item x A Γ Γ' i H1 H0).
11 subgoals, subgoal 1 (ID 3315)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  H2 : A ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 3316) is:
 Γ' ⊢ #x ▹ #x : A
subgoal 3 (ID 3296) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 5 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 6 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 7 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 8 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 9 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 10 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 11 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

intuition.
10 subgoals, subgoal 1 (ID 3316)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  H2 : (forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ'') /\
       (exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ x ⊂ Γ')
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 3296) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

destruct H2.
10 subgoals, subgoal 1 (ID 3333)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  H2 : forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ''
  H3 : exists (B : Term) (s : Sorts), (Γ' ⊢ A ▹ B : !s) /\ B ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 3296) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

destruct H3 as (A' & s & ? & ?).
10 subgoals, subgoal 1 (ID 3345)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  H2 : forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ''
  A' : Term
  s : Sorts
  H3 : Γ' ⊢ A ▹ A' : !s
  H4 : A' ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 3296) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


apply typ_exp with A' s; trivial.
10 subgoals, subgoal 1 (ID 3346)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  H2 : forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ''
  A' : Term
  s : Sorts
  H3 : Γ' ⊢ A ▹ A' : !s
  H4 : A' ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A'

subgoal 2 (ID 3296) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

intuition.
9 subgoals, subgoal 1 (ID 3296)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : True
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 3297) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 3 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


intuition.
8 subgoals, subgoal 1 (ID 3297)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3

subgoal 2 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


apply typ_pi with s1 s2; intuition.
8 subgoals, subgoal 1 (ID 3379)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊢ B ▹ B' : !s2

subgoal 2 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

eapply H0.
9 subgoals, subgoal 1 (ID 3420)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 3421) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

econstructor.
9 subgoals, subgoal 1 (ID 3426)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ ?3424 : !?3425

subgoal 2 (ID 3421) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 open, ?3425 open,)

apply H; trivial.
8 subgoals, subgoal 1 (ID 3421)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   env_red1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 3298) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using ,)

intuition.
7 subgoals, subgoal 1 (ID 3298)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B

subgoal 2 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using ,)


apply typ_la with s1 s2 s3; intuition.
8 subgoals, subgoal 1 (ID 3449)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊢ B ▹ B : !s2

subgoal 2 (ID 3450) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using ,)


eapply H0.
9 subgoals, subgoal 1 (ID 3521)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 3522) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3450) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using ,)

econstructor.
9 subgoals, subgoal 1 (ID 3527)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ ?3525 : !?3526

subgoal 2 (ID 3522) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3450) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 open, ?3526 open,)

apply H; trivial.
8 subgoals, subgoal 1 (ID 3522)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   env_red1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 3450) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using ,)

intuition.
7 subgoals, subgoal 1 (ID 3450)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊢ M ▹ M' : B

subgoal 2 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using ,)


eapply H1.
8 subgoals, subgoal 1 (ID 3551)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 3552) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using ,)

econstructor.
8 subgoals, subgoal 1 (ID 3557)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ ?3555 : !?3556

subgoal 2 (ID 3552) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 open, ?3556 open,)

apply H; trivial.
7 subgoals, subgoal 1 (ID 3552)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : Γ' ⊣
  H3 : env_red1 Γ Γ'
  ============================
   env_red1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 3299) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using ,)

intuition.
6 subgoals, subgoal 1 (ID 3299)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using ,)


eapply typ_app.
10 subgoals, subgoal 1 (ID 3584)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   Rel ?3581 ?3582 ?3583

subgoal 2 (ID 3585) is:
 Γ' ⊢ A ▹ A' : !?3581
subgoal 3 (ID 3586) is:
 A :: Γ' ⊢ B ▹ B' : !?3582
subgoal 4 (ID 3587) is:
 Γ' ⊢ M ▹ M' : Π (A), B
subgoal 5 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 6 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 open, ?3582 open, ?3583 open,)

apply r.
9 subgoals, subgoal 1 (ID 3585)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ A' : !s1

subgoal 2 (ID 3586) is:
 A :: Γ' ⊢ B ▹ B' : !s2
subgoal 3 (ID 3587) is:
 Γ' ⊢ M ▹ M' : Π (A), B
subgoal 4 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using ,)

intuition.
8 subgoals, subgoal 1 (ID 3586)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊢ B ▹ B' : !s2

subgoal 2 (ID 3587) is:
 Γ' ⊢ M ▹ M' : Π (A), B
subgoal 3 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using ,)


eapply H0.
9 subgoals, subgoal 1 (ID 3616)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 3617) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3587) is:
 Γ' ⊢ M ▹ M' : Π (A), B
subgoal 4 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using ,)

econstructor.
9 subgoals, subgoal 1 (ID 3622)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ ?3620 : !?3621

subgoal 2 (ID 3617) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3587) is:
 Γ' ⊢ M ▹ M' : Π (A), B
subgoal 4 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 open, ?3621 open,)

apply H; trivial.
8 subgoals, subgoal 1 (ID 3617)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   env_red1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 3587) is:
 Γ' ⊢ M ▹ M' : Π (A), B
subgoal 3 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using ,)

intuition.
7 subgoals, subgoal 1 (ID 3587)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ M ▹ M' : Π (A), B

subgoal 2 (ID 3588) is:
 Γ' ⊢ N ▹ N' : A
subgoal 3 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using ,)


intuition.
6 subgoals, subgoal 1 (ID 3588)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : Γ' ⊣
  H4 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ N ▹ N' : A

subgoal 2 (ID 3300) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using ,)

intuition.
5 subgoals, subgoal 1 (ID 3300)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]

subgoal 2 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 3 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 4 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 5 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using ,)


eapply typ_beta.
12 subgoals, subgoal 1 (ID 3709)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Rel ?3706 ?3707 ?3708

subgoal 2 (ID 3710) is:
 Γ' ⊢ A ▹ A : !?3706
subgoal 3 (ID 3711) is:
 Γ' ⊢ A' ▹ A' : !?3706
subgoal 4 (ID 3712) is:
 Γ' ⊢ ?3705 ▹▹ A : !?3706
subgoal 5 (ID 3713) is:
 Γ' ⊢ ?3705 ▹▹ A' : !?3706
subgoal 6 (ID 3714) is:
 A :: Γ' ⊢ B ▹ B : !?3707
subgoal 7 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 8 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 9 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 10 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 11 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 12 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 open, ?3706 open, ?3707 open, ?3708 open,)

apply r.
11 subgoals, subgoal 1 (ID 3710)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ A : !s1

subgoal 2 (ID 3711) is:
 Γ' ⊢ A' ▹ A' : !s1
subgoal 3 (ID 3712) is:
 Γ' ⊢ ?3705 ▹▹ A : !s1
subgoal 4 (ID 3713) is:
 Γ' ⊢ ?3705 ▹▹ A' : !s1
subgoal 5 (ID 3714) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 6 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 7 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 8 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 9 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 10 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 11 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 open, ?3706 using , ?3707 using , ?3708 using ,)

apply H; intuition.
10 subgoals, subgoal 1 (ID 3711)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A' ▹ A' : !s1

subgoal 2 (ID 3712) is:
 Γ' ⊢ ?3705 ▹▹ A : !s1
subgoal 3 (ID 3713) is:
 Γ' ⊢ ?3705 ▹▹ A' : !s1
subgoal 4 (ID 3714) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 5 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 6 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 7 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 open, ?3706 using , ?3707 using , ?3708 using ,)

apply H0; intuition.
9 subgoals, subgoal 1 (ID 3712)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ ?3705 ▹▹ A : !s1

subgoal 2 (ID 3713) is:
 Γ' ⊢ ?3705 ▹▹ A' : !s1
subgoal 3 (ID 3714) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 4 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 5 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 6 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 open, ?3706 using , ?3707 using , ?3708 using ,)

apply H1; intuition.
8 subgoals, subgoal 1 (ID 3713)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A0 ▹▹ A' : !s1

subgoal 2 (ID 3714) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 3 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using ,)

intuition.
7 subgoals, subgoal 1 (ID 3714)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊢ B ▹ B : !s2

subgoal 2 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 3 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using ,)


eapply H3.
8 subgoals, subgoal 1 (ID 3756)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 3757) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using ,)

econstructor.
8 subgoals, subgoal 1 (ID 3762)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ ?3760 : !?3761

subgoal 2 (ID 3757) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 open, ?3761 open,)

apply H; trivial.
7 subgoals, subgoal 1 (ID 3757)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   env_red1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 3715) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 3 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using ,)

intuition.
6 subgoals, subgoal 1 (ID 3715)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊢ M ▹ M' : B

subgoal 2 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 3 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using ,)


eapply H4.
7 subgoals, subgoal 1 (ID 3797)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 3798) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using ,)

econstructor.
7 subgoals, subgoal 1 (ID 3803)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ A ▹ ?3801 : !?3802

subgoal 2 (ID 3798) is:
 env_red1 (A :: Γ) (A :: Γ')
subgoal 3 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 open, ?3802 open,)

apply H; trivial.
6 subgoals, subgoal 1 (ID 3798)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   env_red1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 3716) is:
 Γ' ⊢ N ▹ N' : A
subgoal 3 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using ,)

intuition.
5 subgoals, subgoal 1 (ID 3716)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, Γ' ⊣ -> env_red1 (A :: Γ) Γ' -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : Γ' ⊣
  H7 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ N ▹ N' : A

subgoal 2 (ID 3301) is:
 Γ' ⊢ M ▹ N : B
subgoal 3 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 4 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 5 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using ,)


intuition.
4 subgoals, subgoal 1 (ID 3301)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ N : A
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ B : !s
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ M ▹ N : B

subgoal 2 (ID 3302) is:
 Γ' ⊢ M ▹ N : A
subgoal 3 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 4 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using ,)


apply typ_red with A s;intuition.
3 subgoals, subgoal 1 (ID 3302)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ M ▹ N : B
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ A ▹ B : !s
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ M ▹ N : A

subgoal 2 (ID 3303) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 3 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using ,)


apply typ_exp with B s;intuition.
2 subgoals, subgoal 1 (ID 3303)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  t0 : Γ ⊢ s ▹ t : T
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ s ▹ t : T
  Γ' : Env
  H0 : Γ' ⊣
  H1 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ s ▹▹ t : T

subgoal 2 (ID 3304) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using ,)


eauto.
1 subgoals, subgoal 1 (ID 3304)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ s ▹▹ t : T
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall Γ' : Env, Γ' ⊣ -> env_red1 Γ Γ' -> Γ' ⊢ t ▹▹ u : T
  Γ' : Env
  H1 : Γ' ⊣
  H2 : env_red1 Γ Γ'
  ============================
   Γ' ⊢ s ▹▹ u : T

(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using ,)


eauto.
No more subgoals.
(dependent evars: ?3424 using , ?3425 using , ?3525 using , ?3526 using , ?3555 using , ?3556 using , ?3581 using , ?3582 using , ?3583 using , ?3620 using , ?3621 using , ?3705 using , ?3706 using , ?3707 using , ?3708 using , ?3760 using , ?3761 using , ?3801 using , ?3802 using , ?3962 using ,)


Qed.
red1_in_env is defined



Reflexive, Transitive, Symetric closure of PTS{atr}. Since we are not functional, we can't inforce the fact that every step is typed by the same type. But we only need the equality at the type level, so we will check that every step is welltyped, by a sort, but we will forget about this sort.
Reserved Notation "Γ ⊢ s ≡' t " (at level 80, s, t, T at level 30, no associativity) .


Inductive typ_peq : Env -> Term -> Term -> Prop :=
 | typ_peq_intro : forall Γ A B s, Γ A B : !s -> Γ A ≡' B
 | typ_peq_intro2 : forall Γ A B s, Γ B A : !s -> Γ A ≡' B
 | typ_peq_trans : forall Γ A B C , Γ A ≡' B -> Γ B ≡' C -> Γ A ≡' C
where "Γ ⊢ s ≡' t " := (typ_peq Γ s t) : Typ_scope.
typ_peq is defined
typ_peq_ind is defined



Hint Constructors typ_peq.
Warning: the hint: eapply typ_peq_intro will only be used by eauto
Warning: the hint: eapply typ_peq_intro2 will only be used by eauto
Warning: the hint: eapply typ_peq_trans will only be used by eauto



Lemma typ_peq_sym : forall Γ A B , Γ A ≡' B -> Γ B ≡' A .
1 subgoals, subgoal 1 (ID 4213)
  
  ============================
   forall (Γ : Env) (A B : Term), Γ ⊢ A ≡' B -> Γ ⊢ B ≡' A

(dependent evars:)


induction 1; eauto.
No more subgoals.
(dependent evars: ?4252 using , ?4269 using , ?4406 using ,)


Qed.
typ_peq_sym is defined



Hint Resolve typ_peq_sym.


Lemma reds_to_conv : forall Γ M N s, Γ M ▹▹ N : !s -> Γ M ≡' N.
1 subgoals, subgoal 1 (ID 4672)
  
  ============================
   forall (Γ : Env) (M N : Term) (s : Sorts), Γ ⊢ M ▹▹ N : !s -> Γ ⊢ M ≡' N

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 4677)
  
  Γ : Env
  M : Term
  N : Term
  s : Sorts
  H : Γ ⊢ M ▹▹ N : !s
  ============================
   Γ ⊢ M ≡' N

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 4684)
  
  Γ : Env
  M : Term
  N : Term
  s : Sorts
  S : Term
  HeqS : S = !s
  H : Γ ⊢ M ▹▹ N : S
  ============================
   Γ ⊢ M ≡' N

(dependent evars:)

revert s HeqS.
1 subgoals, subgoal 1 (ID 4686)
  
  Γ : Env
  M : Term
  N : Term
  S : Term
  H : Γ ⊢ M ▹▹ N : S
  ============================
   forall s : Sorts, S = !s -> Γ ⊢ M ≡' N

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 4722)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ s ≡' t

subgoal 2 (ID 4730) is:
 Γ ⊢ s ≡' u
(dependent evars:)


eauto.
1 subgoals, subgoal 1 (ID 4730)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts, !s0 = !s1 -> Γ ⊢ s ≡' t
  IHtyp_reds2 : forall s : Sorts, !s0 = !s -> Γ ⊢ t ≡' u
  ============================
   Γ ⊢ s ≡' u

(dependent evars: ?4756 using ,)

eauto.
No more subgoals.
(dependent evars: ?4756 using , ?4784 using , ?5469 using , ?5480 using ,)


Qed.
reds_to_conv is defined



Hint Resolve reds_to_conv.
Warning: the hint: eapply reds_to_conv will only be used by eauto



Conversion in Context definition .
Inductive env_conv1 : Env -> Env -> Prop :=
 | conv1_intro : forall Γ A B , Γ A ≡' B -> env_conv1 (A::Γ) (B::Γ)
 | conv1_next : forall A Γ Γ', env_conv1 Γ Γ' -> env_conv1 (A::Γ) (A::Γ')
.
env_conv1 is defined
env_conv1_ind is defined



Hint Constructors env_conv1.


Inductive env_conv : Env -> Env -> Prop :=
 | c_step : forall Γ Γ', env_conv1 Γ Γ' -> env_conv Γ Γ'
 | c_refl : forall Γ , env_conv Γ Γ
 | c_trans : forall Γ Γ' Γ'', env_conv Γ Γ' -> env_conv Γ' Γ'' -> env_conv Γ Γ''.
env_conv is defined
env_conv_ind is defined



Hint Constructors env_conv.
Warning: the hint: eapply c_trans will only be used by eauto



Lemma c1_sym : forall Γ Γ', env_conv1 Γ Γ' -> env_conv1 Γ' Γ.
1 subgoals, subgoal 1 (ID 5521)
  
  ============================
   forall Γ Γ' : Env, env_conv1 Γ Γ' -> env_conv1 Γ' Γ

(dependent evars:)


induction 1; intros; intuition.
No more subgoals.
(dependent evars:)


Qed.
c1_sym is defined



Lemma c_sym : forall Γ Γ', env_conv Γ Γ' -> env_conv Γ' Γ.
1 subgoals, subgoal 1 (ID 5562)
  
  ============================
   forall Γ Γ' : Env, env_conv Γ Γ' -> env_conv Γ' Γ

(dependent evars:)


induction 1; intros.
3 subgoals, subgoal 1 (ID 5580)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  ============================
   env_conv Γ' Γ

subgoal 2 (ID 5581) is:
 env_conv Γ Γ
subgoal 3 (ID 5589) is:
 env_conv Γ'' Γ
(dependent evars:)


apply c1_sym in H; intuition.
2 subgoals, subgoal 1 (ID 5581)
  
  Γ : Env
  ============================
   env_conv Γ Γ

subgoal 2 (ID 5589) is:
 env_conv Γ'' Γ
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 5589)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H : env_conv Γ Γ'
  H0 : env_conv Γ' Γ''
  IHenv_conv1 : env_conv Γ' Γ
  IHenv_conv2 : env_conv Γ'' Γ'
  ============================
   env_conv Γ'' Γ

(dependent evars:)

eauto.
No more subgoals.
(dependent evars: ?5598 using ,)


Qed.
c_sym is defined



Hint Resolve c_sym.


Lemma env_red1_to_conv1 : forall Γ Γ', env_red1 Γ Γ' -> env_conv1 Γ Γ'.
1 subgoals, subgoal 1 (ID 5615)
  
  ============================
   forall Γ Γ' : Env, env_red1 Γ Γ' -> env_conv1 Γ Γ'

(dependent evars:)


induction 1; intuition.
1 subgoals, subgoal 1 (ID 5631)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  ============================
   env_conv1 (A :: Γ) (B :: Γ)

(dependent evars:)


eauto.
No more subgoals.
(dependent evars: ?5686 using ,)


Qed.
env_red1_to_conv1 is defined



Lemma env_red_to_conv : forall Γ Γ', env_red Γ Γ' -> env_conv Γ Γ'.
1 subgoals, subgoal 1 (ID 5727)
  
  ============================
   forall Γ Γ' : Env, env_red Γ Γ' -> env_conv Γ Γ'

(dependent evars:)


induction 1; intuition.
2 subgoals, subgoal 1 (ID 5745)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  ============================
   env_conv Γ Γ'

subgoal 2 (ID 5754) is:
 env_conv Γ Γ''
(dependent evars:)


apply env_red1_to_conv1 in H; intuition.
1 subgoals, subgoal 1 (ID 5754)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H : env_red Γ Γ'
  H0 : env_red Γ' Γ''
  IHenv_red1 : env_conv Γ Γ'
  IHenv_red2 : env_conv Γ' Γ''
  ============================
   env_conv Γ Γ''

(dependent evars:)


eauto.
No more subgoals.
(dependent evars: ?5839 using ,)


Qed.
env_red_to_conv is defined



Hint Resolve env_red_to_conv.


Lemma peq_thinning : forall Γ A B, Γ A ≡' B -> forall C C' s, Γ C C' : !s
 -> C::Γ A 1 ≡' B 1.
1 subgoals, subgoal 1 (ID 5883)
  
  ============================
   forall (Γ : Env) (A B : Term),
   Γ ⊢ A ≡' B ->
   forall (C C' : Term) (s : Sorts),
   Γ ⊢ C ▹ C' : !s -> C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1

(dependent evars:)


induction 1; intros.
3 subgoals, subgoal 1 (ID 5925)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  C : Term
  C' : Term
  s0 : Sorts
  H0 : Γ ⊢ C ▹ C' : !s0
  ============================
   C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1

subgoal 2 (ID 5929) is:
 C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1
subgoal 3 (ID 5933) is:
 C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1
(dependent evars:)

apply typ_peq_intro with s.
3 subgoals, subgoal 1 (ID 5934)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  C : Term
  C' : Term
  s0 : Sorts
  H0 : Γ ⊢ C ▹ C' : !s0
  ============================
   C :: Γ ⊢ A ↑ 1 ▹ B ↑ 1 : !s

subgoal 2 (ID 5929) is:
 C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1
subgoal 3 (ID 5933) is:
 C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1
(dependent evars:)

change !s with (!s 1).
3 subgoals, subgoal 1 (ID 5936)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  C : Term
  C' : Term
  s0 : Sorts
  H0 : Γ ⊢ C ▹ C' : !s0
  ============================
   C :: Γ ⊢ A ↑ 1 ▹ B ↑ 1 : !s ↑ 1

subgoal 2 (ID 5929) is:
 C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1
subgoal 3 (ID 5933) is:
 C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1
(dependent evars:)


apply thinning with C' s0; trivial.
2 subgoals, subgoal 1 (ID 5929)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  C : Term
  C' : Term
  s0 : Sorts
  H0 : Γ ⊢ C ▹ C' : !s0
  ============================
   C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1

subgoal 2 (ID 5933) is:
 C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1
(dependent evars:)

apply typ_peq_intro2 with s.
2 subgoals, subgoal 1 (ID 5939)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  C : Term
  C' : Term
  s0 : Sorts
  H0 : Γ ⊢ C ▹ C' : !s0
  ============================
   C :: Γ ⊢ B ↑ 1 ▹ A ↑ 1 : !s

subgoal 2 (ID 5933) is:
 C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1
(dependent evars:)

change !s with (!s 1).
2 subgoals, subgoal 1 (ID 5941)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  C : Term
  C' : Term
  s0 : Sorts
  H0 : Γ ⊢ C ▹ C' : !s0
  ============================
   C :: Γ ⊢ B ↑ 1 ▹ A ↑ 1 : !s ↑ 1

subgoal 2 (ID 5933) is:
 C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1
(dependent evars:)


apply thinning with C' s0; trivial.
1 subgoals, subgoal 1 (ID 5933)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  IHtyp_peq1 : forall (C C' : Term) (s : Sorts),
               Γ ⊢ C ▹ C' : !s -> C :: Γ ⊢ A ↑ 1 ≡' B ↑ 1
  IHtyp_peq2 : forall (C0 C' : Term) (s : Sorts),
               Γ ⊢ C0 ▹ C' : !s -> C0 :: Γ ⊢ B ↑ 1 ≡' C ↑ 1
  C0 : Term
  C' : Term
  s : Sorts
  H1 : Γ ⊢ C0 ▹ C' : !s
  ============================
   C0 :: Γ ⊢ A ↑ 1 ≡' C ↑ 1

(dependent evars:)

eauto.
No more subgoals.
(dependent evars: ?5951 using , ?6869 using , ?6870 using , ?6890 using , ?6891 using ,)


Qed.
peq_thinning is defined



Lemma peq_thinning_n : forall n Δ Δ',
   trunc n Δ Δ' ->
   forall A B , Δ' A ≡' B -> Δ -> Δ A n ≡' B n .
1 subgoals, subgoal 1 (ID 6927)
  
  ============================
   forall (n : nat) (Δ Δ' : list Term),
   trunc n Δ Δ' ->
   forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n

(dependent evars:)


induction n; intros.
2 subgoals, subgoal 1 (ID 6941)
  
  Δ : list Term
  Δ' : list Term
  H : trunc 0 Δ Δ'
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  H1 : Δ ⊣
  ============================
   Δ ⊢ A ↑ 0 ≡' B ↑ 0

subgoal 2 (ID 6948) is:
 Δ ⊢ A ↑ (S n) ≡' B ↑ (S n)
(dependent evars:)


inversion H; subst; clear H.
2 subgoals, subgoal 1 (ID 7008)
  
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  H1 : Δ' ⊣
  ============================
   Δ' ⊢ A ↑ 0 ≡' B ↑ 0

subgoal 2 (ID 6948) is:
 Δ ⊢ A ↑ (S n) ≡' B ↑ (S n)
(dependent evars:)

rewrite 2! lift0; trivial.
1 subgoals, subgoal 1 (ID 6948)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ : list Term
  Δ' : list Term
  H : trunc (S n) Δ Δ'
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  H1 : Δ ⊣
  ============================
   Δ ⊢ A ↑ (S n) ≡' B ↑ (S n)

(dependent evars:)



inversion H; subst; clear H.
1 subgoals, subgoal 1 (ID 7075)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ A ↑ (S n) ≡' B ↑ (S n)

(dependent evars:)


change (S n) with (1+n).
1 subgoals, subgoal 1 (ID 7077)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ A ↑ (1 + n) ≡' B ↑ (1 + n)

(dependent evars:)


replace (A (1+n)) with ((A n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 7081)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ A ↑ n ↑ 1 ≡' B ↑ (1 + n)

(dependent evars:)


replace (B (1+n)) with ((B n )↑ 1) by (apply lift_lift).
1 subgoals, subgoal 1 (ID 7086)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  H1 : x :: Γ ⊣
  ============================
   x :: Γ ⊢ A ↑ n ↑ 1 ≡' B ↑ n ↑ 1

(dependent evars:)


inversion H1; subst; clear H1.
1 subgoals, subgoal 1 (ID 7137)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   x :: Γ ⊢ A ↑ n ↑ 1 ≡' B ↑ n ↑ 1

(dependent evars:)


eapply peq_thinning.
2 subgoals, subgoal 1 (ID 7140)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊢ A ↑ n ≡' B ↑ n

subgoal 2 (ID 7141) is:
 Γ ⊢ x ▹ ?7138 : !?7139
(dependent evars: ?7138 open, ?7139 open,)

eapply IHn.
4 subgoals, subgoal 1 (ID 7143)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   trunc n Γ ?7142

subgoal 2 (ID 7144) is:
 ?7142 ⊢ A ≡' B
subgoal 3 (ID 7145) is:
 Γ ⊣
subgoal 4 (ID 7141) is:
 Γ ⊢ x ▹ ?7138 : !?7139
(dependent evars: ?7138 open, ?7139 open, ?7142 open,)

apply H3.
3 subgoals, subgoal 1 (ID 7144)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Δ' ⊢ A ≡' B

subgoal 2 (ID 7145) is:
 Γ ⊣
subgoal 3 (ID 7141) is:
 Γ ⊢ x ▹ ?7138 : !?7139
(dependent evars: ?7138 open, ?7139 open, ?7142 using ,)

trivial.
2 subgoals, subgoal 1 (ID 7145)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊣

subgoal 2 (ID 7141) is:
 Γ ⊢ x ▹ ?7138 : !?7139
(dependent evars: ?7138 open, ?7139 open, ?7142 using ,)


apply wf_from_typ in H2; trivial.
1 subgoals, subgoal 1 (ID 7141)
  
  n : nat
  IHn : forall Δ Δ' : list Term,
        trunc n Δ Δ' ->
        forall A B : Term, Δ' ⊢ A ≡' B -> Δ ⊣ -> Δ ⊢ A ↑ n ≡' B ↑ n
  Δ' : list Term
  A : Term
  B : Term
  H0 : Δ' ⊢ A ≡' B
  Γ : list Term
  x : Term
  H3 : trunc n Γ Δ'
  A' : Term
  s : Sorts
  H2 : Γ ⊢ x ▹ A' : !s
  ============================
   Γ ⊢ x ▹ ?7138 : !?7139

(dependent evars: ?7138 open, ?7139 open, ?7142 using ,)


apply H2.
No more subgoals.
(dependent evars: ?7138 using , ?7139 using , ?7142 using ,)


Qed.
peq_thinning_n is defined



Type manipulation functions
Lemma typ_pcompat : forall Γ M N A, Γ M N : A -> forall B , Γ A ≡' B -> Γ M N : B.
1 subgoals, subgoal 1 (ID 7162)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹ N : A -> forall B : Term, Γ ⊢ A ≡' B -> Γ ⊢ M ▹ N : B

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 7169)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  H : Γ ⊢ M ▹ N : A
  B : Term
  H0 : Γ ⊢ A ≡' B
  ============================
   Γ ⊢ M ▹ N : B

(dependent evars:)


revert M N H.
1 subgoals, subgoal 1 (ID 7171)
  
  Γ : Env
  A : Term
  B : Term
  H0 : Γ ⊢ A ≡' B
  ============================
   forall M N : Term, Γ ⊢ M ▹ N : A -> Γ ⊢ M ▹ N : B

(dependent evars:)


induction H0; intros.
3 subgoals, subgoal 1 (ID 7208)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  M : Term
  N : Term
  H0 : Γ ⊢ M ▹ N : A
  ============================
   Γ ⊢ M ▹ N : B

subgoal 2 (ID 7211) is:
 Γ ⊢ M ▹ N : B
subgoal 3 (ID 7214) is:
 Γ ⊢ M ▹ N : C
(dependent evars:)


eauto.
2 subgoals, subgoal 1 (ID 7211)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  M : Term
  N : Term
  H0 : Γ ⊢ M ▹ N : A
  ============================
   Γ ⊢ M ▹ N : B

subgoal 2 (ID 7214) is:
 Γ ⊢ M ▹ N : C
(dependent evars: ?7219 using , ?7220 using ,)

eauto.
1 subgoals, subgoal 1 (ID 7214)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H0_ : Γ ⊢ A ≡' B
  H0_0 : Γ ⊢ B ≡' C
  IHtyp_peq1 : forall M N : Term, Γ ⊢ M ▹ N : A -> Γ ⊢ M ▹ N : B
  IHtyp_peq2 : forall M N : Term, Γ ⊢ M ▹ N : B -> Γ ⊢ M ▹ N : C
  M : Term
  N : Term
  H : Γ ⊢ M ▹ N : A
  ============================
   Γ ⊢ M ▹ N : C

(dependent evars: ?7219 using , ?7220 using , ?8099 using , ?8100 using ,)

eauto.
No more subgoals.
(dependent evars: ?7219 using , ?7220 using , ?8099 using , ?8100 using ,)


Qed.
typ_pcompat is defined



Lemma typ_red_trans : forall Γ M N A B s, Γ M N : A -> Γ A ▹▹ B : !s -> Γ M N : B.
1 subgoals, subgoal 1 (ID 8163)
  
  ============================
   forall (Γ : Env) (M N A B : Term) (s : Sorts),
   Γ ⊢ M ▹ N : A -> Γ ⊢ A ▹▹ B : !s -> Γ ⊢ M ▹ N : B

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 8171)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹▹ B : !s
  ============================
   Γ ⊢ M ▹ N : B

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 8178)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  S : Term
  HeqS : S = !s
  H0 : Γ ⊢ A ▹▹ B : S
  ============================
   Γ ⊢ M ▹ N : B

(dependent evars:)

revert M N H s HeqS.
1 subgoals, subgoal 1 (ID 8180)
  
  Γ : Env
  A : Term
  B : Term
  S : Term
  H0 : Γ ⊢ A ▹▹ B : S
  ============================
   forall M N : Term,
   Γ ⊢ M ▹ N : A -> forall s : Sorts, S = !s -> Γ ⊢ M ▹ N : B

(dependent evars:)

induction H0; intros; subst; eauto.
No more subgoals.
(dependent evars: ?8235 using , ?8236 using , ?9115 using , ?9126 using ,)


Qed.
typ_red_trans is defined



Lemma typ_exp_trans : forall Γ M N A B s, Γ M N : B -> Γ A ▹▹ B : !s -> Γ M N : A.
1 subgoals, subgoal 1 (ID 9162)
  
  ============================
   forall (Γ : Env) (M N A B : Term) (s : Sorts),
   Γ ⊢ M ▹ N : B -> Γ ⊢ A ▹▹ B : !s -> Γ ⊢ M ▹ N : A

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 9170)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹▹ B : !s
  ============================
   Γ ⊢ M ▹ N : A

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 9177)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  S : Term
  HeqS : S = !s
  H0 : Γ ⊢ A ▹▹ B : S
  ============================
   Γ ⊢ M ▹ N : A

(dependent evars:)

revert M N H s HeqS.
1 subgoals, subgoal 1 (ID 9179)
  
  Γ : Env
  A : Term
  B : Term
  S : Term
  H0 : Γ ⊢ A ▹▹ B : S
  ============================
   forall M N : Term,
   Γ ⊢ M ▹ N : B -> forall s : Sorts, S = !s -> Γ ⊢ M ▹ N : A

(dependent evars:)

induction H0; intros; subst; eauto.
No more subgoals.
(dependent evars: ?9230 using , ?9231 using , ?9254 using , ?9265 using ,)


Qed.
typ_exp_trans is defined



  Lemma conv_item :
   forall n A Γ Γ', A n Γ -> env_conv1 Γ Γ' -> Γ' -> A n Γ' \/
     (forall Γ'', trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\ (exists B, Γ' A ≡' B /\ B n Γ').
1 subgoals, subgoal 1 (ID 9303)
  
  ============================
   forall (n : nat) (A : Term) (Γ Γ' : Env),
   A ↓ n ⊂ Γ ->
   env_conv1 Γ Γ' ->
   Γ' ⊣ ->
   A ↓ n ⊂ Γ' \/
   (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')

(dependent evars:)


induction n; intros.
2 subgoals, subgoal 1 (ID 9316)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : A ↓ 0 ⊂ Γ
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ 0 ⊂ Γ' \/
   (forall Γ'' : list Term, trunc 1 Γ Γ'' -> trunc 1 Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ 0 ⊂ Γ')

subgoal 2 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

destruct H as (u & ?& ?).
2 subgoals, subgoal 1 (ID 9333)
  
  A : Term
  Γ : Env
  Γ' : Env
  u : Term
  H : A = u ↑ 1
  H2 : u ↓ 0 ∈ Γ
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ 0 ⊂ Γ' \/
   (forall Γ'' : list Term, trunc 1 Γ Γ'' -> trunc 1 Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ 0 ⊂ Γ')

subgoal 2 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


inversion H2; subst; clear H2.
2 subgoals, subgoal 1 (ID 9382)
  
  Γ' : Env
  u : Term
  H1 : Γ' ⊣
  l : list Term
  H0 : env_conv1 (u :: l) Γ'
  ============================
   u ↑ 1 ↓ 0 ⊂ Γ' \/
   (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ Γ')

subgoal 2 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

inversion H0;subst; clear H0.
3 subgoals, subgoal 1 (ID 9479)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  ============================
   u ↑ 1 ↓ 0 ⊂ B :: l \/
   (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (B :: l) Γ'') /\
   (exists B0 : Term, (B :: l ⊢ u ↑ 1 ≡' B0) /\ B0 ↓ 0 ⊂ B :: l)

subgoal 2 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 3 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


right.
3 subgoals, subgoal 1 (ID 9482)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  ============================
   (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (B :: l) Γ'') /\
   (exists B0 : Term, (B :: l ⊢ u ↑ 1 ≡' B0) /\ B0 ↓ 0 ⊂ B :: l)

subgoal 2 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 3 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

split; intros.
4 subgoals, subgoal 1 (ID 9487)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  Γ'' : list Term
  H : trunc 1 (u :: l) Γ''
  ============================
   trunc 1 (B :: l) Γ''

subgoal 2 (ID 9485) is:
 exists B0 : Term, (B :: l ⊢ u ↑ 1 ≡' B0) /\ B0 ↓ 0 ⊂ B :: l
subgoal 3 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 4 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

inversion H; subst; clear H.
4 subgoals, subgoal 1 (ID 9560)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  Γ'' : list Term
  H6 : trunc 0 l Γ''
  ============================
   trunc 1 (B :: l) Γ''

subgoal 2 (ID 9485) is:
 exists B0 : Term, (B :: l ⊢ u ↑ 1 ≡' B0) /\ B0 ↓ 0 ⊂ B :: l
subgoal 3 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 4 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

constructor.
4 subgoals, subgoal 1 (ID 9563)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  Γ'' : list Term
  H6 : trunc 0 l Γ''
  ============================
   trunc 0 l Γ''

subgoal 2 (ID 9485) is:
 exists B0 : Term, (B :: l ⊢ u ↑ 1 ≡' B0) /\ B0 ↓ 0 ⊂ B :: l
subgoal 3 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 4 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

trivial.
3 subgoals, subgoal 1 (ID 9485)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  ============================
   exists B0 : Term, (B :: l ⊢ u ↑ 1 ≡' B0) /\ B0 ↓ 0 ⊂ B :: l

subgoal 2 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 3 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


exists (lift_rec 1 0 B); split.
4 subgoals, subgoal 1 (ID 9567)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  ============================
   B :: l ⊢ u ↑ 1 ≡' B ↑ 1

subgoal 2 (ID 9568) is:
 B ↑ 1 ↓ 0 ⊂ B :: l
subgoal 3 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 4 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

inversion H1; subst; clear H1.
4 subgoals, subgoal 1 (ID 9618)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  A' : Term
  s : Sorts
  H0 : l ⊢ B ▹ A' : !s
  ============================
   B :: l ⊢ u ↑ 1 ≡' B ↑ 1

subgoal 2 (ID 9568) is:
 B ↑ 1 ↓ 0 ⊂ B :: l
subgoal 3 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 4 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

apply peq_thinning with A' s; trivial.
3 subgoals, subgoal 1 (ID 9568)
  
  u : Term
  l : list Term
  B : Term
  H4 : l ⊢ u ≡' B
  H1 : B :: l ⊣
  ============================
   B ↑ 1 ↓ 0 ⊂ B :: l

subgoal 2 (ID 9480) is:
 u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
 (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
 (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)
subgoal 3 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)


exists B; intuition.
2 subgoals, subgoal 1 (ID 9480)
  
  u : Term
  l : list Term
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : u :: Γ'0 ⊣
  ============================
   u ↑ 1 ↓ 0 ⊂ u :: Γ'0 \/
   (forall Γ'' : list Term, trunc 1 (u :: l) Γ'' -> trunc 1 (u :: Γ'0) Γ'') /\
   (exists B : Term, (u :: Γ'0 ⊢ u ↑ 1 ≡' B) /\ B ↓ 0 ⊂ u :: Γ'0)

subgoal 2 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

left.
2 subgoals, subgoal 1 (ID 9634)
  
  u : Term
  l : list Term
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : u :: Γ'0 ⊣
  ============================
   u ↑ 1 ↓ 0 ⊂ u :: Γ'0

subgoal 2 (ID 9322) is:
 A ↓ S n ⊂ Γ' \/
 (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
 (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')
(dependent evars:)

exists u; intuition.
1 subgoals, subgoal 1 (ID 9322)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  A : Term
  Γ : Env
  Γ' : Env
  H : A ↓ S n ⊂ Γ
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ S n ⊂ Γ' \/
   (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')

(dependent evars:)


destruct H as (u & ?& ?).
1 subgoals, subgoal 1 (ID 9657)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  A : Term
  Γ : Env
  Γ' : Env
  u : Term
  H : A = u ↑ (S (S n))
  H2 : u ↓ S n ∈ Γ
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   A ↓ S n ⊂ Γ' \/
   (forall Γ'' : list Term, trunc (S (S n)) Γ Γ'' -> trunc (S (S n)) Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ S n ⊂ Γ')

(dependent evars:)

inversion H2; subst; clear H2.
1 subgoals, subgoal 1 (ID 9718)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  Γ' : Env
  u : Term
  H1 : Γ' ⊣
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  H0 : env_conv1 (y :: l) Γ'
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ Γ' \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) Γ' Γ'') /\
   (exists B : Term, (Γ' ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ Γ')

(dependent evars:)

inversion H0; subst; clear H0.
2 subgoals, subgoal 1 (ID 9815)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  B : Term
  H4 : l ⊢ y ≡' B
  H1 : B :: l ⊣
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ B :: l \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (B :: l) Γ'') /\
   (exists B0 : Term, (B :: l ⊢ u ↑ (S (S n)) ≡' B0) /\ B0 ↓ S n ⊂ B :: l)

subgoal 2 (ID 9816) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)


left.
2 subgoals, subgoal 1 (ID 9818)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  B : Term
  H4 : l ⊢ y ≡' B
  H1 : B :: l ⊣
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ B :: l

subgoal 2 (ID 9816) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

exists u; intuition.
1 subgoals, subgoal 1 (ID 9816)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
   (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)

(dependent evars:)

destruct (IHn (lift_rec (S n) 0 u) l Γ'0 ).
5 subgoals, subgoal 1 (ID 9844)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  ============================
   u ↑ (S n) ↓ n ⊂ l

subgoal 2 (ID 9846) is:
 env_conv1 l Γ'0
subgoal 3 (ID 9848) is:
 Γ'0 ⊣
subgoal 4 (ID 9853) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
subgoal 5 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

exists u; intuition.
4 subgoals, subgoal 1 (ID 9846)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  ============================
   env_conv1 l Γ'0

subgoal 2 (ID 9848) is:
 Γ'0 ⊣
subgoal 3 (ID 9853) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
subgoal 4 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)


trivial.
3 subgoals, subgoal 1 (ID 9848)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  ============================
   Γ'0 ⊣

subgoal 2 (ID 9853) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
subgoal 3 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

inversion H1; subst; clear H1.
3 subgoals, subgoal 1 (ID 9910)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  A' : Term
  s : Sorts
  H0 : Γ'0 ⊢ y ▹ A' : !s
  ============================
   Γ'0 ⊣

subgoal 2 (ID 9853) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
subgoal 3 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

apply wf_from_typ in H0; trivial.
2 subgoals, subgoal 1 (ID 9853)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : u ↑ (S n) ↓ n ⊂ Γ'0
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
   (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)

subgoal 2 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)


left.
2 subgoals, subgoal 1 (ID 9914)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : u ↑ (S n) ↓ n ⊂ Γ'0
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0

subgoal 2 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

destruct H as (uu & ?& ?).
2 subgoals, subgoal 1 (ID 9922)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  uu : Term
  H : u ↑ (S n) = uu ↑ (S n)
  H0 : uu ↓ n ∈ Γ'0
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0

subgoal 2 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

apply inv_lift in H.
2 subgoals, subgoal 1 (ID 9924)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  uu : Term
  H : u = uu
  H0 : uu ↓ n ∈ Γ'0
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0

subgoal 2 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

subst.
2 subgoals, subgoal 1 (ID 9929)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  l : list Term
  y : Term
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  uu : Term
  H0 : uu ↓ n ∈ Γ'0
  H5 : uu ↓ n ∈ l
  ============================
   uu ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0

subgoal 2 (ID 9854) is:
 u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
 (forall Γ'' : list Term,
  trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
 (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)
(dependent evars:)

exists uu; intuition.
1 subgoals, subgoal 1 (ID 9854)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : (forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ'') /\
      (exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0)
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
   (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)

(dependent evars:)


destruct H.
1 subgoals, subgoal 1 (ID 9951)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  ============================
   u ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0 \/
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
   (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)

(dependent evars:)

right.
1 subgoals, subgoal 1 (ID 9953)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  ============================
   (forall Γ'' : list Term,
    trunc (S (S n)) (y :: l) Γ'' -> trunc (S (S n)) (y :: Γ'0) Γ'') /\
   (exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0)

(dependent evars:)

split; intros.
2 subgoals, subgoal 1 (ID 9958)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  Γ'' : list Term
  H2 : trunc (S (S n)) (y :: l) Γ''
  ============================
   trunc (S (S n)) (y :: Γ'0) Γ''

subgoal 2 (ID 9956) is:
 exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0
(dependent evars:)

constructor.
2 subgoals, subgoal 1 (ID 9961)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  Γ'' : list Term
  H2 : trunc (S (S n)) (y :: l) Γ''
  ============================
   trunc (S n) Γ'0 Γ''

subgoal 2 (ID 9956) is:
 exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0
(dependent evars:)

apply H.
2 subgoals, subgoal 1 (ID 9962)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  Γ'' : list Term
  H2 : trunc (S (S n)) (y :: l) Γ''
  ============================
   trunc (S n) l Γ''

subgoal 2 (ID 9956) is:
 exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0
(dependent evars:)

inversion H2; subst; clear H2.
2 subgoals, subgoal 1 (ID 10035)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  Γ'' : list Term
  H9 : trunc (S n) l Γ''
  ============================
   trunc (S n) l Γ''

subgoal 2 (ID 9956) is:
 exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0
(dependent evars:)


trivial.
1 subgoals, subgoal 1 (ID 9956)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  H0 : exists B : Term, (Γ'0 ⊢ u ↑ (S n) ≡' B) /\ B ↓ n ⊂ Γ'0
  ============================
   exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0

(dependent evars:)

destruct H0 as ( uu &? & ?).
1 subgoals, subgoal 1 (ID 10043)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  uu : Term
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' uu
  H2 : uu ↓ n ⊂ Γ'0
  ============================
   exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0

(dependent evars:)

destruct H2 as (v & ?& ?).
1 subgoals, subgoal 1 (ID 10051)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  uu : Term
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' uu
  v : Term
  H2 : uu = v ↑ (S n)
  H3 : v ↓ n ∈ Γ'0
  ============================
   exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0

(dependent evars:)

subst.
1 subgoals, subgoal 1 (ID 10056)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  ============================
   exists B : Term, (y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' B) /\ B ↓ S n ⊂ y :: Γ'0

(dependent evars:)


exists (lift_rec (S (S n)) 0 v); split.
2 subgoals, subgoal 1 (ID 10060)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  ============================
   y :: Γ'0 ⊢ u ↑ (S (S n)) ≡' v ↑ (S (S n))

subgoal 2 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars:)

change (S (S n)) with (1+ S n).
2 subgoals, subgoal 1 (ID 10063)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  ============================
   y :: Γ'0 ⊢ u ↑ (1 + S n) ≡' v ↑ (1 + S n)

subgoal 2 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars:)


replace (u (1+S n)) with ((u (S n) )↑ 1) by (apply lift_lift).
2 subgoals, subgoal 1 (ID 10067)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  ============================
   y :: Γ'0 ⊢ u ↑ (S n) ↑ 1 ≡' v ↑ (1 + S n)

subgoal 2 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars:)


replace (v (1+S n)) with ((v (S n) )↑ 1) by (apply lift_lift).
2 subgoals, subgoal 1 (ID 10072)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  ============================
   y :: Γ'0 ⊢ u ↑ (S n) ↑ 1 ≡' v ↑ (S n) ↑ 1

subgoal 2 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars:)


inversion H1; subst; clear H1.
2 subgoals, subgoal 1 (ID 10123)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  A' : Term
  s : Sorts
  H6 : Γ'0 ⊢ y ▹ A' : !s
  ============================
   y :: Γ'0 ⊢ u ↑ (S n) ↑ 1 ≡' v ↑ (S n) ↑ 1

subgoal 2 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars:)

eapply peq_thinning.
3 subgoals, subgoal 1 (ID 10126)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  A' : Term
  s : Sorts
  H6 : Γ'0 ⊢ y ▹ A' : !s
  ============================
   Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)

subgoal 2 (ID 10127) is:
 Γ'0 ⊢ y ▹ ?10124 : !?10125
subgoal 3 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars: ?10124 open, ?10125 open,)

trivial.
2 subgoals, subgoal 1 (ID 10127)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  A' : Term
  s : Sorts
  H6 : Γ'0 ⊢ y ▹ A' : !s
  ============================
   Γ'0 ⊢ y ▹ ?10124 : !?10125

subgoal 2 (ID 10061) is:
 v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0
(dependent evars: ?10124 open, ?10125 open,)

apply H6.
1 subgoals, subgoal 1 (ID 10061)
  
  n : nat
  IHn : forall (A : Term) (Γ Γ' : Env),
        A ↓ n ⊂ Γ ->
        env_conv1 Γ Γ' ->
        Γ' ⊣ ->
        A ↓ n ⊂ Γ' \/
        (forall Γ'' : list Term, trunc (S n) Γ Γ'' -> trunc (S n) Γ' Γ'') /\
        (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ n ⊂ Γ')
  u : Term
  l : list Term
  y : Term
  H5 : u ↓ n ∈ l
  Γ'0 : Env
  H4 : env_conv1 l Γ'0
  H1 : y :: Γ'0 ⊣
  H : forall Γ'' : list Term, trunc (S n) l Γ'' -> trunc (S n) Γ'0 Γ''
  v : Term
  H3 : v ↓ n ∈ Γ'0
  H0 : Γ'0 ⊢ u ↑ (S n) ≡' v ↑ (S n)
  ============================
   v ↑ (S (S n)) ↓ S n ⊂ y :: Γ'0

(dependent evars: ?10124 using , ?10125 using ,)


exists v; intuition.
No more subgoals.
(dependent evars: ?10124 using , ?10125 using ,)


Qed.
conv_item is defined



Lemma conv1_in_env : (forall Γ M N T, Γ M N : T -> forall Γ', env_conv1 Γ Γ' -> Γ' -> Γ' M N : T) /\
  (forall Γ M N T, Γ M ▹▹ N : T -> forall Γ', env_conv1 Γ Γ' -> Γ' -> Γ' M ▹▹ N : T) /\
  (forall Γ, Γ -> True).
1 subgoals, subgoal 1 (ID 10168)
  
  ============================
   (forall (Γ : Env) (M N T : Term),
    Γ ⊢ M ▹ N : T ->
    forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ N : T) /\
   (forall (Γ : Env) (M N T : Term),
    Γ ⊢ M ▹▹ N : T ->
    forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹▹ N : T) /\
   (forall Γ : Env, Γ ⊣ -> True)

(dependent evars:)


apply typ_induc;intros; simpl; trivial.
10 subgoals, subgoal 1 (ID 10341)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 10342) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 10343) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


destruct (conv_item x A Γ Γ' i H0 H1).
11 subgoals, subgoal 1 (ID 10361)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  H2 : A ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 10362) is:
 Γ' ⊢ #x ▹ #x : A
subgoal 3 (ID 10342) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 4 (ID 10343) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 5 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 6 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 7 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 8 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 9 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 10 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 11 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

intuition.
10 subgoals, subgoal 1 (ID 10362)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  H2 : (forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ'') /\
       (exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ x ⊂ Γ')
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 10342) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 10343) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


destruct H2.
10 subgoals, subgoal 1 (ID 10379)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  H2 : forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ''
  H3 : exists B : Term, (Γ' ⊢ A ≡' B) /\ B ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 10342) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 10343) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

destruct H3 as (B & ?).
10 subgoals, subgoal 1 (ID 10383)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : True
  i : A ↓ x ⊂ Γ
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  H2 : forall Γ'' : list Term, trunc (S x) Γ Γ'' -> trunc (S x) Γ' Γ''
  B : Term
  H3 : (Γ' ⊢ A ≡' B) /\ B ↓ x ⊂ Γ'
  ============================
   Γ' ⊢ #x ▹ #x : A

subgoal 2 (ID 10342) is:
 Γ' ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 10343) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 4 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)

apply typ_pcompat with B; intuition.
9 subgoals, subgoal 1 (ID 10342)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : True
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   Γ' ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 10343) is:
 Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 3 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


intuition.
8 subgoals, subgoal 1 (ID 10343)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B' : !s2
  Γ' : Env
  H1 : env_conv1 Γ Γ'
  H2 : Γ' ⊣
  ============================
   Γ' ⊢ Π (A), B ▹ Π (A'), B' : !s3

subgoal 2 (ID 10344) is:
 Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars:)


apply typ_pi with s1 s2; eauto.
7 subgoals, subgoal 1 (ID 10344)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  Γ' : Env
  H2 : env_conv1 Γ Γ'
  H3 : Γ' ⊣
  ============================
   Γ' ⊢ λ [A], M ▹ λ [A'], M' : Π (A), B

subgoal 2 (ID 10345) is:
 Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using ,)


apply typ_la with s1 s2 s3; eauto.
6 subgoals, subgoal 1 (ID 10345)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A' : !s1
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B' : !s2
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : Π (A), B
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H3 : env_conv1 Γ Γ'
  H4 : Γ' ⊣
  ============================
   Γ' ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 10346) is:
 Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using ,)


eapply typ_app; eauto.
5 subgoals, subgoal 1 (ID 10346)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Γ' ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B [ ← N]

subgoal 2 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 3 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 4 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 5 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using ,)


eapply typ_beta.
12 subgoals, subgoal 1 (ID 10706)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Rel ?10703 ?10704 ?10705

subgoal 2 (ID 10707) is:
 Γ' ⊢ A ▹ A : !?10703
subgoal 3 (ID 10708) is:
 Γ' ⊢ A' ▹ A' : !?10703
subgoal 4 (ID 10709) is:
 Γ' ⊢ ?10702 ▹▹ A : !?10703
subgoal 5 (ID 10710) is:
 Γ' ⊢ ?10702 ▹▹ A' : !?10703
subgoal 6 (ID 10711) is:
 A :: Γ' ⊢ B ▹ B : !?10704
subgoal 7 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 8 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 9 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 10 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 11 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 12 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 open, ?10703 open, ?10704 open, ?10705 open,)


  apply r.
11 subgoals, subgoal 1 (ID 10707)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Γ' ⊢ A ▹ A : !s1

subgoal 2 (ID 10708) is:
 Γ' ⊢ A' ▹ A' : !s1
subgoal 3 (ID 10709) is:
 Γ' ⊢ ?10702 ▹▹ A : !s1
subgoal 4 (ID 10710) is:
 Γ' ⊢ ?10702 ▹▹ A' : !s1
subgoal 5 (ID 10711) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 6 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 7 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 8 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 9 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 10 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 11 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 open, ?10703 using , ?10704 using , ?10705 using ,)


  apply H; assumption.
10 subgoals, subgoal 1 (ID 10708)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Γ' ⊢ A' ▹ A' : !s1

subgoal 2 (ID 10709) is:
 Γ' ⊢ ?10702 ▹▹ A : !s1
subgoal 3 (ID 10710) is:
 Γ' ⊢ ?10702 ▹▹ A' : !s1
subgoal 4 (ID 10711) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 5 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 6 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 7 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 8 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 9 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 10 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 open, ?10703 using , ?10704 using , ?10705 using ,)


  apply H0; assumption.
9 subgoals, subgoal 1 (ID 10709)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Γ' ⊢ ?10702 ▹▹ A : !s1

subgoal 2 (ID 10710) is:
 Γ' ⊢ ?10702 ▹▹ A' : !s1
subgoal 3 (ID 10711) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 4 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 5 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 6 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 7 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 8 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 9 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 open, ?10703 using , ?10704 using , ?10705 using ,)


  apply H1; assumption.
8 subgoals, subgoal 1 (ID 10710)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Γ' ⊢ A0 ▹▹ A' : !s1

subgoal 2 (ID 10711) is:
 A :: Γ' ⊢ B ▹ B : !s2
subgoal 3 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using ,)


  apply H2; assumption.
7 subgoals, subgoal 1 (ID 10711)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   A :: Γ' ⊢ B ▹ B : !s2

subgoal 2 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 3 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using ,)


  apply H3.
8 subgoals, subgoal 1 (ID 10722)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   env_conv1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 10723) is:
 A :: Γ' ⊣
subgoal 3 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 4 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 5 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 6 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 7 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 8 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using ,)

constructor; assumption.
7 subgoals, subgoal 1 (ID 10723)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 10712) is:
 A :: Γ' ⊢ M ▹ M' : B
subgoal 3 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using ,)


            econstructor; apply H; assumption.
6 subgoals, subgoal 1 (ID 10712)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   A :: Γ' ⊢ M ▹ M' : B

subgoal 2 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 3 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using ,)


  apply H4.
7 subgoals, subgoal 1 (ID 10734)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   env_conv1 (A :: Γ) (A :: Γ')

subgoal 2 (ID 10735) is:
 A :: Γ' ⊣
subgoal 3 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 4 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 5 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 6 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 7 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using ,)

constructor; assumption.
6 subgoals, subgoal 1 (ID 10735)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   A :: Γ' ⊣

subgoal 2 (ID 10713) is:
 Γ' ⊢ N ▹ N' : A
subgoal 3 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 4 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 5 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 6 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using ,)


            econstructor; apply H; assumption.
5 subgoals, subgoal 1 (ID 10713)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ A : !s1
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A' ▹ A' : !s1
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A : !s1
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A0 ▹▹ A' : !s1
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ B ▹ B : !s2
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall Γ' : Env, env_conv1 (A :: Γ) Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ M' : B
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ N ▹ N' : A
  Γ' : Env
  H6 : env_conv1 Γ Γ'
  H7 : Γ' ⊣
  ============================
   Γ' ⊢ N ▹ N' : A

subgoal 2 (ID 10347) is:
 Γ' ⊢ M ▹ N : B
subgoal 3 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 4 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 5 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using , ?10741 using , ?10742 using ,)


  apply H5; assumption.
4 subgoals, subgoal 1 (ID 10347)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ N : A
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ B : !s
  Γ' : Env
  H1 : env_conv1 Γ Γ'
  H2 : Γ' ⊣
  ============================
   Γ' ⊢ M ▹ N : B

subgoal 2 (ID 10348) is:
 Γ' ⊢ M ▹ N : A
subgoal 3 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 4 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using , ?10741 using , ?10742 using ,)


eauto.
3 subgoals, subgoal 1 (ID 10348)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ M ▹ N : B
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ A ▹ B : !s
  Γ' : Env
  H1 : env_conv1 Γ Γ'
  H2 : Γ' ⊣
  ============================
   Γ' ⊢ M ▹ N : A

subgoal 2 (ID 10349) is:
 Γ' ⊢ s ▹▹ t : T
subgoal 3 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using , ?10741 using , ?10742 using , ?10752 using , ?10753 using ,)


eauto.
2 subgoals, subgoal 1 (ID 10349)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  t0 : Γ ⊢ s ▹ t : T
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ s ▹ t : T
  Γ' : Env
  H0 : env_conv1 Γ Γ'
  H1 : Γ' ⊣
  ============================
   Γ' ⊢ s ▹▹ t : T

subgoal 2 (ID 10350) is:
 Γ' ⊢ s ▹▹ u : T
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using , ?10741 using , ?10742 using , ?10752 using , ?10753 using , ?11931 using , ?11932 using ,)


eauto.
1 subgoals, subgoal 1 (ID 10350)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ s ▹▹ t : T
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall Γ' : Env, env_conv1 Γ Γ' -> Γ' ⊣ -> Γ' ⊢ t ▹▹ u : T
  Γ' : Env
  H1 : env_conv1 Γ Γ'
  H2 : Γ' ⊣
  ============================
   Γ' ⊢ s ▹▹ u : T

(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using , ?10741 using , ?10742 using , ?10752 using , ?10753 using , ?11931 using , ?11932 using ,)


eauto.
No more subgoals.
(dependent evars: ?10469 using , ?10470 using , ?10531 using , ?10532 using , ?10571 using , ?10572 using , ?10600 using , ?10601 using , ?10602 using , ?10637 using , ?10638 using , ?10702 using , ?10703 using , ?10704 using , ?10705 using , ?10729 using , ?10730 using , ?10741 using , ?10742 using , ?10752 using , ?10753 using , ?11931 using , ?11932 using , ?11998 using ,)


Qed.
conv1_in_env is defined



Lemma sub_trunc : forall Γ0 a A n Γ Δ, sub_in_env Γ0 a A n Γ Δ -> trunc n Δ Γ0.
1 subgoals, subgoal 1 (ID 12237)
  
  ============================
   forall (Γ0 : Env) (a A : Term) (n : nat) (Γ Δ : Env),
   sub_in_env Γ0 a A n Γ Δ -> trunc n Δ Γ0

(dependent evars:)


induction 1.
2 subgoals, subgoal 1 (ID 12251)
  
  Γ0 : Env
  a : Term
  A : Term
  ============================
   trunc 0 Γ0 Γ0

subgoal 2 (ID 12260) is:
 trunc (S n) (B [n ← a] :: Δ') Γ0
(dependent evars:)


apply trunc_O.
1 subgoals, subgoal 1 (ID 12260)
  
  Γ0 : Env
  a : Term
  A : Term
  Δ : Env
  Δ' : Env
  n : nat
  B : Term
  H : sub_in_env Γ0 a A n Δ Δ'
  IHsub_in_env : trunc n Δ' Γ0
  ============================
   trunc (S n) (B [n ← a] :: Δ') Γ0

(dependent evars:)


apply trunc_S.
1 subgoals, subgoal 1 (ID 12261)
  
  Γ0 : Env
  a : Term
  A : Term
  Δ : Env
  Δ' : Env
  n : nat
  B : Term
  H : sub_in_env Γ0 a A n Δ Δ'
  IHsub_in_env : trunc n Δ' Γ0
  ============================
   trunc n Δ' Γ0

(dependent evars:)

trivial.
No more subgoals.
(dependent evars:)


Qed.
sub_trunc is defined



Lemma sub_in_env_item : forall Δ P A n Γ Γ', sub_in_env Δ P A n Γ Γ' -> A n Γ.
1 subgoals, subgoal 1 (ID 12277)
  
  ============================
   forall (Δ : Env) (P A : Term) (n : nat) (Γ Γ' : Env),
   sub_in_env Δ P A n Γ Γ' -> A ↓ n ∈ Γ

(dependent evars:)


induction 1; eauto.
No more subgoals.
(dependent evars:)


Qed.
sub_in_env_item is defined



Lemma typ_reds_to_red_ : forall Γ M N T, Γ M ▹▹ N : T -> exists M', Γ M M' : T.
1 subgoals, subgoal 1 (ID 12315)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹▹ N : T -> exists M' : Term, Γ ⊢ M ▹ M' : T

(dependent evars:)


induction 1.
2 subgoals, subgoal 1 (ID 12337)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  ============================
   exists M' : Term, Γ ⊢ s ▹ M' : T

subgoal 2 (ID 12347) is:
 exists M' : Term, Γ ⊢ s ▹ M' : T
(dependent evars:)

exists t; trivial.
1 subgoals, subgoal 1 (ID 12347)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : exists M' : Term, Γ ⊢ s ▹ M' : T
  IHtyp_reds2 : exists M' : Term, Γ ⊢ t ▹ M' : T
  ============================
   exists M' : Term, Γ ⊢ s ▹ M' : T

(dependent evars:)


trivial.
No more subgoals.
(dependent evars:)


Qed.
typ_reds_to_red_ is defined



Lemma reds_Pi_ : forall Γ A A' s, Γ A ▹▹ A' : !s -> forall B t u, A::Γ B B :!t ->
  Rel s t u -> Γ Π (A), B ▹▹ Π (A'), B : !u.
1 subgoals, subgoal 1 (ID 12364)
  
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (B : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B : !u

(dependent evars:)


intros until 1.
1 subgoals, subgoal 1 (ID 12369)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H : Γ ⊢ A ▹▹ A' : !s
  ============================
   forall (B : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B : !u

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 12376)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  S : Term
  HeqS : S = !s
  H : Γ ⊢ A ▹▹ A' : S
  ============================
   forall (B : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B : !u

(dependent evars:)

revert s HeqS.
1 subgoals, subgoal 1 (ID 12378)
  
  Γ : Env
  A : Term
  A' : Term
  S : Term
  H : Γ ⊢ A ▹▹ A' : S
  ============================
   forall s : Sorts,
   S = !s ->
   forall (B : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B : !u

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 12424)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u : Sorts
  H0 : s :: Γ ⊢ B ▹ B : !t0
  H1 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (t), B : !u

subgoal 2 (ID 12432) is:
 Γ ⊢ Π (s), B ▹▹ Π (u), B : !u0
(dependent evars:)


constructor.
2 subgoals, subgoal 1 (ID 12434)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u : Sorts
  H0 : s :: Γ ⊢ B ▹ B : !t0
  H1 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ Π (s), B ▹ Π (t), B : !u

subgoal 2 (ID 12432) is:
 Γ ⊢ Π (s), B ▹▹ Π (u), B : !u0
(dependent evars:)

eapply typ_pi; eauto.
1 subgoals, subgoal 1 (ID 12432)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (u), B : !u0

(dependent evars: ?12435 using , ?12436 using ,)


apply typ_reds_trans with (Pi t B).
2 subgoals, subgoal 1 (ID 12456)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (t), B : !u0

subgoal 2 (ID 12457) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
(dependent evars: ?12435 using , ?12436 using ,)

eapply IHtyp_reds1.
4 subgoals, subgoal 1 (ID 12460)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   !s0 = !?12458

subgoal 2 (ID 12461) is:
 s :: Γ ⊢ B ▹ B : !?12459
subgoal 3 (ID 12462) is:
 Rel ?12458 ?12459 u0
subgoal 4 (ID 12457) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
(dependent evars: ?12435 using , ?12436 using , ?12458 open, ?12459 open,)

reflexivity.
3 subgoals, subgoal 1 (ID 12461)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   s :: Γ ⊢ B ▹ B : !?12459

subgoal 2 (ID 12462) is:
 Rel s0 ?12459 u0
subgoal 3 (ID 12457) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 open,)

apply H1.
2 subgoals, subgoal 1 (ID 12462)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Rel s0 t0 u0

subgoal 2 (ID 12457) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using ,)

trivial.
1 subgoals, subgoal 1 (ID 12457)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0

(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using ,)


eapply IHtyp_reds2.
3 subgoals, subgoal 1 (ID 12466)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   !s0 = !?12464

subgoal 2 (ID 12467) is:
 t :: Γ ⊢ B ▹ B : !?12465
subgoal 3 (ID 12468) is:
 Rel ?12464 ?12465 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 open, ?12465 open,)

reflexivity.
2 subgoals, subgoal 1 (ID 12467)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   t :: Γ ⊢ B ▹ B : !?12465

subgoal 2 (ID 12468) is:
 Rel s0 ?12465 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 open,)

eapply conv1_in_env.
4 subgoals, subgoal 1 (ID 12483)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   ?12482 ⊢ B ▹ B : !?12465

subgoal 2 (ID 12484) is:
 env_conv1 ?12482 (t :: Γ)
subgoal 3 (ID 12485) is:
 t :: Γ ⊣
subgoal 4 (ID 12468) is:
 Rel s0 ?12465 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 open, ?12478 using ?12482 , ?12482 open,)

apply H1.
3 subgoals, subgoal 1 (ID 12484)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   env_conv1 (s :: Γ) (t :: Γ)

subgoal 2 (ID 12485) is:
 t :: Γ ⊣
subgoal 3 (ID 12468) is:
 Rel s0 t0 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using ,)

econstructor.
3 subgoals, subgoal 1 (ID 12487)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Γ ⊢ s ≡' t

subgoal 2 (ID 12485) is:
 t :: Γ ⊣
subgoal 3 (ID 12468) is:
 Rel s0 t0 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using ,)

eauto.
2 subgoals, subgoal 1 (ID 12485)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   t :: Γ ⊣

subgoal 2 (ID 12468) is:
 Rel s0 t0 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using , ?12509 using ,)


apply typ_reds_to_red_ in H0.
2 subgoals, subgoal 1 (ID 12573)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : exists M' : Term, Γ ⊢ t ▹ M' : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   t :: Γ ⊣

subgoal 2 (ID 12468) is:
 Rel s0 t0 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using , ?12509 using ,)

destruct H0 as (? & ? ).
2 subgoals, subgoal 1 (ID 12579)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  x : Term
  H0 : Γ ⊢ t ▹ x : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   t :: Γ ⊣

subgoal 2 (ID 12468) is:
 Rel s0 t0 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using , ?12509 using ,)

econstructor.
2 subgoals, subgoal 1 (ID 12584)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  x : Term
  H0 : Γ ⊢ t ▹ x : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Γ ⊢ t ▹ ?12582 : !?12583

subgoal 2 (ID 12468) is:
 Rel s0 t0 u0
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using , ?12509 using , ?12582 open, ?12583 open,)

apply H0.
1 subgoals, subgoal 1 (ID 12468)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  t0 : Sorts
  u0 : Sorts
  H1 : s :: Γ ⊢ B ▹ B : !t0
  H2 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall (B : Term) (t0 u : Sorts),
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B : !u
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall (B : Term) (t0 u0 : Sorts),
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B : !u0
  ============================
   Rel s0 t0 u0

(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using , ?12509 using , ?12582 using , ?12583 using ,)

trivial.
No more subgoals.
(dependent evars: ?12435 using , ?12436 using , ?12458 using , ?12459 using , ?12464 using , ?12465 using , ?12478 using ?12482 , ?12482 using , ?12509 using , ?12582 using , ?12583 using ,)


Qed.
reds_Pi_ is defined



Left-Hand reflexivity: this ensure that a valid derivation starts from a well typed term.
Theorem red_refl_lt : forall Γ M N T, Γ M N : T -> Γ M M :T.
1 subgoals, subgoal 1 (ID 12600)
  
  ============================
   forall (Γ : Env) (M N T : Term), Γ ⊢ M ▹ N : T -> Γ ⊢ M ▹ M : T

(dependent evars:)


induction 1; intros.
8 subgoals, subgoal 1 (ID 12658)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  ============================
   Γ ⊢ #x ▹ #x : A

subgoal 2 (ID 12663) is:
 Γ ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 12677) is:
 Γ ⊢ Π (A), B ▹ Π (A), B : !s3
subgoal 4 (ID 12695) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A), B
subgoal 5 (ID 12719) is:
 Γ ⊢ M ·( A, B)N ▹ M ·( A, B)N : B [ ← N]
subgoal 6 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 7 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 8 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)


constructor; trivial.
7 subgoals, subgoal 1 (ID 12663)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  ============================
   Γ ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 12677) is:
 Γ ⊢ Π (A), B ▹ Π (A), B : !s3
subgoal 3 (ID 12695) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A), B
subgoal 4 (ID 12719) is:
 Γ ⊢ M ·( A, B)N ▹ M ·( A, B)N : B [ ← N]
subgoal 5 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 6 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 7 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)


constructor; trivial.
6 subgoals, subgoal 1 (ID 12677)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  ============================
   Γ ⊢ Π (A), B ▹ Π (A), B : !s3

subgoal 2 (ID 12695) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A), B
subgoal 3 (ID 12719) is:
 Γ ⊢ M ·( A, B)N ▹ M ·( A, B)N : B [ ← N]
subgoal 4 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)


apply typ_pi with s1 s2; trivial.
5 subgoals, subgoal 1 (ID 12695)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M ▹ M : B
  ============================
   Γ ⊢ λ [A], M ▹ λ [A], M : Π (A), B

subgoal 2 (ID 12719) is:
 Γ ⊢ M ·( A, B)N ▹ M ·( A, B)N : B [ ← N]
subgoal 3 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)


apply typ_la with s1 s2 s3; trivial.
4 subgoals, subgoal 1 (ID 12719)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : Γ ⊢ M ▹ M : Π (A), B
  IHtyp4 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ M ·( A, B)N ▹ M ·( A, B)N : B [ ← N]

subgoal 2 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)


eapply typ_app;trivial.
6 subgoals, subgoal 1 (ID 12790)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : Γ ⊢ M ▹ M : Π (A), B
  IHtyp4 : Γ ⊢ N ▹ N : A
  ============================
   Rel ?12787 ?12788 ?12789

subgoal 2 (ID 12791) is:
 Γ ⊢ A ▹ A : !?12787
subgoal 3 (ID 12792) is:
 A :: Γ ⊢ B ▹ B : !?12788
subgoal 4 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 open, ?12788 open, ?12789 open,)

apply H.
5 subgoals, subgoal 1 (ID 12791)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : Γ ⊢ M ▹ M : Π (A), B
  IHtyp4 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A ▹ A : !s1

subgoal 2 (ID 12792) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using ,)

trivial.
4 subgoals, subgoal 1 (ID 12792)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : Γ ⊢ M ▹ M : Π (A), B
  IHtyp4 : Γ ⊢ N ▹ N : A
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 12750) is:
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using ,)

trivial.
3 subgoals, subgoal 1 (ID 12750)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ (λ [A], M) ·( A', B)N : B [ ← N]

subgoal 2 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 3 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using ,)


eapply typ_app;trivial.
7 subgoals, subgoal 1 (ID 12798)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Rel ?12795 ?12796 ?12797

subgoal 2 (ID 12799) is:
 Γ ⊢ A' ▹ A' : !?12795
subgoal 3 (ID 12800) is:
 A' :: Γ ⊢ B ▹ B : !?12796
subgoal 4 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 5 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 6 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 7 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 open, ?12796 open, ?12797 open,)

apply H.
6 subgoals, subgoal 1 (ID 12799)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A' ▹ A' : !s1

subgoal 2 (ID 12800) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using ,)

trivial.
5 subgoals, subgoal 1 (ID 12800)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A' :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using ,)

eapply conv1_in_env.
7 subgoals, subgoal 1 (ID 12816)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   ?12815 ⊢ B ▹ B : !s2

subgoal 2 (ID 12817) is:
 env_conv1 ?12815 (A' :: Γ)
subgoal 3 (ID 12818) is:
 A' :: Γ ⊣
subgoal 4 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 5 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 6 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 7 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 open,)


apply IHtyp3.
6 subgoals, subgoal 1 (ID 12817)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   env_conv1 (A :: Γ) (A' :: Γ)

subgoal 2 (ID 12818) is:
 A' :: Γ ⊣
subgoal 3 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using ,)

econstructor.
6 subgoals, subgoal 1 (ID 12820)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A ≡' A'

subgoal 2 (ID 12818) is:
 A' :: Γ ⊣
subgoal 3 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using ,)

apply typ_peq_trans with A0.
7 subgoals, subgoal 1 (ID 12821)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A ≡' A0

subgoal 2 (ID 12822) is:
 Γ ⊢ A0 ≡' A'
subgoal 3 (ID 12818) is:
 A' :: Γ ⊣
subgoal 4 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 5 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 6 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 7 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using ,)

eauto.
6 subgoals, subgoal 1 (ID 12822)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A0 ≡' A'

subgoal 2 (ID 12818) is:
 A' :: Γ ⊣
subgoal 3 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using ,)

eauto.
5 subgoals, subgoal 1 (ID 12818)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A' :: Γ ⊣

subgoal 2 (ID 12801) is:
 Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using ,)


eauto.
4 subgoals, subgoal 1 (ID 12801)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ λ [A], M ▹ λ [A], M : Π (A'), B

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using ,)

eapply typ_pcompat.
5 subgoals, subgoal 1 (ID 12981)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ λ [A], M ▹ λ [A], M : ?12980

subgoal 2 (ID 12982) is:
 Γ ⊢ ?12980 ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 open,)

eapply typ_la.
8 subgoals, subgoal 1 (ID 12988)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Rel ?12985 ?12986 ?12987

subgoal 2 (ID 12989) is:
 Γ ⊢ A ▹ A : !?12985
subgoal 3 (ID 12990) is:
 A :: Γ ⊢ ?12984 ▹ ?12984 : !?12986
subgoal 4 (ID 12991) is:
 A :: Γ ⊢ M ▹ M : ?12984
subgoal 5 (ID 12982) is:
 Γ ⊢ Π (A), ?12984 ≡' Π (A'), B
subgoal 6 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 7 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 8 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 open, ?12985 open, ?12986 open, ?12987 open,)

apply H.
7 subgoals, subgoal 1 (ID 12989)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A ▹ A : !s1

subgoal 2 (ID 12990) is:
 A :: Γ ⊢ ?12984 ▹ ?12984 : !s2
subgoal 3 (ID 12991) is:
 A :: Γ ⊢ M ▹ M : ?12984
subgoal 4 (ID 12982) is:
 Γ ⊢ Π (A), ?12984 ≡' Π (A'), B
subgoal 5 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 6 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 7 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 open, ?12985 using , ?12986 using , ?12987 using ,)


trivial.
6 subgoals, subgoal 1 (ID 12990)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A :: Γ ⊢ ?12984 ▹ ?12984 : !s2

subgoal 2 (ID 12991) is:
 A :: Γ ⊢ M ▹ M : ?12984
subgoal 3 (ID 12982) is:
 Γ ⊢ Π (A), ?12984 ≡' Π (A'), B
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 open, ?12985 using , ?12986 using , ?12987 using ,)

apply IHtyp3.
5 subgoals, subgoal 1 (ID 12991)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A :: Γ ⊢ M ▹ M : B

subgoal 2 (ID 12982) is:
 Γ ⊢ Π (A), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using ,)

trivial.
4 subgoals, subgoal 1 (ID 12982)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ Π (A), B ≡' Π (A'), B

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using ,)

apply typ_peq_trans with (Π(A0),B).
5 subgoals, subgoal 1 (ID 12992)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ Π (A), B ≡' Π (A0), B

subgoal 2 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using ,)


apply typ_peq_sym.
5 subgoals, subgoal 1 (ID 12994)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ Π (A0), B ≡' Π (A), B

subgoal 2 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using ,)

apply reds_to_conv with s3.
5 subgoals, subgoal 1 (ID 12995)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ Π (A0), B ▹▹ Π (A), B : !s3

subgoal 2 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using ,)

eapply reds_Pi_; eauto.
5 subgoals, subgoal 1 (ID 12999)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A0 :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using ,)


eapply conv1_in_env.
7 subgoals, subgoal 1 (ID 13266)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   ?13265 ⊢ B ▹ B : !s2

subgoal 2 (ID 13267) is:
 env_conv1 ?13265 (A0 :: Γ)
subgoal 3 (ID 13268) is:
 A0 :: Γ ⊣
subgoal 4 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 5 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 6 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 7 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 open,)

apply IHtyp3.
6 subgoals, subgoal 1 (ID 13267)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   env_conv1 (A :: Γ) (A0 :: Γ)

subgoal 2 (ID 13268) is:
 A0 :: Γ ⊣
subgoal 3 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using ,)

eauto.
5 subgoals, subgoal 1 (ID 13268)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A0 :: Γ ⊣

subgoal 2 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using ,)

apply typ_reds_to_red_ in H2 as (? & ?).
5 subgoals, subgoal 1 (ID 13349)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  x : Term
  H2 : Γ ⊢ A0 ▹ x : !s1
  ============================
   A0 :: Γ ⊣

subgoal 2 (ID 12993) is:
 Γ ⊢ Π (A0), B ≡' Π (A'), B
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using ,)

econstructor; apply H2.
4 subgoals, subgoal 1 (ID 12993)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ Π (A0), B ≡' Π (A'), B

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using ,)


apply reds_to_conv with s3.
4 subgoals, subgoal 1 (ID 13355)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ Π (A0), B ▹▹ Π (A'), B : !s3

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using ,)

eapply reds_Pi_; eauto.
4 subgoals, subgoal 1 (ID 13359)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A0 :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using ,)


eapply conv1_in_env.
6 subgoals, subgoal 1 (ID 13626)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   ?13625 ⊢ B ▹ B : !s2

subgoal 2 (ID 13627) is:
 env_conv1 ?13625 (A0 :: Γ)
subgoal 3 (ID 13628) is:
 A0 :: Γ ⊣
subgoal 4 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 5 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 6 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 open,)

apply IHtyp3.
5 subgoals, subgoal 1 (ID 13627)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   env_conv1 (A :: Γ) (A0 :: Γ)

subgoal 2 (ID 13628) is:
 A0 :: Γ ⊣
subgoal 3 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 4 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 5 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using ,)

eauto.
4 subgoals, subgoal 1 (ID 13628)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   A0 :: Γ ⊣

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using ,)

apply typ_reds_to_red_ in H2 as (? & ?).
4 subgoals, subgoal 1 (ID 13709)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  x : Term
  H2 : Γ ⊢ A0 ▹ x : !s1
  ============================
   A0 :: Γ ⊣

subgoal 2 (ID 12802) is:
 Γ ⊢ N ▹ N : A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using ,)

econstructor; apply H2.
3 subgoals, subgoal 1 (ID 12802)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ N ▹ N : A'

subgoal 2 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 3 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using , ?13712 using , ?13713 using ,)


apply typ_pcompat with A.
4 subgoals, subgoal 1 (ID 13715)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ N ▹ N : A

subgoal 2 (ID 13716) is:
 Γ ⊢ A ≡' A'
subgoal 3 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 4 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using , ?13712 using , ?13713 using ,)

trivial.
3 subgoals, subgoal 1 (ID 13716)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M ▹ M : B
  IHtyp5 : Γ ⊢ N ▹ N : A
  ============================
   Γ ⊢ A ≡' A'

subgoal 2 (ID 12761) is:
 Γ ⊢ M ▹ M : B
subgoal 3 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using , ?13712 using , ?13713 using ,)

eauto.
2 subgoals, subgoal 1 (ID 12761)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : Γ ⊢ M ▹ M : A
  IHtyp2 : Γ ⊢ A ▹ A : !s
  ============================
   Γ ⊢ M ▹ M : B

subgoal 2 (ID 12772) is:
 Γ ⊢ M ▹ M : A
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using , ?13712 using , ?13713 using , ?13724 using , ?15114 using , ?15218 using ,)


apply typ_red with A s; trivial.
1 subgoals, subgoal 1 (ID 12772)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : Γ ⊢ M ▹ M : B
  IHtyp2 : Γ ⊢ A ▹ A : !s
  ============================
   Γ ⊢ M ▹ M : A

(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using , ?13712 using , ?13713 using , ?13724 using , ?15114 using , ?15218 using ,)


apply typ_exp with B s; trivial.
No more subgoals.
(dependent evars: ?12787 using , ?12788 using , ?12789 using , ?12795 using , ?12796 using , ?12797 using , ?12811 using ?12815 , ?12815 using , ?12854 using , ?12898 using , ?12961 using , ?12962 using , ?12980 using ?12984 ?12983 , ?12983 using , ?12984 using , ?12985 using , ?12986 using , ?12987 using , ?12996 using , ?12997 using , ?13261 using ?13265 , ?13265 using , ?13281 using , ?13352 using , ?13353 using , ?13356 using , ?13357 using , ?13621 using ?13625 , ?13625 using , ?13641 using , ?13712 using , ?13713 using , ?13724 using , ?15114 using , ?15218 using ,)


Qed.
red_refl_lt is defined



Lemma reds_refl_lt : forall Γ M N T, Γ M ▹▹ N : T -> Γ M M :T.
1 subgoals, subgoal 1 (ID 15255)
  
  ============================
   forall (Γ : Env) (M N T : Term), Γ ⊢ M ▹▹ N : T -> Γ ⊢ M ▹ M : T

(dependent evars:)


induction 1.
2 subgoals, subgoal 1 (ID 15277)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  ============================
   Γ ⊢ s ▹ s : T

subgoal 2 (ID 15287) is:
 Γ ⊢ s ▹ s : T
(dependent evars:)

apply red_refl_lt in H; trivial.
1 subgoals, subgoal 1 (ID 15287)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : Γ ⊢ s ▹ s : T
  IHtyp_reds2 : Γ ⊢ t ▹ t : T
  ============================
   Γ ⊢ s ▹ s : T

(dependent evars:)


trivial.
No more subgoals.
(dependent evars:)


Qed.
reds_refl_lt is defined



Substitution Lemma
Theorem subst_gen : (forall Γ M N T, Γ M N : T ->
  forall Δ Γ' u U n, sub_in_env Δ u U n Γ Γ' ->
  forall u', Δ u u' : U ->
  Γ' M [ n u] N [ n u'] : T [ n u])/\
(forall Γ M N T, Γ M ▹▹ N : T ->
  forall Δ Γ' u U n, sub_in_env Δ u U n Γ Γ' ->
  forall u', Δ u u' : U ->
  Γ' M [ n u] ▹▹ N [ n u'] : T [ n u])/\
 (forall Γ, Γ -> forall Δ P P' A n Γ', Δ P P' : A ->
    sub_in_env Δ P A n Γ Γ' -> Γ' ).
1 subgoals, subgoal 1 (ID 15323)
  
  ============================
   (forall (Γ : Env) (M N T : Term),
    Γ ⊢ M ▹ N : T ->
    forall (Δ Γ' : Env) (u U : Term) (n : nat),
    sub_in_env Δ u U n Γ Γ' ->
    forall u' : Term,
    Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : T [n ← u]) /\
   (forall (Γ : Env) (M N T : Term),
    Γ ⊢ M ▹▹ N : T ->
    forall (Δ Γ' : Env) (u U : Term) (n : nat),
    sub_in_env Δ u U n Γ Γ' ->
    forall u' : Term,
    Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹▹ N [n ← u'] : T [n ← u]) /\
   (forall Γ : Env,
    Γ ⊣ ->
    forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
    Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣)

(dependent evars:)


apply typ_induc; intros.
12 subgoals, subgoal 1 (ID 15349)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ #x [n ← u] ▹ #x [n ← u'] : A [n ← u]

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars:)


simpl.
12 subgoals, subgoal 1 (ID 15562)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   Γ'
   ⊢ match lt_eq_lt_dec x n with
     | inleft (left _) => #x
     | inleft (right _) => u ↑ n
     | inright _ => #(x - 1)
     end
   ▹ match lt_eq_lt_dec x n with
     | inleft (left _) => #x
     | inleft (right _) => u' ↑ n
     | inright _ => #(x - 1)
     end : A [n ← u]

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars:)

destruct lt_eq_lt_dec as [ []| ].
14 subgoals, subgoal 1 (ID 15576)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   Γ' ⊢ #x ▹ #x : A [n ← u]

subgoal 2 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars:)


constructor.
15 subgoals, subgoal 1 (ID 15580)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   Γ' ⊣

subgoal 2 (ID 15581) is:
 A [n ← u] ↓ x ⊂ Γ'
subgoal 3 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars:)

eapply H.
16 subgoals, subgoal 1 (ID 15587)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   ?15582 ⊢ ?15583 ▹ ?15584 : ?15585

subgoal 2 (ID 15588) is:
 sub_in_env ?15582 ?15583 ?15585 ?15586 Γ Γ'
subgoal 3 (ID 15581) is:
 A [n ← u] ↓ x ⊂ Γ'
subgoal 4 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 5 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 6 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 7 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 8 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 9 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 10 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 11 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 12 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 13 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 14 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 15 (ID 15547) is:
 Γ' ⊣
subgoal 16 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 open, ?15583 open, ?15584 open, ?15585 open, ?15586 open,)

apply H1.
15 subgoals, subgoal 1 (ID 15588)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   sub_in_env Δ u U ?15586 Γ Γ'

subgoal 2 (ID 15581) is:
 A [n ← u] ↓ x ⊂ Γ'
subgoal 3 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 open,)

apply H0.
14 subgoals, subgoal 1 (ID 15581)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   A [n ← u] ↓ x ⊂ Γ'

subgoal 2 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using ,)


eapply nth_sub_item_inf.
16 subgoals, subgoal 1 (ID 15592)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   sub_in_env ?15590 u ?15589 n ?15591 Γ'

subgoal 2 (ID 15593) is:
 n > x
subgoal 3 (ID 15594) is:
 A ↓ x ⊂ ?15591
subgoal 4 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 5 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 6 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 7 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 8 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 9 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 10 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 11 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 12 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 13 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 14 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 15 (ID 15547) is:
 Γ' ⊣
subgoal 16 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 open, ?15590 open, ?15591 open,)

apply H0.
15 subgoals, subgoal 1 (ID 15593)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   n > x

subgoal 2 (ID 15594) is:
 A ↓ x ⊂ Γ
subgoal 3 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)

intuition.
14 subgoals, subgoal 1 (ID 15594)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : x < n
  ============================
   A ↓ x ⊂ Γ

subgoal 2 (ID 15577) is:
 Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)

trivial.
13 subgoals, subgoal 1 (ID 15577)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  e : x = n
  ============================
   Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]

subgoal 2 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)


destruct i as (a & ?& ?).
13 subgoals, subgoal 1 (ID 15605)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H2 : A = a ↑ (S x)
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  e : x = n
  ============================
   Γ' ⊢ u ↑ n ▹ u' ↑ n : A [n ← u]

subgoal 2 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)


subst.
13 subgoals, subgoal 1 (ID 15614)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   Γ' ⊢ u ↑ n ▹ u' ↑ n : a ↑ (S n) [n ← u]

subgoal 2 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)

rewrite substP3; intuition.
13 subgoals, subgoal 1 (ID 15615)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   Γ' ⊢ u ↑ n ▹ u' ↑ n : a ↑ n

subgoal 2 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)


apply thinning_n with Δ.
15 subgoals, subgoal 1 (ID 15660)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   trunc n Γ' Δ

subgoal 2 (ID 15661) is:
 Δ ⊢ u ▹ u' : a
subgoal 3 (ID 15662) is:
 Γ' ⊣
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using ,)

eapply sub_trunc.
15 subgoals, subgoal 1 (ID 15666)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   sub_in_env Δ ?15663 ?15664 n ?15665 Γ'

subgoal 2 (ID 15661) is:
 Δ ⊢ u ▹ u' : a
subgoal 3 (ID 15662) is:
 Γ' ⊣
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 open, ?15664 open, ?15665 open,)

apply H0.
14 subgoals, subgoal 1 (ID 15661)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   Δ ⊢ u ▹ u' : a

subgoal 2 (ID 15662) is:
 Γ' ⊣
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using ,)


replace a with U.
15 subgoals, subgoal 1 (ID 15670)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 15667) is:
 U = a
subgoal 3 (ID 15662) is:
 Γ' ⊣
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using ,)

trivial.
14 subgoals, subgoal 1 (ID 15667)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   U = a

subgoal 2 (ID 15662) is:
 Γ' ⊣
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using ,)

eapply fun_item.
15 subgoals, subgoal 1 (ID 15674)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   U ↓ ?15673 ∈ ?15672

subgoal 2 (ID 15675) is:
 a ↓ ?15673 ∈ ?15672
subgoal 3 (ID 15662) is:
 Γ' ⊣
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 open, ?15673 open,)

eapply sub_in_env_item.
15 subgoals, subgoal 1 (ID 15679)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   sub_in_env ?15676 ?15677 U ?15673 ?15672 ?15678

subgoal 2 (ID 15675) is:
 a ↓ ?15673 ∈ ?15672
subgoal 3 (ID 15662) is:
 Γ' ⊣
subgoal 4 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 5 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 6 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 7 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 8 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 9 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 10 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 11 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 12 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 13 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 14 (ID 15547) is:
 Γ' ⊣
subgoal 15 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 open, ?15673 open, ?15676 open, ?15677 open, ?15678 open,)

apply H0.
14 subgoals, subgoal 1 (ID 15675)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   a ↓ n ∈ Γ

subgoal 2 (ID 15662) is:
 Γ' ⊣
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using ,)

trivial.
13 subgoals, subgoal 1 (ID 15662)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   Γ' ⊣

subgoal 2 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using ,)


eapply H.
14 subgoals, subgoal 1 (ID 15685)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   ?15680 ⊢ ?15681 ▹ ?15682 : ?15683

subgoal 2 (ID 15686) is:
 sub_in_env ?15680 ?15681 ?15683 ?15684 Γ Γ'
subgoal 3 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 open, ?15681 open, ?15682 open, ?15683 open, ?15684 open,)

apply H1.
13 subgoals, subgoal 1 (ID 15686)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  H3 : a ↓ n ∈ Γ
  ============================
   sub_in_env Δ u U ?15684 Γ Γ'

subgoal 2 (ID 15578) is:
 Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 open,)

apply H0.
12 subgoals, subgoal 1 (ID 15578)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  i : A ↓ x ⊂ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using ,)


destruct i as (a & ? &?).
12 subgoals, subgoal 1 (ID 15697)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H2 : A = a ↑ (S x)
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   Γ' ⊢ #(x - 1) ▹ #(x - 1) : A [n ← u]

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using ,)


constructor.
13 subgoals, subgoal 1 (ID 15699)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H2 : A = a ↑ (S x)
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   Γ' ⊣

subgoal 2 (ID 15700) is:
 A [n ← u] ↓ x - 1 ⊂ Γ'
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using ,)

eapply H.
14 subgoals, subgoal 1 (ID 15706)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H2 : A = a ↑ (S x)
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   ?15701 ⊢ ?15702 ▹ ?15703 : ?15704

subgoal 2 (ID 15707) is:
 sub_in_env ?15701 ?15702 ?15704 ?15705 Γ Γ'
subgoal 3 (ID 15700) is:
 A [n ← u] ↓ x - 1 ⊂ Γ'
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 open, ?15702 open, ?15703 open, ?15704 open, ?15705 open,)

apply H1.
13 subgoals, subgoal 1 (ID 15707)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H2 : A = a ↑ (S x)
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   sub_in_env Δ u U ?15705 Γ Γ'

subgoal 2 (ID 15700) is:
 A [n ← u] ↓ x - 1 ⊂ Γ'
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 open,)

apply H0.
12 subgoals, subgoal 1 (ID 15700)
  
  Γ : Env
  x : nat
  A : Term
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H2 : A = a ↑ (S x)
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   A [n ← u] ↓ x - 1 ⊂ Γ'

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)


subst.
12 subgoals, subgoal 1 (ID 15710)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↑ (S x) [n ← u] ↓ x - 1 ⊂ Γ'

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

rewrite substP3; intuition.
12 subgoals, subgoal 1 (ID 15711)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↑ x ↓ x - 1 ⊂ Γ'

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)


exists a.
12 subgoals, subgoal 1 (ID 15773)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↑ x = a ↑ (S (x - 1)) /\ a ↓ x - 1 ∈ Γ'

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

split.
13 subgoals, subgoal 1 (ID 15775)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↑ x = a ↑ (S (x - 1))

subgoal 2 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

replace (S (x -1)) with x.
14 subgoals, subgoal 1 (ID 15780)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↑ x = a ↑ x

subgoal 2 (ID 15777) is:
 x = S (x - 1)
subgoal 3 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

trivial.
13 subgoals, subgoal 1 (ID 15777)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   x = S (x - 1)

subgoal 2 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)


rewrite minus_Sn_m.
14 subgoals, subgoal 1 (ID 15782)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   x = S x - 1

subgoal 2 (ID 15783) is:
 1 <= x
subgoal 3 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

rewrite <- pred_of_minus.
14 subgoals, subgoal 1 (ID 15784)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   x = pred (S x)

subgoal 2 (ID 15783) is:
 1 <= x
subgoal 3 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

simpl; trivial.
13 subgoals, subgoal 1 (ID 15783)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   1 <= x

subgoal 2 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

destruct x.
14 subgoals, subgoal 1 (ID 15794)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ 0 ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < 0
  ============================
   1 <= 0

subgoal 2 (ID 15799) is:
 1 <= S x
subgoal 3 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

apply lt_n_O in l; elim l.
13 subgoals, subgoal 1 (ID 15799)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ S x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < S x
  ============================
   1 <= S x

subgoal 2 (ID 15776) is:
 a ↓ x - 1 ∈ Γ'
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)


intuition.
12 subgoals, subgoal 1 (ID 15776)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↓ x - 1 ∈ Γ'

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using ,)

eapply nth_sub_sup.
14 subgoals, subgoal 1 (ID 15824)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   sub_in_env ?15820 ?15822 ?15823 ?15819 ?15821 Γ'

subgoal 2 (ID 15825) is:
 ?15819 <= x - 1
subgoal 3 (ID 15826) is:
 a ↓ S (x - 1) ∈ ?15821
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 open, ?15820 open, ?15821 open, ?15822 open, ?15823 open,)

apply H0.
13 subgoals, subgoal 1 (ID 15825)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   n <= x - 1

subgoal 2 (ID 15826) is:
 a ↓ S (x - 1) ∈ Γ
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

destruct x.
14 subgoals, subgoal 1 (ID 15835)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ 0 ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < 0
  ============================
   n <= 0 - 1

subgoal 2 (ID 15840) is:
 n <= S x - 1
subgoal 3 (ID 15826) is:
 a ↓ S (x - 1) ∈ Γ
subgoal 4 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 5 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 6 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 7 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 8 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

apply lt_n_O in l; elim l.
13 subgoals, subgoal 1 (ID 15840)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ S x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < S x
  ============================
   n <= S x - 1

subgoal 2 (ID 15826) is:
 a ↓ S (x - 1) ∈ Γ
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

rewrite <- pred_of_minus.
13 subgoals, subgoal 1 (ID 15843)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ S x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < S x
  ============================
   n <= pred (S x)

subgoal 2 (ID 15826) is:
 a ↓ S (x - 1) ∈ Γ
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)


simpl; intuition.
12 subgoals, subgoal 1 (ID 15826)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↓ S (x - 1) ∈ Γ

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

replace (S (x -1)) with x.
13 subgoals, subgoal 1 (ID 15865)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   a ↓ x ∈ Γ

subgoal 2 (ID 15862) is:
 x = S (x - 1)
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

trivial.
12 subgoals, subgoal 1 (ID 15862)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   x = S (x - 1)

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

rewrite minus_Sn_m.
13 subgoals, subgoal 1 (ID 15867)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   x = S x - 1

subgoal 2 (ID 15868) is:
 1 <= x
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

rewrite <- pred_of_minus.
13 subgoals, subgoal 1 (ID 15869)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   x = pred (S x)

subgoal 2 (ID 15868) is:
 1 <= x
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)


simpl; trivial.
12 subgoals, subgoal 1 (ID 15868)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < x
  ============================
   1 <= x

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

destruct x.
13 subgoals, subgoal 1 (ID 15879)
  
  Γ : Env
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ 0 ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < 0
  ============================
   1 <= 0

subgoal 2 (ID 15884) is:
 1 <= S x
subgoal 3 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 4 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 5 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 6 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 7 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

apply lt_n_O in l; elim l.
12 subgoals, subgoal 1 (ID 15884)
  
  Γ : Env
  x : nat
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  a : Term
  H3 : a ↓ S x ∈ Γ
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  l : n < S x
  ============================
   1 <= S x

subgoal 2 (ID 15363) is:
 Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)

intuition.
11 subgoals, subgoal 1 (ID 15363)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ !s1 [n ← u] ▹ !s1 [n ← u'] : !s2 [n ← u]

subgoal 2 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 3 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)


simpl; constructor; trivial.
11 subgoals, subgoal 1 (ID 15908)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊣

subgoal 2 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 3 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using ,)


eapply H.
12 subgoals, subgoal 1 (ID 15914)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   ?15909 ⊢ ?15910 ▹ ?15911 : ?15912

subgoal 2 (ID 15915) is:
 sub_in_env ?15909 ?15910 ?15912 ?15913 Γ Γ'
subgoal 3 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 open, ?15910 open, ?15911 open, ?15912 open, ?15913 open,)

apply H1.
11 subgoals, subgoal 1 (ID 15915)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  a : Ax s1 s2
  w : Γ ⊣
  H : forall (Δ : Env) (P P' A : Term) (n : nat) (Γ' : Env),
      Δ ⊢ P ▹ P' : A -> sub_in_env Δ P A n Γ Γ' -> Γ' ⊣
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env Δ u U ?15913 Γ Γ'

subgoal 2 (ID 15384) is:
 Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]
subgoal 3 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 open,)

apply H0.
10 subgoals, subgoal 1 (ID 15384)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ (Π (A), B) [n ← u] ▹ (Π (A'), B') [n ← u'] : !s3 [n ← u]

subgoal 2 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using ,)


simpl.
10 subgoals, subgoal 1 (ID 15916)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ Π (A [n ← u]), B [(S n) ← u] ▹ Π (A' [n ← u']), B' [(S n) ← u'] : !s3

subgoal 2 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using ,)


apply typ_pi with s1 s2; trivial.
11 subgoals, subgoal 1 (ID 15918)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1

subgoal 2 (ID 15919) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !s2
subgoal 3 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using ,)


eapply H.
12 subgoals, subgoal 1 (ID 15922)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?15920 u ?15921 n Γ Γ'

subgoal 2 (ID 15923) is:
 ?15920 ⊢ u ▹ u' : ?15921
subgoal 3 (ID 15919) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !s2
subgoal 4 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 open, ?15921 open,)

apply H1.
11 subgoals, subgoal 1 (ID 15923)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 15919) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !s2
subgoal 3 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using ,)

trivial.
10 subgoals, subgoal 1 (ID 15919)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !s2

subgoal 2 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using ,)

eapply H0.
11 subgoals, subgoal 1 (ID 15926)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?15924 u ?15925 (S n) (A :: Γ) (A [n ← u] :: Γ')

subgoal 2 (ID 15927) is:
 ?15924 ⊢ u ▹ u' : ?15925
subgoal 3 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 open, ?15925 open,)

constructor; apply H1.
10 subgoals, subgoal 1 (ID 15927)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 15408) is:
 Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using ,)

trivial.
9 subgoals, subgoal 1 (ID 15408)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ (λ [A], M) [n ← u] ▹ (λ [A'], M') [n ← u'] : (Π (A), B) [n ← u]

subgoal 2 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 3 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using ,)


simpl.
9 subgoals, subgoal 1 (ID 15931)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ λ [A [n ← u]], M [(S n) ← u] ▹ λ [A' [n ← u']], M' [(S n) ← u']
   : Π (A [n ← u]), B [(S n) ← u]

subgoal 2 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 3 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using ,)


apply typ_la with s1 s2 s3; trivial.
11 subgoals, subgoal 1 (ID 15933)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1

subgoal 2 (ID 15934) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 3 (ID 15935) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using ,)


eapply H.
12 subgoals, subgoal 1 (ID 15938)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?15936 u ?15937 n Γ Γ'

subgoal 2 (ID 15939) is:
 ?15936 ⊢ u ▹ u' : ?15937
subgoal 3 (ID 15934) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 4 (ID 15935) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 5 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 open, ?15937 open,)

apply H2.
11 subgoals, subgoal 1 (ID 15939)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 15934) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 3 (ID 15935) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using ,)

trivial.
10 subgoals, subgoal 1 (ID 15934)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2

subgoal 2 (ID 15935) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using ,)

eapply H0.
11 subgoals, subgoal 1 (ID 15942)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?15940 u ?15941 (S n) (A :: Γ) (A [n ← u] :: Γ')

subgoal 2 (ID 15943) is:
 ?15940 ⊢ u ▹ u : ?15941
subgoal 3 (ID 15935) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 4 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 open, ?15941 open,)

constructor; apply H2.
10 subgoals, subgoal 1 (ID 15943)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 15935) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using ,)


apply red_refl_lt in H3; trivial.
9 subgoals, subgoal 1 (ID 15935)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]

subgoal 2 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 3 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using ,)


eapply H1.
10 subgoals, subgoal 1 (ID 15951)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?15949 u ?15950 (S n) (A :: Γ) (A [n ← u] :: Γ')

subgoal 2 (ID 15952) is:
 ?15949 ⊢ u ▹ u' : ?15950
subgoal 3 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 open, ?15950 open,)

constructor; apply H2.
9 subgoals, subgoal 1 (ID 15952)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t1 : A :: Γ ⊢ M ▹ M' : B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H2 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H3 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 15437) is:
 Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]
subgoal 3 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using ,)

trivial.
8 subgoals, subgoal 1 (ID 15437)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ (M ·( A, B)N) [n ← u] ▹ (M' ·( A', B')N') [n ← u'] : B [ ← N] [n ← u]

subgoal 2 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 3 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using ,)


simpl.
8 subgoals, subgoal 1 (ID 15956)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ·( A [n ← u], B [(S n) ← u])N [n ← u]
   ▹ M' [n ← u'] ·( A' [n ← u'], B' [(S n) ← u'])N' [n ← u']
   : B [ ← N] [n ← u]

subgoal 2 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 3 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using ,)


rewrite subst_travers.
8 subgoals, subgoal 1 (ID 15957)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ·( A [n ← u], B [(S n) ← u])N [n ← u]
   ▹ M' [n ← u'] ·( A' [n ← u'], B' [(S n) ← u'])N' [n ← u']
   : (B [(n + 1) ← u]) [ ← N [n ← u]]

subgoal 2 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 3 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using ,)


replace (n+1) with (S n) by (rewrite plus_comm; trivial).
8 subgoals, subgoal 1 (ID 15961)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ·( A [n ← u], B [(S n) ← u])N [n ← u]
   ▹ M' [n ← u'] ·( A' [n ← u'], B' [(S n) ← u'])N' [n ← u']
   : (B [(S n) ← u]) [ ← N [n ← u]]

subgoal 2 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 3 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using ,)


eapply typ_app.
12 subgoals, subgoal 1 (ID 15967)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Rel ?15964 ?15965 ?15966

subgoal 2 (ID 15968) is:
 Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !?15964
subgoal 3 (ID 15969) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !?15965
subgoal 4 (ID 15970) is:
 Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : Π (A [n ← u]), B [(S n) ← u]
subgoal 5 (ID 15971) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 6 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 open, ?15965 open, ?15966 open,)

apply r.
11 subgoals, subgoal 1 (ID 15968)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1

subgoal 2 (ID 15969) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !s2
subgoal 3 (ID 15970) is:
 Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : Π (A [n ← u]), B [(S n) ← u]
subgoal 4 (ID 15971) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 5 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using ,)

eapply H; eauto.
10 subgoals, subgoal 1 (ID 15969)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B' [(S n) ← u'] : !s2

subgoal 2 (ID 15970) is:
 Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : Π (A [n ← u]), B [(S n) ← u]
subgoal 3 (ID 15971) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 4 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using ,)

eapply H0; eauto.
9 subgoals, subgoal 1 (ID 15970)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : Π (A [n ← u]), B [(S n) ← u]

subgoal 2 (ID 15971) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 3 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using ,)

eapply H1; eauto.
8 subgoals, subgoal 1 (ID 15971)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A' : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t0 : A :: Γ ⊢ B ▹ B' : !s2
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B' [n ← u'] : !s2 [n ← u]
  t1 : Γ ⊢ M ▹ M' : Π (A), B
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : (Π (A), B) [n ← u]
  t2 : Γ ⊢ N ▹ N' : A
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H3 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H4 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]

subgoal 2 (ID 15472) is:
 Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
 : B [ ← N] [n ← u]
subgoal 3 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using ,)

eapply H2; eauto.
7 subgoals, subgoal 1 (ID 15472)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ ((λ [A], M) ·( A', B)N) [n ← u] ▹ M' [ ← N'] [n ← u']
   : B [ ← N] [n ← u]

subgoal 2 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using ,)


simpl.
7 subgoals, subgoal 1 (ID 16021)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ (λ [A [n ← u]], M [(S n) ← u]) ·( A' [n ← u], B [(S n) ← u])N [n ← u]
   ▹ M' [ ← N'] [n ← u'] : B [ ← N] [n ← u]

subgoal 2 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using ,)

rewrite 2! subst_travers.
7 subgoals, subgoal 1 (ID 16023)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ (λ [A [n ← u]], M [(S n) ← u]) ·( A' [n ← u], B [(S n) ← u])N [n ← u]
   ▹ (M' [(n + 1) ← u']) [ ← N' [n ← u']] : (B [(n + 1) ← u]) [ ← N [n ← u]]

subgoal 2 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using ,)


replace (n+1) with (S n) by (rewrite plus_comm; trivial).
7 subgoals, subgoal 1 (ID 16027)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ (λ [A [n ← u]], M [(S n) ← u]) ·( A' [n ← u], B [(S n) ← u])N [n ← u]
   ▹ (M' [(S n) ← u']) [ ← N' [n ← u']] : (B [(S n) ← u]) [ ← N [n ← u]]

subgoal 2 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using ,)


eapply typ_beta.
14 subgoals, subgoal 1 (ID 16034)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Rel ?16031 ?16032 ?16033

subgoal 2 (ID 16035) is:
 Γ' ⊢ A [n ← u] ▹ A [n ← u] : !?16031
subgoal 3 (ID 16036) is:
 Γ' ⊢ A' [n ← u] ▹ A' [n ← u] : !?16031
subgoal 4 (ID 16037) is:
 Γ' ⊢ ?16030 ▹▹ A [n ← u] : !?16031
subgoal 5 (ID 16038) is:
 Γ' ⊢ ?16030 ▹▹ A' [n ← u] : !?16031
subgoal 6 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !?16032
subgoal 7 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 8 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 9 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 10 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 11 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 12 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 13 (ID 15547) is:
 Γ' ⊣
subgoal 14 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 open, ?16031 open, ?16032 open, ?16033 open,)

apply r.
13 subgoals, subgoal 1 (ID 16035)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ A [n ← u] : !s1

subgoal 2 (ID 16036) is:
 Γ' ⊢ A' [n ← u] ▹ A' [n ← u] : !s1
subgoal 3 (ID 16037) is:
 Γ' ⊢ ?16030 ▹▹ A [n ← u] : !s1
subgoal 4 (ID 16038) is:
 Γ' ⊢ ?16030 ▹▹ A' [n ← u] : !s1
subgoal 5 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 6 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 7 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 open, ?16031 using , ?16032 using , ?16033 using ,)


eapply H; eauto.
13 subgoals, subgoal 1 (ID 16045)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 16036) is:
 Γ' ⊢ A' [n ← u] ▹ A' [n ← u] : !s1
subgoal 3 (ID 16037) is:
 Γ' ⊢ ?16030 ▹▹ A [n ← u] : !s1
subgoal 4 (ID 16038) is:
 Γ' ⊢ ?16030 ▹▹ A' [n ← u] : !s1
subgoal 5 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 6 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 7 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 8 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 9 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 10 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 11 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 12 (ID 15547) is:
 Γ' ⊣
subgoal 13 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 open, ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using ,)

apply red_refl_lt in H7; trivial.
12 subgoals, subgoal 1 (ID 16036)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A' [n ← u] ▹ A' [n ← u] : !s1

subgoal 2 (ID 16037) is:
 Γ' ⊢ ?16030 ▹▹ A [n ← u] : !s1
subgoal 3 (ID 16038) is:
 Γ' ⊢ ?16030 ▹▹ A' [n ← u] : !s1
subgoal 4 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 5 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 6 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 open, ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using ,)


eapply H0; eauto.
12 subgoals, subgoal 1 (ID 16299)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 16037) is:
 Γ' ⊢ ?16030 ▹▹ A [n ← u] : !s1
subgoal 3 (ID 16038) is:
 Γ' ⊢ ?16030 ▹▹ A' [n ← u] : !s1
subgoal 4 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 5 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 6 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 7 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 8 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 9 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 10 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 11 (ID 15547) is:
 Γ' ⊣
subgoal 12 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 open, ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using ,)

apply red_refl_lt in H7; trivial.
11 subgoals, subgoal 1 (ID 16037)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ ?16030 ▹▹ A [n ← u] : !s1

subgoal 2 (ID 16038) is:
 Γ' ⊢ ?16030 ▹▹ A' [n ← u] : !s1
subgoal 3 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 4 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 5 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 open, ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using ,)


eapply H1; eauto.
11 subgoals, subgoal 1 (ID 16554)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 16038) is:
 Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u] : !s1
subgoal 3 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 4 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 5 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 6 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 7 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 8 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 9 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 10 (ID 15547) is:
 Γ' ⊣
subgoal 11 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using ,)


apply red_refl_lt in H7; trivial.
10 subgoals, subgoal 1 (ID 16038)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u] : !s1

subgoal 2 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 3 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 4 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using ,)


eapply H2; eauto.
10 subgoals, subgoal 1 (ID 16808)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 16039) is:
 A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2
subgoal 3 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 4 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 5 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 6 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 7 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 8 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 9 (ID 15547) is:
 Γ' ⊣
subgoal 10 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using ,)

apply red_refl_lt in H7; trivial.
9 subgoals, subgoal 1 (ID 16039)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   A [n ← u] :: Γ' ⊢ B [(S n) ← u] ▹ B [(S n) ← u] : !s2

subgoal 2 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 3 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using ,)

eapply H3; eauto.
9 subgoals, subgoal 1 (ID 17062)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 16040) is:
 A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]
subgoal 3 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 4 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 5 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 6 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 7 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 8 (ID 15547) is:
 Γ' ⊣
subgoal 9 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using ,)


apply red_refl_lt in H7; trivial.
8 subgoals, subgoal 1 (ID 16040)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   A [n ← u] :: Γ' ⊢ M [(S n) ← u] ▹ M' [(S n) ← u'] : B [(S n) ← u]

subgoal 2 (ID 16041) is:
 Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
subgoal 3 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using ,)


eapply H4; eauto.
7 subgoals, subgoal 1 (ID 16041)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  r : Rel s1 s2 s3
  t : Γ ⊢ A ▹ A : !s1
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A [n ← u'] : !s1 [n ← u]
  t0 : Γ ⊢ A' ▹ A' : !s1
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A' [n ← u] ▹ A' [n ← u'] : !s1 [n ← u]
  t1 : Γ ⊢ A0 ▹▹ A : !s1
  H1 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A [n ← u'] : !s1 [n ← u]
  t2 : Γ ⊢ A0 ▹▹ A' : !s1
  H2 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A0 [n ← u] ▹▹ A' [n ← u'] : !s1 [n ← u]
  t3 : A :: Γ ⊢ B ▹ B : !s2
  H3 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ B [n ← u] ▹ B [n ← u'] : !s2 [n ← u]
  t4 : A :: Γ ⊢ M ▹ M' : B
  H4 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n (A :: Γ) Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ M' [n ← u'] : B [n ← u]
  t5 : Γ ⊢ N ▹ N' : A
  H5 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H6 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H7 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ N [n ← u] ▹ N' [n ← u'] : A [n ← u]

subgoal 2 (ID 15490) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using ,)

eapply H5; eauto.
6 subgoals, subgoal 1 (ID 15490)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]

subgoal 2 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using ,)


apply typ_red with (A[n u]) s.
7 subgoals, subgoal 1 (ID 17339)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]

subgoal 2 (ID 17340) is:
 Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using ,)

eapply H.
8 subgoals, subgoal 1 (ID 17343)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?17341 u ?17342 n Γ Γ'

subgoal 2 (ID 17344) is:
 ?17341 ⊢ u ▹ u' : ?17342
subgoal 3 (ID 17340) is:
 Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s
subgoal 4 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 5 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 6 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 7 (ID 15547) is:
 Γ' ⊣
subgoal 8 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 open, ?17342 open,)

apply H1.
7 subgoals, subgoal 1 (ID 17344)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 17340) is:
 Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using ,)

trivial.
6 subgoals, subgoal 1 (ID 17340)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s

subgoal 2 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using ,)


change !s with (!s[n u]).
6 subgoals, subgoal 1 (ID 17346)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s [n ← u]

subgoal 2 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using ,)

eapply H0.
7 subgoals, subgoal 1 (ID 17349)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?17347 u ?17348 n Γ Γ'

subgoal 2 (ID 17350) is:
 ?17347 ⊢ u ▹ u : ?17348
subgoal 3 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 open, ?17348 open,)

apply H1.
6 subgoals, subgoal 1 (ID 17350)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : A
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 15508) is:
 Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using ,)

apply red_refl_lt in H2; trivial.
5 subgoals, subgoal 1 (ID 15508)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ▹ N [n ← u'] : A [n ← u]

subgoal 2 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 3 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 4 (ID 15547) is:
 Γ' ⊣
subgoal 5 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using ,)


apply typ_exp with (B[n u]) s.
6 subgoals, subgoal 1 (ID 17353)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]

subgoal 2 (ID 17354) is:
 Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using ,)

eapply H.
7 subgoals, subgoal 1 (ID 17357)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?17355 u ?17356 n Γ Γ'

subgoal 2 (ID 17358) is:
 ?17355 ⊢ u ▹ u' : ?17356
subgoal 3 (ID 17354) is:
 Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s
subgoal 4 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 5 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 6 (ID 15547) is:
 Γ' ⊣
subgoal 7 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 open, ?17356 open,)

apply H1.
6 subgoals, subgoal 1 (ID 17358)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u' : U

subgoal 2 (ID 17354) is:
 Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using ,)

trivial.
5 subgoals, subgoal 1 (ID 17354)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s

subgoal 2 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 3 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 4 (ID 15547) is:
 Γ' ⊣
subgoal 5 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using ,)


change !s with (!s[n u]).
5 subgoals, subgoal 1 (ID 17360)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ A [n ← u] ▹ B [n ← u] : !s [n ← u]

subgoal 2 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 3 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 4 (ID 15547) is:
 Γ' ⊣
subgoal 5 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using ,)

eapply H0.
6 subgoals, subgoal 1 (ID 17363)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   sub_in_env ?17361 u ?17362 n Γ Γ'

subgoal 2 (ID 17364) is:
 ?17361 ⊢ u ▹ u : ?17362
subgoal 3 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 4 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 5 (ID 15547) is:
 Γ' ⊣
subgoal 6 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 open, ?17362 open,)

apply H1.
5 subgoals, subgoal 1 (ID 17364)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u' : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 3 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 4 (ID 15547) is:
 Γ' ⊣
subgoal 5 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using ,)

apply red_refl_lt in H2.
5 subgoals, subgoal 1 (ID 17366)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  t : Γ ⊢ M ▹ N : B
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ M [n ← u] ▹ N [n ← u'] : B [n ← u]
  t0 : Γ ⊢ A ▹ B : !s
  H0 : forall (Δ Γ' : Env) (u U : Term) (n : nat),
       sub_in_env Δ u U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ B [n ← u'] : !s [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u ▹ u : U
  ============================
   Δ ⊢ u ▹ u : U

subgoal 2 (ID 15522) is:
 Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
subgoal 3 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 4 (ID 15547) is:
 Γ' ⊣
subgoal 5 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using ,)

trivial.
4 subgoals, subgoal 1 (ID 15522)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  t0 : Γ ⊢ s ▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹ t [n ← u'] : T [n ← u]
  Δ : Env
  Γ' : Env
  u : Term
  U : Term
  n : nat
  H0 : sub_in_env Δ u U n Γ Γ'
  u' : Term
  H1 : Δ ⊢ u ▹ u' : U
  ============================
   Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]

subgoal 2 (ID 15539) is:
 Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 3 (ID 15547) is:
 Γ' ⊣
subgoal 4 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using ,)


eauto.
3 subgoals, subgoal 1 (ID 15539)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Δ Γ' : Env) (u0 U : Term) (n : nat),
       sub_in_env Δ u0 U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u0 ▹ u' : U -> Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
  Δ : Env
  Γ' : Env
  u0 : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u0 U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u0 ▹ u' : U
  ============================
   Γ' ⊢ s [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]

subgoal 2 (ID 15547) is:
 Γ' ⊣
subgoal 3 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using ,)


eapply typ_reds_trans.
4 subgoals, subgoal 1 (ID 17392)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Δ Γ' : Env) (u0 U : Term) (n : nat),
       sub_in_env Δ u0 U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u0 ▹ u' : U -> Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
  Δ : Env
  Γ' : Env
  u0 : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u0 U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u0 ▹ u' : U
  ============================
   Γ' ⊢ s [n ← u0] ▹▹ ?17391 : T [n ← u0]

subgoal 2 (ID 17393) is:
 Γ' ⊢ ?17391 ▹▹ u [n ← u'] : T [n ← u0]
subgoal 3 (ID 15547) is:
 Γ' ⊣
subgoal 4 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 open,)

eapply H.
5 subgoals, subgoal 1 (ID 17397)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Δ Γ' : Env) (u0 U : Term) (n : nat),
       sub_in_env Δ u0 U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u0 ▹ u' : U -> Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
  Δ : Env
  Γ' : Env
  u0 : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u0 U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u0 ▹ u' : U
  ============================
   sub_in_env ?17395 u0 ?17396 n Γ Γ'

subgoal 2 (ID 17398) is:
 ?17395 ⊢ u0 ▹ ?17394 : ?17396
subgoal 3 (ID 17393) is:
 Γ' ⊢ t [n ← ?17394] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 4 (ID 15547) is:
 Γ' ⊣
subgoal 5 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 open, ?17395 open, ?17396 open,)

apply H1.
4 subgoals, subgoal 1 (ID 17398)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Δ Γ' : Env) (u0 U : Term) (n : nat),
       sub_in_env Δ u0 U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u0 ▹ u' : U -> Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
  Δ : Env
  Γ' : Env
  u0 : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u0 U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u0 ▹ u' : U
  ============================
   Δ ⊢ u0 ▹ ?17394 : U

subgoal 2 (ID 17393) is:
 Γ' ⊢ t [n ← ?17394] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 3 (ID 15547) is:
 Γ' ⊣
subgoal 4 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 open, ?17395 using , ?17396 using ,)

apply red_refl_lt in H2.
4 subgoals, subgoal 1 (ID 17401)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Δ Γ' : Env) (u0 U : Term) (n : nat),
       sub_in_env Δ u0 U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u0 ▹ u' : U -> Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
  Δ : Env
  Γ' : Env
  u0 : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u0 U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u0 ▹ u0 : U
  ============================
   Δ ⊢ u0 ▹ ?17400 : U

subgoal 2 (ID 17393) is:
 Γ' ⊢ t [n ← ?17400] ▹▹ u [n ← u'] : T [n ← u0]
subgoal 3 (ID 15547) is:
 Γ' ⊣
subgoal 4 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 open,)

apply H2.
3 subgoals, subgoal 1 (ID 17393)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  t0 : Γ ⊢ s ▹▹ t : T
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ s [n ← u] ▹▹ t [n ← u'] : T [n ← u]
  t1 : Γ ⊢ t ▹▹ u : T
  H0 : forall (Δ Γ' : Env) (u0 U : Term) (n : nat),
       sub_in_env Δ u0 U n Γ Γ' ->
       forall u' : Term,
       Δ ⊢ u0 ▹ u' : U -> Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]
  Δ : Env
  Γ' : Env
  u0 : Term
  U : Term
  n : nat
  H1 : sub_in_env Δ u0 U n Γ Γ'
  u' : Term
  H2 : Δ ⊢ u0 ▹ u' : U
  ============================
   Γ' ⊢ t [n ← u0] ▹▹ u [n ← u'] : T [n ← u0]

subgoal 2 (ID 15547) is:
 Γ' ⊣
subgoal 3 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using ,)


eapply H0; eauto.
2 subgoals, subgoal 1 (ID 15547)
  
  Δ : Env
  P : Term
  P' : Term
  A : Term
  n : nat
  Γ' : Env
  H : Δ ⊢ P ▹ P' : A
  H0 : sub_in_env Δ P A n nil Γ'
  ============================
   Γ' ⊣

subgoal 2 (ID 15561) is:
 Γ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using ,)


inversion H0.
1 subgoals, subgoal 1 (ID 15561)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s [n ← u]
  Δ : Env
  P : Term
  P' : Term
  A0 : Term
  n : nat
  Γ' : Env
  H0 : Δ ⊢ P ▹ P' : A0
  H1 : sub_in_env Δ P A0 n (A :: Γ) Γ'
  ============================
   Γ' ⊣

(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using ,)


inversion H1; subst; clear H1.
2 subgoals, subgoal 1 (ID 17566)
  
  A : Term
  A' : Term
  s : Sorts
  P : Term
  P' : Term
  Γ' : Env
  t : Γ' ⊢ A ▹ A' : !s
  H : forall (Δ Γ'0 : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ' Γ'0 ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ'0 ⊢ A [n ← u] ▹ A' [n ← u'] : !s [n ← u]
  H0 : Γ' ⊢ P ▹ P' : A
  ============================
   Γ' ⊣

subgoal 2 (ID 17567) is:
 A [n0 ← P] :: Δ' ⊣
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using ,)


apply wf_from_typ in t; trivial.
1 subgoals, subgoal 1 (ID 17567)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s [n ← u]
  Δ : Env
  P : Term
  P' : Term
  A0 : Term
  H0 : Δ ⊢ P ▹ P' : A0
  Δ' : Env
  n0 : nat
  H6 : sub_in_env Δ P A0 n0 Γ Δ'
  ============================
   A [n0 ← P] :: Δ' ⊣

(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using ,)



eapply wf_cons.
1 subgoals, subgoal 1 (ID 17572)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s [n ← u]
  Δ : Env
  P : Term
  P' : Term
  A0 : Term
  H0 : Δ ⊢ P ▹ P' : A0
  Δ' : Env
  n0 : nat
  H6 : sub_in_env Δ P A0 n0 Γ Δ'
  ============================
   Δ' ⊢ A [n0 ← P] ▹ ?17570 : !?17571

(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using , ?17570 open, ?17571 open,)

eapply H.
2 subgoals, subgoal 1 (ID 17576)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s [n ← u]
  Δ : Env
  P : Term
  P' : Term
  A0 : Term
  H0 : Δ ⊢ P ▹ P' : A0
  Δ' : Env
  n0 : nat
  H6 : sub_in_env Δ P A0 n0 Γ Δ'
  ============================
   sub_in_env ?17574 P ?17575 n0 Γ Δ'

subgoal 2 (ID 17577) is:
 ?17574 ⊢ P ▹ ?17573 : ?17575
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using , ?17570 using ?17573 , ?17571 using , ?17573 open, ?17574 open, ?17575 open,)

apply H6.
1 subgoals, subgoal 1 (ID 17577)
  
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  t : Γ ⊢ A ▹ A' : !s
  H : forall (Δ Γ' : Env) (u U : Term) (n : nat),
      sub_in_env Δ u U n Γ Γ' ->
      forall u' : Term,
      Δ ⊢ u ▹ u' : U -> Γ' ⊢ A [n ← u] ▹ A' [n ← u'] : !s [n ← u]
  Δ : Env
  P : Term
  P' : Term
  A0 : Term
  H0 : Δ ⊢ P ▹ P' : A0
  Δ' : Env
  n0 : nat
  H6 : sub_in_env Δ P A0 n0 Γ Δ'
  ============================
   Δ ⊢ P ▹ ?17573 : A0

(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using , ?17570 using ?17573 , ?17571 using , ?17573 open, ?17574 using , ?17575 using ,)

apply H0.
No more subgoals.
(dependent evars: ?15582 using , ?15583 using , ?15584 using , ?15585 using , ?15586 using , ?15589 using , ?15590 using , ?15591 using , ?15663 using , ?15664 using , ?15665 using , ?15672 using , ?15673 using , ?15676 using , ?15677 using , ?15678 using , ?15680 using , ?15681 using , ?15682 using , ?15683 using , ?15684 using , ?15701 using , ?15702 using , ?15703 using , ?15704 using , ?15705 using , ?15819 using , ?15820 using , ?15821 using , ?15822 using , ?15823 using , ?15909 using , ?15910 using , ?15911 using , ?15912 using , ?15913 using , ?15920 using , ?15921 using , ?15924 using , ?15925 using , ?15936 using , ?15937 using , ?15940 using , ?15941 using , ?15949 using , ?15950 using , ?15964 using , ?15965 using , ?15966 using , ?15972 using , ?15973 using , ?15984 using , ?15985 using , ?15997 using , ?15998 using , ?16009 using , ?16010 using , ?16030 using ?16550 , ?16031 using , ?16032 using , ?16033 using , ?16042 using , ?16043 using , ?16296 using , ?16297 using , ?16550 using , ?16551 using , ?16552 using , ?16805 using , ?16806 using , ?17059 using , ?17060 using , ?17314 using , ?17315 using , ?17327 using , ?17328 using , ?17341 using , ?17342 using , ?17347 using , ?17348 using , ?17355 using , ?17356 using , ?17361 using , ?17362 using , ?17371 using , ?17372 using , ?17391 using ?17394 , ?17394 using ?17400 , ?17395 using , ?17396 using , ?17400 using , ?17402 using , ?17403 using , ?17570 using ?17573 , ?17571 using , ?17573 using , ?17574 using , ?17575 using ,)


Qed.
subst_gen is defined



Right-Hand Reflexivity: this time, is the ending part of a judgment that's always valid.
Theorem red_refl_rt : forall Γ M N T, Γ M N : T -> Γ N N :T.
1 subgoals, subgoal 1 (ID 17583)
  
  ============================
   forall (Γ : Env) (M N T : Term), Γ ⊢ M ▹ N : T -> Γ ⊢ N ▹ N : T

(dependent evars:)


induction 1; intros.
8 subgoals, subgoal 1 (ID 17641)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  ============================
   Γ ⊢ #x ▹ #x : A

subgoal 2 (ID 17646) is:
 Γ ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 17660) is:
 Γ ⊢ Π (A'), B' ▹ Π (A'), B' : !s3
subgoal 4 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars:)


constructor; trivial.
7 subgoals, subgoal 1 (ID 17646)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  ============================
   Γ ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 17660) is:
 Γ ⊢ Π (A'), B' ▹ Π (A'), B' : !s3
subgoal 3 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars:)


constructor; trivial.
6 subgoals, subgoal 1 (ID 17660)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (A'), B' : !s3

subgoal 2 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars:)


apply typ_pi with s1 s2; trivial.
6 subgoals, subgoal 1 (ID 17765)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  ============================
   A' :: Γ ⊢ B' ▹ B' : !s2

subgoal 2 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars:)

eapply red1_in_env.
8 subgoals, subgoal 1 (ID 17779)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  ============================
   ?17778 ⊢ B' ▹ B' : !s2

subgoal 2 (ID 17780) is:
 A' :: Γ ⊣
subgoal 3 (ID 17781) is:
 env_red1 ?17778 (A' :: Γ)
subgoal 4 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 open,)

apply IHtyp2.
7 subgoals, subgoal 1 (ID 17780)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  ============================
   A' :: Γ ⊣

subgoal 2 (ID 17781) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using ,)


econstructor.
7 subgoals, subgoal 1 (ID 17786)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ A' ▹ ?17784 : !?17785

subgoal 2 (ID 17781) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 open, ?17785 open,)

apply IHtyp1.
6 subgoals, subgoal 1 (ID 17781)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  ============================
   env_red1 (A :: Γ) (A' :: Γ)

subgoal 2 (ID 17678) is:
 Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using ,)

eauto.
5 subgoals, subgoal 1 (ID 17678)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A), B

subgoal 2 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using ,)


apply typ_exp with ( Π (A'), B) s3.
6 subgoals, subgoal 1 (ID 17797)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [A'], M' : Π (A'), B

subgoal 2 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using ,)

apply typ_la with s1 s2 s3; trivial.
7 subgoals, subgoal 1 (ID 17801)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 17802) is:
 A' :: Γ ⊢ M' ▹ M' : B
subgoal 3 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using ,)


eapply red1_in_env.
9 subgoals, subgoal 1 (ID 17816)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   ?17815 ⊢ B ▹ B : !s2

subgoal 2 (ID 17817) is:
 A' :: Γ ⊣
subgoal 3 (ID 17818) is:
 env_red1 ?17815 (A' :: Γ)
subgoal 4 (ID 17802) is:
 A' :: Γ ⊢ M' ▹ M' : B
subgoal 5 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 6 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 7 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 8 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 9 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 open,)

apply IHtyp2.
8 subgoals, subgoal 1 (ID 17817)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊣

subgoal 2 (ID 17818) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17802) is:
 A' :: Γ ⊢ M' ▹ M' : B
subgoal 4 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using ,)

econstructor.
8 subgoals, subgoal 1 (ID 17823)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   Γ ⊢ A' ▹ ?17821 : !?17822

subgoal 2 (ID 17818) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17802) is:
 A' :: Γ ⊢ M' ▹ M' : B
subgoal 4 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 open, ?17822 open,)

apply IHtyp1.
7 subgoals, subgoal 1 (ID 17818)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   env_red1 (A :: Γ) (A' :: Γ)

subgoal 2 (ID 17802) is:
 A' :: Γ ⊢ M' ▹ M' : B
subgoal 3 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using ,)

eauto.
6 subgoals, subgoal 1 (ID 17802)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊢ M' ▹ M' : B

subgoal 2 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using ,)


apply typ_red with B s2.
7 subgoals, subgoal 1 (ID 17834)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊢ M' ▹ M' : B

subgoal 2 (ID 17835) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using ,)

eapply red1_in_env.
9 subgoals, subgoal 1 (ID 17849)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   ?17848 ⊢ M' ▹ M' : B

subgoal 2 (ID 17850) is:
 A' :: Γ ⊣
subgoal 3 (ID 17851) is:
 env_red1 ?17848 (A' :: Γ)
subgoal 4 (ID 17835) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 5 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 6 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 7 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 8 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 9 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 open,)

apply IHtyp3.
8 subgoals, subgoal 1 (ID 17850)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊣

subgoal 2 (ID 17851) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17835) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using ,)

econstructor.
8 subgoals, subgoal 1 (ID 17856)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   Γ ⊢ A' ▹ ?17854 : !?17855

subgoal 2 (ID 17851) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17835) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 open, ?17855 open,)

apply IHtyp1.
7 subgoals, subgoal 1 (ID 17851)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   env_red1 (A :: Γ) (A' :: Γ)

subgoal 2 (ID 17835) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using ,)

eauto.
6 subgoals, subgoal 1 (ID 17835)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using ,)


eapply red1_in_env.
8 subgoals, subgoal 1 (ID 17880)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   ?17879 ⊢ B ▹ B : !s2

subgoal 2 (ID 17881) is:
 A' :: Γ ⊣
subgoal 3 (ID 17882) is:
 env_red1 ?17879 (A' :: Γ)
subgoal 4 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 open,)

apply H1.
7 subgoals, subgoal 1 (ID 17881)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   A' :: Γ ⊣

subgoal 2 (ID 17882) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using ,)

econstructor.
7 subgoals, subgoal 1 (ID 17887)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   Γ ⊢ A' ▹ ?17885 : !?17886

subgoal 2 (ID 17882) is:
 env_red1 (A :: Γ) (A' :: Γ)
subgoal 3 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 open, ?17886 open,)

apply IHtyp1.
6 subgoals, subgoal 1 (ID 17882)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   env_red1 (A :: Γ) (A' :: Γ)

subgoal 2 (ID 17798) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using ,)

eauto.
5 subgoals, subgoal 1 (ID 17798)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp3 : A :: Γ ⊢ M' ▹ M' : B
  ============================
   Γ ⊢ Π (A), B ▹ Π (A'), B : !s3

subgoal 2 (ID 17702) is:
 Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using ,)


apply typ_pi with s1 s2; trivial.
4 subgoals, subgoal 1 (ID 17702)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using ,)


apply typ_exp with B' [ N'] s2.
5 subgoals, subgoal 1 (ID 17901)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ M' ·( A', B')N' : B' [ ← N']

subgoal 2 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using ,)

eapply typ_app.
9 subgoals, subgoal 1 (ID 17906)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Rel ?17903 ?17904 ?17905

subgoal 2 (ID 17907) is:
 Γ ⊢ A' ▹ A' : !?17903
subgoal 3 (ID 17908) is:
 A' :: Γ ⊢ B' ▹ B' : !?17904
subgoal 4 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 5 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 6 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 7 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 8 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 9 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 open, ?17904 open, ?17905 open,)

apply H.
8 subgoals, subgoal 1 (ID 17907)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ A' ▹ A' : !s1

subgoal 2 (ID 17908) is:
 A' :: Γ ⊢ B' ▹ B' : !s2
subgoal 3 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 4 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 5 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using ,)

trivial.
7 subgoals, subgoal 1 (ID 17908)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   A' :: Γ ⊢ B' ▹ B' : !s2

subgoal 2 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 3 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 4 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using ,)

eapply conv1_in_env.
9 subgoals, subgoal 1 (ID 17924)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   ?17923 ⊢ B' ▹ B' : !s2

subgoal 2 (ID 17925) is:
 env_conv1 ?17923 (A' :: Γ)
subgoal 3 (ID 17926) is:
 A' :: Γ ⊣
subgoal 4 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 5 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 6 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 7 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 8 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 9 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 open,)

apply IHtyp2.
8 subgoals, subgoal 1 (ID 17925)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   env_conv1 (A :: Γ) (A' :: Γ)

subgoal 2 (ID 17926) is:
 A' :: Γ ⊣
subgoal 3 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 4 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 5 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 7 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 8 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using ,)


eauto.
7 subgoals, subgoal 1 (ID 17926)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   A' :: Γ ⊣

subgoal 2 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 3 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 4 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using ,)

econstructor.
7 subgoals, subgoal 1 (ID 17992)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ A' ▹ ?17990 : !?17991

subgoal 2 (ID 17909) is:
 Γ ⊢ M' ▹ M' : Π (A'), B'
subgoal 3 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 4 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 open, ?17991 open,)

apply IHtyp1.
6 subgoals, subgoal 1 (ID 17909)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ M' ▹ M' : Π (A'), B'

subgoal 2 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 3 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)

apply typ_red with (Π (A), B) s3.
7 subgoals, subgoal 1 (ID 17993)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ M' ▹ M' : Π (A), B

subgoal 2 (ID 17994) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B' : !s3
subgoal 3 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 4 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 6 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 7 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)

trivial.
6 subgoals, subgoal 1 (ID 17994)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ Π (A), B ▹ Π (A'), B' : !s3

subgoal 2 (ID 17910) is:
 Γ ⊢ N' ▹ N' : A'
subgoal 3 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)

apply typ_pi with s1 s2; trivial.
5 subgoals, subgoal 1 (ID 17910)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ N' ▹ N' : A'

subgoal 2 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)


apply typ_red with A s1.
6 subgoals, subgoal 1 (ID 17998)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ N' ▹ N' : A

subgoal 2 (ID 17999) is:
 Γ ⊢ A ▹ A' : !s1
subgoal 3 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)

trivial.
5 subgoals, subgoal 1 (ID 17999)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 17902) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)

trivial.
4 subgoals, subgoal 1 (ID 17902)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2

subgoal 2 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)

change !s2 with (!s2[ N]).
4 subgoals, subgoal 1 (ID 18001)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using ,)


eapply subst_gen.
6 subgoals, subgoal 1 (ID 18017)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   ?18016 ⊢ B ▹ B' : !s2

subgoal 2 (ID 18020) is:
 sub_in_env ?18018 N ?18019 0 ?18016 Γ
subgoal 3 (ID 18021) is:
 ?18018 ⊢ N ▹ N' : ?18019
subgoal 4 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 open, ?18018 open, ?18019 open,)

apply H1.
5 subgoals, subgoal 1 (ID 18020)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   sub_in_env ?18018 N ?18019 0 (A :: Γ) Γ

subgoal 2 (ID 18021) is:
 ?18018 ⊢ N ▹ N' : ?18019
subgoal 3 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 open, ?18019 open,)

constructor.
4 subgoals, subgoal 1 (ID 18021)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A' ▹ A' : !s1
  IHtyp2 : A :: Γ ⊢ B' ▹ B' : !s2
  IHtyp3 : Γ ⊢ M' ▹ M' : Π (A), B
  IHtyp4 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 17733) is:
 Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using ,)

trivial.
3 subgoals, subgoal 1 (ID 17733)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N]

subgoal 2 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 3 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using ,)


apply typ_exp with B [ N'] s2.
4 subgoals, subgoal 1 (ID 18023)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ M' [ ← N'] ▹ M' [ ← N'] : B [ ← N']

subgoal 2 (ID 18024) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using ,)

eapply subst_gen.
6 subgoals, subgoal 1 (ID 18040)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   ?18039 ⊢ M' ▹ M' : B

subgoal 2 (ID 18043) is:
 sub_in_env ?18041 N' ?18042 0 ?18039 Γ
subgoal 3 (ID 18044) is:
 ?18041 ⊢ N' ▹ N' : ?18042
subgoal 4 (ID 18024) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 5 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 6 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 open, ?18041 open, ?18042 open,)

apply IHtyp4.
5 subgoals, subgoal 1 (ID 18043)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   sub_in_env ?18041 N' ?18042 0 (A :: Γ) Γ

subgoal 2 (ID 18044) is:
 ?18041 ⊢ N' ▹ N' : ?18042
subgoal 3 (ID 18024) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 open, ?18042 open,)

constructor.
4 subgoals, subgoal 1 (ID 18044)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ N' ▹ N' : A

subgoal 2 (ID 18024) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using ,)

trivial.
3 subgoals, subgoal 1 (ID 18024)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2

subgoal 2 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 3 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using ,)


change !s2 with (!s2[ N]).
3 subgoals, subgoal 1 (ID 18047)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 3 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using ,)

eapply subst_gen.
5 subgoals, subgoal 1 (ID 18063)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   ?18062 ⊢ B ▹ B : !s2

subgoal 2 (ID 18066) is:
 sub_in_env ?18064 N ?18065 0 ?18062 Γ
subgoal 3 (ID 18067) is:
 ?18064 ⊢ N ▹ N' : ?18065
subgoal 4 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 5 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using , ?18056 using ?18062 , ?18057 using ?18064 , ?18058 using ?18065 , ?18062 open, ?18064 open, ?18065 open,)

apply red_refl_lt in H4; apply H4.
4 subgoals, subgoal 1 (ID 18066)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   sub_in_env ?18064 N ?18065 0 (A :: Γ) Γ

subgoal 2 (ID 18067) is:
 ?18064 ⊢ N ▹ N' : ?18065
subgoal 3 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 4 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using , ?18056 using ?18062 , ?18057 using ?18064 , ?18058 using ?18065 , ?18062 using ?18069 , ?18064 open, ?18065 open, ?18069 using ,)


constructor.
3 subgoals, subgoal 1 (ID 18067)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : Γ ⊢ A ▹ A : !s1
  IHtyp2 : Γ ⊢ A' ▹ A' : !s1
  IHtyp3 : A :: Γ ⊢ B ▹ B : !s2
  IHtyp4 : A :: Γ ⊢ M' ▹ M' : B
  IHtyp5 : Γ ⊢ N' ▹ N' : A
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 17744) is:
 Γ ⊢ N ▹ N : B
subgoal 3 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using , ?18056 using ?18062 , ?18057 using ?18064 , ?18058 using ?18065 , ?18062 using ?18069 , ?18064 using , ?18065 using , ?18069 using ,)

trivial.
2 subgoals, subgoal 1 (ID 17744)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : Γ ⊢ N ▹ N : A
  IHtyp2 : Γ ⊢ B ▹ B : !s
  ============================
   Γ ⊢ N ▹ N : B

subgoal 2 (ID 17755) is:
 Γ ⊢ N ▹ N : A
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using , ?18056 using ?18062 , ?18057 using ?18064 , ?18058 using ?18065 , ?18062 using ?18069 , ?18064 using , ?18065 using , ?18069 using ,)


apply typ_red with A s; trivial.
1 subgoals, subgoal 1 (ID 17755)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : Γ ⊢ N ▹ N : B
  IHtyp2 : Γ ⊢ B ▹ B : !s
  ============================
   Γ ⊢ N ▹ N : A

(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using , ?18056 using ?18062 , ?18057 using ?18064 , ?18058 using ?18065 , ?18062 using ?18069 , ?18064 using , ?18065 using , ?18069 using ,)


apply typ_exp with B s; trivial.
No more subgoals.
(dependent evars: ?17774 using ?17778 , ?17778 using , ?17784 using , ?17785 using , ?17787 using , ?17811 using ?17815 , ?17815 using , ?17821 using , ?17822 using , ?17824 using , ?17844 using ?17848 , ?17848 using , ?17854 using , ?17855 using , ?17857 using , ?17875 using ?17879 , ?17879 using , ?17885 using , ?17886 using , ?17888 using , ?17903 using , ?17904 using , ?17905 using , ?17919 using ?17923 , ?17923 using , ?17953 using , ?17990 using , ?17991 using , ?18010 using ?18016 , ?18011 using ?18018 , ?18012 using ?18019 , ?18016 using , ?18018 using , ?18019 using , ?18033 using ?18039 , ?18034 using ?18041 , ?18035 using ?18042 , ?18039 using , ?18041 using , ?18042 using , ?18056 using ?18062 , ?18057 using ?18064 , ?18058 using ?18065 , ?18062 using ?18069 , ?18064 using , ?18065 using , ?18069 using ,)


Qed.
red_refl_rt is defined



Lemma reds_refl_rt : forall Γ M N T, Γ M ▹▹ N : T -> Γ N N :T.
1 subgoals, subgoal 1 (ID 18086)
  
  ============================
   forall (Γ : Env) (M N T : Term), Γ ⊢ M ▹▹ N : T -> Γ ⊢ N ▹ N : T

(dependent evars:)


induction 1.
2 subgoals, subgoal 1 (ID 18108)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  ============================
   Γ ⊢ t ▹ t : T

subgoal 2 (ID 18118) is:
 Γ ⊢ u ▹ u : T
(dependent evars:)

apply red_refl_rt in H; trivial.
1 subgoals, subgoal 1 (ID 18118)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : Γ ⊢ t ▹ t : T
  IHtyp_reds2 : Γ ⊢ u ▹ u : T
  ============================
   Γ ⊢ u ▹ u : T

(dependent evars:)


trivial.
No more subgoals.
(dependent evars:)


Qed.
reds_refl_rt is defined



With Left and Right reflexivity, we can finally prove that context conversion preserves validity of context.
Lemma env_red1_wf : forall Γ Γ' , env_red1 Γ Γ' -> Γ -> Γ' .
1 subgoals, subgoal 1 (ID 18129)
  
  ============================
   forall Γ Γ' : Env, env_red1 Γ Γ' -> Γ ⊣ -> Γ' ⊣

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 18151)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  H0 : A :: Γ ⊣
  ============================
   B :: Γ ⊣

subgoal 2 (ID 18152) is:
 A :: Γ' ⊣
(dependent evars:)

apply red_refl_rt in H.
2 subgoals, subgoal 1 (ID 18154)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ B : !s
  H0 : A :: Γ ⊣
  ============================
   B :: Γ ⊣

subgoal 2 (ID 18152) is:
 A :: Γ' ⊣
(dependent evars:)

econstructor.
2 subgoals, subgoal 1 (ID 18159)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ B : !s
  H0 : A :: Γ ⊣
  ============================
   Γ ⊢ B ▹ ?18157 : !?18158

subgoal 2 (ID 18152) is:
 A :: Γ' ⊣
(dependent evars: ?18157 open, ?18158 open,)

apply H.
1 subgoals, subgoal 1 (ID 18152)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  H0 : A :: Γ ⊣
  ============================
   A :: Γ' ⊣

(dependent evars: ?18157 using , ?18158 using ,)


inversion H0; subst; clear H0.
1 subgoals, subgoal 1 (ID 18209)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   A :: Γ' ⊣

(dependent evars: ?18157 using , ?18158 using ,)

econstructor.
1 subgoals, subgoal 1 (ID 18214)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ' ⊢ A ▹ ?18212 : !?18213

(dependent evars: ?18157 using , ?18158 using , ?18212 open, ?18213 open,)

eapply red1_in_env.
3 subgoals, subgoal 1 (ID 18228)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   ?18227 ⊢ A ▹ ?18212 : !?18213

subgoal 2 (ID 18229) is:
 Γ' ⊣
subgoal 3 (ID 18230) is:
 env_red1 ?18227 Γ'
(dependent evars: ?18157 using , ?18158 using , ?18212 open, ?18213 open, ?18223 using ?18227 , ?18227 open,)


apply H2.
2 subgoals, subgoal 1 (ID 18229)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ' ⊣

subgoal 2 (ID 18230) is:
 env_red1 Γ Γ'
(dependent evars: ?18157 using , ?18158 using , ?18212 using , ?18213 using , ?18223 using ?18227 , ?18227 using ,)

apply wf_from_typ in H2; intuition.
1 subgoals, subgoal 1 (ID 18230)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   env_red1 Γ Γ'

(dependent evars: ?18157 using , ?18158 using , ?18212 using , ?18213 using , ?18223 using ?18227 , ?18227 using ,)

trivial.
No more subgoals.
(dependent evars: ?18157 using , ?18158 using , ?18212 using , ?18213 using , ?18223 using ?18227 , ?18227 using ,)


Qed.
env_red1_wf is defined



Lemma env_red_wf : forall Γ Γ' , env_red Γ Γ' -> Γ -> Γ' .
1 subgoals, subgoal 1 (ID 18243)
  
  ============================
   forall Γ Γ' : Env, env_red Γ Γ' -> Γ ⊣ -> Γ' ⊣

(dependent evars:)


induction 1; intros.
3 subgoals, subgoal 1 (ID 18271)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  H0 : Γ ⊣
  ============================
   Γ' ⊣

subgoal 2 (ID 18272) is:
 Γ ⊣
subgoal 3 (ID 18273) is:
 Γ'' ⊣
(dependent evars:)


apply env_red1_wf with Γ; trivial.
2 subgoals, subgoal 1 (ID 18272)
  
  Γ : Env
  H : Γ ⊣
  ============================
   Γ ⊣

subgoal 2 (ID 18273) is:
 Γ'' ⊣
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 18273)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H : env_red Γ Γ'
  H0 : env_red Γ' Γ''
  IHenv_red1 : Γ ⊣ -> Γ' ⊣
  IHenv_red2 : Γ' ⊣ -> Γ'' ⊣
  H1 : Γ ⊣
  ============================
   Γ'' ⊣

(dependent evars:)

eauto.
No more subgoals.
(dependent evars:)


Qed.
env_red_wf is defined



Lemma red_in_env : forall Γ M N T, Γ M N : T -> forall Γ', env_red Γ Γ'-> Γ' M N : T.
1 subgoals, subgoal 1 (ID 18312)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹ N : T -> forall Γ' : Env, env_red Γ Γ' -> Γ' ⊢ M ▹ N : T

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 18319)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹ N : T
  Γ' : Env
  H0 : env_red Γ Γ'
  ============================
   Γ' ⊢ M ▹ N : T

(dependent evars:)

revert M N T H .
1 subgoals, subgoal 1 (ID 18321)
  
  Γ : Env
  Γ' : Env
  H0 : env_red Γ Γ'
  ============================
   forall M N T : Term, Γ ⊢ M ▹ N : T -> Γ' ⊢ M ▹ N : T

(dependent evars:)

induction H0; intros.
3 subgoals, subgoal 1 (ID 18349)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹ N : T
  ============================
   Γ' ⊢ M ▹ N : T

subgoal 2 (ID 18353) is:
 Γ ⊢ M ▹ N : T
subgoal 3 (ID 18357) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)


eapply red1_in_env with Γ; trivial.
3 subgoals, subgoal 1 (ID 18370)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹ N : T
  ============================
   Γ' ⊣

subgoal 2 (ID 18353) is:
 Γ ⊢ M ▹ N : T
subgoal 3 (ID 18357) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)

apply wf_from_typ in H0.
3 subgoals, subgoal 1 (ID 18373)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊣
  ============================
   Γ' ⊣

subgoal 2 (ID 18353) is:
 Γ ⊢ M ▹ N : T
subgoal 3 (ID 18357) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)

apply env_red1_wf with Γ; trivial.
2 subgoals, subgoal 1 (ID 18353)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹ N : T
  ============================
   Γ ⊢ M ▹ N : T

subgoal 2 (ID 18357) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)


trivial.
1 subgoals, subgoal 1 (ID 18357)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_red Γ Γ'
  H0_0 : env_red Γ' Γ''
  IHenv_red1 : forall M N T : Term, Γ ⊢ M ▹ N : T -> Γ' ⊢ M ▹ N : T
  IHenv_red2 : forall M N T : Term, Γ' ⊢ M ▹ N : T -> Γ'' ⊢ M ▹ N : T
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹ N : T
  ============================
   Γ'' ⊢ M ▹ N : T

(dependent evars:)


eauto.
No more subgoals.
(dependent evars:)


Qed.
red_in_env is defined



Lemma red_in_env_reds : forall Γ M N T, Γ M ▹▹ N : T -> forall Γ', env_red Γ Γ'-> Γ' M ▹▹ N : T.
1 subgoals, subgoal 1 (ID 18415)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹▹ N : T -> forall Γ' : Env, env_red Γ Γ' -> Γ' ⊢ M ▹▹ N : T

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 18422)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  Γ' : Env
  H0 : env_red Γ Γ'
  ============================
   Γ' ⊢ M ▹▹ N : T

(dependent evars:)

revert M N T H .
1 subgoals, subgoal 1 (ID 18424)
  
  Γ : Env
  Γ' : Env
  H0 : env_red Γ Γ'
  ============================
   forall M N T : Term, Γ ⊢ M ▹▹ N : T -> Γ' ⊢ M ▹▹ N : T

(dependent evars:)

induction H0; intros.
3 subgoals, subgoal 1 (ID 18452)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹▹ N : T
  ============================
   Γ' ⊢ M ▹▹ N : T

subgoal 2 (ID 18456) is:
 Γ ⊢ M ▹▹ N : T
subgoal 3 (ID 18460) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)


eapply red1_in_env with Γ; trivial.
3 subgoals, subgoal 1 (ID 18474)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹▹ N : T
  ============================
   Γ' ⊣

subgoal 2 (ID 18456) is:
 Γ ⊢ M ▹▹ N : T
subgoal 3 (ID 18460) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)

apply wf_from_typ_reds in H0.
3 subgoals, subgoal 1 (ID 18477)
  
  Γ : Env
  Γ' : Env
  H : env_red1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊣
  ============================
   Γ' ⊣

subgoal 2 (ID 18456) is:
 Γ ⊢ M ▹▹ N : T
subgoal 3 (ID 18460) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)

apply env_red1_wf with Γ; trivial.
2 subgoals, subgoal 1 (ID 18456)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  ============================
   Γ ⊢ M ▹▹ N : T

subgoal 2 (ID 18460) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)


trivial.
1 subgoals, subgoal 1 (ID 18460)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_red Γ Γ'
  H0_0 : env_red Γ' Γ''
  IHenv_red1 : forall M N T : Term, Γ ⊢ M ▹▹ N : T -> Γ' ⊢ M ▹▹ N : T
  IHenv_red2 : forall M N T : Term, Γ' ⊢ M ▹▹ N : T -> Γ'' ⊢ M ▹▹ N : T
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  ============================
   Γ'' ⊢ M ▹▹ N : T

(dependent evars:)


eauto.
No more subgoals.
(dependent evars:)


Qed.
red_in_env_reds is defined



Lemma wf_from_peq : forall Γ M N , Γ M ≡' N -> Γ.
1 subgoals, subgoal 1 (ID 18505)
  
  ============================
   forall (Γ : Env) (M N : Term), Γ ⊢ M ≡' N -> Γ ⊣

(dependent evars:)


induction 1; intuition.
2 subgoals, subgoal 1 (ID 18529)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  ============================
   Γ ⊣

subgoal 2 (ID 18534) is:
 Γ ⊣
(dependent evars:)


apply wf_from_typ in H; trivial.
1 subgoals, subgoal 1 (ID 18534)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  ============================
   Γ ⊣

(dependent evars:)


apply wf_from_typ in H; trivial.
No more subgoals.
(dependent evars:)


Qed.
wf_from_peq is defined



Hint Resolve wf_from_peq.
Warning: the hint: eapply wf_from_peq will only be used by eauto



Every step of an equality is welltyped, by a sort, but we need to guess it.
Lemma typ_peq_to_red : forall Γ A B , Γ A ≡' B -> exists s, exists t,
  Γ A A : !s /\ Γ B B : !t.
1 subgoals, subgoal 1 (ID 18570)
  
  ============================
   forall (Γ : Env) (A B : Term),
   Γ ⊢ A ≡' B -> exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ B ▹ B : !t

(dependent evars:)


induction 1.
3 subgoals, subgoal 1 (ID 18594)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  ============================
   exists s0 t : Sorts, (Γ ⊢ A ▹ A : !s0) /\ Γ ⊢ B ▹ B : !t

subgoal 2 (ID 18599) is:
 exists s0 t : Sorts, (Γ ⊢ A ▹ A : !s0) /\ Γ ⊢ B ▹ B : !t
subgoal 3 (ID 18608) is:
 exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ C ▹ C : !t
(dependent evars:)


exists s; exists s; split; [apply red_refl_lt with B; trivial | apply red_refl_rt with A ; trivial].
2 subgoals, subgoal 1 (ID 18599)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  ============================
   exists s0 t : Sorts, (Γ ⊢ A ▹ A : !s0) /\ Γ ⊢ B ▹ B : !t

subgoal 2 (ID 18608) is:
 exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ C ▹ C : !t
(dependent evars:)


exists s; exists s; split; [apply red_refl_rt with B; trivial | apply red_refl_lt with A ; trivial].
1 subgoals, subgoal 1 (ID 18608)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  IHtyp_peq1 : exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ B ▹ B : !t
  IHtyp_peq2 : exists s t : Sorts, (Γ ⊢ B ▹ B : !s) /\ Γ ⊢ C ▹ C : !t
  ============================
   exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ C ▹ C : !t

(dependent evars:)


destruct IHtyp_peq1 as (a & b & ? & ?).
1 subgoals, subgoal 1 (ID 18642)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  a : Sorts
  b : Sorts
  H1 : Γ ⊢ A ▹ A : !a
  H2 : Γ ⊢ B ▹ B : !b
  IHtyp_peq2 : exists s t : Sorts, (Γ ⊢ B ▹ B : !s) /\ Γ ⊢ C ▹ C : !t
  ============================
   exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ C ▹ C : !t

(dependent evars:)

destruct IHtyp_peq2 as (a' & b' & ? & ?).
1 subgoals, subgoal 1 (ID 18654)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  a : Sorts
  b : Sorts
  H1 : Γ ⊢ A ▹ A : !a
  H2 : Γ ⊢ B ▹ B : !b
  a' : Sorts
  b' : Sorts
  H3 : Γ ⊢ B ▹ B : !a'
  H4 : Γ ⊢ C ▹ C : !b'
  ============================
   exists s t : Sorts, (Γ ⊢ A ▹ A : !s) /\ Γ ⊢ C ▹ C : !t

(dependent evars:)


exists a; exists b'; intuition.
No more subgoals.
(dependent evars:)


Qed.
typ_peq_to_red is defined



Lemma env_conv1_wf : forall Γ Γ' , env_conv1 Γ Γ' -> Γ -> Γ' .
1 subgoals, subgoal 1 (ID 18669)
  
  ============================
   forall Γ Γ' : Env, env_conv1 Γ Γ' -> Γ ⊣ -> Γ' ⊣

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 18690)
  
  Γ : Env
  A : Term
  B : Term
  H : Γ ⊢ A ≡' B
  H0 : A :: Γ ⊣
  ============================
   B :: Γ ⊣

subgoal 2 (ID 18691) is:
 A :: Γ' ⊣
(dependent evars:)

apply typ_peq_to_red in H as (_ & b & _ & ?).
2 subgoals, subgoal 1 (ID 18707)
  
  Γ : Env
  A : Term
  B : Term
  H0 : A :: Γ ⊣
  b : Sorts
  H : Γ ⊢ B ▹ B : !b
  ============================
   B :: Γ ⊣

subgoal 2 (ID 18691) is:
 A :: Γ' ⊣
(dependent evars:)


econstructor.
2 subgoals, subgoal 1 (ID 18712)
  
  Γ : Env
  A : Term
  B : Term
  H0 : A :: Γ ⊣
  b : Sorts
  H : Γ ⊢ B ▹ B : !b
  ============================
   Γ ⊢ B ▹ ?18710 : !?18711

subgoal 2 (ID 18691) is:
 A :: Γ' ⊣
(dependent evars: ?18710 open, ?18711 open,)

apply H.
1 subgoals, subgoal 1 (ID 18691)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  H0 : A :: Γ ⊣
  ============================
   A :: Γ' ⊣

(dependent evars: ?18710 using , ?18711 using ,)

inversion H0; subst; clear H0.
1 subgoals, subgoal 1 (ID 18762)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   A :: Γ' ⊣

(dependent evars: ?18710 using , ?18711 using ,)

econstructor.
1 subgoals, subgoal 1 (ID 18767)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ' ⊢ A ▹ ?18765 : !?18766

(dependent evars: ?18710 using , ?18711 using , ?18765 open, ?18766 open,)


eapply conv1_in_env.
3 subgoals, subgoal 1 (ID 18781)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   ?18780 ⊢ A ▹ ?18765 : !?18766

subgoal 2 (ID 18782) is:
 env_conv1 ?18780 Γ'
subgoal 3 (ID 18783) is:
 Γ' ⊣
(dependent evars: ?18710 using , ?18711 using , ?18765 open, ?18766 open, ?18776 using ?18780 , ?18780 open,)

apply H2.
2 subgoals, subgoal 1 (ID 18782)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   env_conv1 Γ Γ'

subgoal 2 (ID 18783) is:
 Γ' ⊣
(dependent evars: ?18710 using , ?18711 using , ?18765 using , ?18766 using , ?18776 using ?18780 , ?18780 using ,)

trivial.
1 subgoals, subgoal 1 (ID 18783)
  
  A : Term
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  A' : Term
  s : Sorts
  H2 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ' ⊣

(dependent evars: ?18710 using , ?18711 using , ?18765 using , ?18766 using , ?18776 using ?18780 , ?18780 using ,)

apply wf_from_typ in H2; intuition.
No more subgoals.
(dependent evars: ?18710 using , ?18711 using , ?18765 using , ?18766 using , ?18776 using ?18780 , ?18780 using ,)


Qed.
env_conv1_wf is defined



Lemma env_conv_wf : forall Γ Γ' , env_conv Γ Γ' -> Γ -> Γ' .
1 subgoals, subgoal 1 (ID 18796)
  
  ============================
   forall Γ Γ' : Env, env_conv Γ Γ' -> Γ ⊣ -> Γ' ⊣

(dependent evars:)


induction 1; intros.
3 subgoals, subgoal 1 (ID 18824)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  H0 : Γ ⊣
  ============================
   Γ' ⊣

subgoal 2 (ID 18825) is:
 Γ ⊣
subgoal 3 (ID 18826) is:
 Γ'' ⊣
(dependent evars:)


apply env_conv1_wf with Γ; trivial.
2 subgoals, subgoal 1 (ID 18825)
  
  Γ : Env
  H : Γ ⊣
  ============================
   Γ ⊣

subgoal 2 (ID 18826) is:
 Γ'' ⊣
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 18826)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H : env_conv Γ Γ'
  H0 : env_conv Γ' Γ''
  IHenv_conv1 : Γ ⊣ -> Γ' ⊣
  IHenv_conv2 : Γ' ⊣ -> Γ'' ⊣
  H1 : Γ ⊣
  ============================
   Γ'' ⊣

(dependent evars:)

eauto.
No more subgoals.
(dependent evars:)


Qed.
env_conv_wf is defined



Final Conversion in Context.
Theorem conv_in_env : forall Γ M N T, Γ M N : T -> forall Γ', env_conv Γ Γ'-> Γ' M N : T.
1 subgoals, subgoal 1 (ID 18874)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹ N : T -> forall Γ' : Env, env_conv Γ Γ' -> Γ' ⊢ M ▹ N : T

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 18881)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹ N : T
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   Γ' ⊢ M ▹ N : T

(dependent evars:)

revert M N T H .
1 subgoals, subgoal 1 (ID 18883)
  
  Γ : Env
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   forall M N T : Term, Γ ⊢ M ▹ N : T -> Γ' ⊢ M ▹ N : T

(dependent evars:)

induction H0; intros.
3 subgoals, subgoal 1 (ID 18911)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹ N : T
  ============================
   Γ' ⊢ M ▹ N : T

subgoal 2 (ID 18915) is:
 Γ ⊢ M ▹ N : T
subgoal 3 (ID 18919) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)


apply conv1_in_env with Γ; trivial.
3 subgoals, subgoal 1 (ID 18933)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹ N : T
  ============================
   Γ' ⊣

subgoal 2 (ID 18915) is:
 Γ ⊢ M ▹ N : T
subgoal 3 (ID 18919) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)

apply wf_from_typ in H0.
3 subgoals, subgoal 1 (ID 18935)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊣
  ============================
   Γ' ⊣

subgoal 2 (ID 18915) is:
 Γ ⊢ M ▹ N : T
subgoal 3 (ID 18919) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)

apply env_conv1_wf with Γ; trivial.
2 subgoals, subgoal 1 (ID 18915)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹ N : T
  ============================
   Γ ⊢ M ▹ N : T

subgoal 2 (ID 18919) is:
 Γ'' ⊢ M ▹ N : T
(dependent evars:)


trivial.
1 subgoals, subgoal 1 (ID 18919)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall M N T : Term, Γ ⊢ M ▹ N : T -> Γ' ⊢ M ▹ N : T
  IHenv_conv2 : forall M N T : Term, Γ' ⊢ M ▹ N : T -> Γ'' ⊢ M ▹ N : T
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹ N : T
  ============================
   Γ'' ⊢ M ▹ N : T

(dependent evars:)


eauto.
No more subgoals.
(dependent evars:)


Qed.
conv_in_env is defined



Theorem conv_in_env_reds : forall Γ M N T, Γ M ▹▹ N : T -> forall Γ', env_conv Γ Γ'-> Γ' M ▹▹ N : T.
1 subgoals, subgoal 1 (ID 18977)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹▹ N : T -> forall Γ' : Env, env_conv Γ Γ' -> Γ' ⊢ M ▹▹ N : T

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 18984)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   Γ' ⊢ M ▹▹ N : T

(dependent evars:)

revert M N T H .
1 subgoals, subgoal 1 (ID 18986)
  
  Γ : Env
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   forall M N T : Term, Γ ⊢ M ▹▹ N : T -> Γ' ⊢ M ▹▹ N : T

(dependent evars:)

induction H0; intros.
3 subgoals, subgoal 1 (ID 19014)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹▹ N : T
  ============================
   Γ' ⊢ M ▹▹ N : T

subgoal 2 (ID 19018) is:
 Γ ⊢ M ▹▹ N : T
subgoal 3 (ID 19022) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)


apply conv1_in_env with Γ; trivial.
3 subgoals, subgoal 1 (ID 19037)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊢ M ▹▹ N : T
  ============================
   Γ' ⊣

subgoal 2 (ID 19018) is:
 Γ ⊢ M ▹▹ N : T
subgoal 3 (ID 19022) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)

apply wf_from_typ_reds in H0.
3 subgoals, subgoal 1 (ID 19039)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  M : Term
  N : Term
  T : Term
  H0 : Γ ⊣
  ============================
   Γ' ⊣

subgoal 2 (ID 19018) is:
 Γ ⊢ M ▹▹ N : T
subgoal 3 (ID 19022) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)

apply env_conv1_wf with Γ; trivial.
2 subgoals, subgoal 1 (ID 19018)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  ============================
   Γ ⊢ M ▹▹ N : T

subgoal 2 (ID 19022) is:
 Γ'' ⊢ M ▹▹ N : T
(dependent evars:)


trivial.
1 subgoals, subgoal 1 (ID 19022)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall M N T : Term, Γ ⊢ M ▹▹ N : T -> Γ' ⊢ M ▹▹ N : T
  IHenv_conv2 : forall M N T : Term, Γ' ⊢ M ▹▹ N : T -> Γ'' ⊢ M ▹▹ N : T
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  ============================
   Γ'' ⊢ M ▹▹ N : T

(dependent evars:)


eauto.
No more subgoals.
(dependent evars:)


Qed.
conv_in_env_reds is defined



Lemma env_red_cons : forall a b s Γ Γ', Γ a ▹▹ b : !s -> env_red Γ Γ' ->
  env_red (a::Γ) (b::Γ').
1 subgoals, subgoal 1 (ID 19071)
  
  ============================
   forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
   Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')

(dependent evars:)


assert ( forall a b s Γ , Γ a ▹▹ b : !s -> env_red (a::Γ) (b::Γ)).
2 subgoals, subgoal 1 (ID 19078)
  
  ============================
   forall (a b : Term) (s : Sorts) (Γ : Env),
   Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)

subgoal 2 (ID 19079) is:
 forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
 Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')
(dependent evars:)


intros.
2 subgoals, subgoal 1 (ID 19084)
  
  a : Term
  b : Term
  s : Sorts
  Γ : Env
  H : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (a :: Γ) (b :: Γ)

subgoal 2 (ID 19079) is:
 forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
 Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')
(dependent evars:)

remember !s as S.
2 subgoals, subgoal 1 (ID 19091)
  
  a : Term
  b : Term
  s : Sorts
  Γ : Env
  S : Term
  HeqS : S = !s
  H : Γ ⊢ a ▹▹ b : S
  ============================
   env_red (a :: Γ) (b :: Γ)

subgoal 2 (ID 19079) is:
 forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
 Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')
(dependent evars:)

revert s HeqS.
2 subgoals, subgoal 1 (ID 19093)
  
  a : Term
  b : Term
  Γ : Env
  S : Term
  H : Γ ⊢ a ▹▹ b : S
  ============================
   forall s : Sorts, S = !s -> env_red (a :: Γ) (b :: Γ)

subgoal 2 (ID 19079) is:
 forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
 Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')
(dependent evars:)

induction H; intros; subst.
3 subgoals, subgoal 1 (ID 19129)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  H : Γ ⊢ s ▹ t : !s0
  ============================
   env_red (s :: Γ) (t :: Γ)

subgoal 2 (ID 19137) is:
 env_red (s :: Γ) (u :: Γ)
subgoal 3 (ID 19079) is:
 forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
 Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')
(dependent evars:)


eauto.
2 subgoals, subgoal 1 (ID 19137)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts, !s0 = !s1 -> env_red (s :: Γ) (t :: Γ)
  IHtyp_reds2 : forall s : Sorts, !s0 = !s -> env_red (t :: Γ) (u :: Γ)
  ============================
   env_red (s :: Γ) (u :: Γ)

subgoal 2 (ID 19079) is:
 forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
 Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')
(dependent evars: ?19142 using ,)

eauto.
1 subgoals, subgoal 1 (ID 19079)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  ============================
   forall (a b : Term) (s : Sorts) (Γ Γ' : Env),
   Γ ⊢ a ▹▹ b : !s -> env_red Γ Γ' -> env_red (a :: Γ) (b :: Γ')

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using ,)


intros.
1 subgoals, subgoal 1 (ID 19341)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  a : Term
  b : Term
  s : Sorts
  Γ : Env
  Γ' : Env
  H0 : Γ ⊢ a ▹▹ b : !s
  H1 : env_red Γ Γ'
  ============================
   env_red (a :: Γ) (b :: Γ')

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using ,)

revert a b s H0.
1 subgoals, subgoal 1 (ID 19343)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H1 : env_red Γ Γ'
  ============================
   forall (a b : Term) (s : Sorts),
   Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using ,)


induction H1; intros.
3 subgoals, subgoal 1 (ID 19371)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H0 : env_red1 Γ Γ'
  a : Term
  b : Term
  s : Sorts
  H1 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (a :: Γ) (b :: Γ')

subgoal 2 (ID 19375) is:
 env_red (a :: Γ) (b :: Γ)
subgoal 3 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using ,)

eapply r_trans.
4 subgoals, subgoal 1 (ID 19381)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H0 : env_red1 Γ Γ'
  a : Term
  b : Term
  s : Sorts
  H1 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (a :: Γ) ?19380

subgoal 2 (ID 19382) is:
 env_red ?19380 (b :: Γ')
subgoal 3 (ID 19375) is:
 env_red (a :: Γ) (b :: Γ)
subgoal 4 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 open,)

eapply H.
4 subgoals, subgoal 1 (ID 19387)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H0 : env_red1 Γ Γ'
  a : Term
  b : Term
  s : Sorts
  H1 : Γ ⊢ a ▹▹ b : !s
  ============================
   Γ ⊢ a ▹▹ ?19384 : !?19386

subgoal 2 (ID 19382) is:
 env_red (?19384 :: Γ) (b :: Γ')
subgoal 3 (ID 19375) is:
 env_red (a :: Γ) (b :: Γ)
subgoal 4 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 open, ?19385 using , ?19386 open,)

apply H1.
3 subgoals, subgoal 1 (ID 19382)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H0 : env_red1 Γ Γ'
  a : Term
  b : Term
  s : Sorts
  H1 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (b :: Γ) (b :: Γ')

subgoal 2 (ID 19375) is:
 env_red (a :: Γ) (b :: Γ)
subgoal 3 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using ,)


constructor.
3 subgoals, subgoal 1 (ID 19389)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H0 : env_red1 Γ Γ'
  a : Term
  b : Term
  s : Sorts
  H1 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red1 (b :: Γ) (b :: Γ')

subgoal 2 (ID 19375) is:
 env_red (a :: Γ) (b :: Γ)
subgoal 3 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using ,)

constructor.
3 subgoals, subgoal 1 (ID 19392)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  H0 : env_red1 Γ Γ'
  a : Term
  b : Term
  s : Sorts
  H1 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red1 Γ Γ'

subgoal 2 (ID 19375) is:
 env_red (a :: Γ) (b :: Γ)
subgoal 3 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using ,)

trivial.
2 subgoals, subgoal 1 (ID 19375)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (a :: Γ) (b :: Γ)

subgoal 2 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using ,)


eapply H.
2 subgoals, subgoal 1 (ID 19394)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   Γ ⊢ a ▹▹ b : !?19393

subgoal 2 (ID 19379) is:
 env_red (a :: Γ) (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 open,)

apply H0.
1 subgoals, subgoal 1 (ID 19379)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (a :: Γ) (b :: Γ'')

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using ,)


eapply r_trans.
2 subgoals, subgoal 1 (ID 19396)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (a :: Γ) ?19395

subgoal 2 (ID 19397) is:
 env_red ?19395 (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 open,)

apply IHenv_red1 with s.
2 subgoals, subgoal 1 (ID 19401)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   Γ ⊢ a ▹▹ ?19399 : !s

subgoal 2 (ID 19397) is:
 env_red (?19399 :: Γ') (b :: Γ'')
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 open, ?19400 using ,)

apply H0.
1 subgoals, subgoal 1 (ID 19397)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   env_red (b :: Γ') (b :: Γ'')

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using ,)


apply IHenv_red2 with s.
1 subgoals, subgoal 1 (ID 19402)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ a ▹▹ b : !s
  ============================
   Γ' ⊢ b ▹▹ b : !s

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using ,)

apply reds_refl_rt in H0.
1 subgoals, subgoal 1 (ID 19404)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ b ▹ b : !s
  ============================
   Γ' ⊢ b ▹▹ b : !s

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using ,)


constructor.
1 subgoals, subgoal 1 (ID 19406)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ b ▹ b : !s
  ============================
   Γ' ⊢ b ▹ b : !s

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using ,)

eapply red_in_env.
2 subgoals, subgoal 1 (ID 19408)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ b ▹ b : !s
  ============================
   ?19407 ⊢ b ▹ b : !s

subgoal 2 (ID 19409) is:
 env_red ?19407 Γ'
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using , ?19407 open,)

apply H0.
1 subgoals, subgoal 1 (ID 19409)
  
  H : forall (a b : Term) (s : Sorts) (Γ : Env),
      Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ)
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H1_ : env_red Γ Γ'
  H1_0 : env_red Γ' Γ''
  IHenv_red1 : forall (a b : Term) (s : Sorts),
               Γ ⊢ a ▹▹ b : !s -> env_red (a :: Γ) (b :: Γ')
  IHenv_red2 : forall (a b : Term) (s : Sorts),
               Γ' ⊢ a ▹▹ b : !s -> env_red (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  s : Sorts
  H0 : Γ ⊢ b ▹ b : !s
  ============================
   env_red Γ Γ'

(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using , ?19407 using ,)

trivial.
No more subgoals.
(dependent evars: ?19142 using , ?19153 using , ?19221 using , ?19250 using , ?19328 using , ?19380 using ?19385 ?19384 , ?19383 using , ?19384 using , ?19385 using , ?19386 using , ?19393 using , ?19395 using ?19400 ?19399 , ?19398 using , ?19399 using , ?19400 using , ?19407 using ,)


Qed.
env_red_cons is defined



Lemma env_conv_cons : forall a b Γ Γ', Γ a ≡' b -> env_conv Γ Γ' ->
  env_conv (a::Γ) (b::Γ').
1 subgoals, subgoal 1 (ID 19424)
  
  ============================
   forall (a b : Term) (Γ Γ' : Env),
   Γ ⊢ a ≡' b -> env_conv Γ Γ' -> env_conv (a :: Γ) (b :: Γ')

(dependent evars:)

intros.
1 subgoals, subgoal 1 (ID 19430)
  
  a : Term
  b : Term
  Γ : Env
  Γ' : Env
  H : Γ ⊢ a ≡' b
  H0 : env_conv Γ Γ'
  ============================
   env_conv (a :: Γ) (b :: Γ')

(dependent evars:)

revert a b H.
1 subgoals, subgoal 1 (ID 19432)
  
  Γ : Env
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')

(dependent evars:)


induction H0; intros.
3 subgoals, subgoal 1 (ID 19459)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   env_conv (a :: Γ) (b :: Γ')

subgoal 2 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 3 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars:)

eapply c_trans.
4 subgoals, subgoal 1 (ID 19467)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   env_conv (a :: Γ) ?19466

subgoal 2 (ID 19468) is:
 env_conv ?19466 (b :: Γ')
subgoal 3 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 4 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 open,)

constructor.
4 subgoals, subgoal 1 (ID 19470)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   env_conv1 (a :: Γ) ?19466

subgoal 2 (ID 19468) is:
 env_conv ?19466 (b :: Γ')
subgoal 3 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 4 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 open,)

constructor.
4 subgoals, subgoal 1 (ID 19475)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   Γ ⊢ a ≡' ?19473

subgoal 2 (ID 19468) is:
 env_conv (?19473 :: Γ) (b :: Γ')
subgoal 3 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 4 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 open, ?19474 using ,)

apply H0.
3 subgoals, subgoal 1 (ID 19468)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   env_conv (b :: Γ) (b :: Γ')

subgoal 2 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 3 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)


constructor.
3 subgoals, subgoal 1 (ID 19477)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   env_conv1 (b :: Γ) (b :: Γ')

subgoal 2 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 3 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)

constructor.
3 subgoals, subgoal 1 (ID 19480)
  
  Γ : Env
  Γ' : Env
  H : env_conv1 Γ Γ'
  a : Term
  b : Term
  H0 : Γ ⊢ a ≡' b
  ============================
   env_conv1 Γ Γ'

subgoal 2 (ID 19462) is:
 env_conv (a :: Γ) (b :: Γ)
subgoal 3 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)

trivial.
2 subgoals, subgoal 1 (ID 19462)
  
  Γ : Env
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   env_conv (a :: Γ) (b :: Γ)

subgoal 2 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)


constructor.
2 subgoals, subgoal 1 (ID 19482)
  
  Γ : Env
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   env_conv1 (a :: Γ) (b :: Γ)

subgoal 2 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)

constructor.
2 subgoals, subgoal 1 (ID 19484)
  
  Γ : Env
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   Γ ⊢ a ≡' b

subgoal 2 (ID 19465) is:
 env_conv (a :: Γ) (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)

trivial.
1 subgoals, subgoal 1 (ID 19465)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   env_conv (a :: Γ) (b :: Γ'')

(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using ,)


eapply c_trans.
2 subgoals, subgoal 1 (ID 19486)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   env_conv (a :: Γ) ?19485

subgoal 2 (ID 19487) is:
 env_conv ?19485 (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 open,)

apply IHenv_conv1.
2 subgoals, subgoal 1 (ID 19491)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   Γ ⊢ a ≡' ?19489

subgoal 2 (ID 19487) is:
 env_conv (?19489 :: Γ') (b :: Γ'')
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 open, ?19490 using ,)

apply H.
1 subgoals, subgoal 1 (ID 19487)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   env_conv (b :: Γ') (b :: Γ'')

(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using ,)


apply IHenv_conv2.
1 subgoals, subgoal 1 (ID 19492)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  H : Γ ⊢ a ≡' b
  ============================
   Γ' ⊢ b ≡' b

(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using ,)

apply typ_peq_to_red in H as (_ & t & _ & ?).
1 subgoals, subgoal 1 (ID 19508)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  t : Sorts
  H : Γ ⊢ b ▹ b : !t
  ============================
   Γ' ⊢ b ≡' b

(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using ,)


econstructor.
1 subgoals, subgoal 1 (ID 19511)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  t : Sorts
  H : Γ ⊢ b ▹ b : !t
  ============================
   Γ' ⊢ b ▹ b : !?19510

(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using , ?19510 open,)

eapply conv_in_env.
2 subgoals, subgoal 1 (ID 19513)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  t : Sorts
  H : Γ ⊢ b ▹ b : !t
  ============================
   ?19512 ⊢ b ▹ b : !?19510

subgoal 2 (ID 19514) is:
 env_conv ?19512 Γ'
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using , ?19510 open, ?19512 open,)

apply H.
1 subgoals, subgoal 1 (ID 19514)
  
  Γ : Env
  Γ' : Env
  Γ'' : Env
  H0_ : env_conv Γ Γ'
  H0_0 : env_conv Γ' Γ''
  IHenv_conv1 : forall a b : Term, Γ ⊢ a ≡' b -> env_conv (a :: Γ) (b :: Γ')
  IHenv_conv2 : forall a b : Term,
                Γ' ⊢ a ≡' b -> env_conv (a :: Γ') (b :: Γ'')
  a : Term
  b : Term
  t : Sorts
  H : Γ ⊢ b ▹ b : !t
  ============================
   env_conv Γ Γ'

(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using , ?19510 using , ?19512 using ,)

trivial.
No more subgoals.
(dependent evars: ?19466 using ?19474 ?19473 , ?19472 using , ?19473 using , ?19474 using , ?19485 using ?19490 ?19489 , ?19488 using , ?19489 using , ?19490 using , ?19510 using , ?19512 using ,)


Qed.
env_conv_cons is defined



Theorem conv_in_env_peq : forall Γ A B, Γ A ≡' B -> forall Γ', env_conv Γ Γ' ->
 Γ' A ≡' B.
1 subgoals, subgoal 1 (ID 19526)
  
  ============================
   forall (Γ : Env) (A B : Term),
   Γ ⊢ A ≡' B -> forall Γ' : Env, env_conv Γ Γ' -> Γ' ⊢ A ≡' B

(dependent evars:)


induction 1; intros.
3 subgoals, subgoal 1 (ID 19566)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   Γ' ⊢ A ≡' B

subgoal 2 (ID 19568) is:
 Γ' ⊢ A ≡' B
subgoal 3 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars:)

econstructor.
3 subgoals, subgoal 1 (ID 19573)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   Γ' ⊢ A ▹ B : !?19572

subgoal 2 (ID 19568) is:
 Γ' ⊢ A ≡' B
subgoal 3 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 open,)

eapply conv_in_env.
4 subgoals, subgoal 1 (ID 19575)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   ?19574 ⊢ A ▹ B : !?19572

subgoal 2 (ID 19576) is:
 env_conv ?19574 Γ'
subgoal 3 (ID 19568) is:
 Γ' ⊢ A ≡' B
subgoal 4 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 open, ?19574 open,)

apply H.
3 subgoals, subgoal 1 (ID 19576)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   env_conv Γ Γ'

subgoal 2 (ID 19568) is:
 Γ' ⊢ A ≡' B
subgoal 3 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 using , ?19574 using ,)

trivial.
2 subgoals, subgoal 1 (ID 19568)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   Γ' ⊢ A ≡' B

subgoal 2 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 using , ?19574 using ,)


apply typ_peq_intro2 with s.
2 subgoals, subgoal 1 (ID 19577)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   Γ' ⊢ B ▹ A : !s

subgoal 2 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 using , ?19574 using ,)

eapply conv_in_env.
3 subgoals, subgoal 1 (ID 19579)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   ?19578 ⊢ B ▹ A : !s

subgoal 2 (ID 19580) is:
 env_conv ?19578 Γ'
subgoal 3 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 using , ?19574 using , ?19578 open,)

apply H.
2 subgoals, subgoal 1 (ID 19580)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  Γ' : Env
  H0 : env_conv Γ Γ'
  ============================
   env_conv Γ Γ'

subgoal 2 (ID 19570) is:
 Γ' ⊢ A ≡' C
(dependent evars: ?19572 using , ?19574 using , ?19578 using ,)

trivial.
1 subgoals, subgoal 1 (ID 19570)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  IHtyp_peq1 : forall Γ' : Env, env_conv Γ Γ' -> Γ' ⊢ A ≡' B
  IHtyp_peq2 : forall Γ' : Env, env_conv Γ Γ' -> Γ' ⊢ B ≡' C
  Γ' : Env
  H1 : env_conv Γ Γ'
  ============================
   Γ' ⊢ A ≡' C

(dependent evars: ?19572 using , ?19574 using , ?19578 using ,)


eauto.
No more subgoals.
(dependent evars: ?19572 using , ?19574 using , ?19578 using , ?19588 using ,)


Qed.
conv_in_env_peq is defined



Inversion lemma: as for PTS, if a term is well typed, we can infer a lot of information on its type, subterms, or reduce form.

Lemma pgen_sort : forall Γ s N T, Γ !s N : T ->
  N = !s /\ ( exists t, Ax s t /\ (T = !t \/ Γ T ≡' !t )).
1 subgoals, subgoal 1 (ID 20536)
  
  ============================
   forall (Γ : Env) (s : Sorts) (N T : Term),
   Γ ⊢ !s ▹ N : T ->
   N = !s /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 20541)
  
  Γ : Env
  s : Sorts
  N : Term
  T : Term
  H : Γ ⊢ !s ▹ N : T
  ============================
   N = !s /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)


remember (!s) as S.
1 subgoals, subgoal 1 (ID 20548)
  
  Γ : Env
  s : Sorts
  N : Term
  T : Term
  S : Term
  HeqS : S = !s
  H : Γ ⊢ S ▹ N : T
  ============================
   N = S /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)

revert s HeqS.
1 subgoals, subgoal 1 (ID 20550)
  
  Γ : Env
  N : Term
  T : Term
  S : Term
  H : Γ ⊢ S ▹ N : T
  ============================
   forall s : Sorts,
   S = !s -> N = S /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)

induction H; intros; subst; try discriminate.
3 subgoals, subgoal 1 (ID 20721)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  s : Sorts
  HeqS : !s1 = !s
  ============================
   !s1 = !s1 /\ (exists t : Sorts, Ax s t /\ (!s2 = !t \/ Γ ⊢ !s2 ≡' !t))

subgoal 2 (ID 20739) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (B = !t \/ Γ ⊢ B ≡' !t))
subgoal 3 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)


injection HeqS; intros; subst; clear HeqS.
3 subgoals, subgoal 1 (ID 20782)
  
  Γ : Env
  s2 : Sorts
  H0 : Γ ⊣
  s : Sorts
  H : Ax s s2
  ============================
   !s = !s /\ (exists t : Sorts, Ax s t /\ (!s2 = !t \/ Γ ⊢ !s2 ≡' !t))

subgoal 2 (ID 20739) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (B = !t \/ Γ ⊢ B ≡' !t))
subgoal 3 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)


intuition.
3 subgoals, subgoal 1 (ID 20785)
  
  Γ : Env
  s2 : Sorts
  H0 : Γ ⊣
  s : Sorts
  H : Ax s s2
  ============================
   exists t : Sorts, Ax s t /\ (!s2 = !t \/ Γ ⊢ !s2 ≡' !t)

subgoal 2 (ID 20739) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (B = !t \/ Γ ⊢ B ≡' !t))
subgoal 3 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)


exists s2; intuition.
2 subgoals, subgoal 1 (ID 20739)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : A
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (A = !t \/ Γ ⊢ A ≡' !t))
  ============================
   N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (B = !t \/ Γ ⊢ B ≡' !t))

subgoal 2 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)



destruct (IHtyp1 s0) as (? & t & ? & ?); trivial.
2 subgoals, subgoal 1 (ID 20818)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : A
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (A = !t \/ Γ ⊢ A ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : A = !t \/ Γ ⊢ A ≡' !t
  ============================
   N = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (B = !t0 \/ Γ ⊢ B ≡' !t0))

subgoal 2 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)


split; trivial.
2 subgoals, subgoal 1 (ID 20821)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : A
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (A = !t \/ Γ ⊢ A ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : A = !t \/ Γ ⊢ A ≡' !t
  ============================
   exists t0 : Sorts, Ax s0 t0 /\ (B = !t0 \/ Γ ⊢ B ≡' !t0)

subgoal 2 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)

exists t; split; trivial.
2 subgoals, subgoal 1 (ID 20826)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : A
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (A = !t \/ Γ ⊢ A ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : A = !t \/ Γ ⊢ A ≡' !t
  ============================
   B = !t \/ Γ ⊢ B ≡' !t

subgoal 2 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)

destruct H3.
3 subgoals, subgoal 1 (ID 20831)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : A
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (A = !t \/ Γ ⊢ A ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : A = !t
  ============================
   B = !t \/ Γ ⊢ B ≡' !t

subgoal 2 (ID 20832) is:
 B = !t \/ Γ ⊢ B ≡' !t
subgoal 3 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)

subst.
3 subgoals, subgoal 1 (ID 20846)
  
  Γ : Env
  B : Term
  s : Sorts
  s0 : Sorts
  t : Sorts
  H2 : Ax s0 t
  H0 : Γ ⊢ !t ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           !t = !s0 ->
           B = !t /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  H : Γ ⊢ !s0 ▹ !s0 : !t
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           !s0 = !s0 /\
           (exists t0 : Sorts, Ax s t0 /\ (!t = !t0 \/ Γ ⊢ !t ≡' !t0))
  ============================
   B = !t \/ Γ ⊢ B ≡' !t

subgoal 2 (ID 20832) is:
 B = !t \/ Γ ⊢ B ≡' !t
subgoal 3 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars:)

right; eauto.
2 subgoals, subgoal 1 (ID 20832)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : A
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (A = !t \/ Γ ⊢ A ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : Γ ⊢ A ≡' !t
  ============================
   B = !t \/ Γ ⊢ B ≡' !t

subgoal 2 (ID 20745) is:
 N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))
(dependent evars: ?20884 using ,)

right; eauto.
1 subgoals, subgoal 1 (ID 20745)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : B
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  ============================
   N = !s0 /\ (exists t : Sorts, Ax s0 t /\ (A = !t \/ Γ ⊢ A ≡' !t))

(dependent evars: ?20884 using , ?20948 using , ?21068 using ,)



destruct (IHtyp1 s0) as (? & t & ? & ?); trivial.
1 subgoals, subgoal 1 (ID 21124)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : B
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : B = !t \/ Γ ⊢ B ≡' !t
  ============================
   N = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (A = !t0 \/ Γ ⊢ A ≡' !t0))

(dependent evars: ?20884 using , ?20948 using , ?21068 using ,)


split; trivial.
1 subgoals, subgoal 1 (ID 21127)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : B
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : B = !t \/ Γ ⊢ B ≡' !t
  ============================
   exists t0 : Sorts, Ax s0 t0 /\ (A = !t0 \/ Γ ⊢ A ≡' !t0)

(dependent evars: ?20884 using , ?20948 using , ?21068 using ,)

exists t; split; trivial.
1 subgoals, subgoal 1 (ID 21132)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : B
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : B = !t \/ Γ ⊢ B ≡' !t
  ============================
   A = !t \/ Γ ⊢ A ≡' !t

(dependent evars: ?20884 using , ?20948 using , ?21068 using ,)

destruct H3.
2 subgoals, subgoal 1 (ID 21137)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : B
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : B = !t
  ============================
   A = !t \/ Γ ⊢ A ≡' !t

subgoal 2 (ID 21138) is:
 A = !t \/ Γ ⊢ A ≡' !t
(dependent evars: ?20884 using , ?20948 using , ?21068 using ,)

subst.
2 subgoals, subgoal 1 (ID 21152)
  
  Γ : Env
  A : Term
  s : Sorts
  s0 : Sorts
  t : Sorts
  H2 : Ax s0 t
  H0 : Γ ⊢ A ▹ !t : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           !t = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  H : Γ ⊢ !s0 ▹ !s0 : !t
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           !s0 = !s0 /\
           (exists t0 : Sorts, Ax s t0 /\ (!t = !t0 \/ Γ ⊢ !t ≡' !t0))
  ============================
   A = !t \/ Γ ⊢ A ≡' !t

subgoal 2 (ID 21138) is:
 A = !t \/ Γ ⊢ A ≡' !t
(dependent evars: ?20884 using , ?20948 using , ?21068 using ,)

right; eauto.
1 subgoals, subgoal 1 (ID 21138)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall s0 : Sorts,
           A = !s0 ->
           B = A /\ (exists t : Sorts, Ax s0 t /\ (!s = !t \/ Γ ⊢ !s ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ N : B
  IHtyp1 : forall s : Sorts,
           !s0 = !s ->
           N = !s0 /\ (exists t : Sorts, Ax s t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  H1 : N = !s0
  t : Sorts
  H2 : Ax s0 t
  H3 : Γ ⊢ B ≡' !t
  ============================
   A = !t \/ Γ ⊢ A ≡' !t

(dependent evars: ?20884 using , ?20948 using , ?21068 using , ?21188 using ,)

right; eauto.
No more subgoals.
(dependent evars: ?20884 using , ?20948 using , ?21068 using , ?21188 using , ?21246 using , ?21368 using ,)


Qed.
pgen_sort is defined



Lemma wf_item : forall Γ A n, A n Γ ->
   forall Γ', Γ -> trunc (S n) Γ Γ' -> exists A', exists s, Γ' A A' : !s.
1 subgoals, subgoal 1 (ID 21428)
  
  ============================
   forall (Γ : list Term) (A : Term) (n : nat),
   A ↓ n ∈ Γ ->
   forall Γ' : list Term,
   Γ ⊣ ->
   trunc (S n) Γ Γ' -> exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 21449)
  
  A : Term
  l : list Term
  Γ' : list Term
  H : A :: l ⊣
  H0 : trunc 1 (A :: l) Γ'
  ============================
   exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s

subgoal 2 (ID 21452) is:
 exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
(dependent evars:)


inversion H0; subst; clear H0.
2 subgoals, subgoal 1 (ID 21525)
  
  A : Term
  l : list Term
  Γ' : list Term
  H : A :: l ⊣
  H5 : trunc 0 l Γ'
  ============================
   exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s

subgoal 2 (ID 21452) is:
 exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
(dependent evars:)


inversion H5; subst; clear H5.
2 subgoals, subgoal 1 (ID 21581)
  
  A : Term
  Γ' : list Term
  H : A :: Γ' ⊣
  ============================
   exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s

subgoal 2 (ID 21452) is:
 exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
(dependent evars:)


inversion H; subst.
2 subgoals, subgoal 1 (ID 21630)
  
  A : Term
  Γ' : list Term
  H : A :: Γ' ⊣
  A' : Term
  s : Sorts
  H1 : Γ' ⊢ A ▹ A' : !s
  ============================
   exists (A'0 : Term) (s0 : Sorts), Γ' ⊢ A ▹ A'0 : !s0

subgoal 2 (ID 21452) is:
 exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
(dependent evars:)


exists A'; exists s; trivial.
1 subgoals, subgoal 1 (ID 21452)
  
  A : Term
  l : list Term
  n : nat
  y : Term
  H : A ↓ n ∈ l
  IHitem : forall Γ' : list Term,
           l ⊣ ->
           trunc (S n) l Γ' ->
           exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
  Γ' : list Term
  H0 : y :: l ⊣
  H1 : trunc (S (S n)) (y :: l) Γ'
  ============================
   exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s

(dependent evars:)


inversion H1; subst; clear H1.
1 subgoals, subgoal 1 (ID 21707)
  
  A : Term
  l : list Term
  n : nat
  y : Term
  H : A ↓ n ∈ l
  IHitem : forall Γ' : list Term,
           l ⊣ ->
           trunc (S n) l Γ' ->
           exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
  Γ' : list Term
  H0 : y :: l ⊣
  H6 : trunc (S n) l Γ'
  ============================
   exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s

(dependent evars:)


inversion H0; subst.
1 subgoals, subgoal 1 (ID 21756)
  
  A : Term
  l : list Term
  n : nat
  y : Term
  H : A ↓ n ∈ l
  IHitem : forall Γ' : list Term,
           l ⊣ ->
           trunc (S n) l Γ' ->
           exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
  Γ' : list Term
  H0 : y :: l ⊣
  H6 : trunc (S n) l Γ'
  A' : Term
  s : Sorts
  H2 : l ⊢ y ▹ A' : !s
  ============================
   exists (A'0 : Term) (s0 : Sorts), Γ' ⊢ A ▹ A'0 : !s0

(dependent evars:)


apply IHitem; trivial.
1 subgoals, subgoal 1 (ID 21757)
  
  A : Term
  l : list Term
  n : nat
  y : Term
  H : A ↓ n ∈ l
  IHitem : forall Γ' : list Term,
           l ⊣ ->
           trunc (S n) l Γ' ->
           exists (A' : Term) (s : Sorts), Γ' ⊢ A ▹ A' : !s
  Γ' : list Term
  H0 : y :: l ⊣
  H6 : trunc (S n) l Γ'
  A' : Term
  s : Sorts
  H2 : l ⊢ y ▹ A' : !s
  ============================
   l ⊣

(dependent evars:)

apply wf_from_typ in H2; trivial.
No more subgoals.
(dependent evars:)


Qed.
wf_item is defined



Lemma wf_item_lift : forall Γ t n ,Γ -> t n Γ ->
  exists t', exists s, Γ t t' : !s.
1 subgoals, subgoal 1 (ID 21774)
  
  ============================
   forall (Γ : Env) (t : Term) (n : nat),
   Γ ⊣ -> t ↓ n ⊂ Γ -> exists (t' : Term) (s : Sorts), Γ ⊢ t ▹ t' : !s

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 21779)
  
  Γ : Env
  t : Term
  n : nat
  H : Γ ⊣
  H0 : t ↓ n ⊂ Γ
  ============================
   exists (t' : Term) (s : Sorts), Γ ⊢ t ▹ t' : !s

(dependent evars:)


destruct H0 as (u & ? & ?).
1 subgoals, subgoal 1 (ID 21787)
  
  Γ : Env
  t : Term
  n : nat
  H : Γ ⊣
  u : Term
  H0 : t = u ↑ (S n)
  H1 : u ↓ n ∈ Γ
  ============================
   exists (t' : Term) (s : Sorts), Γ ⊢ t ▹ t' : !s

(dependent evars:)


subst.
1 subgoals, subgoal 1 (ID 21790)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  ============================
   exists (t' : Term) (s : Sorts), Γ ⊢ u ↑ (S n) ▹ t' : !s

(dependent evars:)


assert (exists Γ' , trunc (S n) Γ Γ') by (apply item_trunc with u; trivial).
1 subgoals, subgoal 1 (ID 21794)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  H0 : exists Γ' : list Term, trunc (S n) Γ Γ'
  ============================
   exists (t' : Term) (s : Sorts), Γ ⊢ u ↑ (S n) ▹ t' : !s

(dependent evars:)


destruct H0 as (Γ' & ?).
1 subgoals, subgoal 1 (ID 21799)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  ============================
   exists (t' : Term) (s : Sorts), Γ ⊢ u ↑ (S n) ▹ t' : !s

(dependent evars:)


destruct (wf_item Γ u n H1 Γ' H H0) as (u' & ? & ?).
1 subgoals, subgoal 1 (ID 21810)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  u' : Term
  x : Sorts
  H2 : Γ' ⊢ u ▹ u' : !x
  ============================
   exists (t' : Term) (s : Sorts), Γ ⊢ u ↑ (S n) ▹ t' : !s

(dependent evars:)


exists (u' (S n)); exists x.
1 subgoals, subgoal 1 (ID 21814)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  u' : Term
  x : Sorts
  H2 : Γ' ⊢ u ▹ u' : !x
  ============================
   Γ ⊢ u ↑ (S n) ▹ u' ↑ (S n) : !x

(dependent evars:)


change !x with (!x ↑(S n)).
1 subgoals, subgoal 1 (ID 21816)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  u' : Term
  x : Sorts
  H2 : Γ' ⊢ u ▹ u' : !x
  ============================
   Γ ⊢ u ↑ (S n) ▹ u' ↑ (S n) : !x ↑ (S n)

(dependent evars:)


eapply thinning_n.
3 subgoals, subgoal 1 (ID 21818)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  u' : Term
  x : Sorts
  H2 : Γ' ⊢ u ▹ u' : !x
  ============================
   trunc (S n) Γ ?21817

subgoal 2 (ID 21819) is:
 ?21817 ⊢ u ▹ u' : !x
subgoal 3 (ID 21820) is:
 Γ ⊣
(dependent evars: ?21817 open,)

apply H0.
2 subgoals, subgoal 1 (ID 21819)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  u' : Term
  x : Sorts
  H2 : Γ' ⊢ u ▹ u' : !x
  ============================
   Γ' ⊢ u ▹ u' : !x

subgoal 2 (ID 21820) is:
 Γ ⊣
(dependent evars: ?21817 using ,)

trivial.
1 subgoals, subgoal 1 (ID 21820)
  
  Γ : Env
  n : nat
  H : Γ ⊣
  u : Term
  H1 : u ↓ n ∈ Γ
  Γ' : list Term
  H0 : trunc (S n) Γ Γ'
  u' : Term
  x : Sorts
  H2 : Γ' ⊢ u ▹ u' : !x
  ============================
   Γ ⊣

(dependent evars: ?21817 using ,)

trivial.
No more subgoals.
(dependent evars: ?21817 using ,)


Qed.
wf_item_lift is defined



Lemma pgen_var : forall Γ x N T, Γ #x N : T ->
  N = #x /\ ( exists Z, Z x Γ /\ Γ T ≡' Z ).
1 subgoals, subgoal 1 (ID 21833)
  
  ============================
   forall (Γ : Env) (x : Vars) (N T : Term),
   Γ ⊢ #x ▹ N : T -> N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ T ≡' Z)

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 21838)
  
  Γ : Env
  x : Vars
  N : Term
  T : Term
  H : Γ ⊢ #x ▹ N : T
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ T ≡' Z)

(dependent evars:)


remember #x as X .
1 subgoals, subgoal 1 (ID 21845)
  
  Γ : Env
  x : Vars
  N : Term
  T : Term
  X : Term
  HeqX : X = #x
  H : Γ ⊢ X ▹ N : T
  ============================
   N = X /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ T ≡' Z)

(dependent evars:)

revert x HeqX.
1 subgoals, subgoal 1 (ID 21847)
  
  Γ : Env
  N : Term
  T : Term
  X : Term
  H : Γ ⊢ X ▹ N : T
  ============================
   forall x : Vars,
   X = #x -> N = X /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ T ≡' Z)

(dependent evars:)

induction H; intros; subst; try discriminate.
3 subgoals, subgoal 1 (ID 22016)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  x0 : Vars
  HeqX : #x = #x0
  ============================
   #x = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)

subgoal 2 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 3 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars:)


injection HeqX; intros; subst; clear HeqX.
3 subgoals, subgoal 1 (ID 22079)
  
  Γ : Env
  A : Term
  H : Γ ⊣
  x0 : Vars
  H0 : A ↓ x0 ⊂ Γ
  ============================
   #x0 = #x0 /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)

subgoal 2 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 3 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars:)


intuition.
3 subgoals, subgoal 1 (ID 22082)
  
  Γ : Env
  A : Term
  H : Γ ⊣
  x0 : Vars
  H0 : A ↓ x0 ⊂ Γ
  ============================
   exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z

subgoal 2 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 3 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars:)

exists A; intuition.
3 subgoals, subgoal 1 (ID 22094)
  
  Γ : Env
  A : Term
  H : Γ ⊣
  x0 : Vars
  H0 : A ↓ x0 ⊂ Γ
  ============================
   Γ ⊢ A ≡' A

subgoal 2 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 3 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars:)

apply wf_item_lift in H0.
4 subgoals, subgoal 1 (ID 22142)
  
  Γ : Env
  A : Term
  H : Γ ⊣
  x0 : Vars
  H0 : exists (t' : Term) (s : Sorts), Γ ⊢ A ▹ t' : !s
  ============================
   Γ ⊢ A ≡' A

subgoal 2 (ID 22143) is:
 Γ ⊣
subgoal 3 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 4 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars:)


destruct H0 as (A' & s & ?).
4 subgoals, subgoal 1 (ID 22151)
  
  Γ : Env
  A : Term
  H : Γ ⊣
  x0 : Vars
  A' : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ A' : !s
  ============================
   Γ ⊢ A ≡' A

subgoal 2 (ID 22143) is:
 Γ ⊣
subgoal 3 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 4 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars:)

eauto.
3 subgoals, subgoal 1 (ID 22143)
  
  Γ : Env
  A : Term
  H : Γ ⊣
  x0 : Vars
  H0 : A ↓ x0 ⊂ Γ
  ============================
   Γ ⊣

subgoal 2 (ID 22036) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
subgoal 3 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars: ?22169 using , ?22521 using , ?22647 using ,)

trivial.
2 subgoals, subgoal 1 (ID 22036)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : A
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)

subgoal 2 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars: ?22169 using , ?22521 using , ?22647 using ,)



destruct (IHtyp1 x) as (? & ?); trivial.
2 subgoals, subgoal 1 (ID 22685)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : A
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)
  H1 : N = #x
  H2 : exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)

subgoal 2 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars: ?22169 using , ?22521 using , ?22647 using ,)


destruct H2 as (A' & ? &?).
2 subgoals, subgoal 1 (ID 22693)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : A
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)
  H1 : N = #x
  A' : Term
  H2 : A' ↓ x ⊂ Γ
  H3 : Γ ⊢ A ≡' A'
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)

subgoal 2 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars: ?22169 using , ?22521 using , ?22647 using ,)

intuition.
2 subgoals, subgoal 1 (ID 22696)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : A
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)
  H1 : N = #x
  A' : Term
  H2 : A' ↓ x ⊂ Γ
  H3 : Γ ⊢ A ≡' A'
  ============================
   exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z

subgoal 2 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars: ?22169 using , ?22521 using , ?22647 using ,)


exists A'; intuition.
2 subgoals, subgoal 1 (ID 22717)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : A
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ A ≡' Z)
  H1 : N = #x
  A' : Term
  H2 : A' ↓ x ⊂ Γ
  H3 : Γ ⊢ A ≡' A'
  ============================
   Γ ⊢ B ≡' A'

subgoal 2 (ID 22042) is:
 N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)
(dependent evars: ?22169 using , ?22521 using , ?22647 using ,)

eauto.
1 subgoals, subgoal 1 (ID 22042)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : B
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)

(dependent evars: ?22169 using , ?22521 using , ?22647 using , ?22770 using , ?22890 using ,)



destruct (IHtyp1 x) as (? & ?); trivial.
1 subgoals, subgoal 1 (ID 22938)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : B
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  H1 : N = #x
  H2 : exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)

(dependent evars: ?22169 using , ?22521 using , ?22647 using , ?22770 using , ?22890 using ,)


destruct H2 as (A' & ? &?).
1 subgoals, subgoal 1 (ID 22946)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : B
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  H1 : N = #x
  A' : Term
  H2 : A' ↓ x ⊂ Γ
  H3 : Γ ⊢ B ≡' A'
  ============================
   N = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z)

(dependent evars: ?22169 using , ?22521 using , ?22647 using , ?22770 using , ?22890 using ,)

intuition.
1 subgoals, subgoal 1 (ID 22949)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : B
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  H1 : N = #x
  A' : Term
  H2 : A' ↓ x ⊂ Γ
  H3 : Γ ⊢ B ≡' A'
  ============================
   exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ A ≡' Z

(dependent evars: ?22169 using , ?22521 using , ?22647 using , ?22770 using , ?22890 using ,)


exists A'; intuition.
1 subgoals, subgoal 1 (ID 22970)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall x : Vars,
           A = #x -> B = A /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ !s ≡' Z)
  x : Vars
  H : Γ ⊢ #x ▹ N : B
  IHtyp1 : forall x0 : Vars,
           #x = #x0 ->
           N = #x /\ (exists Z : Term, (Z ↓ x0 ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  H1 : N = #x
  A' : Term
  H2 : A' ↓ x ⊂ Γ
  H3 : Γ ⊢ B ≡' A'
  ============================
   Γ ⊢ A ≡' A'

(dependent evars: ?22169 using , ?22521 using , ?22647 using , ?22770 using , ?22890 using ,)

eauto.
No more subgoals.
(dependent evars: ?22169 using , ?22521 using , ?22647 using , ?22770 using , ?22890 using , ?23023 using , ?23145 using ,)


Qed.
pgen_var is defined



Lemma pgen_pi : forall Γ A B N T , Γ Π (A), B N : T -> exists A', exists B',
  exists s1, exists s2, exists s3, Rel s1 s2 s3 /\ Γ A A' : !s1 /\ A::Γ B B' : !s2 /\
  N = Π (A'), B' /\ (T = !s3 \/ Γ T ≡' !s3 ).
1 subgoals, subgoal 1 (ID 23209)
  
  ============================
   forall (Γ : Env) (A B N T : Term),
   Γ ⊢ Π (A), B ▹ N : T ->
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹ B' : !s2) /\ N = Π (A'), B' /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 23215)
  
  Γ : Env
  A : Term
  B : Term
  N : Term
  T : Term
  H : Γ ⊢ Π (A), B ▹ N : T
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹ B' : !s2) /\ N = Π (A'), B' /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)


remember (Π(A),B) as P.
1 subgoals, subgoal 1 (ID 23222)
  
  Γ : Env
  A : Term
  B : Term
  N : Term
  T : Term
  P : Term
  HeqP : P = Π (A), B
  H : Γ ⊢ P ▹ N : T
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹ B' : !s2) /\ N = Π (A'), B' /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)

revert A B HeqP.
1 subgoals, subgoal 1 (ID 23224)
  
  Γ : Env
  N : Term
  T : Term
  P : Term
  H : Γ ⊢ P ▹ N : T
  ============================
   forall A B : Term,
   P = Π (A), B ->
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹ B' : !s2) /\ N = Π (A'), B' /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)

induction H; intros; subst; try discriminate.
3 subgoals, subgoal 1 (ID 23400)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall A0 B : Term,
           A = Π (A0), B ->
           exists (A'0 B' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A0 ▹ A'0 : !s2) /\
             (A0 :: Γ ⊢ B ▹ B' : !s3) /\
             A' = Π (A'0), B' /\ (!s1 = !s4 \/ Γ ⊢ !s1 ≡' !s4)
  IHtyp2 : forall A0 B0 : Term,
           B = Π (A0), B0 ->
           exists (A' B'0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A :: Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: A :: Γ ⊢ B0 ▹ B'0 : !s3) /\
             B' = Π (A'), B'0 /\ (!s2 = !s4 \/ A :: Γ ⊢ !s2 ≡' !s4)
  A0 : Term
  B0 : Term
  HeqP : Π (A), B = Π (A0), B0
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     Π (A'), B' = Π (A'0), B'0 /\ (!s3 = !s5 \/ Γ ⊢ !s3 ≡' !s5)

subgoal 2 (ID 23421) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)
subgoal 3 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)


injection HeqP ; intros; subst; clear HeqP.
3 subgoals, subgoal 1 (ID 23479)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A' : Term
  B' : Term
  H : Rel s1 s2 s3
  A0 : Term
  B0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  IHtyp1 : forall A B : Term,
           A0 = Π (A), B ->
           exists (A'0 B' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ B ▹ B' : !s3) /\
             A' = Π (A'0), B' /\ (!s1 = !s4 \/ Γ ⊢ !s1 ≡' !s4)
  H1 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  IHtyp2 : forall A B : Term,
           B0 = Π (A), B ->
           exists (A' B'0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ B ▹ B'0 : !s3) /\
             B' = Π (A'), B'0 /\ (!s2 = !s4 \/ A0 :: Γ ⊢ !s2 ≡' !s4)
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     Π (A'), B' = Π (A'0), B'0 /\ (!s3 = !s5 \/ Γ ⊢ !s3 ≡' !s5)

subgoal 2 (ID 23421) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)
subgoal 3 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)


clear IHtyp1 IHtyp2.
3 subgoals, subgoal 1 (ID 23480)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A' : Term
  B' : Term
  H : Rel s1 s2 s3
  A0 : Term
  B0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     Π (A'), B' = Π (A'0), B'0 /\ (!s3 = !s5 \/ Γ ⊢ !s3 ≡' !s5)

subgoal 2 (ID 23421) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)
subgoal 3 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)


exists A'; exists B'; exists s1; exists s2; exists s3; intuition.
2 subgoals, subgoal 1 (ID 23421)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : A
  IHtyp1 : forall A1 B : Term,
           Π (A0), B0 = Π (A1), B ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A1 ▹ A' : !s1) /\
             (A1 :: Γ ⊢ B ▹ B' : !s2) /\
             N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A0 ▹ A' : !s1) /\
     (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)

subgoal 2 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)



destruct (IHtyp1 A0 B0) as (A' & B'& s1 & s2 & s3 & h); trivial.
2 subgoals, subgoal 1 (ID 23532)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : A
  IHtyp1 : forall A1 B : Term,
           Π (A0), B0 = Π (A1), B ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A1 ▹ A' : !s1) /\
             (A1 :: Γ ⊢ B ▹ B' : !s2) /\
             N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ A0 ▹ A' : !s1) /\
      (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
      N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     N = Π (A'0), B'0 /\ (B = !s5 \/ Γ ⊢ B ≡' !s5)

subgoal 2 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)


decompose [and] h; clear h IHtyp1.
2 subgoals, subgoal 1 (ID 23554)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : A
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H6 : A = !s3 \/ Γ ⊢ A ≡' !s3
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     N = Π (A'0), B'0 /\ (B = !s5 \/ Γ ⊢ B ≡' !s5)

subgoal 2 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)


exists A'; exists B'; exists s1; exists s2; exists s3; repeat split; trivial.
2 subgoals, subgoal 1 (ID 23576)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : A
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H6 : A = !s3 \/ Γ ⊢ A ≡' !s3
  ============================
   B = !s3 \/ Γ ⊢ B ≡' !s3

subgoal 2 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)


destruct H6.
3 subgoals, subgoal 1 (ID 23582)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : A
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H5 : A = !s3
  ============================
   B = !s3 \/ Γ ⊢ B ≡' !s3

subgoal 2 (ID 23583) is:
 B = !s3 \/ Γ ⊢ B ≡' !s3
subgoal 3 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars:)

subst; right; eauto.
2 subgoals, subgoal 1 (ID 23583)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : A
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H5 : Γ ⊢ A ≡' !s3
  ============================
   B = !s3 \/ Γ ⊢ B ≡' !s3

subgoal 2 (ID 23427) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)
(dependent evars: ?23633 using ,)

right; eauto.
1 subgoals, subgoal 1 (ID 23427)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : B
  IHtyp1 : forall A B1 : Term,
           Π (A0), B0 = Π (A), B1 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A ▹ A' : !s1) /\
             (A :: Γ ⊢ B1 ▹ B' : !s2) /\
             N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A0 ▹ A' : !s1) /\
     (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\ N = Π (A'), B' /\ (A = !s3 \/ Γ ⊢ A ≡' !s3)

(dependent evars: ?23633 using , ?23697 using , ?23817 using ,)



destruct (IHtyp1 A0 B0) as (A' & B'& s1 & s2 & s3 & h); trivial.
1 subgoals, subgoal 1 (ID 23881)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : B
  IHtyp1 : forall A B1 : Term,
           Π (A0), B0 = Π (A), B1 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A ▹ A' : !s1) /\
             (A :: Γ ⊢ B1 ▹ B' : !s2) /\
             N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ A0 ▹ A' : !s1) /\
      (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
      N = Π (A'), B' /\ (B = !s3 \/ Γ ⊢ B ≡' !s3)
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     N = Π (A'0), B'0 /\ (A = !s5 \/ Γ ⊢ A ≡' !s5)

(dependent evars: ?23633 using , ?23697 using , ?23817 using ,)


decompose [and] h; clear h IHtyp1.
1 subgoals, subgoal 1 (ID 23903)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : B
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H6 : B = !s3 \/ Γ ⊢ B ≡' !s3
  ============================
   exists (A'0 B'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ B0 ▹ B'0 : !s4) /\
     N = Π (A'0), B'0 /\ (A = !s5 \/ Γ ⊢ A ≡' !s5)

(dependent evars: ?23633 using , ?23697 using , ?23817 using ,)


exists A'; exists B'; exists s1; exists s2; exists s3; repeat split; trivial.
1 subgoals, subgoal 1 (ID 23925)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : B
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H6 : B = !s3 \/ Γ ⊢ B ≡' !s3
  ============================
   A = !s3 \/ Γ ⊢ A ≡' !s3

(dependent evars: ?23633 using , ?23697 using , ?23817 using ,)


destruct H6.
2 subgoals, subgoal 1 (ID 23931)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : B
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H5 : B = !s3
  ============================
   A = !s3 \/ Γ ⊢ A ≡' !s3

subgoal 2 (ID 23932) is:
 A = !s3 \/ Γ ⊢ A ≡' !s3
(dependent evars: ?23633 using , ?23697 using , ?23817 using ,)

subst; right; eauto.
1 subgoals, subgoal 1 (ID 23932)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 B0 : Term,
           A = Π (A0), B0 ->
           exists (A' B' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ B0 ▹ B' : !s2) /\
             B = Π (A'), B' /\ (!s = !s3 \/ Γ ⊢ !s ≡' !s3)
  A0 : Term
  B0 : Term
  H : Γ ⊢ Π (A0), B0 ▹ N : B
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ B0 ▹ B' : !s2
  H4 : N = Π (A'), B'
  H5 : Γ ⊢ B ≡' !s3
  ============================
   A = !s3 \/ Γ ⊢ A ≡' !s3

(dependent evars: ?23633 using , ?23697 using , ?23817 using , ?23980 using ,)

right; eauto.
No more subgoals.
(dependent evars: ?23633 using , ?23697 using , ?23817 using , ?23980 using , ?24038 using , ?24160 using ,)


Qed.
pgen_pi is defined



Lemma pgen_la : forall Γ A M N T, Γ λ[A],M N : T -> exists A',exists M', exists B,
 exists s1, exists s2, exists s3, Rel s1 s2 s3 /\ Γ A A' : !s1 /\ A::Γ M M' : B /\
  A::Γ B B :!s2 /\ N = λ[A'],M' /\ (Γ Π (A), B ≡' T ).
1 subgoals, subgoal 1 (ID 24226)
  
  ============================
   forall (Γ : Env) (A M N T : Term),
   Γ ⊢ λ [A], M ▹ N : T ->
   exists (A' M' B : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ M ▹ M' : B) /\
     (A :: Γ ⊢ B ▹ B : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' T

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 24232)
  
  Γ : Env
  A : Term
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ λ [A], M ▹ N : T
  ============================
   exists (A' M' B : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ M ▹ M' : B) /\
     (A :: Γ ⊢ B ▹ B : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' T

(dependent evars:)


remember (λ[A],M) as L.
1 subgoals, subgoal 1 (ID 24239)
  
  Γ : Env
  A : Term
  M : Term
  N : Term
  T : Term
  L : Term
  HeqL : L = λ [A], M
  H : Γ ⊢ L ▹ N : T
  ============================
   exists (A' M' B : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ M ▹ M' : B) /\
     (A :: Γ ⊢ B ▹ B : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' T

(dependent evars:)

revert A M HeqL.
1 subgoals, subgoal 1 (ID 24241)
  
  Γ : Env
  N : Term
  T : Term
  L : Term
  H : Γ ⊢ L ▹ N : T
  ============================
   forall A M : Term,
   L = λ [A], M ->
   exists (A' M' B : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A ▹ A' : !s1) /\
     (A :: Γ ⊢ M ▹ M' : B) /\
     (A :: Γ ⊢ B ▹ B : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' T

(dependent evars:)

induction H; intros; subst; try discriminate.
3 subgoals, subgoal 1 (ID 24420)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A0 ▹ A'0 : !s2) /\
             (A0 :: Γ ⊢ M ▹ M' : B) /\
             (A0 :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A0), B ≡' !s1
  IHtyp2 : forall A0 M : Term,
           B = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A :: Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: A :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: A :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A :: Γ ⊢ Π (A0), B0 ≡' !s2
  IHtyp3 : forall A0 M0 : Term,
           M = λ [A0], M0 ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A :: Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: A :: Γ ⊢ M0 ▹ M'0 : B0) /\
             (A0 :: A :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A :: Γ ⊢ Π (A0), B0 ≡' B
  A0 : Term
  M0 : Term
  HeqL : λ [A], M = λ [A0], M0
  ============================
   exists (A'0 M'0 B0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ M0 ▹ M'0 : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s4) /\
     λ [A'], M' = λ [A'0], M'0 /\ Γ ⊢ Π (A0), B0 ≡' Π (A), B

subgoal 2 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 3 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars:)


injection HeqL; intros; subst; clear HeqL.
3 subgoals, subgoal 1 (ID 24498)
  
  Γ : Env
  A' : Term
  B : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  A0 : Term
  M0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B ▹ B : !s2
  IHtyp1 : forall A M : Term,
           A0 = λ [A], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ M ▹ M' : B) /\
             (A :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A), B ≡' !s1
  IHtyp2 : forall A M : Term,
           B = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A0 :: Γ ⊢ Π (A), B0 ≡' !s2
  H2 : A0 :: Γ ⊢ M0 ▹ M' : B
  IHtyp3 : forall A M : Term,
           M0 = λ [A], M ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M'0 : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A0 :: Γ ⊢ Π (A), B0 ≡' B
  ============================
   exists (A'0 M'0 B0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ M0 ▹ M'0 : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s4) /\
     λ [A'], M' = λ [A'0], M'0 /\ Γ ⊢ Π (A0), B0 ≡' Π (A0), B

subgoal 2 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 3 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars:)


exists A'; exists M'; exists B; exists s1; exists s2; exists s3; intuition.
3 subgoals, subgoal 1 (ID 24525)
  
  Γ : Env
  A' : Term
  B : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  A0 : Term
  M0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B ▹ B : !s2
  IHtyp1 : forall A M : Term,
           A0 = λ [A], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ M ▹ M' : B) /\
             (A :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A), B ≡' !s1
  IHtyp2 : forall A M : Term,
           B = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A0 :: Γ ⊢ Π (A), B0 ≡' !s2
  H2 : A0 :: Γ ⊢ M0 ▹ M' : B
  IHtyp3 : forall A M : Term,
           M0 = λ [A], M ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M'0 : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A0 :: Γ ⊢ Π (A), B0 ≡' B
  ============================
   Γ ⊢ Π (A0), B ≡' Π (A0), B

subgoal 2 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 3 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars:)


econstructor.
3 subgoals, subgoal 1 (ID 24586)
  
  Γ : Env
  A' : Term
  B : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  A0 : Term
  M0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B ▹ B : !s2
  IHtyp1 : forall A M : Term,
           A0 = λ [A], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ M ▹ M' : B) /\
             (A :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A), B ≡' !s1
  IHtyp2 : forall A M : Term,
           B = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A0 :: Γ ⊢ Π (A), B0 ≡' !s2
  H2 : A0 :: Γ ⊢ M0 ▹ M' : B
  IHtyp3 : forall A M : Term,
           M0 = λ [A], M ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M'0 : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A0 :: Γ ⊢ Π (A), B0 ≡' B
  ============================
   Γ ⊢ Π (A0), B ▹ Π (A0), B : !?24585

subgoal 2 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 3 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 open,)

econstructor.
5 subgoals, subgoal 1 (ID 24592)
  
  Γ : Env
  A' : Term
  B : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  A0 : Term
  M0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B ▹ B : !s2
  IHtyp1 : forall A M : Term,
           A0 = λ [A], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ M ▹ M' : B) /\
             (A :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A), B ≡' !s1
  IHtyp2 : forall A M : Term,
           B = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A0 :: Γ ⊢ Π (A), B0 ≡' !s2
  H2 : A0 :: Γ ⊢ M0 ▹ M' : B
  IHtyp3 : forall A M : Term,
           M0 = λ [A], M ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M'0 : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A0 :: Γ ⊢ Π (A), B0 ≡' B
  ============================
   Rel ?24590 ?24591 ?24585

subgoal 2 (ID 24593) is:
 Γ ⊢ A0 ▹ A0 : !?24590
subgoal 3 (ID 24594) is:
 A0 :: Γ ⊢ B ▹ B : !?24591
subgoal 4 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 5 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 open, ?24590 open, ?24591 open,)

apply H.
4 subgoals, subgoal 1 (ID 24593)
  
  Γ : Env
  A' : Term
  B : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  A0 : Term
  M0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B ▹ B : !s2
  IHtyp1 : forall A M : Term,
           A0 = λ [A], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ M ▹ M' : B) /\
             (A :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A), B ≡' !s1
  IHtyp2 : forall A M : Term,
           B = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A0 :: Γ ⊢ Π (A), B0 ≡' !s2
  H2 : A0 :: Γ ⊢ M0 ▹ M' : B
  IHtyp3 : forall A M : Term,
           M0 = λ [A], M ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M'0 : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A0 :: Γ ⊢ Π (A), B0 ≡' B
  ============================
   Γ ⊢ A0 ▹ A0 : !s1

subgoal 2 (ID 24594) is:
 A0 :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 4 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 using , ?24590 using , ?24591 using ,)

apply red_refl_lt with A'; trivial.
3 subgoals, subgoal 1 (ID 24594)
  
  Γ : Env
  A' : Term
  B : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  A0 : Term
  M0 : Term
  H0 : Γ ⊢ A0 ▹ A' : !s1
  H1 : A0 :: Γ ⊢ B ▹ B : !s2
  IHtyp1 : forall A M : Term,
           A0 = λ [A], M ->
           exists (A'0 M' B : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ A ▹ A'0 : !s2) /\
             (A :: Γ ⊢ M ▹ M' : B) /\
             (A :: Γ ⊢ B ▹ B : !s3) /\
             A' = λ [A'0], M' /\ Γ ⊢ Π (A), B ≡' !s1
  IHtyp2 : forall A M : Term,
           B = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s3) /\
             B = λ [A'], M' /\ A0 :: Γ ⊢ Π (A), B0 ≡' !s2
  H2 : A0 :: Γ ⊢ M0 ▹ M' : B
  IHtyp3 : forall A M : Term,
           M0 = λ [A], M ->
           exists (A' M'0 B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A0 :: Γ ⊢ A ▹ A' : !s1) /\
             (A :: A0 :: Γ ⊢ M ▹ M'0 : B0) /\
             (A :: A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             M' = λ [A'], M'0 /\ A0 :: Γ ⊢ Π (A), B0 ≡' B
  ============================
   A0 :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 24438) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B
subgoal 3 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 using , ?24590 using , ?24591 using ,)


assumption.
2 subgoals, subgoal 1 (ID 24438)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : A
  IHtyp1 : forall A1 M : Term,
           λ [A0], M0 = λ [A1], M ->
           exists (A' M' B : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A1 ▹ A' : !s1) /\
             (A1 :: Γ ⊢ M ▹ M' : B) /\
             (A1 :: Γ ⊢ B ▹ B : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A1), B ≡' A
  ============================
   exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A0 ▹ A' : !s1) /\
     (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' B

subgoal 2 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 using , ?24590 using , ?24591 using ,)



destruct (IHtyp1 A0 M0) as (A' & M' & K &s1 & s2 & s3 & h); trivial.
2 subgoals, subgoal 1 (ID 24625)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : A
  IHtyp1 : forall A1 M : Term,
           λ [A0], M0 = λ [A1], M ->
           exists (A' M' B : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A1 ▹ A' : !s1) /\
             (A1 :: Γ ⊢ M ▹ M' : B) /\
             (A1 :: Γ ⊢ B ▹ B : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A1), B ≡' A
  A' : Term
  M' : Term
  K : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ A0 ▹ A' : !s1) /\
      (A0 :: Γ ⊢ M0 ▹ M' : K) /\
      (A0 :: Γ ⊢ K ▹ K : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), K ≡' A
  ============================
   exists (A'0 M'0 B0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ M0 ▹ M'0 : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s4) /\ N = λ [A'0], M'0 /\ Γ ⊢ Π (A0), B0 ≡' B

subgoal 2 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 using , ?24590 using , ?24591 using ,)


decompose [and] h; clear IHtyp1 h.
2 subgoals, subgoal 1 (ID 24651)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : A
  A' : Term
  M' : Term
  K : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ M0 ▹ M' : K
  H4 : A0 :: Γ ⊢ K ▹ K : !s2
  H5 : N = λ [A'], M'
  H7 : Γ ⊢ Π (A0), K ≡' A
  ============================
   exists (A'0 M'0 B0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ M0 ▹ M'0 : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s4) /\ N = λ [A'0], M'0 /\ Γ ⊢ Π (A0), B0 ≡' B

subgoal 2 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 using , ?24590 using , ?24591 using ,)


exists A'; exists M'; exists K; exists s1; exists s2; exists s3; intuition.
2 subgoals, subgoal 1 (ID 24678)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : A
  A' : Term
  M' : Term
  K : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ M0 ▹ M' : K
  H4 : A0 :: Γ ⊢ K ▹ K : !s2
  H5 : N = λ [A'], M'
  H7 : Γ ⊢ Π (A0), K ≡' A
  ============================
   Γ ⊢ Π (A0), K ≡' B

subgoal 2 (ID 24444) is:
 exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ A0 ▹ A' : !s1) /\
   (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
   (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A
(dependent evars: ?24585 using , ?24590 using , ?24591 using ,)


eauto.
1 subgoals, subgoal 1 (ID 24444)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : B
  IHtyp1 : forall A M : Term,
           λ [A0], M0 = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A ▹ A' : !s1) /\
             (A :: Γ ⊢ M ▹ M' : B0) /\
             (A :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A), B0 ≡' B
  ============================
   exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ A0 ▹ A' : !s1) /\
     (A0 :: Γ ⊢ M0 ▹ M' : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' A

(dependent evars: ?24585 using , ?24590 using , ?24591 using , ?24740 using , ?24872 using ,)



destruct (IHtyp1 A0 M0) as (A' & M' & K &s1 & s2 & s3 & h); trivial.
1 subgoals, subgoal 1 (ID 24936)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : B
  IHtyp1 : forall A M : Term,
           λ [A0], M0 = λ [A], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A ▹ A' : !s1) /\
             (A :: Γ ⊢ M ▹ M' : B0) /\
             (A :: Γ ⊢ B0 ▹ B0 : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A), B0 ≡' B
  A' : Term
  M' : Term
  K : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ A0 ▹ A' : !s1) /\
      (A0 :: Γ ⊢ M0 ▹ M' : K) /\
      (A0 :: Γ ⊢ K ▹ K : !s2) /\ N = λ [A'], M' /\ Γ ⊢ Π (A0), K ≡' B
  ============================
   exists (A'0 M'0 B0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ M0 ▹ M'0 : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s4) /\ N = λ [A'0], M'0 /\ Γ ⊢ Π (A0), B0 ≡' A

(dependent evars: ?24585 using , ?24590 using , ?24591 using , ?24740 using , ?24872 using ,)


decompose [and] h; clear IHtyp1 h.
1 subgoals, subgoal 1 (ID 24962)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : B
  A' : Term
  M' : Term
  K : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ M0 ▹ M' : K
  H4 : A0 :: Γ ⊢ K ▹ K : !s2
  H5 : N = λ [A'], M'
  H7 : Γ ⊢ Π (A0), K ≡' B
  ============================
   exists (A'0 M'0 B0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ A0 ▹ A'0 : !s0) /\
     (A0 :: Γ ⊢ M0 ▹ M'0 : B0) /\
     (A0 :: Γ ⊢ B0 ▹ B0 : !s4) /\ N = λ [A'0], M'0 /\ Γ ⊢ Π (A0), B0 ≡' A

(dependent evars: ?24585 using , ?24590 using , ?24591 using , ?24740 using , ?24872 using ,)


exists A'; exists M'; exists K; exists s1; exists s2; exists s3; intuition.
1 subgoals, subgoal 1 (ID 24989)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall A0 M : Term,
           A = λ [A0], M ->
           exists (A' M' B0 : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ A0 ▹ A' : !s1) /\
             (A0 :: Γ ⊢ M ▹ M' : B0) /\
             (A0 :: Γ ⊢ B0 ▹ B0 : !s2) /\
             B = λ [A'], M' /\ Γ ⊢ Π (A0), B0 ≡' !s
  A0 : Term
  M0 : Term
  H : Γ ⊢ λ [A0], M0 ▹ N : B
  A' : Term
  M' : Term
  K : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ A0 ▹ A' : !s1
  H2 : A0 :: Γ ⊢ M0 ▹ M' : K
  H4 : A0 :: Γ ⊢ K ▹ K : !s2
  H5 : N = λ [A'], M'
  H7 : Γ ⊢ Π (A0), K ≡' B
  ============================
   Γ ⊢ Π (A0), K ≡' A

(dependent evars: ?24585 using , ?24590 using , ?24591 using , ?24740 using , ?24872 using ,)


eauto.
No more subgoals.
(dependent evars: ?24585 using , ?24590 using , ?24591 using , ?24740 using , ?24872 using , ?25051 using , ?25181 using ,)


Qed.
pgen_la is defined



Lemma pgen_app : forall Γ W P V X Y Z , Γ (W ·(P,V) X) Y : Z -> exists U, exists U', exists V',
 exists X', exists s1, exists s2, exists s3, Rel s1 s2 s3 /\ Γ U U' : !s1 /\
 U::Γ V V' : !s2 /\ Γ X X' : U /\ Γ V[← X] ≡' Z /\
( (exists W', Γ W W' : Π(U),V /\ P = U /\ Y = W' ·(U',V') X' ) \/
   (exists K0, exists K, exists K', exists T, exists T', P = K /\ W = λ[U],T /\ U::Γ T T' : V /\ Y = T'[←X'] /\
  Γ K0 ▹▹ K : !s1 /\ Γ K0 ▹▹ U : !s1 /\ Γ K K' : !s1 )).
1 subgoals, subgoal 1 (ID 25244)
  
  ============================
   forall (Γ : Env) (W P V X Y Z : Term),
   Γ ⊢ W ·( P, V)X ▹ Y : Z ->
   exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ U ▹ U' : !s1) /\
     (U :: Γ ⊢ V ▹ V' : !s2) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' Z) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ Y = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         Y = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 25252)
  
  Γ : Env
  W : Term
  P : Term
  V : Term
  X : Term
  Y : Term
  Z : Term
  H : Γ ⊢ W ·( P, V)X ▹ Y : Z
  ============================
   exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ U ▹ U' : !s1) /\
     (U :: Γ ⊢ V ▹ V' : !s2) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' Z) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ Y = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         Y = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))

(dependent evars:)


remember (App W P V X ) as APP.
1 subgoals, subgoal 1 (ID 25259)
  
  Γ : Env
  W : Term
  P : Term
  V : Term
  X : Term
  Y : Term
  Z : Term
  APP : Term
  HeqAPP : APP = W ·( P, V)X
  H : Γ ⊢ APP ▹ Y : Z
  ============================
   exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ U ▹ U' : !s1) /\
     (U :: Γ ⊢ V ▹ V' : !s2) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' Z) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ Y = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         Y = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))

(dependent evars:)

revert W V P X HeqAPP.
1 subgoals, subgoal 1 (ID 25261)
  
  Γ : Env
  Y : Term
  Z : Term
  APP : Term
  H : Γ ⊢ APP ▹ Y : Z
  ============================
   forall W V P X : Term,
   APP = W ·( P, V)X ->
   exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ U ▹ U' : !s1) /\
     (U :: Γ ⊢ V ▹ V' : !s2) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' Z) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ Y = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         Y = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))

(dependent evars:)

induction H; intros; subst; try discriminate.
4 subgoals, subgoal 1 (ID 25453)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ U ▹ U' : !s2) /\
             (U :: Γ ⊢ V ▹ V' : !s3) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s1) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ A' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 A' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s2) /\
                 (Γ ⊢ K0 ▹▹ U : !s2) /\ Γ ⊢ K ▹ K' : !s2))
  IHtyp2 : forall W V P X : Term,
           B = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A :: Γ ⊢ U ▹ U' : !s1) /\
             (U :: A :: Γ ⊢ V ▹ V' : !s3) /\
             (A :: Γ ⊢ X ▹ X' : U) /\
             (A :: Γ ⊢ V [ ← X] ≡' !s2) /\
             ((exists W' : Term,
                 (A :: Γ ⊢ W ▹ W' : Π (U), V) /\
                 P = U /\ B' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: A :: Γ ⊢ T ▹ T' : V) /\
                 B' = T' [ ← X'] /\
                 (A :: Γ ⊢ K0 ▹▹ K : !s1) /\
                 (A :: Γ ⊢ K0 ▹▹ U : !s1) /\ A :: Γ ⊢ K ▹ K' : !s1))
  IHtyp3 : forall W V P X : Term,
           M = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' Π (A), B) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 M' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  IHtyp4 : forall W V P X : Term,
           N = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 N' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  HeqAPP : M ·( A, B)N = W ·( P, V)X
  ============================
   exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U ▹ U' : !s0) /\
     (U :: Γ ⊢ V ▹ V' : !s4) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\
         P = U /\ M' ·( A', B')N' = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         M' ·( A', B')N' = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)


injection HeqAPP; intros; subst; clear HeqAPP.
4 subgoals, subgoal 1 (ID 25557)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  IHtyp1 : forall W V P0 X : Term,
           P = W ·( P0, V)X ->
           exists (U U' V' X' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ U ▹ U' : !s2) /\
             (U :: Γ ⊢ V ▹ V' : !s3) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s1) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P0 = U /\ A' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 A' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s2) /\
                 (Γ ⊢ K0 ▹▹ U : !s2) /\ Γ ⊢ K ▹ K' : !s2))
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  IHtyp2 : forall W V0 P0 X : Term,
           V = W ·( P0, V0)X ->
           exists (U U' V' X' : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (P :: Γ ⊢ U ▹ U' : !s1) /\
             (U :: P :: Γ ⊢ V0 ▹ V' : !s3) /\
             (P :: Γ ⊢ X ▹ X' : U) /\
             (P :: Γ ⊢ V0 [ ← X] ≡' !s2) /\
             ((exists W' : Term,
                 (P :: Γ ⊢ W ▹ W' : Π (U), V0) /\
                 P0 = U /\ B' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W = λ [U], T /\
                 (U :: P :: Γ ⊢ T ▹ T' : V0) /\
                 B' = T' [ ← X'] /\
                 (P :: Γ ⊢ K0 ▹▹ K : !s1) /\
                 (P :: Γ ⊢ K0 ▹▹ U : !s1) /\ P :: Γ ⊢ K ▹ K' : !s1))
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  IHtyp3 : forall W0 V0 P0 X : Term,
           W = W0 ·( P0, V0)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X] ≡' Π (P), V) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ M' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 M' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  H3 : Γ ⊢ X ▹ N' : P
  IHtyp4 : forall W V P0 X0 : Term,
           X = W ·( P0, V)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V [ ← X0] ≡' P) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P0 = U /\ N' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 N' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  ============================
   exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U ▹ U' : !s0) /\
     (U :: Γ ⊢ V ▹ V' : !s4) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' V [ ← X]) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\
         P = U /\ M' ·( A', B')N' = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         M' ·( A', B')N' = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)

clear IHtyp4 IHtyp3 IHtyp2 IHtyp1.
4 subgoals, subgoal 1 (ID 25558)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U ▹ U' : !s0) /\
     (U :: Γ ⊢ V ▹ V' : !s4) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' V [ ← X]) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\
         P = U /\ M' ·( A', B')N' = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         M' ·( A', B')N' = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)


exists P; exists A'; exists B'; exists N'; exists s1; exists s2; exists s3; intuition.
5 subgoals, subgoal 1 (ID 25586)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   Γ ⊢ V [ ← X] ≡' V [ ← X]

subgoal 2 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 4 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 5 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)


apply typ_peq_intro with s2.
5 subgoals, subgoal 1 (ID 25708)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   Γ ⊢ V [ ← X] ▹ V [ ← X] : !s2

subgoal 2 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 4 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 5 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)

apply red_refl_lt with B'[← N'].
5 subgoals, subgoal 1 (ID 25709)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   Γ ⊢ V [ ← X] ▹ B' [ ← N'] : !s2

subgoal 2 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 4 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 5 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)


change !s2 with (!s2[←X]).
5 subgoals, subgoal 1 (ID 25711)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   Γ ⊢ V [ ← X] ▹ B' [ ← N'] : !s2 [ ← X]

subgoal 2 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 4 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 5 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars:)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 25727)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   ?25726 ⊢ V ▹ B' : !s2

subgoal 2 (ID 25730) is:
 sub_in_env ?25728 X ?25729 0 ?25726 Γ
subgoal 3 (ID 25731) is:
 ?25728 ⊢ X ▹ N' : ?25729
subgoal 4 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 5 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 6 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 7 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 open, ?25728 open, ?25729 open,)

apply H1.
6 subgoals, subgoal 1 (ID 25730)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   sub_in_env ?25728 X ?25729 0 (P :: Γ) Γ

subgoal 2 (ID 25731) is:
 ?25728 ⊢ X ▹ N' : ?25729
subgoal 3 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 4 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 5 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 6 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 open, ?25729 open,)

constructor.
5 subgoals, subgoal 1 (ID 25731)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   Γ ⊢ X ▹ N' : P

subgoal 2 (ID 25587) is:
 (exists W' : Term,
    (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    W = λ [P], T /\
    (P :: Γ ⊢ T ▹ T' : V) /\
    M' ·( A', B')N' = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 4 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 5 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using ,)

trivial.
4 subgoals, subgoal 1 (ID 25587)
  
  Γ : Env
  M' : Term
  N' : Term
  A' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  W : Term
  V : Term
  P : Term
  X : Term
  H0 : Γ ⊢ P ▹ A' : !s1
  H1 : P :: Γ ⊢ V ▹ B' : !s2
  H2 : Γ ⊢ W ▹ M' : Π (P), V
  H3 : Γ ⊢ X ▹ N' : P
  ============================
   (exists W' : Term,
      (Γ ⊢ W ▹ W' : Π (P), V) /\ P = P /\ M' ·( A', B')N' = W' ·( A', B')N') \/
   (exists K0 K K' T T' : Term,
      P = K /\
      W = λ [P], T /\
      (P :: Γ ⊢ T ▹ T' : V) /\
      M' ·( A', B')N' = T' [ ← N'] /\
      (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ P : !s1) /\ Γ ⊢ K ▹ K' : !s1)

subgoal 2 (ID 25458) is:
 exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
   Rel s0 s4 s5 /\
   (Γ ⊢ U ▹ U' : !s0) /\
   (U :: Γ ⊢ V ▹ V' : !s4) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       M' [ ← N'] = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using ,)

eauto.
3 subgoals, subgoal 1 (ID 25458)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ U ▹ U' : !s2) /\
             (U :: Γ ⊢ V ▹ V' : !s3) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s1) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ A = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 A = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s2) /\
                 (Γ ⊢ K0 ▹▹ U : !s2) /\ Γ ⊢ K ▹ K' : !s2))
  IHtyp2 : forall W V P X : Term,
           A' = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ U ▹ U' : !s2) /\
             (U :: Γ ⊢ V ▹ V' : !s3) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s1) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ A' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 A' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s2) /\
                 (Γ ⊢ K0 ▹▹ U : !s2) /\ Γ ⊢ K ▹ K' : !s2))
  IHtyp3 : forall W V P X : Term,
           B = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A :: Γ ⊢ U ▹ U' : !s1) /\
             (U :: A :: Γ ⊢ V ▹ V' : !s3) /\
             (A :: Γ ⊢ X ▹ X' : U) /\
             (A :: Γ ⊢ V [ ← X] ≡' !s2) /\
             ((exists W' : Term,
                 (A :: Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: A :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (A :: Γ ⊢ K0 ▹▹ K : !s1) /\
                 (A :: Γ ⊢ K0 ▹▹ U : !s1) /\ A :: Γ ⊢ K ▹ K' : !s1))
  IHtyp4 : forall W V P X : Term,
           M = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A :: Γ ⊢ U ▹ U' : !s1) /\
             (U :: A :: Γ ⊢ V ▹ V' : !s2) /\
             (A :: Γ ⊢ X ▹ X' : U) /\
             (A :: Γ ⊢ V [ ← X] ≡' B) /\
             ((exists W' : Term,
                 (A :: Γ ⊢ W ▹ W' : Π (U), V) /\
                 P = U /\ M' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: A :: Γ ⊢ T ▹ T' : V) /\
                 M' = T' [ ← X'] /\
                 (A :: Γ ⊢ K0 ▹▹ K : !s1) /\
                 (A :: Γ ⊢ K0 ▹▹ U : !s1) /\ A :: Γ ⊢ K ▹ K' : !s1))
  IHtyp5 : forall W V P X : Term,
           N = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 N' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  HeqAPP : (λ [A], M) ·( A', B)N = W ·( P, V)X
  ============================
   exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U ▹ U' : !s0) /\
     (U :: Γ ⊢ V ▹ V' : !s4) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' B [ ← N]) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         M' [ ← N'] = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 3 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)



injection HeqAPP; intros; subst; clear HeqAPP.
3 subgoals, subgoal 1 (ID 25808)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  IHtyp1 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ U ▹ U' : !s2) /\
             (U :: Γ ⊢ V ▹ V' : !s3) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s1) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ A = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 A = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s2) /\
                 (Γ ⊢ K0 ▹▹ U : !s2) /\ Γ ⊢ K ▹ K' : !s2))
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  IHtyp2 : forall W V P0 X : Term,
           P = W ·( P0, V)X ->
           exists (U U' V' X' : Term) (s2 s3 s4 : Sorts),
             Rel s2 s3 s4 /\
             (Γ ⊢ U ▹ U' : !s2) /\
             (U :: Γ ⊢ V ▹ V' : !s3) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s1) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P0 = U /\ P = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 P = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s2) /\
                 (Γ ⊢ K0 ▹▹ U : !s2) /\ Γ ⊢ K ▹ K' : !s2))
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  IHtyp3 : forall W V0 P X : Term,
           V = W ·( P, V0)X ->
           exists (U U' V' X' : Term) (s1 s3 s4 : Sorts),
             Rel s1 s3 s4 /\
             (A :: Γ ⊢ U ▹ U' : !s1) /\
             (U :: A :: Γ ⊢ V0 ▹ V' : !s3) /\
             (A :: Γ ⊢ X ▹ X' : U) /\
             (A :: Γ ⊢ V0 [ ← X] ≡' !s2) /\
             ((exists W' : Term,
                 (A :: Γ ⊢ W ▹ W' : Π (U), V0) /\
                 P = U /\ V = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: A :: Γ ⊢ T ▹ T' : V0) /\
                 V = T' [ ← X'] /\
                 (A :: Γ ⊢ K0 ▹▹ K : !s1) /\
                 (A :: Γ ⊢ K0 ▹▹ U : !s1) /\ A :: Γ ⊢ K ▹ K' : !s1))
  IHtyp4 : forall W V0 P X : Term,
           M = W ·( P, V0)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (A :: Γ ⊢ U ▹ U' : !s1) /\
             (U :: A :: Γ ⊢ V0 ▹ V' : !s2) /\
             (A :: Γ ⊢ X ▹ X' : U) /\
             (A :: Γ ⊢ V0 [ ← X] ≡' V) /\
             ((exists W' : Term,
                 (A :: Γ ⊢ W ▹ W' : Π (U), V0) /\
                 P = U /\ M' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: A :: Γ ⊢ T ▹ T' : V0) /\
                 M' = T' [ ← X'] /\
                 (A :: Γ ⊢ K0 ▹▹ K : !s1) /\
                 (A :: Γ ⊢ K0 ▹▹ U : !s1) /\ A :: Γ ⊢ K ▹ K' : !s1))
  H6 : Γ ⊢ X ▹ N' : A
  IHtyp5 : forall W V P X0 : Term,
           X = W ·( P, V)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V [ ← X0] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N' = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 N' = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  ============================
   exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U ▹ U' : !s0) /\
     (U :: Γ ⊢ V ▹ V' : !s4) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' V [ ← X]) /\
     ((exists W' : Term,
         (Γ ⊢ λ [A], M ▹ W' : Π (U), V) /\
         P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         λ [A], M = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         M' [ ← N'] = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 3 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)

clear IHtyp4 IHtyp3 IHtyp2 IHtyp1 IHtyp5.
3 subgoals, subgoal 1 (ID 25809)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   exists (U U' V' X' : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U ▹ U' : !s0) /\
     (U :: Γ ⊢ V ▹ V' : !s4) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' V [ ← X]) /\
     ((exists W' : Term,
         (Γ ⊢ λ [A], M ▹ W' : Π (U), V) /\
         P = U /\ M' [ ← N'] = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         λ [A], M = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         M' [ ← N'] = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 3 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)


exists A; exists A; exists V; exists N'; exists s1; exists s2; exists s3; intuition.
4 subgoals, subgoal 1 (ID 25837)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   Γ ⊢ V [ ← X] ≡' V [ ← X]

subgoal 2 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)


apply typ_peq_intro with s2.
4 subgoals, subgoal 1 (ID 25971)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   Γ ⊢ V [ ← X] ▹ V [ ← X] : !s2

subgoal 2 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)

apply red_refl_lt with V[← N'].
4 subgoals, subgoal 1 (ID 25972)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   Γ ⊢ V [ ← X] ▹ V [ ← N'] : !s2

subgoal 2 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)

change !s2 with (!s2[←X]).
4 subgoals, subgoal 1 (ID 25974)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   Γ ⊢ V [ ← X] ▹ V [ ← N'] : !s2 [ ← X]

subgoal 2 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using ,)

eapply subst_gen.
6 subgoals, subgoal 1 (ID 25990)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   ?25989 ⊢ V ▹ V : !s2

subgoal 2 (ID 25993) is:
 sub_in_env ?25991 X ?25992 0 ?25989 Γ
subgoal 3 (ID 25994) is:
 ?25991 ⊢ X ▹ N' : ?25992
subgoal 4 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 5 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 6 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 open, ?25991 open, ?25992 open,)

apply H4.
5 subgoals, subgoal 1 (ID 25993)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   sub_in_env ?25991 X ?25992 0 (A :: Γ) Γ

subgoal 2 (ID 25994) is:
 ?25991 ⊢ X ▹ N' : ?25992
subgoal 3 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 4 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 5 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 open, ?25992 open,)

constructor.
4 subgoals, subgoal 1 (ID 25994)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   Γ ⊢ X ▹ N' : A

subgoal 2 (ID 25838) is:
 (exists W' : Term,
    (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
 (exists K0 K K' T T' : Term,
    P = K /\
    λ [A], M = λ [A], T /\
    (A :: Γ ⊢ T ▹ T' : V) /\
    M' [ ← N'] = T' [ ← N'] /\
    (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)
subgoal 3 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 4 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)

trivial.
3 subgoals, subgoal 1 (ID 25838)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   (exists W' : Term,
      (Γ ⊢ λ [A], M ▹ W' : Π (A), V) /\ P = A /\ M' [ ← N'] = W' ·( A, V)N') \/
   (exists K0 K K' T T' : Term,
      P = K /\
      λ [A], M = λ [A], T /\
      (A :: Γ ⊢ T ▹ T' : V) /\
      M' [ ← N'] = T' [ ← N'] /\
      (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1)

subgoal 2 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 3 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)


right.
3 subgoals, subgoal 1 (ID 25997)
  
  Γ : Env
  M : Term
  M' : Term
  N' : Term
  A : Term
  A0 : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  V : Term
  P : Term
  X : Term
  H1 : Γ ⊢ P ▹ P : !s1
  H3 : Γ ⊢ A0 ▹▹ P : !s1
  H4 : A :: Γ ⊢ V ▹ V : !s2
  H5 : A :: Γ ⊢ M ▹ M' : V
  H6 : Γ ⊢ X ▹ N' : A
  ============================
   exists K0 K K' T T' : Term,
     P = K /\
     λ [A], M = λ [A], T /\
     (A :: Γ ⊢ T ▹ T' : V) /\
     M' [ ← N'] = T' [ ← N'] /\
     (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ A : !s1) /\ Γ ⊢ K ▹ K' : !s1

subgoal 2 (ID 25474) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' B) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
subgoal 3 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)

exists A0; exists P; exists P; exists M; exists M'; intuition.
2 subgoals, subgoal 1 (ID 25474)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : A
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  ============================
   exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ U ▹ U' : !s1) /\
     (U :: Γ ⊢ V ▹ V' : !s2) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' B) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))

subgoal 2 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)



destruct (IHtyp1 W V P X) as (U & U' & V' & X' & s1 &s2 &s3 & h); trivial.
2 subgoals, subgoal 1 (ID 26062)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : A
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ U ▹ U' : !s1) /\
      (U :: Γ ⊢ V ▹ V' : !s2) /\
      (Γ ⊢ X ▹ X' : U) /\
      (Γ ⊢ V [ ← X] ≡' A) /\
      ((exists W' : Term,
          (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
       (exists K0 K K' T T' : Term,
          P = K /\
          W = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : V) /\
          N = T' [ ← X'] /\
          (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  ============================
   exists (U0 U'0 V'0 X'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U0 ▹ U'0 : !s0) /\
     (U0 :: Γ ⊢ V ▹ V'0 : !s4) /\
     (Γ ⊢ X ▹ X'0 : U0) /\
     (Γ ⊢ V [ ← X] ≡' B) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U0), V) /\ P = U0 /\ N = W' ·( U'0, V'0)X'0) \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U0], T /\
         (U0 :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'0] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U0 : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)

decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 26088)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : A
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ U ▹ U' : !s1
  H2 : U :: Γ ⊢ V ▹ V' : !s2
  H4 : Γ ⊢ X ▹ X' : U
  H5 : Γ ⊢ V [ ← X] ≡' A
  H7 : (exists W' : Term,
          (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
       (exists K0 K K' T T' : Term,
          P = K /\
          W = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : V) /\
          N = T' [ ← X'] /\
          (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1)
  ============================
   exists (U0 U'0 V'0 X'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U0 ▹ U'0 : !s0) /\
     (U0 :: Γ ⊢ V ▹ V'0 : !s4) /\
     (Γ ⊢ X ▹ X'0 : U0) /\
     (Γ ⊢ V [ ← X] ≡' B) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U0), V) /\ P = U0 /\ N = W' ·( U'0, V'0)X'0) \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U0], T /\
         (U0 :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'0] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U0 : !s0) /\ Γ ⊢ K ▹ K' : !s0))

subgoal 2 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)


exists U; exists U'; exists V'; exists X'; exists s1; exists s2; exists s3; intuition.
3 subgoals, subgoal 1 (ID 26122)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : A
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ U ▹ U' : !s1
  H2 : U :: Γ ⊢ V ▹ V' : !s2
  H4 : Γ ⊢ X ▹ X' : U
  H5 : Γ ⊢ V [ ← X] ≡' A
  H6 : exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X'
  ============================
   Γ ⊢ V [ ← X] ≡' B

subgoal 2 (ID 26137) is:
 Γ ⊢ V [ ← X] ≡' B
subgoal 3 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using ,)

eauto.
2 subgoals, subgoal 1 (ID 26137)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : A
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' A) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ U ▹ U' : !s1
  H2 : U :: Γ ⊢ V ▹ V' : !s2
  H4 : Γ ⊢ X ▹ X' : U
  H5 : Γ ⊢ V [ ← X] ≡' A
  H6 : exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ V [ ← X] ≡' B

subgoal 2 (ID 25480) is:
 exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   (Γ ⊢ U ▹ U' : !s1) /\
   (U :: Γ ⊢ V ▹ V' : !s2) /\
   (Γ ⊢ X ▹ X' : U) /\
   (Γ ⊢ V [ ← X] ≡' A) /\
   ((exists W' : Term,
       (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
    (exists K0 K K' T T' : Term,
       P = K /\
       W = λ [U], T /\
       (U :: Γ ⊢ T ▹ T' : V) /\
       N = T' [ ← X'] /\
       (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using ,)

eauto.
1 subgoals, subgoal 1 (ID 25480)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : B
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' B) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  ============================
   exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     (Γ ⊢ U ▹ U' : !s1) /\
     (U :: Γ ⊢ V ▹ V' : !s2) /\
     (Γ ⊢ X ▹ X' : U) /\
     (Γ ⊢ V [ ← X] ≡' A) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))

(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using , ?26467 using , ?26599 using ,)



destruct (IHtyp1 W V P X) as (U & U' & V' & X' & s1 &s2 &s3 & h); trivial.
1 subgoals, subgoal 1 (ID 26667)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : B
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' B) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ U ▹ U' : !s1) /\
      (U :: Γ ⊢ V ▹ V' : !s2) /\
      (Γ ⊢ X ▹ X' : U) /\
      (Γ ⊢ V [ ← X] ≡' B) /\
      ((exists W' : Term,
          (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
       (exists K0 K K' T T' : Term,
          P = K /\
          W = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : V) /\
          N = T' [ ← X'] /\
          (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  ============================
   exists (U0 U'0 V'0 X'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U0 ▹ U'0 : !s0) /\
     (U0 :: Γ ⊢ V ▹ V'0 : !s4) /\
     (Γ ⊢ X ▹ X'0 : U0) /\
     (Γ ⊢ V [ ← X] ≡' A) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U0), V) /\ P = U0 /\ N = W' ·( U'0, V'0)X'0) \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U0], T /\
         (U0 :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'0] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U0 : !s0) /\ Γ ⊢ K ▹ K' : !s0))

(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using , ?26467 using , ?26599 using ,)

decompose [and] h; clear h.
1 subgoals, subgoal 1 (ID 26693)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : B
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' B) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ U ▹ U' : !s1
  H2 : U :: Γ ⊢ V ▹ V' : !s2
  H4 : Γ ⊢ X ▹ X' : U
  H5 : Γ ⊢ V [ ← X] ≡' B
  H7 : (exists W' : Term,
          (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X') \/
       (exists K0 K K' T T' : Term,
          P = K /\
          W = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : V) /\
          N = T' [ ← X'] /\
          (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1)
  ============================
   exists (U0 U'0 V'0 X'0 : Term) (s0 s4 s5 : Sorts),
     Rel s0 s4 s5 /\
     (Γ ⊢ U0 ▹ U'0 : !s0) /\
     (U0 :: Γ ⊢ V ▹ V'0 : !s4) /\
     (Γ ⊢ X ▹ X'0 : U0) /\
     (Γ ⊢ V [ ← X] ≡' A) /\
     ((exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U0), V) /\ P = U0 /\ N = W' ·( U'0, V'0)X'0) \/
      (exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U0], T /\
         (U0 :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'0] /\
         (Γ ⊢ K0 ▹▹ K : !s0) /\ (Γ ⊢ K0 ▹▹ U0 : !s0) /\ Γ ⊢ K ▹ K' : !s0))

(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using , ?26467 using , ?26599 using ,)


exists U; exists U'; exists V'; exists X'; exists s1; exists s2; exists s3; intuition.
2 subgoals, subgoal 1 (ID 26727)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : B
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' B) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ U ▹ U' : !s1
  H2 : U :: Γ ⊢ V ▹ V' : !s2
  H4 : Γ ⊢ X ▹ X' : U
  H5 : Γ ⊢ V [ ← X] ≡' B
  H6 : exists W' : Term,
         (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ N = W' ·( U', V')X'
  ============================
   Γ ⊢ V [ ← X] ≡' A

subgoal 2 (ID 26742) is:
 Γ ⊢ V [ ← X] ≡' A
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using , ?26467 using , ?26599 using ,)

eauto.
1 subgoals, subgoal 1 (ID 26742)
  
  Γ : Env
  N : Term
  A : Term
  B : Term
  s : Sorts
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall W V P X : Term,
           A = W ·( P, V)X ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V ▹ V' : !s2) /\
             (Γ ⊢ X ▹ X' : U) /\
             (Γ ⊢ V [ ← X] ≡' !s) /\
             ((exists W' : Term,
                 (Γ ⊢ W ▹ W' : Π (U), V) /\ P = U /\ B = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P = K /\
                 W = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V) /\
                 B = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  W : Term
  V : Term
  P : Term
  X : Term
  H : Γ ⊢ W ·( P, V)X ▹ N : B
  IHtyp1 : forall W0 V0 P0 X0 : Term,
           W ·( P, V)X = W0 ·( P0, V0)X0 ->
           exists (U U' V' X' : Term) (s1 s2 s3 : Sorts),
             Rel s1 s2 s3 /\
             (Γ ⊢ U ▹ U' : !s1) /\
             (U :: Γ ⊢ V0 ▹ V' : !s2) /\
             (Γ ⊢ X0 ▹ X' : U) /\
             (Γ ⊢ V0 [ ← X0] ≡' B) /\
             ((exists W' : Term,
                 (Γ ⊢ W0 ▹ W' : Π (U), V0) /\ P0 = U /\ N = W' ·( U', V')X') \/
              (exists K0 K K' T T' : Term,
                 P0 = K /\
                 W0 = λ [U], T /\
                 (U :: Γ ⊢ T ▹ T' : V0) /\
                 N = T' [ ← X'] /\
                 (Γ ⊢ K0 ▹▹ K : !s1) /\
                 (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1))
  U : Term
  U' : Term
  V' : Term
  X' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H1 : Rel s1 s2 s3
  H3 : Γ ⊢ U ▹ U' : !s1
  H2 : U :: Γ ⊢ V ▹ V' : !s2
  H4 : Γ ⊢ X ▹ X' : U
  H5 : Γ ⊢ V [ ← X] ≡' B
  H6 : exists K0 K K' T T' : Term,
         P = K /\
         W = λ [U], T /\
         (U :: Γ ⊢ T ▹ T' : V) /\
         N = T' [ ← X'] /\
         (Γ ⊢ K0 ▹▹ K : !s1) /\ (Γ ⊢ K0 ▹▹ U : !s1) /\ Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ V [ ← X] ≡' A

(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using , ?26467 using , ?26599 using , ?26878 using , ?27008 using ,)

eauto.
No more subgoals.
(dependent evars: ?25720 using ?25726 , ?25721 using ?25728 , ?25722 using ?25729 , ?25726 using , ?25728 using , ?25729 using , ?25743 using , ?25983 using ?25989 , ?25984 using ?25991 , ?25985 using ?25992 , ?25989 using , ?25991 using , ?25992 using , ?26273 using , ?26405 using , ?26467 using , ?26599 using , ?26878 using , ?27008 using , ?27064 using , ?27194 using ,)


Qed.
pgen_app is defined



Lemma fun_item_lift : forall A A' v Γ , A v Γ -> A' v Γ -> A = A'.
1 subgoals, subgoal 1 (ID 27237)
  
  ============================
   forall (A A' : Term) (v : nat) (Γ : Env),
   A ↓ v ⊂ Γ -> A' ↓ v ⊂ Γ -> A = A'

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 27243)
  
  A : Term
  A' : Term
  v : nat
  Γ : Env
  H : A ↓ v ⊂ Γ
  H0 : A' ↓ v ⊂ Γ
  ============================
   A = A'

(dependent evars:)


destruct H as (x & ?& ?).
1 subgoals, subgoal 1 (ID 27254)
  
  A : Term
  A' : Term
  v : nat
  Γ : Env
  x : Term
  H : A = x ↑ (S v)
  H1 : x ↓ v ∈ Γ
  H0 : A' ↓ v ⊂ Γ
  ============================
   A = A'

(dependent evars:)

destruct H0 as (x' & ?& ?).
1 subgoals, subgoal 1 (ID 27262)
  
  A : Term
  A' : Term
  v : nat
  Γ : Env
  x : Term
  H : A = x ↑ (S v)
  H1 : x ↓ v ∈ Γ
  x' : Term
  H0 : A' = x' ↑ (S v)
  H2 : x' ↓ v ∈ Γ
  ============================
   A = A'

(dependent evars:)


subst.
1 subgoals, subgoal 1 (ID 27268)
  
  v : nat
  Γ : Env
  x : Term
  H1 : x ↓ v ∈ Γ
  x' : Term
  H2 : x' ↓ v ∈ Γ
  ============================
   x ↑ (S v) = x' ↑ (S v)

(dependent evars:)

replace x' with x.
2 subgoals, subgoal 1 (ID 27272)
  
  v : nat
  Γ : Env
  x : Term
  H1 : x ↓ v ∈ Γ
  x' : Term
  H2 : x' ↓ v ∈ Γ
  ============================
   x ↑ (S v) = x ↑ (S v)

subgoal 2 (ID 27269) is:
 x = x'
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 27269)
  
  v : nat
  Γ : Env
  x : Term
  H1 : x ↓ v ∈ Γ
  x' : Term
  H2 : x' ↓ v ∈ Γ
  ============================
   x = x'

(dependent evars:)

eapply fun_item.
2 subgoals, subgoal 1 (ID 27276)
  
  v : nat
  Γ : Env
  x : Term
  H1 : x ↓ v ∈ Γ
  x' : Term
  H2 : x' ↓ v ∈ Γ
  ============================
   x ↓ ?27275 ∈ ?27274

subgoal 2 (ID 27277) is:
 x' ↓ ?27275 ∈ ?27274
(dependent evars: ?27274 open, ?27275 open,)

apply H1.
1 subgoals, subgoal 1 (ID 27277)
  
  v : nat
  Γ : Env
  x : Term
  H1 : x ↓ v ∈ Γ
  x' : Term
  H2 : x' ↓ v ∈ Γ
  ============================
   x' ↓ v ∈ Γ

(dependent evars: ?27274 using , ?27275 using ,)

apply H2.
No more subgoals.
(dependent evars: ?27274 using , ?27275 using ,)


Qed.
fun_item_lift is defined



Correctness of typing.
Lemma typ_wf : forall Γ M N A , Γ M N : A -> (exists s, A = !s) \/ (exists s, Γ A A : !s).
1 subgoals, subgoal 1 (ID 27292)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹ N : A ->
   (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)

(dependent evars:)


induction 1; intros.
8 subgoals, subgoal 1 (ID 27350)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  ============================
   (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)

subgoal 2 (ID 27355) is:
 (exists s : Sorts, !s2 = !s) \/ (exists s : Sorts, Γ ⊢ !s2 ▹ !s2 : !s)
subgoal 3 (ID 27369) is:
 (exists s : Sorts, !s3 = !s) \/ (exists s : Sorts, Γ ⊢ !s3 ▹ !s3 : !s)
subgoal 4 (ID 27387) is:
 (exists s : Sorts, Π (A), B = !s) \/
 (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
subgoal 5 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 6 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 7 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 8 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


destruct (wf_item_lift Γ A x H H0) as (A' & s & ?).
8 subgoals, subgoal 1 (ID 27475)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹ A' : !s
  ============================
   (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)

subgoal 2 (ID 27355) is:
 (exists s : Sorts, !s2 = !s) \/ (exists s : Sorts, Γ ⊢ !s2 ▹ !s2 : !s)
subgoal 3 (ID 27369) is:
 (exists s : Sorts, !s3 = !s) \/ (exists s : Sorts, Γ ⊢ !s3 ▹ !s3 : !s)
subgoal 4 (ID 27387) is:
 (exists s : Sorts, Π (A), B = !s) \/
 (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
subgoal 5 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 6 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 7 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 8 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


right.
8 subgoals, subgoal 1 (ID 27477)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹ A' : !s
  ============================
   exists s0 : Sorts, Γ ⊢ A ▹ A : !s0

subgoal 2 (ID 27355) is:
 (exists s : Sorts, !s2 = !s) \/ (exists s : Sorts, Γ ⊢ !s2 ▹ !s2 : !s)
subgoal 3 (ID 27369) is:
 (exists s : Sorts, !s3 = !s) \/ (exists s : Sorts, Γ ⊢ !s3 ▹ !s3 : !s)
subgoal 4 (ID 27387) is:
 (exists s : Sorts, Π (A), B = !s) \/
 (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
subgoal 5 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 6 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 7 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 8 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

exists s; apply red_refl_lt with A'; trivial.
7 subgoals, subgoal 1 (ID 27355)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  ============================
   (exists s : Sorts, !s2 = !s) \/ (exists s : Sorts, Γ ⊢ !s2 ▹ !s2 : !s)

subgoal 2 (ID 27369) is:
 (exists s : Sorts, !s3 = !s) \/ (exists s : Sorts, Γ ⊢ !s3 ▹ !s3 : !s)
subgoal 3 (ID 27387) is:
 (exists s : Sorts, Π (A), B = !s) \/
 (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
subgoal 4 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 5 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 6 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 7 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


left; exists s2; trivial.
6 subgoals, subgoal 1 (ID 27369)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  ============================
   (exists s : Sorts, !s3 = !s) \/ (exists s : Sorts, Γ ⊢ !s3 ▹ !s3 : !s)

subgoal 2 (ID 27387) is:
 (exists s : Sorts, Π (A), B = !s) \/
 (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
subgoal 3 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 5 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 6 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


left; exists s3; trivial.
5 subgoals, subgoal 1 (ID 27387)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  ============================
   (exists s : Sorts, Π (A), B = !s) \/
   (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)

subgoal 2 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 5 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


right.
5 subgoals, subgoal 1 (ID 27490)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  ============================
   exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s

subgoal 2 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 5 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

exists s3.
5 subgoals, subgoal 1 (ID 27492)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  ============================
   Γ ⊢ Π (A), B ▹ Π (A), B : !s3

subgoal 2 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 5 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

apply typ_pi with s1 s2.
7 subgoals, subgoal 1 (ID 27493)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  ============================
   Rel s1 s2 s3

subgoal 2 (ID 27494) is:
 Γ ⊢ A ▹ A : !s1
subgoal 3 (ID 27495) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 5 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 6 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 7 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

trivial.
6 subgoals, subgoal 1 (ID 27494)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  ============================
   Γ ⊢ A ▹ A : !s1

subgoal 2 (ID 27495) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 5 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 6 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


apply red_refl_lt with A'; trivial.
5 subgoals, subgoal 1 (ID 27495)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 27411) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 5 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

assumption.
4 subgoals, subgoal 1 (ID 27411)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   (exists s : Sorts, B [ ← N] = !s) \/
   (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)

subgoal 2 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 4 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


right.
4 subgoals, subgoal 1 (ID 27498)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s

subgoal 2 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 4 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

exists s2.
4 subgoals, subgoal 1 (ID 27500)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N] : !s2

subgoal 2 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 4 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)

change !s2 with (!s2 [ N]).
4 subgoals, subgoal 1 (ID 27502)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N] : !s2 [ ← N]

subgoal 2 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 4 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars:)


eapply subst_gen.
6 subgoals, subgoal 1 (ID 27518)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   ?27517 ⊢ B ▹ B : !s2

subgoal 2 (ID 27521) is:
 sub_in_env ?27519 N ?27520 0 ?27517 Γ
subgoal 3 (ID 27522) is:
 ?27519 ⊢ N ▹ N : ?27520
subgoal 4 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 5 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 6 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 open, ?27519 open, ?27520 open,)

apply red_refl_lt with B'; apply H1.
5 subgoals, subgoal 1 (ID 27521)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   sub_in_env ?27519 N ?27520 0 (A :: Γ) Γ

subgoal 2 (ID 27522) is:
 ?27519 ⊢ N ▹ N : ?27520
subgoal 3 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 4 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 5 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 open, ?27520 open,)

constructor.
4 subgoals, subgoal 1 (ID 27522)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp3 : (exists s : Sorts, Π (A), B = !s) \/
           (exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s)
  IHtyp4 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   Γ ⊢ N ▹ N : A

subgoal 2 (ID 27442) is:
 (exists s : Sorts, B [ ← N] = !s) \/
 (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)
subgoal 3 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 4 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using ,)

apply red_refl_lt with N'; trivial.
3 subgoals, subgoal 1 (ID 27442)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   (exists s : Sorts, B [ ← N] = !s) \/
   (exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s)

subgoal 2 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 3 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using ,)


right.
3 subgoals, subgoal 1 (ID 27527)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   exists s : Sorts, Γ ⊢ B [ ← N] ▹ B [ ← N] : !s

subgoal 2 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 3 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using ,)

exists s2.
3 subgoals, subgoal 1 (ID 27529)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N] : !s2

subgoal 2 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 3 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using ,)

change !s2 with (!s2 [ N]).
3 subgoals, subgoal 1 (ID 27531)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N] : !s2 [ ← N]

subgoal 2 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 3 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using ,)


eapply subst_gen.
5 subgoals, subgoal 1 (ID 27547)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   ?27546 ⊢ B ▹ B : !s2

subgoal 2 (ID 27550) is:
 sub_in_env ?27548 N ?27549 0 ?27546 Γ
subgoal 3 (ID 27551) is:
 ?27548 ⊢ N ▹ N : ?27549
subgoal 4 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 5 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 open, ?27548 open, ?27549 open,)

apply red_refl_lt with B; apply H4.
4 subgoals, subgoal 1 (ID 27550)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   sub_in_env ?27548 N ?27549 0 (A :: Γ) Γ

subgoal 2 (ID 27551) is:
 ?27548 ⊢ N ▹ N : ?27549
subgoal 3 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 4 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 open, ?27549 open,)

constructor.
3 subgoals, subgoal 1 (ID 27551)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp2 : (exists s : Sorts, !s1 = !s) \/
           (exists s : Sorts, Γ ⊢ !s1 ▹ !s1 : !s)
  IHtyp3 : (exists s : Sorts, !s2 = !s) \/
           (exists s : Sorts, A :: Γ ⊢ !s2 ▹ !s2 : !s)
  IHtyp4 : (exists s : Sorts, B = !s) \/
           (exists s : Sorts, A :: Γ ⊢ B ▹ B : !s)
  IHtyp5 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  ============================
   Γ ⊢ N ▹ N : A

subgoal 2 (ID 27453) is:
 (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)
subgoal 3 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)

apply red_refl_lt with N'; trivial.
2 subgoals, subgoal 1 (ID 27453)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  IHtyp2 : (exists s0 : Sorts, !s = !s0) \/
           (exists s0 : Sorts, Γ ⊢ !s ▹ !s : !s0)
  ============================
   (exists s0 : Sorts, B = !s0) \/ (exists s0 : Sorts, Γ ⊢ B ▹ B : !s0)

subgoal 2 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)


right.
2 subgoals, subgoal 1 (ID 27556)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  IHtyp2 : (exists s0 : Sorts, !s = !s0) \/
           (exists s0 : Sorts, Γ ⊢ !s ▹ !s : !s0)
  ============================
   exists s0 : Sorts, Γ ⊢ B ▹ B : !s0

subgoal 2 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)

exists s.
2 subgoals, subgoal 1 (ID 27558)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : (exists s : Sorts, A = !s) \/ (exists s : Sorts, Γ ⊢ A ▹ A : !s)
  IHtyp2 : (exists s0 : Sorts, !s = !s0) \/
           (exists s0 : Sorts, Γ ⊢ !s ▹ !s : !s0)
  ============================
   Γ ⊢ B ▹ B : !s

subgoal 2 (ID 27464) is:
 (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)

apply red_refl_rt with A; trivial.
1 subgoals, subgoal 1 (ID 27464)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : (exists s : Sorts, B = !s) \/ (exists s : Sorts, Γ ⊢ B ▹ B : !s)
  IHtyp2 : (exists s0 : Sorts, !s = !s0) \/
           (exists s0 : Sorts, Γ ⊢ !s ▹ !s : !s0)
  ============================
   (exists s0 : Sorts, A = !s0) \/ (exists s0 : Sorts, Γ ⊢ A ▹ A : !s0)

(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)


right.
1 subgoals, subgoal 1 (ID 27561)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : (exists s : Sorts, B = !s) \/ (exists s : Sorts, Γ ⊢ B ▹ B : !s)
  IHtyp2 : (exists s0 : Sorts, !s = !s0) \/
           (exists s0 : Sorts, Γ ⊢ !s ▹ !s : !s0)
  ============================
   exists s0 : Sorts, Γ ⊢ A ▹ A : !s0

(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)

exists s.
1 subgoals, subgoal 1 (ID 27563)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : (exists s : Sorts, B = !s) \/ (exists s : Sorts, Γ ⊢ B ▹ B : !s)
  IHtyp2 : (exists s0 : Sorts, !s = !s0) \/
           (exists s0 : Sorts, Γ ⊢ !s ▹ !s : !s0)
  ============================
   Γ ⊢ A ▹ A : !s

(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)

apply red_refl_lt with B; trivial.
No more subgoals.
(dependent evars: ?27511 using ?27517 , ?27512 using ?27519 , ?27513 using ?27520 , ?27517 using , ?27519 using , ?27520 using , ?27540 using ?27546 , ?27541 using ?27548 , ?27542 using ?27549 , ?27546 using , ?27548 using , ?27549 using ,)


Qed.
typ_wf is defined



Type Exchange: this property is critic. We need it to simulate a reduction we know valid in another of it's type. We will use it to reannotate some type reductions in the correct sorts, in order to be allowed by Rel to build Pi-types.
Theorem relocate : forall Γ M N A , Γ M N : A -> forall P B, Γ M P : B -> Γ M N : B /\ Γ M P : A.
1 subgoals, subgoal 1 (ID 27577)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹ N : A ->
   forall P B : Term, Γ ⊢ M ▹ P : B -> (Γ ⊢ M ▹ N : B) /\ Γ ⊢ M ▹ P : A

(dependent evars:)


induction 1; intros.
8 subgoals, subgoal 1 (ID 27752)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  P : Term
  B : Term
  H1 : Γ ⊢ #x ▹ P : B
  ============================
   (Γ ⊢ #x ▹ #x : B) /\ Γ ⊢ #x ▹ P : A

subgoal 2 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)


apply pgen_var in H1.
8 subgoals, subgoal 1 (ID 27775)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  P : Term
  B : Term
  H1 : P = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  ============================
   (Γ ⊢ #x ▹ #x : B) /\ Γ ⊢ #x ▹ P : A

subgoal 2 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)

destruct H1 as (-> & A' & ? & ?).
8 subgoals, subgoal 1 (ID 27790)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   (Γ ⊢ #x ▹ #x : B) /\ Γ ⊢ #x ▹ #x : A

subgoal 2 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)


replace A' with A in *.
9 subgoals, subgoal 1 (ID 27797)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A
  ============================
   (Γ ⊢ #x ▹ #x : B) /\ Γ ⊢ #x ▹ #x : A

subgoal 2 (ID 27791) is:
 A = A'
subgoal 3 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 4 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 5 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 6 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)

split.
10 subgoals, subgoal 1 (ID 27800)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A
  ============================
   Γ ⊢ #x ▹ #x : B

subgoal 2 (ID 27801) is:
 Γ ⊢ #x ▹ #x : A
subgoal 3 (ID 27791) is:
 A = A'
subgoal 4 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 5 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 6 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 7 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 8 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 9 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 10 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)


apply typ_pcompat with A ; intuition.
9 subgoals, subgoal 1 (ID 27801)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A
  ============================
   Γ ⊢ #x ▹ #x : A

subgoal 2 (ID 27791) is:
 A = A'
subgoal 3 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 4 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 5 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 6 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)


constructor; trivial.
8 subgoals, subgoal 1 (ID 27791)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   A = A'

subgoal 2 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars:)


eapply fun_item_lift.
9 subgoals, subgoal 1 (ID 27832)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   A ↓ ?27830 ⊂ ?27831

subgoal 2 (ID 27833) is:
 A' ↓ ?27830 ⊂ ?27831
subgoal 3 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 4 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 5 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 6 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 open, ?27831 open,)

apply H0.
8 subgoals, subgoal 1 (ID 27833)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   A' ↓ x ⊂ Γ

subgoal 2 (ID 27755) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

trivial.
7 subgoals, subgoal 1 (ID 27755)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  P : Term
  B : Term
  H1 : Γ ⊢ !s1 ▹ P : B
  ============================
   (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2

subgoal 2 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


apply pgen_sort in H1.
7 subgoals, subgoal 1 (ID 27835)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  P : Term
  B : Term
  H1 : P = !s1 /\ (exists t : Sorts, Ax s1 t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  ============================
   (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ P : !s2

subgoal 2 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

destruct H1 as (-> & t & ? & ?).
7 subgoals, subgoal 1 (ID 27850)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : B = !t \/ Γ ⊢ B ≡' !t
  ============================
   (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

destruct H2.
8 subgoals, subgoal 1 (ID 27855)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : B = !t
  ============================
   (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 27856) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

subst.
8 subgoals, subgoal 1 (ID 27859)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  t : Sorts
  H1 : Ax s1 t
  ============================
   (Γ ⊢ !s1 ▹ !s1 : !t) /\ Γ ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 27856) is:
 (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ !s1 : !s2
subgoal 3 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 4 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 5 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

intuition.
7 subgoals, subgoal 1 (ID 27856)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : Γ ⊢ B ≡' !t
  ============================
   (Γ ⊢ !s1 ▹ !s1 : B) /\ Γ ⊢ !s1 ▹ !s1 : !s2

subgoal 2 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


intuition.
7 subgoals, subgoal 1 (ID 27884)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : Γ ⊢ B ≡' !t
  ============================
   Γ ⊢ !s1 ▹ !s1 : B

subgoal 2 (ID 27758) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


apply typ_pcompat with !t ;intuition.
6 subgoals, subgoal 1 (ID 27758)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  P : Term
  B0 : Term
  H2 : Γ ⊢ Π (A), B ▹ P : B0
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


apply pgen_pi in H2.
6 subgoals, subgoal 1 (ID 27934)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  P : Term
  B0 : Term
  H2 : exists (A' B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 /\
         (Γ ⊢ A ▹ A' : !s1) /\
         (A :: Γ ⊢ B ▹ B' : !s2) /\
         P = Π (A'), B' /\ (B0 = !s3 \/ Γ ⊢ B0 ≡' !s3)
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

destruct H2 as (A'' & B'' & t1 & t2 & t3 & h).
6 subgoals, subgoal 1 (ID 27954)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  P : Term
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ A ▹ A'' : !t1) /\
      (A :: Γ ⊢ B ▹ B'' : !t2) /\
      P = Π (A''), B'' /\ (B0 = !t3 \/ Γ ⊢ B0 ≡' !t3)
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


decompose [and] h; clear h.
6 subgoals, subgoal 1 (ID 27976)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  P : Term
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H5 : P = Π (A''), B''
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ P : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

subst.
6 subgoals, subgoal 1 (ID 27979)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


destruct (IHtyp1 A'' !t1 H4) as ( ? & ?).
6 subgoals, subgoal 1 (ID 27986)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

clear IHtyp1.
6 subgoals, subgoal 1 (ID 27987)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


destruct (IHtyp2 B'' !t2 H3) as ( ? & ?).
6 subgoals, subgoal 1 (ID 27994)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

clear IHtyp2.
6 subgoals, subgoal 1 (ID 27995)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)


destruct H7.
7 subgoals, subgoal 1 (ID 28001)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 28003) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

subst.
7 subgoals, subgoal 1 (ID 28006)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : !t3) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 28003) is:
 (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using ,)

eauto.
6 subgoals, subgoal 1 (ID 28003)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   (Γ ⊢ Π (A), B ▹ Π (A'), B' : B0) /\ Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


split.
7 subgoals, subgoal 1 (ID 29272)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   Γ ⊢ Π (A), B ▹ Π (A'), B' : B0

subgoal 2 (ID 29273) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


apply typ_pcompat with !t3 ;intuition.
7 subgoals, subgoal 1 (ID 29274)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   Γ ⊢ Π (A), B ▹ Π (A'), B' : !t3

subgoal 2 (ID 29273) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3
subgoal 3 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 4 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

apply typ_pi with t1 t2; trivial.
6 subgoals, subgoal 1 (ID 29273)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  H5 : Γ ⊢ A ▹ A' : !t1
  H6 : Γ ⊢ A ▹ A'' : !s1
  H8 : A :: Γ ⊢ B ▹ B' : !t2
  H9 : A :: Γ ⊢ B ▹ B'' : !s2
  ============================
   Γ ⊢ Π (A), B ▹ Π (A''), B'' : !s3

subgoal 2 (ID 27761) is:
 (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


apply typ_pi with s1 s2; trivial.
5 subgoals, subgoal 1 (ID 27761)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  H3 : Γ ⊢ λ [A], M ▹ P : B0
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


apply pgen_la in H3.
5 subgoals, subgoal 1 (ID 29336)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  H3 : exists (A' M' B : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 /\
         (Γ ⊢ A ▹ A' : !s1) /\
         (A :: Γ ⊢ M ▹ M' : B) /\
         (A :: Γ ⊢ B ▹ B : !s2) /\ P = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' B0
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

destruct H3 as (A'' & M'' & K & t1 & t2 & t3 & h).
5 subgoals, subgoal 1 (ID 29360)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ A ▹ A'' : !t1) /\
      (A :: Γ ⊢ M ▹ M'' : K) /\
      (A :: Γ ⊢ K ▹ K : !t2) /\ P = λ [A''], M'' /\ Γ ⊢ Π (A), K ≡' B0
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


decompose [and] h; clear h.
5 subgoals, subgoal 1 (ID 29386)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H7 : P = λ [A''], M''
  H9 : Γ ⊢ Π (A), K ≡' B0
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ P : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

subst.
5 subgoals, subgoal 1 (ID 29389)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


destruct (IHtyp1 A'' !t1 H5) as (? & ?); clear IHtyp1.
5 subgoals, subgoal 1 (ID 29397)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  H7 : Γ ⊢ A ▹ A' : !t1
  H8 : Γ ⊢ A ▹ A'' : !s1
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


clear IHtyp2.
5 subgoals, subgoal 1 (ID 29398)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  H7 : Γ ⊢ A ▹ A' : !t1
  H8 : Γ ⊢ A ▹ A'' : !s1
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


destruct (IHtyp3 M'' K H4) as (? & ?); clear IHtyp3.
5 subgoals, subgoal 1 (ID 29406)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  H7 : Γ ⊢ A ▹ A' : !t1
  H8 : Γ ⊢ A ▹ A'' : !s1
  H10 : A :: Γ ⊢ M ▹ M' : K
  H11 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   (Γ ⊢ λ [A], M ▹ λ [A'], M' : B0) /\ Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


split.
6 subgoals, subgoal 1 (ID 29408)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  H7 : Γ ⊢ A ▹ A' : !t1
  H8 : Γ ⊢ A ▹ A'' : !s1
  H10 : A :: Γ ⊢ M ▹ M' : K
  H11 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ λ [A], M ▹ λ [A'], M' : B0

subgoal 2 (ID 29409) is:
 Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

apply typ_pcompat with (Π (A), K) ; intuition.
6 subgoals, subgoal 1 (ID 29410)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  H7 : Γ ⊢ A ▹ A' : !t1
  H8 : Γ ⊢ A ▹ A'' : !s1
  H10 : A :: Γ ⊢ M ▹ M' : K
  H11 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ λ [A], M ▹ λ [A'], M' : Π (A), K

subgoal 2 (ID 29409) is:
 Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B
subgoal 3 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


apply typ_la with t1 t2 t3; trivial.
5 subgoals, subgoal 1 (ID 29409)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  B0 : Term
  A'' : Term
  M'' : Term
  K : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : K
  H6 : A :: Γ ⊢ K ▹ K : !t2
  H9 : Γ ⊢ Π (A), K ≡' B0
  H7 : Γ ⊢ A ▹ A' : !t1
  H8 : Γ ⊢ A ▹ A'' : !s1
  H10 : A :: Γ ⊢ M ▹ M' : K
  H11 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), B

subgoal 2 (ID 27764) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

apply typ_la with s1 s2 s3; trivial.
4 subgoals, subgoal 1 (ID 27764)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B -> (Γ ⊢ N ▹ N' : B) /\ Γ ⊢ N ▹ P : A
  P : Term
  B0 : Term
  H4 : Γ ⊢ M ·( A, B)N ▹ P : B0
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


apply pgen_app in H4 as (U & U' & B'' & N'' & t1 & t2 & t3 & h).
4 subgoals, subgoal 1 (ID 29479)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B -> (Γ ⊢ N ▹ N' : B) /\ Γ ⊢ N ▹ P : A
  P : Term
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ U ▹ U' : !t1) /\
      (U :: Γ ⊢ B ▹ B'' : !t2) /\
      (Γ ⊢ N ▹ N'' : U) /\
      (Γ ⊢ B [ ← N] ≡' B0) /\
      ((exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (U), B) /\ A = U /\ P = W' ·( U', B'')N'') \/
       (exists K0 K K' T T' : Term,
          A = K /\
          M = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1))
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 29505)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B -> (Γ ⊢ N ▹ N' : B) /\ Γ ⊢ N ▹ P : A
  P : Term
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  H10 : (exists W' : Term,
           (Γ ⊢ M ▹ W' : Π (U), B) /\ A = U /\ P = W' ·( U', B'')N'') \/
        (exists K0 K K' T T' : Term,
           A = K /\
           M = λ [U], T /\
           (U :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


destruct (IHtyp4 N'' U H7) as ( ? & ?); clear IHtyp4.
4 subgoals, subgoal 1 (ID 29513)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  P : Term
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  H10 : (exists W' : Term,
           (Γ ⊢ M ▹ W' : Π (U), B) /\ A = U /\ P = W' ·( U', B'')N'') \/
        (exists K0 K K' T T' : Term,
           A = K /\
           M = λ [U], T /\
           (U :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  H9 : Γ ⊢ N ▹ N' : U
  H11 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

destruct H10.
5 subgoals, subgoal 1 (ID 29519)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  P : Term
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  H10 : exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (U), B) /\ A = U /\ P = W' ·( U', B'')N''
  H9 : Γ ⊢ N ▹ N' : U
  H11 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]

subgoal 2 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


destruct H10 as (M'' & ? & ? & ->).
5 subgoals, subgoal 1 (ID 29539)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H12 : A = U
  H9 : Γ ⊢ N ▹ N' : U
  H11 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\
   Γ ⊢ M ·( A, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]

subgoal 2 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

subst.
5 subgoals, subgoal 1 (ID 29551)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (U), B
  H11 : Γ ⊢ N ▹ N'' : U
  ============================
   (Γ ⊢ M ·( U, B)N ▹ M' ·( A', B')N' : B0) /\
   Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]

subgoal 2 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

destruct (IHtyp3 M'' (Π (U), B) H10) as (? & ?); clear IHtyp3.
5 subgoals, subgoal 1 (ID 29559)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   (Γ ⊢ M ·( U, B)N ▹ M' ·( A', B')N' : B0) /\
   Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]

subgoal 2 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

split.
6 subgoals, subgoal 1 (ID 29561)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ M ·( U, B)N ▹ M' ·( A', B')N' : B0

subgoal 2 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 3 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)


apply typ_pcompat with B [ N] ;intuition.
6 subgoals, subgoal 1 (ID 29563)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ M ·( U, B)N ▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 3 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using ,)

eapply typ_app.
10 subgoals, subgoal 1 (ID 29606)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Rel ?29603 ?29604 ?29605

subgoal 2 (ID 29607) is:
 Γ ⊢ U ▹ A' : !?29603
subgoal 3 (ID 29608) is:
 U :: Γ ⊢ B ▹ B' : !?29604
subgoal 4 (ID 29609) is:
 Γ ⊢ M ▹ M' : Π (U), B
subgoal 5 (ID 29610) is:
 Γ ⊢ N ▹ N' : U
subgoal 6 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 7 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 8 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 9 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 10 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 open, ?29604 open, ?29605 open,)

apply H.
9 subgoals, subgoal 1 (ID 29607)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ U ▹ A' : !s1

subgoal 2 (ID 29608) is:
 U :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 29609) is:
 Γ ⊢ M ▹ M' : Π (U), B
subgoal 4 (ID 29610) is:
 Γ ⊢ N ▹ N' : U
subgoal 5 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 6 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using ,)

trivial.
8 subgoals, subgoal 1 (ID 29608)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   U :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 29609) is:
 Γ ⊢ M ▹ M' : Π (U), B
subgoal 3 (ID 29610) is:
 Γ ⊢ N ▹ N' : U
subgoal 4 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 5 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using ,)

trivial.
7 subgoals, subgoal 1 (ID 29609)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ M ▹ M' : Π (U), B

subgoal 2 (ID 29610) is:
 Γ ⊢ N ▹ N' : U
subgoal 3 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 4 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using ,)

trivial.
6 subgoals, subgoal 1 (ID 29610)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ N ▹ N' : U

subgoal 2 (ID 29562) is:
 Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]
subgoal 3 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using ,)

trivial.
5 subgoals, subgoal 1 (ID 29562)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ M ·( U, B)N ▹ M'' ·( U', B'')N'' : B [ ← N]

subgoal 2 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using ,)


eapply typ_app.
9 subgoals, subgoal 1 (ID 29614)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Rel ?29611 ?29612 ?29613

subgoal 2 (ID 29615) is:
 Γ ⊢ U ▹ U' : !?29611
subgoal 3 (ID 29616) is:
 U :: Γ ⊢ B ▹ B'' : !?29612
subgoal 4 (ID 29617) is:
 Γ ⊢ M ▹ M'' : Π (U), B
subgoal 5 (ID 29618) is:
 Γ ⊢ N ▹ N'' : U
subgoal 6 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 open, ?29612 open, ?29613 open,)

apply H4.
8 subgoals, subgoal 1 (ID 29615)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ U ▹ U' : !t1

subgoal 2 (ID 29616) is:
 U :: Γ ⊢ B ▹ B'' : !t2
subgoal 3 (ID 29617) is:
 Γ ⊢ M ▹ M'' : Π (U), B
subgoal 4 (ID 29618) is:
 Γ ⊢ N ▹ N'' : U
subgoal 5 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

trivial.
7 subgoals, subgoal 1 (ID 29616)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   U :: Γ ⊢ B ▹ B'' : !t2

subgoal 2 (ID 29617) is:
 Γ ⊢ M ▹ M'' : Π (U), B
subgoal 3 (ID 29618) is:
 Γ ⊢ N ▹ N'' : U
subgoal 4 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

trivial.
6 subgoals, subgoal 1 (ID 29617)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ M ▹ M'' : Π (U), B

subgoal 2 (ID 29618) is:
 Γ ⊢ N ▹ N'' : U
subgoal 3 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

trivial.
5 subgoals, subgoal 1 (ID 29618)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H10 : Γ ⊢ M ▹ M'' : Π (U), B
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ A' : !s1
  H1 : U :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (U), B
  H3 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ A' : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B' : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : U
  H12 : Γ ⊢ M ▹ M' : Π (U), B
  H13 : Γ ⊢ M ▹ M'' : Π (U), B
  ============================
   Γ ⊢ N ▹ N'' : U

subgoal 2 (ID 29521) is:
 (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

trivial.
4 subgoals, subgoal 1 (ID 29521)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ M' : B0) /\ Γ ⊢ M ▹ P : Π (A), B
  P : Term
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  H10 : exists K0 K K' T T' : Term,
          A = K /\
          M = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H11 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ M ·( A, B)N ▹ M' ·( A', B')N' : B0) /\ Γ ⊢ M ·( A, B)N ▹ P : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)



destruct H10 as (K0 & K & K' & T & T' & ? & -> & ? & -> & ? & ? & ?).
4 subgoals, subgoal 1 (ID 29681)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A' : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B' : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H10 : A = K
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H11 : Γ ⊢ N ▹ N'' : A
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (A), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (A), B
  ============================
   (Γ ⊢ (λ [U], T) ·( A, B)N ▹ M' ·( A', B')N' : B0) /\
   Γ ⊢ (λ [U], T) ·( A, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

subst.
4 subgoals, subgoal 1 (ID 29693)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   (Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' ·( A', B')N' : B0) /\
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

split.
5 subgoals, subgoal 1 (ID 29695)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' ·( A', B')N' : B0

subgoal 2 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)


apply typ_pcompat with B [ N];intuition.
5 subgoals, subgoal 1 (ID 29697)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using ,)

eapply typ_app.
9 subgoals, subgoal 1 (ID 29745)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Rel ?29742 ?29743 ?29744

subgoal 2 (ID 29746) is:
 Γ ⊢ K ▹ A' : !?29742
subgoal 3 (ID 29747) is:
 K :: Γ ⊢ B ▹ B' : !?29743
subgoal 4 (ID 29748) is:
 Γ ⊢ λ [U], T ▹ M' : Π (K), B
subgoal 5 (ID 29749) is:
 Γ ⊢ N ▹ N' : K
subgoal 6 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 open, ?29743 open, ?29744 open,)

apply H.
8 subgoals, subgoal 1 (ID 29746)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ K ▹ A' : !s1

subgoal 2 (ID 29747) is:
 K :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 29748) is:
 Γ ⊢ λ [U], T ▹ M' : Π (K), B
subgoal 4 (ID 29749) is:
 Γ ⊢ N ▹ N' : K
subgoal 5 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using ,)

trivial.
7 subgoals, subgoal 1 (ID 29747)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   K :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 29748) is:
 Γ ⊢ λ [U], T ▹ M' : Π (K), B
subgoal 3 (ID 29749) is:
 Γ ⊢ N ▹ N' : K
subgoal 4 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using ,)

trivial.
6 subgoals, subgoal 1 (ID 29748)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ λ [U], T ▹ M' : Π (K), B

subgoal 2 (ID 29749) is:
 Γ ⊢ N ▹ N' : K
subgoal 3 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using ,)

trivial.
5 subgoals, subgoal 1 (ID 29749)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ N ▹ N' : K

subgoal 2 (ID 29696) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using ,)

trivial.
4 subgoals, subgoal 1 (ID 29696)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using ,)


eapply typ_beta.
11 subgoals, subgoal 1 (ID 29754)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Rel ?29751 ?29752 ?29753

subgoal 2 (ID 29755) is:
 Γ ⊢ U ▹ U : !?29751
subgoal 3 (ID 29756) is:
 Γ ⊢ K ▹ K : !?29751
subgoal 4 (ID 29757) is:
 Γ ⊢ ?29750 ▹▹ U : !?29751
subgoal 5 (ID 29758) is:
 Γ ⊢ ?29750 ▹▹ K : !?29751
subgoal 6 (ID 29759) is:
 U :: Γ ⊢ B ▹ B : !?29752
subgoal 7 (ID 29760) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 8 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 9 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 10 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 11 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 open, ?29751 open, ?29752 open, ?29753 open,)

apply H4.
10 subgoals, subgoal 1 (ID 29755)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ U ▹ U : !t1

subgoal 2 (ID 29756) is:
 Γ ⊢ K ▹ K : !t1
subgoal 3 (ID 29757) is:
 Γ ⊢ ?29750 ▹▹ U : !t1
subgoal 4 (ID 29758) is:
 Γ ⊢ ?29750 ▹▹ K : !t1
subgoal 5 (ID 29759) is:
 U :: Γ ⊢ B ▹ B : !t2
subgoal 6 (ID 29760) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 7 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 8 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 9 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 10 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 open, ?29751 using , ?29752 using , ?29753 using ,)

apply red_refl_lt in H6; apply H6.
9 subgoals, subgoal 1 (ID 29756)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ K ▹ K : !t1

subgoal 2 (ID 29757) is:
 Γ ⊢ ?29750 ▹▹ U : !t1
subgoal 3 (ID 29758) is:
 Γ ⊢ ?29750 ▹▹ K : !t1
subgoal 4 (ID 29759) is:
 U :: Γ ⊢ B ▹ B : !t2
subgoal 5 (ID 29760) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 6 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 7 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 open, ?29751 using , ?29752 using , ?29753 using ,)


apply red_refl_lt in H15; apply H15.
8 subgoals, subgoal 1 (ID 29757)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ ?29750 ▹▹ U : !t1

subgoal 2 (ID 29758) is:
 Γ ⊢ ?29750 ▹▹ K : !t1
subgoal 3 (ID 29759) is:
 U :: Γ ⊢ B ▹ B : !t2
subgoal 4 (ID 29760) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 5 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 6 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 open, ?29751 using , ?29752 using , ?29753 using ,)

apply H14.
7 subgoals, subgoal 1 (ID 29758)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ K0 ▹▹ K : !t1

subgoal 2 (ID 29759) is:
 U :: Γ ⊢ B ▹ B : !t2
subgoal 3 (ID 29760) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 4 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 5 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

trivial.
6 subgoals, subgoal 1 (ID 29759)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   U :: Γ ⊢ B ▹ B : !t2

subgoal 2 (ID 29760) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 3 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 4 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


apply red_refl_lt in H5; apply H5.
5 subgoals, subgoal 1 (ID 29760)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   U :: Γ ⊢ T ▹ T' : B

subgoal 2 (ID 29761) is:
 Γ ⊢ N ▹ N'' : U
subgoal 3 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

trivial.
4 subgoals, subgoal 1 (ID 29761)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  B'' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H4 : Rel t1 t2 t3
  H6 : Γ ⊢ U ▹ U' : !t1
  H5 : U :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ N ▹ N'' : U
  H8 : Γ ⊢ B [ ← N] ≡' B0
  K0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H12 : U :: Γ ⊢ T ▹ T' : B
  H13 : Γ ⊢ K0 ▹▹ K : !t1
  H14 : Γ ⊢ K0 ▹▹ U : !t1
  H15 : Γ ⊢ K ▹ K' : !t1
  H9 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H3 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ A' : B) /\ Γ ⊢ K ▹ P : !s1
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           (K :: Γ ⊢ B ▹ B' : B0) /\ K :: Γ ⊢ B ▹ P : !s2
  H11 : Γ ⊢ N ▹ N'' : K
  H2 : Γ ⊢ λ [U], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [U], T ▹ P : B0 ->
           (Γ ⊢ λ [U], T ▹ M' : B0) /\ Γ ⊢ λ [U], T ▹ P : Π (K), B
  ============================
   Γ ⊢ N ▹ N'' : U

subgoal 2 (ID 27767) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

trivial.
3 subgoals, subgoal 1 (ID 27767)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B -> (Γ ⊢ N ▹ N' : B) /\ Γ ⊢ N ▹ P : A
  P : Term
  B0 : Term
  H7 : Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B0
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


apply pgen_app in H7 as (U & U' & D' & N'' & t1 & t2 & t3 & h).
3 subgoals, subgoal 1 (ID 29797)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B -> (Γ ⊢ N ▹ N' : B) /\ Γ ⊢ N ▹ P : A
  P : Term
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ U ▹ U' : !t1) /\
      (U :: Γ ⊢ B ▹ D' : !t2) /\
      (Γ ⊢ N ▹ N'' : U) /\
      (Γ ⊢ B [ ← N] ≡' B0) /\
      ((exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (U), B) /\ A' = U /\ P = W' ·( U', D')N'') \/
       (exists K0 K K' T T' : Term,
          A' = K /\
          λ [A], M = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1))
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

decompose [and] h; clear h.
3 subgoals, subgoal 1 (ID 29823)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B -> (Γ ⊢ N ▹ N' : B) /\ Γ ⊢ N ▹ P : A
  P : Term
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : (exists W' : Term,
           (Γ ⊢ λ [A], M ▹ W' : Π (U), B) /\ A' = U /\ P = W' ·( U', D')N'') \/
        (exists K0 K K' T T' : Term,
           A' = K /\
           λ [A], M = λ [U], T /\
           (U :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


destruct (IHtyp5 N'' U H10) as ( ? & ?); clear IHtyp5.
3 subgoals, subgoal 1 (ID 29831)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : (exists W' : Term,
           (Γ ⊢ λ [A], M ▹ W' : Π (U), B) /\ A' = U /\ P = W' ·( U', D')N'') \/
        (exists K0 K K' T T' : Term,
           A' = K /\
           λ [A], M = λ [U], T /\
           (U :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

destruct H13.
4 subgoals, subgoal 1 (ID 29837)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (U), B) /\ A' = U /\ P = W' ·( U', D')N''
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

destruct H13 as (L & ? & ? & ->).
4 subgoals, subgoal 1 (ID 29857)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  L : Term
  H13 : Γ ⊢ λ [A], M ▹ L : Π (U), B
  H15 : A' = U
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ L ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

subst.
4 subgoals, subgoal 1 (ID 29864)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  L : Term
  H13 : Γ ⊢ λ [A], M ▹ L : Π (U), B
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ U : B) /\ Γ ⊢ U ▹ P : !s1
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ L ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


apply pgen_la in H13 as (A'' & M'' & K & u1 & u2 & u3 & h).
4 subgoals, subgoal 1 (ID 29890)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  L : Term
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ U : B) /\ Γ ⊢ U ▹ P : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  h : Rel u1 u2 u3 /\
      (Γ ⊢ A ▹ A'' : !u1) /\
      (A :: Γ ⊢ M ▹ M'' : K) /\
      (A :: Γ ⊢ K ▹ K : !u2) /\ L = λ [A''], M'' /\ Γ ⊢ Π (A), K ≡' Π (U), B
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ L ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 29916)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  L : Term
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ U : B) /\ Γ ⊢ U ▹ P : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H18 : L = λ [A''], M''
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ L ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

subst.
4 subgoals, subgoal 1 (ID 29919)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ U : B) /\ Γ ⊢ U ▹ P : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


destruct (IHtyp1 A'' !u1 H16) as (? & ?); clear IHtyp1.
4 subgoals, subgoal 1 (ID 29927)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ U : B) /\ Γ ⊢ U ▹ P : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

clear IHtyp2.
4 subgoals, subgoal 1 (ID 29928)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


destruct (IHtyp4 M'' K H15) as (? & ?); clear IHtyp4.
4 subgoals, subgoal 1 (ID 29936)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   (Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

split.
5 subgoals, subgoal 1 (ID 29938)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B0

subgoal 2 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 3 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)

apply typ_pcompat with B [ N] ;intuition.
5 subgoals, subgoal 1 (ID 29940)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ M' [ ← N'] : B [ ← N]

subgoal 2 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 3 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using ,)


eapply typ_beta.
12 subgoals, subgoal 1 (ID 29997)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Rel ?29994 ?29995 ?29996

subgoal 2 (ID 29998) is:
 Γ ⊢ A ▹ A : !?29994
subgoal 3 (ID 29999) is:
 Γ ⊢ U ▹ U : !?29994
subgoal 4 (ID 30000) is:
 Γ ⊢ ?29993 ▹▹ A : !?29994
subgoal 5 (ID 30001) is:
 Γ ⊢ ?29993 ▹▹ U : !?29994
subgoal 6 (ID 30002) is:
 A :: Γ ⊢ B ▹ B : !?29995
subgoal 7 (ID 30003) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 8 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 9 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 10 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 11 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 12 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 open, ?29994 open, ?29995 open, ?29996 open,)

apply H.
11 subgoals, subgoal 1 (ID 29998)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ A ▹ A : !s1

subgoal 2 (ID 29999) is:
 Γ ⊢ U ▹ U : !s1
subgoal 3 (ID 30000) is:
 Γ ⊢ ?29993 ▹▹ A : !s1
subgoal 4 (ID 30001) is:
 Γ ⊢ ?29993 ▹▹ U : !s1
subgoal 5 (ID 30002) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 6 (ID 30003) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 7 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 8 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 9 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 10 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 11 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 open, ?29994 using , ?29995 using , ?29996 using ,)

apply H0.
10 subgoals, subgoal 1 (ID 29999)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ U ▹ U : !s1

subgoal 2 (ID 30000) is:
 Γ ⊢ ?29993 ▹▹ A : !s1
subgoal 3 (ID 30001) is:
 Γ ⊢ ?29993 ▹▹ U : !s1
subgoal 4 (ID 30002) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 5 (ID 30003) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 6 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 8 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 9 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 10 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 open, ?29994 using , ?29995 using , ?29996 using ,)

apply reds_refl_rt in H3; apply H3.
9 subgoals, subgoal 1 (ID 30000)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ ?29993 ▹▹ A : !s1

subgoal 2 (ID 30001) is:
 Γ ⊢ ?29993 ▹▹ U : !s1
subgoal 3 (ID 30002) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 30003) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 5 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 7 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 open, ?29994 using , ?29995 using , ?29996 using ,)

apply H2.
8 subgoals, subgoal 1 (ID 30001)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ A0 ▹▹ U : !s1

subgoal 2 (ID 30002) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 30003) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 4 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 6 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using ,)

trivial.
7 subgoals, subgoal 1 (ID 30002)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 30003) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 3 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 4 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 5 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using ,)

apply H4.
6 subgoals, subgoal 1 (ID 30003)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   A :: Γ ⊢ M ▹ M' : B

subgoal 2 (ID 30004) is:
 Γ ⊢ N ▹ N' : A
subgoal 3 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 4 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using ,)

trivial.
5 subgoals, subgoal 1 (ID 30004)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 29939) is:
 Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]
subgoal 3 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using ,)

trivial.
4 subgoals, subgoal 1 (ID 29939)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ (λ [A], M) ·( U, B)N ▹ (λ [A''], M'') ·( U', D')N'' : B [ ← N]

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using ,)


eapply typ_app.
8 subgoals, subgoal 1 (ID 30010)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Rel ?30007 ?30008 ?30009

subgoal 2 (ID 30011) is:
 Γ ⊢ U ▹ U' : !?30007
subgoal 3 (ID 30012) is:
 U :: Γ ⊢ B ▹ D' : !?30008
subgoal 4 (ID 30013) is:
 Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (U), B
subgoal 5 (ID 30014) is:
 Γ ⊢ N ▹ N'' : U
subgoal 6 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 open, ?30008 open, ?30009 open,)

apply H7.
7 subgoals, subgoal 1 (ID 30011)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ U ▹ U' : !t1

subgoal 2 (ID 30012) is:
 U :: Γ ⊢ B ▹ D' : !t2
subgoal 3 (ID 30013) is:
 Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (U), B
subgoal 4 (ID 30014) is:
 Γ ⊢ N ▹ N'' : U
subgoal 5 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

trivial.
6 subgoals, subgoal 1 (ID 30012)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   U :: Γ ⊢ B ▹ D' : !t2

subgoal 2 (ID 30013) is:
 Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (U), B
subgoal 3 (ID 30014) is:
 Γ ⊢ N ▹ N'' : U
subgoal 4 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

trivial.
5 subgoals, subgoal 1 (ID 30013)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (U), B

subgoal 2 (ID 30014) is:
 Γ ⊢ N ▹ N'' : U
subgoal 3 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

apply typ_pcompat with ( Π (A), K ) ; intuition.
5 subgoals, subgoal 1 (ID 30015)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ λ [A], M ▹ λ [A''], M'' : Π (A), K

subgoal 2 (ID 30014) is:
 Γ ⊢ N ▹ N'' : U
subgoal 3 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)


apply typ_la with u1 u2 u3; trivial.
4 subgoals, subgoal 1 (ID 30014)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  H1 : Γ ⊢ U ▹ U : !s1
  H3 : Γ ⊢ A0 ▹▹ U : !s1
  A'' : Term
  M'' : Term
  K : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H16 : Γ ⊢ A ▹ A'' : !u1
  H15 : A :: Γ ⊢ M ▹ M'' : K
  H17 : A :: Γ ⊢ K ▹ K : !u2
  H20 : Γ ⊢ Π (A), K ≡' Π (U), B
  H18 : Γ ⊢ A ▹ A : !u1
  H19 : Γ ⊢ A ▹ A'' : !s1
  H21 : A :: Γ ⊢ M ▹ M' : K
  H22 : A :: Γ ⊢ M ▹ M'' : B
  ============================
   Γ ⊢ N ▹ N'' : U

subgoal 2 (ID 29839) is:
 (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
 Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

trivial.
3 subgoals, subgoal 1 (ID 29839)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  P : Term
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : exists K0 K K' T T' : Term,
          A' = K /\
          λ [A], M = λ [U], T /\
          (U :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ U : !t1) /\ Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)



destruct H13 as (U0 & K & K' & T & T' & ? & ? & ? & -> & ? & ?& ?).
3 subgoals, subgoal 1 (ID 30129)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B -> (Γ ⊢ A ▹ A : B) /\ Γ ⊢ A ▹ P : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B -> (Γ ⊢ A' ▹ A' : B) /\ Γ ⊢ A' ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           (A :: Γ ⊢ B ▹ B : B0) /\ A :: Γ ⊢ B ▹ P : !s2
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           (A :: Γ ⊢ M ▹ M' : B0) /\ A :: Γ ⊢ M ▹ P : B
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H13 : A' = K
  H15 : λ [A], M = λ [U], T
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H14 : Γ ⊢ N ▹ N'' : A
  ============================
   (Γ ⊢ (λ [A], M) ·( A', B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [A], M) ·( A', B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

injection H15; intros; subst; clear H15.
3 subgoals, subgoal 1 (ID 30168)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp1 : forall P B : Term,
           Γ ⊢ U ▹ P : B -> (Γ ⊢ U ▹ U : B) /\ Γ ⊢ U ▹ P : !s1
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ K : B) /\ Γ ⊢ K ▹ P : !s1
  ============================
   (Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)


clear IHtyp1.
3 subgoals, subgoal 1 (ID 30169)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B -> (Γ ⊢ K ▹ K : B) /\ Γ ⊢ K ▹ P : !s1
  ============================
   (Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

destruct (IHtyp2 K' !t1 H19) as (? & ?); clear IHtyp2.
3 subgoals, subgoal 1 (ID 30177)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   (Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' [ ← N'] : B0) /\
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)

split.
4 subgoals, subgoal 1 (ID 30179)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' [ ← N'] : B0

subgoal 2 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)


apply typ_pcompat with (B [ N]); intuition.
4 subgoals, subgoal 1 (ID 30181)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ M' [ ← N'] : B [ ← N]

subgoal 2 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using ,)


eapply typ_beta.
11 subgoals, subgoal 1 (ID 30233)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Rel ?30230 ?30231 ?30232

subgoal 2 (ID 30234) is:
 Γ ⊢ U ▹ U : !?30230
subgoal 3 (ID 30235) is:
 Γ ⊢ K ▹ K : !?30230
subgoal 4 (ID 30236) is:
 Γ ⊢ ?30229 ▹▹ U : !?30230
subgoal 5 (ID 30237) is:
 Γ ⊢ ?30229 ▹▹ K : !?30230
subgoal 6 (ID 30238) is:
 U :: Γ ⊢ B ▹ B : !?30231
subgoal 7 (ID 30239) is:
 U :: Γ ⊢ T ▹ M' : B
subgoal 8 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 9 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 10 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 11 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 open, ?30230 open, ?30231 open, ?30232 open,)

apply H.
10 subgoals, subgoal 1 (ID 30234)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ U ▹ U : !s1

subgoal 2 (ID 30235) is:
 Γ ⊢ K ▹ K : !s1
subgoal 3 (ID 30236) is:
 Γ ⊢ ?30229 ▹▹ U : !s1
subgoal 4 (ID 30237) is:
 Γ ⊢ ?30229 ▹▹ K : !s1
subgoal 5 (ID 30238) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 6 (ID 30239) is:
 U :: Γ ⊢ T ▹ M' : B
subgoal 7 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 8 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 9 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 10 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 open, ?30230 using , ?30231 using , ?30232 using ,)

apply H0.
9 subgoals, subgoal 1 (ID 30235)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ K ▹ K : !s1

subgoal 2 (ID 30236) is:
 Γ ⊢ ?30229 ▹▹ U : !s1
subgoal 3 (ID 30237) is:
 Γ ⊢ ?30229 ▹▹ K : !s1
subgoal 4 (ID 30238) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 5 (ID 30239) is:
 U :: Γ ⊢ T ▹ M' : B
subgoal 6 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 7 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 open, ?30230 using , ?30231 using , ?30232 using ,)

apply H1.
8 subgoals, subgoal 1 (ID 30236)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ ?30229 ▹▹ U : !s1

subgoal 2 (ID 30237) is:
 Γ ⊢ ?30229 ▹▹ K : !s1
subgoal 3 (ID 30238) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 30239) is:
 U :: Γ ⊢ T ▹ M' : B
subgoal 5 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 6 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 open, ?30230 using , ?30231 using , ?30232 using ,)

apply H2.
7 subgoals, subgoal 1 (ID 30237)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ A0 ▹▹ K : !s1

subgoal 2 (ID 30238) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 30239) is:
 U :: Γ ⊢ T ▹ M' : B
subgoal 4 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 5 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using ,)

trivial.
6 subgoals, subgoal 1 (ID 30238)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   U :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 30239) is:
 U :: Γ ⊢ T ▹ M' : B
subgoal 3 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 4 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using ,)

apply H4.
5 subgoals, subgoal 1 (ID 30239)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   U :: Γ ⊢ T ▹ M' : B

subgoal 2 (ID 30240) is:
 Γ ⊢ N ▹ N' : U
subgoal 3 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using ,)

trivial.
4 subgoals, subgoal 1 (ID 30240)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ N ▹ N' : U

subgoal 2 (ID 30180) is:
 Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using ,)

trivial.
3 subgoals, subgoal 1 (ID 30180)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ (λ [U], T) ·( K, B)N ▹ T' [ ← N''] : B [ ← N]

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using ,)


eapply typ_beta.
10 subgoals, subgoal 1 (ID 30245)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Rel ?30242 ?30243 ?30244

subgoal 2 (ID 30246) is:
 Γ ⊢ U ▹ U : !?30242
subgoal 3 (ID 30247) is:
 Γ ⊢ K ▹ K : !?30242
subgoal 4 (ID 30248) is:
 Γ ⊢ ?30241 ▹▹ U : !?30242
subgoal 5 (ID 30249) is:
 Γ ⊢ ?30241 ▹▹ K : !?30242
subgoal 6 (ID 30250) is:
 U :: Γ ⊢ B ▹ B : !?30243
subgoal 7 (ID 30251) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 8 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 9 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 10 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 open, ?30242 open, ?30243 open, ?30244 open,)

apply H.
9 subgoals, subgoal 1 (ID 30246)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ U ▹ U : !s1

subgoal 2 (ID 30247) is:
 Γ ⊢ K ▹ K : !s1
subgoal 3 (ID 30248) is:
 Γ ⊢ ?30241 ▹▹ U : !s1
subgoal 4 (ID 30249) is:
 Γ ⊢ ?30241 ▹▹ K : !s1
subgoal 5 (ID 30250) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 6 (ID 30251) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 7 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 8 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 9 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 open, ?30242 using , ?30243 using , ?30244 using ,)

apply H0.
8 subgoals, subgoal 1 (ID 30247)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ K ▹ K : !s1

subgoal 2 (ID 30248) is:
 Γ ⊢ ?30241 ▹▹ U : !s1
subgoal 3 (ID 30249) is:
 Γ ⊢ ?30241 ▹▹ K : !s1
subgoal 4 (ID 30250) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 5 (ID 30251) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 6 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 7 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 8 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 open, ?30242 using , ?30243 using , ?30244 using ,)

apply H1.
7 subgoals, subgoal 1 (ID 30248)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ ?30241 ▹▹ U : !s1

subgoal 2 (ID 30249) is:
 Γ ⊢ ?30241 ▹▹ K : !s1
subgoal 3 (ID 30250) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 30251) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 5 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 6 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 7 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 open, ?30242 using , ?30243 using , ?30244 using ,)

apply H2.
6 subgoals, subgoal 1 (ID 30249)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ A0 ▹▹ K : !s1

subgoal 2 (ID 30250) is:
 U :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 30251) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 4 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 5 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 6 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)

trivial.
5 subgoals, subgoal 1 (ID 30250)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   U :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 30251) is:
 U :: Γ ⊢ T ▹ T' : B
subgoal 3 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 4 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 5 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)

apply H4.
4 subgoals, subgoal 1 (ID 30251)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   U :: Γ ⊢ T ▹ T' : B

subgoal 2 (ID 30252) is:
 Γ ⊢ N ▹ N'' : U
subgoal 3 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 4 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)

trivial.
3 subgoals, subgoal 1 (ID 30252)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  U : Term
  U' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ U ▹ U' : !t1
  H8 : U :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : U
  H11 : Γ ⊢ B [ ← N] ≡' B0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H16 : U :: Γ ⊢ T ▹ T' : B
  H17 : Γ ⊢ U0 ▹▹ K : !t1
  H18 : Γ ⊢ U0 ▹▹ U : !t1
  H19 : Γ ⊢ K ▹ K' : !t1
  H12 : Γ ⊢ N ▹ N' : U
  H0 : Γ ⊢ U ▹ U : !s1
  H2 : Γ ⊢ A0 ▹▹ U : !s1
  H4 : U :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : U
  IHtyp3 : forall P B0 : Term,
           U :: Γ ⊢ B ▹ P : B0 ->
           (U :: Γ ⊢ B ▹ B : B0) /\ U :: Γ ⊢ B ▹ P : !s2
  H14 : Γ ⊢ N ▹ N'' : U
  H5 : U :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           U :: Γ ⊢ T ▹ P : B0 ->
           (U :: Γ ⊢ T ▹ M' : B0) /\ U :: Γ ⊢ T ▹ P : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  H13 : Γ ⊢ K ▹ K : !t1
  H15 : Γ ⊢ K ▹ K' : !s1
  ============================
   Γ ⊢ N ▹ N'' : U

subgoal 2 (ID 27770) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)

trivial.
2 subgoals, subgoal 1 (ID 27770)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : forall P B : Term,
           Γ ⊢ M ▹ P : B -> (Γ ⊢ M ▹ N : B) /\ Γ ⊢ M ▹ P : A
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  ============================
   (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B

subgoal 2 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)


destruct (IHtyp1 P B0 H1) as (? & ?); clear IHtyp1.
2 subgoals, subgoal 1 (ID 30260)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  H2 : Γ ⊢ M ▹ N : B0
  H3 : Γ ⊢ M ▹ P : A
  ============================
   (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B

subgoal 2 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)


split.
3 subgoals, subgoal 1 (ID 30262)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  H2 : Γ ⊢ M ▹ N : B0
  H3 : Γ ⊢ M ▹ P : A
  ============================
   Γ ⊢ M ▹ N : B0

subgoal 2 (ID 30263) is:
 Γ ⊢ M ▹ P : B
subgoal 3 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)

eauto.
2 subgoals, subgoal 1 (ID 30263)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  H2 : Γ ⊢ M ▹ N : B0
  H3 : Γ ⊢ M ▹ P : A
  ============================
   Γ ⊢ M ▹ P : B

subgoal 2 (ID 27773) is:
 (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using ,)

eauto.
1 subgoals, subgoal 1 (ID 27773)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 -> (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : B
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  ============================
   (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A

(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using , ?30276 using , ?30277 using ,)


destruct (IHtyp1 P B0 H1) as (? & ?); clear IHtyp1.
1 subgoals, subgoal 1 (ID 31555)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  H2 : Γ ⊢ M ▹ N : B0
  H3 : Γ ⊢ M ▹ P : B
  ============================
   (Γ ⊢ M ▹ N : B0) /\ Γ ⊢ M ▹ P : A

(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using , ?30276 using , ?30277 using ,)


split.
2 subgoals, subgoal 1 (ID 31557)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  H2 : Γ ⊢ M ▹ N : B0
  H3 : Γ ⊢ M ▹ P : B
  ============================
   Γ ⊢ M ▹ N : B0

subgoal 2 (ID 31558) is:
 Γ ⊢ M ▹ P : A
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using , ?30276 using , ?30277 using ,)

eauto.
1 subgoals, subgoal 1 (ID 31558)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 -> (Γ ⊢ A ▹ B : B0) /\ Γ ⊢ A ▹ P : !s
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  H2 : Γ ⊢ M ▹ N : B0
  H3 : Γ ⊢ M ▹ P : B
  ============================
   Γ ⊢ M ▹ P : A

(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using , ?30276 using , ?30277 using ,)

eauto.
No more subgoals.
(dependent evars: ?27830 using , ?27831 using , ?28017 using , ?28018 using , ?29060 using , ?29061 using , ?29603 using , ?29604 using , ?29605 using , ?29611 using , ?29612 using , ?29613 using , ?29742 using , ?29743 using , ?29744 using , ?29750 using , ?29751 using , ?29752 using , ?29753 using , ?29993 using , ?29994 using , ?29995 using , ?29996 using , ?30007 using , ?30008 using , ?30009 using , ?30229 using , ?30230 using , ?30231 using , ?30232 using , ?30241 using , ?30242 using , ?30243 using , ?30244 using , ?30276 using , ?30277 using , ?31567 using , ?31568 using ,)


Qed.
relocate is defined



Facts abouts Reds
Lemma typ_reds_trans_ : forall Γ M N T, Γ M ▹▹ N : T -> forall P T', Γ N P : T' -> Γ M ▹▹ P : T.
1 subgoals, subgoal 1 (ID 31606)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹▹ N : T -> forall P T' : Term, Γ ⊢ N ▹ P : T' -> Γ ⊢ M ▹▹ P : T

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 31641)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  T' : Term
  H0 : Γ ⊢ t ▹ P : T'
  ============================
   Γ ⊢ s ▹▹ P : T

subgoal 2 (ID 31644) is:
 Γ ⊢ s ▹▹ P : T
(dependent evars:)


apply typ_reds_trans with t.
3 subgoals, subgoal 1 (ID 31645)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  T' : Term
  H0 : Γ ⊢ t ▹ P : T'
  ============================
   Γ ⊢ s ▹▹ t : T

subgoal 2 (ID 31646) is:
 Γ ⊢ t ▹▹ P : T
subgoal 3 (ID 31644) is:
 Γ ⊢ s ▹▹ P : T
(dependent evars:)

intuition.
2 subgoals, subgoal 1 (ID 31646)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  T' : Term
  H0 : Γ ⊢ t ▹ P : T'
  ============================
   Γ ⊢ t ▹▹ P : T

subgoal 2 (ID 31644) is:
 Γ ⊢ s ▹▹ P : T
(dependent evars:)

destruct (relocate Γ t P T' H0 t T).
3 subgoals, subgoal 1 (ID 31662)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  T' : Term
  H0 : Γ ⊢ t ▹ P : T'
  ============================
   Γ ⊢ t ▹ t : T

subgoal 2 (ID 31666) is:
 Γ ⊢ t ▹▹ P : T
subgoal 3 (ID 31644) is:
 Γ ⊢ s ▹▹ P : T
(dependent evars:)

apply red_refl_rt in H; trivial.
2 subgoals, subgoal 1 (ID 31666)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  T' : Term
  H0 : Γ ⊢ t ▹ P : T'
  H1 : Γ ⊢ t ▹ P : T
  H2 : Γ ⊢ t ▹ t : T'
  ============================
   Γ ⊢ t ▹▹ P : T

subgoal 2 (ID 31644) is:
 Γ ⊢ s ▹▹ P : T
(dependent evars:)


intuition.
1 subgoals, subgoal 1 (ID 31644)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall P T' : Term, Γ ⊢ t ▹ P : T' -> Γ ⊢ s ▹▹ P : T
  IHtyp_reds2 : forall P T' : Term, Γ ⊢ u ▹ P : T' -> Γ ⊢ t ▹▹ P : T
  P : Term
  T' : Term
  H1 : Γ ⊢ u ▹ P : T'
  ============================
   Γ ⊢ s ▹▹ P : T

(dependent evars:)

eauto.
No more subgoals.
(dependent evars: ?31684 using , ?31933 using ,)


Qed.
typ_reds_trans_ is defined



Lemma typ_reds_trans2 : forall Γ M N T, Γ M ▹▹ N : T -> forall P T', Γ N ▹▹ P : T' -> Γ M ▹▹ P : T.
1 subgoals, subgoal 1 (ID 31962)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹▹ N : T -> forall P T' : Term, Γ ⊢ N ▹▹ P : T' -> Γ ⊢ M ▹▹ P : T

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 31970)
  
  Γ : Env
  M : Term
  N : Term
  T : Term
  H : Γ ⊢ M ▹▹ N : T
  P : Term
  T' : Term
  H0 : Γ ⊢ N ▹▹ P : T'
  ============================
   Γ ⊢ M ▹▹ P : T

(dependent evars:)

revert M T H.
1 subgoals, subgoal 1 (ID 31972)
  
  Γ : Env
  N : Term
  P : Term
  T' : Term
  H0 : Γ ⊢ N ▹▹ P : T'
  ============================
   forall M T : Term, Γ ⊢ M ▹▹ N : T -> Γ ⊢ M ▹▹ P : T

(dependent evars:)

induction H0; intros.
2 subgoals, subgoal 1 (ID 32002)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  M : Term
  T0 : Term
  H0 : Γ ⊢ M ▹▹ s : T0
  ============================
   Γ ⊢ M ▹▹ t : T0

subgoal 2 (ID 32005) is:
 Γ ⊢ M ▹▹ u : T0
(dependent evars:)


apply typ_reds_trans_ with s T; trivial.
1 subgoals, subgoal 1 (ID 32005)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M T : Term, Γ ⊢ M ▹▹ s : T -> Γ ⊢ M ▹▹ t : T
  IHtyp_reds2 : forall M T : Term, Γ ⊢ M ▹▹ t : T -> Γ ⊢ M ▹▹ u : T
  M : Term
  T0 : Term
  H : Γ ⊢ M ▹▹ s : T0
  ============================
   Γ ⊢ M ▹▹ u : T0

(dependent evars:)


eauto.
No more subgoals.
(dependent evars:)


Qed.
typ_reds_trans2 is defined



Hint Resolve typ_reds_trans2.
Warning: the hint: eapply typ_reds_trans2 will only be used by eauto



Lemma typ_reds_relocate : forall Γ M N T, Γ M ▹▹ N : T -> forall T', Γ M M : T' -> Γ M ▹▹ N : T'.
1 subgoals, subgoal 1 (ID 32036)
  
  ============================
   forall (Γ : Env) (M N T : Term),
   Γ ⊢ M ▹▹ N : T -> forall T' : Term, Γ ⊢ M ▹ M : T' -> Γ ⊢ M ▹▹ N : T'

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 32070)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  T' : Term
  H0 : Γ ⊢ s ▹ s : T'
  ============================
   Γ ⊢ s ▹▹ t : T'

subgoal 2 (ID 32072) is:
 Γ ⊢ s ▹▹ u : T'
(dependent evars:)

constructor.
2 subgoals, subgoal 1 (ID 32074)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  T' : Term
  H0 : Γ ⊢ s ▹ s : T'
  ============================
   Γ ⊢ s ▹ t : T'

subgoal 2 (ID 32072) is:
 Γ ⊢ s ▹▹ u : T'
(dependent evars:)

eapply relocate.
3 subgoals, subgoal 1 (ID 32082)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  T' : Term
  H0 : Γ ⊢ s ▹ s : T'
  ============================
   Γ ⊢ s ▹ ?32081 : T'

subgoal 2 (ID 32084) is:
 Γ ⊢ s ▹ t : ?32083
subgoal 3 (ID 32072) is:
 Γ ⊢ s ▹▹ u : T'
(dependent evars: ?32077 using ?32081 , ?32078 using ?32083 , ?32081 open, ?32083 open,)

apply H0.
2 subgoals, subgoal 1 (ID 32084)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  T' : Term
  H0 : Γ ⊢ s ▹ s : T'
  ============================
   Γ ⊢ s ▹ t : ?32083

subgoal 2 (ID 32072) is:
 Γ ⊢ s ▹▹ u : T'
(dependent evars: ?32077 using ?32081 , ?32078 using ?32083 , ?32081 using , ?32083 open,)

apply H.
1 subgoals, subgoal 1 (ID 32072)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall T' : Term, Γ ⊢ s ▹ s : T' -> Γ ⊢ s ▹▹ t : T'
  IHtyp_reds2 : forall T' : Term, Γ ⊢ t ▹ t : T' -> Γ ⊢ t ▹▹ u : T'
  T' : Term
  H1 : Γ ⊢ s ▹ s : T'
  ============================
   Γ ⊢ s ▹▹ u : T'

(dependent evars: ?32077 using ?32081 , ?32078 using ?32083 , ?32081 using , ?32083 using ,)


eauto.
No more subgoals.
(dependent evars: ?32077 using ?32081 , ?32078 using ?32083 , ?32081 using , ?32083 using , ?32086 using , ?32513 using , ?32514 using ,)


Qed.
typ_reds_relocate is defined



Lemma reds_typ_pcompat : forall Γ M N A , Γ M ▹▹ N : A -> forall B , Γ A ≡' B -> Γ M ▹▹ N : B.
1 subgoals, subgoal 1 (ID 32640)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹▹ N : A -> forall B : Term, Γ ⊢ A ≡' B -> Γ ⊢ M ▹▹ N : B

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 32674)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  H0 : Γ ⊢ T ≡' B
  ============================
   Γ ⊢ s ▹▹ t : B

subgoal 2 (ID 32676) is:
 Γ ⊢ s ▹▹ u : B
(dependent evars:)

constructor.
2 subgoals, subgoal 1 (ID 32678)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  H0 : Γ ⊢ T ≡' B
  ============================
   Γ ⊢ s ▹ t : B

subgoal 2 (ID 32676) is:
 Γ ⊢ s ▹▹ u : B
(dependent evars:)

apply typ_pcompat with T; trivial.
1 subgoals, subgoal 1 (ID 32676)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B : Term, Γ ⊢ T ≡' B -> Γ ⊢ s ▹▹ t : B
  IHtyp_reds2 : forall B : Term, Γ ⊢ T ≡' B -> Γ ⊢ t ▹▹ u : B
  B : Term
  H1 : Γ ⊢ T ≡' B
  ============================
   Γ ⊢ s ▹▹ u : B

(dependent evars:)


eauto.
No more subgoals.
(dependent evars: ?32682 using ,)


Qed.
reds_typ_pcompat is defined



Another version of inversion lemmas: for multi-step reduction.
Lemma Pi_Reds : forall Γ A B N T, Γ Π(A),B ▹▹ N : T -> exists A', exists B', exists s1, exists s2, exists s3,
  Rel s1 s2 s3 /\ N = Π(A'),B' /\ Γ A ▹▹ A' : !s1 /\ A::Γ B ▹▹ B' : !s2 /\ (T = !s3 \/ Γ T ≡' !s3).
1 subgoals, subgoal 1 (ID 32868)
  
  ============================
   forall (Γ : Env) (A B N T : Term),
   Γ ⊢ Π (A), B ▹▹ N : T ->
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)


intros until 1.
1 subgoals, subgoal 1 (ID 32874)
  
  Γ : Env
  A : Term
  B : Term
  N : Term
  T : Term
  H : Γ ⊢ Π (A), B ▹▹ N : T
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)

remember (Pi A B) as P.
1 subgoals, subgoal 1 (ID 32881)
  
  Γ : Env
  A : Term
  B : Term
  N : Term
  T : Term
  P : Term
  HeqP : P = Π (A), B
  H : Γ ⊢ P ▹▹ N : T
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)

revert A B HeqP.
1 subgoals, subgoal 1 (ID 32883)
  
  Γ : Env
  N : Term
  T : Term
  P : Term
  H : Γ ⊢ P ▹▹ N : T
  ============================
   forall A B : Term,
   P = Π (A), B ->
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 32921)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  B : Term
  H : Γ ⊢ Π (A), B ▹ t : T
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

subgoal 2 (ID 32927) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = Π (A'), B' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
(dependent evars:)


apply pgen_pi in H.
2 subgoals, subgoal 1 (ID 32929)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  B : Term
  H : exists (A' B' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 /\
        (Γ ⊢ A ▹ A' : !s1) /\
        (A :: Γ ⊢ B ▹ B' : !s2) /\
        t = Π (A'), B' /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

subgoal 2 (ID 32927) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = Π (A'), B' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
(dependent evars:)

destruct H as (A' & B' & s & tt & u & h).
2 subgoals, subgoal 1 (ID 32949)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  tt : Sorts
  u : Sorts
  h : Rel s tt u /\
      (Γ ⊢ A ▹ A' : !s) /\
      (A :: Γ ⊢ B ▹ B' : !tt) /\ t = Π (A'), B' /\ (T = !u \/ Γ ⊢ T ≡' !u)
  ============================
   exists (A'0 B'0 : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = Π (A'0), B'0 /\
     (Γ ⊢ A ▹▹ A'0 : !s1) /\
     (A :: Γ ⊢ B ▹▹ B'0 : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

subgoal 2 (ID 32927) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = Π (A'), B' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
(dependent evars:)

decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 32971)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  tt : Sorts
  u : Sorts
  H : Rel s tt u
  H1 : Γ ⊢ A ▹ A' : !s
  H0 : A :: Γ ⊢ B ▹ B' : !tt
  H2 : t = Π (A'), B'
  H4 : T = !u \/ Γ ⊢ T ≡' !u
  ============================
   exists (A'0 B'0 : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = Π (A'0), B'0 /\
     (Γ ⊢ A ▹▹ A'0 : !s1) /\
     (A :: Γ ⊢ B ▹▹ B'0 : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

subgoal 2 (ID 32927) is:
 exists (A' B' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = Π (A'), B' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
(dependent evars:)


exists A'; exists B'; exists s; exists tt; exists u; intuition.
1 subgoals, subgoal 1 (ID 32927)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall A B : Term,
                t = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  A : Term
  B : Term
  H : Γ ⊢ Π (A), B ▹▹ t : T
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  t = Π (A'), B' /\
                  (Γ ⊢ A0 ▹▹ A' : !s1) /\
                  (A0 :: Γ ⊢ B0 ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  ============================
   exists (A' B' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     u = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)


destruct (IHtyp_reds1 A B) as (A1 & B1 & s1 & t1 & u1 & ? & -> & ? & ? & ?).
2 subgoals, subgoal 1 (ID 33113)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall A B : Term,
                t = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  A : Term
  B : Term
  H : Γ ⊢ Π (A), B ▹▹ t : T
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  t = Π (A'), B' /\
                  (Γ ⊢ A0 ▹▹ A' : !s1) /\
                  (A0 :: Γ ⊢ B0 ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  ============================
   Π (A), B = Π (A), B

subgoal 2 (ID 33157) is:
 exists (A' B' : Term) (s0 s2 s3 : Sorts),
   Rel s0 s2 s3 /\
   u = Π (A'), B' /\
   (Γ ⊢ A ▹▹ A' : !s0) /\
   (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 33157)
  
  Γ : Env
  u : Term
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H0 : Γ ⊢ Π (A1), B1 ▹▹ u : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A1), B1 = Π (A'), B' /\
                  (Γ ⊢ A0 ▹▹ A' : !s1) /\
                  (A0 :: Γ ⊢ B0 ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  ============================
   exists (A' B' : Term) (s0 s2 s3 : Sorts),
     Rel s0 s2 s3 /\
     u = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s0) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)

clear IHtyp_reds1.
1 subgoals, subgoal 1 (ID 33158)
  
  Γ : Env
  u : Term
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H0 : Γ ⊢ Π (A1), B1 ▹▹ u : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  ============================
   exists (A' B' : Term) (s0 s2 s3 : Sorts),
     Rel s0 s2 s3 /\
     u = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s0) /\
     (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)

(dependent evars:)


destruct (IHtyp_reds2 A1 B1) as (A2 & B2 & s2 & t2 & u2 & ? & -> & ? & ? & ?).
2 subgoals, subgoal 1 (ID 33164)
  
  Γ : Env
  u : Term
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H0 : Γ ⊢ Π (A1), B1 ▹▹ u : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  ============================
   Π (A1), B1 = Π (A1), B1

subgoal 2 (ID 33206) is:
 exists (A' B' : Term) (s0 s3 s4 : Sorts),
   Rel s0 s3 s4 /\
   Π (A2), B2 = Π (A'), B' /\
   (Γ ⊢ A ▹▹ A' : !s0) /\
   (A :: Γ ⊢ B ▹▹ B' : !s3) /\ (T = !s4 \/ Γ ⊢ T ≡' !s4)
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 33206)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   exists (A' B' : Term) (s0 s3 s4 : Sorts),
     Rel s0 s3 s4 /\
     Π (A2), B2 = Π (A'), B' /\
     (Γ ⊢ A ▹▹ A' : !s0) /\
     (A :: Γ ⊢ B ▹▹ B' : !s3) /\ (T = !s4 \/ Γ ⊢ T ≡' !s4)

(dependent evars:)


exists A2; exists B2; exists s1; exists t1; exists u1; repeat split.
4 subgoals, subgoal 1 (ID 33218)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   Rel s1 t1 u1

subgoal 2 (ID 33225) is:
 Γ ⊢ A ▹▹ A2 : !s1
subgoal 3 (ID 33228) is:
 A :: Γ ⊢ B ▹▹ B2 : !t1
subgoal 4 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars:)

trivial.
3 subgoals, subgoal 1 (ID 33225)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   Γ ⊢ A ▹▹ A2 : !s1

subgoal 2 (ID 33228) is:
 A :: Γ ⊢ B ▹▹ B2 : !t1
subgoal 3 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars:)


eapply typ_reds_trans2.
4 subgoals, subgoal 1 (ID 33232)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   Γ ⊢ A ▹▹ ?33230 : !s1

subgoal 2 (ID 33233) is:
 Γ ⊢ ?33230 ▹▹ A2 : ?33231
subgoal 3 (ID 33228) is:
 A :: Γ ⊢ B ▹▹ B2 : !t1
subgoal 4 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 open, ?33231 open,)

apply H2.
3 subgoals, subgoal 1 (ID 33233)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   Γ ⊢ A1 ▹▹ A2 : ?33231

subgoal 2 (ID 33228) is:
 A :: Γ ⊢ B ▹▹ B2 : !t1
subgoal 3 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 open,)

apply H6.
2 subgoals, subgoal 1 (ID 33228)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   A :: Γ ⊢ B ▹▹ B2 : !t1

subgoal 2 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using ,)

eapply typ_reds_trans2.
3 subgoals, subgoal 1 (ID 33236)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   A :: Γ ⊢ B ▹▹ ?33234 : !t1

subgoal 2 (ID 33237) is:
 A :: Γ ⊢ ?33234 ▹▹ B2 : ?33235
subgoal 3 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using , ?33234 open, ?33235 open,)

apply H3.
2 subgoals, subgoal 1 (ID 33237)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   A :: Γ ⊢ B1 ▹▹ B2 : ?33235

subgoal 2 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 open,)


eapply conv_in_env_reds.
3 subgoals, subgoal 1 (ID 33239)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   ?33238 ⊢ B1 ▹▹ B2 : ?33235

subgoal 2 (ID 33240) is:
 env_conv ?33238 (A :: Γ)
subgoal 3 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 open, ?33238 open,)

apply H7.
2 subgoals, subgoal 1 (ID 33240)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   env_conv (A1 :: Γ) (A :: Γ)

subgoal 2 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 using , ?33238 using ,)

apply c_sym.
2 subgoals, subgoal 1 (ID 33241)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   env_conv (A :: Γ) (A1 :: Γ)

subgoal 2 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 using , ?33238 using ,)

apply env_red_to_conv.
2 subgoals, subgoal 1 (ID 33242)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   env_red (A :: Γ) (A1 :: Γ)

subgoal 2 (ID 33229) is:
 T = !u1 \/ Γ ⊢ T ≡' !u1
(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 using , ?33238 using ,)

apply env_red_cons with s1; trivial.
1 subgoals, subgoal 1 (ID 33229)
  
  Γ : Env
  T : Term
  A : Term
  B : Term
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ Π (A), B ▹▹ Π (A1), B1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H4 : T = !u1 \/ Γ ⊢ T ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H5 : Rel s2 t2 u2
  H0 : Γ ⊢ Π (A1), B1 ▹▹ Π (A2), B2 : T
  IHtyp_reds2 : forall A B : Term,
                Π (A1), B1 = Π (A), B ->
                exists (A' B' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  Π (A2), B2 = Π (A'), B' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ B ▹▹ B' : !s2) /\ (T = !s3 \/ Γ ⊢ T ≡' !s3)
  H6 : Γ ⊢ A1 ▹▹ A2 : !s2
  H7 : A1 :: Γ ⊢ B1 ▹▹ B2 : !t2
  H8 : T = !u2 \/ Γ ⊢ T ≡' !u2
  ============================
   T = !u1 \/ Γ ⊢ T ≡' !u1

(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 using , ?33238 using ,)


trivial.
No more subgoals.
(dependent evars: ?33230 using , ?33231 using , ?33234 using , ?33235 using , ?33238 using ,)


Qed.
Pi_Reds is defined



Lemma La_Reds : forall Γ A b N T, Γ λ[A],b ▹▹ N : T -> exists A', exists b', exists D, exists D', exists s1, exists s2, exists s3,
  Rel s1 s2 s3 /\ N = λ[A'],b' /\ Γ A ▹▹ A' : !s1 /\ A::Γ b ▹▹ b' : D /\ A::Γ D ▹▹ D' : !s2 /\ Γ T ≡' Π(A),D.
1 subgoals, subgoal 1 (ID 33267)
  
  ============================
   forall (Γ : Env) (A b N T : Term),
   Γ ⊢ λ [A], b ▹▹ N : T ->
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)


intros until 1.
1 subgoals, subgoal 1 (ID 33273)
  
  Γ : Env
  A : Term
  b : Term
  N : Term
  T : Term
  H : Γ ⊢ λ [A], b ▹▹ N : T
  ============================
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)

remember (La A b) as P.
1 subgoals, subgoal 1 (ID 33280)
  
  Γ : Env
  A : Term
  b : Term
  N : Term
  T : Term
  P : Term
  HeqP : P = λ [A], b
  H : Γ ⊢ P ▹▹ N : T
  ============================
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)

revert A b HeqP.
1 subgoals, subgoal 1 (ID 33282)
  
  Γ : Env
  N : Term
  T : Term
  P : Term
  H : Γ ⊢ P ▹▹ N : T
  ============================
   forall A b : Term,
   P = λ [A], b ->
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     N = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 33320)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  b : Term
  H : Γ ⊢ λ [A], b ▹ t : T
  ============================
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

subgoal 2 (ID 33326) is:
 exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = λ [A'], b' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
(dependent evars:)


apply pgen_la in H.
2 subgoals, subgoal 1 (ID 33328)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  b : Term
  H : exists (A' M' B : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 /\
        (Γ ⊢ A ▹ A' : !s1) /\
        (A :: Γ ⊢ b ▹ M' : B) /\
        (A :: Γ ⊢ B ▹ B : !s2) /\ t = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' T
  ============================
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

subgoal 2 (ID 33326) is:
 exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = λ [A'], b' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
(dependent evars:)

destruct H as (A' & b' & D & s & tt & u & h).
2 subgoals, subgoal 1 (ID 33352)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  b : Term
  A' : Term
  b' : Term
  D : Term
  s : Sorts
  tt : Sorts
  u : Sorts
  h : Rel s tt u /\
      (Γ ⊢ A ▹ A' : !s) /\
      (A :: Γ ⊢ b ▹ b' : D) /\
      (A :: Γ ⊢ D ▹ D : !tt) /\ t = λ [A'], b' /\ Γ ⊢ Π (A), D ≡' T
  ============================
   exists (A'0 b'0 D0 D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = λ [A'0], b'0 /\
     (Γ ⊢ A ▹▹ A'0 : !s1) /\
     (A :: Γ ⊢ b ▹▹ b'0 : D0) /\
     (A :: Γ ⊢ D0 ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D0

subgoal 2 (ID 33326) is:
 exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = λ [A'], b' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
(dependent evars:)

decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 33378)
  
  Γ : Env
  t : Term
  T : Term
  A : Term
  b : Term
  A' : Term
  b' : Term
  D : Term
  s : Sorts
  tt : Sorts
  u : Sorts
  H : Rel s tt u
  H1 : Γ ⊢ A ▹ A' : !s
  H0 : A :: Γ ⊢ b ▹ b' : D
  H2 : A :: Γ ⊢ D ▹ D : !tt
  H3 : t = λ [A'], b'
  H5 : Γ ⊢ Π (A), D ≡' T
  ============================
   exists (A'0 b'0 D0 D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     t = λ [A'0], b'0 /\
     (Γ ⊢ A ▹▹ A'0 : !s1) /\
     (A :: Γ ⊢ b ▹▹ b'0 : D0) /\
     (A :: Γ ⊢ D0 ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D0

subgoal 2 (ID 33326) is:
 exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
   Rel s1 s2 s3 /\
   u = λ [A'], b' /\
   (Γ ⊢ A ▹▹ A' : !s1) /\
   (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
(dependent evars:)


exists A'; exists b'; exists D; exists D; exists s; exists tt; exists u; intuition.
1 subgoals, subgoal 1 (ID 33326)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall A b : Term,
                t = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  A : Term
  b : Term
  H : Γ ⊢ λ [A], b ▹▹ t : T
  IHtyp_reds1 : forall A0 b0 : Term,
                λ [A], b = λ [A0], b0 ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  t = λ [A'], b' /\
                  (Γ ⊢ A0 ▹▹ A' : !s1) /\
                  (A0 :: Γ ⊢ b0 ▹▹ b' : D) /\
                  (A0 :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A0), D
  ============================
   exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
     Rel s1 s2 s3 /\
     u = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s1) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)


destruct (IHtyp_reds1 A b) as (A1 & b1 & D1 & D'1 & s1 & t1 & u1 & ? & -> & ? & ? & ? &?).
2 subgoals, subgoal 1 (ID 33490)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall A b : Term,
                t = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  A : Term
  b : Term
  H : Γ ⊢ λ [A], b ▹▹ t : T
  IHtyp_reds1 : forall A0 b0 : Term,
                λ [A], b = λ [A0], b0 ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  t = λ [A'], b' /\
                  (Γ ⊢ A0 ▹▹ A' : !s1) /\
                  (A0 :: Γ ⊢ b0 ▹▹ b' : D) /\
                  (A0 :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A0), D
  ============================
   λ [A], b = λ [A], b

subgoal 2 (ID 33546) is:
 exists (A' b' D D' : Term) (s0 s2 s3 : Sorts),
   Rel s0 s2 s3 /\
   u = λ [A'], b' /\
   (Γ ⊢ A ▹▹ A' : !s0) /\
   (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 33546)
  
  Γ : Env
  u : Term
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H0 : Γ ⊢ λ [A1], b1 ▹▹ u : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  IHtyp_reds1 : forall A0 b0 : Term,
                λ [A], b = λ [A0], b0 ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A1], b1 = λ [A'], b' /\
                  (Γ ⊢ A0 ▹▹ A' : !s1) /\
                  (A0 :: Γ ⊢ b0 ▹▹ b' : D) /\
                  (A0 :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A0), D
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  ============================
   exists (A' b' D D' : Term) (s0 s2 s3 : Sorts),
     Rel s0 s2 s3 /\
     u = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s0) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)

clear IHtyp_reds1.
1 subgoals, subgoal 1 (ID 33547)
  
  Γ : Env
  u : Term
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H0 : Γ ⊢ λ [A1], b1 ▹▹ u : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  ============================
   exists (A' b' D D' : Term) (s0 s2 s3 : Sorts),
     Rel s0 s2 s3 /\
     u = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s0) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)


destruct (IHtyp_reds2 A1 b1) as (A2 & b2 & D2 & D'2 & s2 & t2 & u2 & ? & -> & ? & ? & ? & ?).
2 subgoals, subgoal 1 (ID 33553)
  
  Γ : Env
  u : Term
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H0 : Γ ⊢ λ [A1], b1 ▹▹ u : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  u = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  ============================
   λ [A1], b1 = λ [A1], b1

subgoal 2 (ID 33607) is:
 exists (A' b' D D' : Term) (s0 s3 s4 : Sorts),
   Rel s0 s3 s4 /\
   λ [A2], b2 = λ [A'], b' /\
   (Γ ⊢ A ▹▹ A' : !s0) /\
   (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s3) /\ Γ ⊢ T ≡' Π (A), D
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 33607)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   exists (A' b' D D' : Term) (s0 s3 s4 : Sorts),
     Rel s0 s3 s4 /\
     λ [A2], b2 = λ [A'], b' /\
     (Γ ⊢ A ▹▹ A' : !s0) /\
     (A :: Γ ⊢ b ▹▹ b' : D) /\ (A :: Γ ⊢ D ▹▹ D' : !s3) /\ Γ ⊢ T ≡' Π (A), D

(dependent evars:)


exists A2; exists b2; exists D1; exists D'1; exists s1; exists t1; exists u1; repeat split.
5 subgoals, subgoal 1 (ID 33623)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   Rel s1 t1 u1

subgoal 2 (ID 33630) is:
 Γ ⊢ A ▹▹ A2 : !s1
subgoal 3 (ID 33633) is:
 A :: Γ ⊢ b ▹▹ b2 : D1
subgoal 4 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 5 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars:)

trivial.
4 subgoals, subgoal 1 (ID 33630)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   Γ ⊢ A ▹▹ A2 : !s1

subgoal 2 (ID 33633) is:
 A :: Γ ⊢ b ▹▹ b2 : D1
subgoal 3 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 4 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars:)


eapply typ_reds_trans2.
5 subgoals, subgoal 1 (ID 33640)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   Γ ⊢ A ▹▹ ?33638 : !s1

subgoal 2 (ID 33641) is:
 Γ ⊢ ?33638 ▹▹ A2 : ?33639
subgoal 3 (ID 33633) is:
 A :: Γ ⊢ b ▹▹ b2 : D1
subgoal 4 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 5 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 open, ?33639 open,)

apply H2.
4 subgoals, subgoal 1 (ID 33641)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   Γ ⊢ A1 ▹▹ A2 : ?33639

subgoal 2 (ID 33633) is:
 A :: Γ ⊢ b ▹▹ b2 : D1
subgoal 3 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 4 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 open,)

apply H7.
3 subgoals, subgoal 1 (ID 33633)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   A :: Γ ⊢ b ▹▹ b2 : D1

subgoal 2 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 3 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using ,)

eapply typ_reds_trans2.
4 subgoals, subgoal 1 (ID 33644)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   A :: Γ ⊢ b ▹▹ ?33642 : D1

subgoal 2 (ID 33645) is:
 A :: Γ ⊢ ?33642 ▹▹ b2 : ?33643
subgoal 3 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 4 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 open, ?33643 open,)

apply H3.
3 subgoals, subgoal 1 (ID 33645)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   A :: Γ ⊢ b1 ▹▹ b2 : ?33643

subgoal 2 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 3 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 open,)


eapply conv_in_env_reds.
4 subgoals, subgoal 1 (ID 33647)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   ?33646 ⊢ b1 ▹▹ b2 : ?33643

subgoal 2 (ID 33648) is:
 env_conv ?33646 (A :: Γ)
subgoal 3 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 4 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 open, ?33646 open,)

apply H8.
3 subgoals, subgoal 1 (ID 33648)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   env_conv (A1 :: Γ) (A :: Γ)

subgoal 2 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 3 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 using , ?33646 using ,)

apply c_sym.
3 subgoals, subgoal 1 (ID 33649)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   env_conv (A :: Γ) (A1 :: Γ)

subgoal 2 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 3 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 using , ?33646 using ,)

apply env_red_to_conv.
3 subgoals, subgoal 1 (ID 33650)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   env_red (A :: Γ) (A1 :: Γ)

subgoal 2 (ID 33636) is:
 A :: Γ ⊢ D1 ▹▹ D'1 : !t1
subgoal 3 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 using , ?33646 using ,)

apply env_red_cons with s1; trivial.
2 subgoals, subgoal 1 (ID 33636)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   A :: Γ ⊢ D1 ▹▹ D'1 : !t1

subgoal 2 (ID 33637) is:
 Γ ⊢ T ≡' Π (A), D1
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 using , ?33646 using ,)

trivial.
1 subgoals, subgoal 1 (ID 33637)
  
  Γ : Env
  T : Term
  A : Term
  b : Term
  A1 : Term
  b1 : Term
  D1 : Term
  D'1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H1 : Rel s1 t1 u1
  H : Γ ⊢ λ [A], b ▹▹ λ [A1], b1 : T
  H2 : Γ ⊢ A ▹▹ A1 : !s1
  H3 : A :: Γ ⊢ b ▹▹ b1 : D1
  H4 : A :: Γ ⊢ D1 ▹▹ D'1 : !t1
  H5 : Γ ⊢ T ≡' Π (A), D1
  A2 : Term
  b2 : Term
  D2 : Term
  D'2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H6 : Rel s2 t2 u2
  H0 : Γ ⊢ λ [A1], b1 ▹▹ λ [A2], b2 : T
  IHtyp_reds2 : forall A b : Term,
                λ [A1], b1 = λ [A], b ->
                exists (A' b' D D' : Term) (s1 s2 s3 : Sorts),
                  Rel s1 s2 s3 /\
                  λ [A2], b2 = λ [A'], b' /\
                  (Γ ⊢ A ▹▹ A' : !s1) /\
                  (A :: Γ ⊢ b ▹▹ b' : D) /\
                  (A :: Γ ⊢ D ▹▹ D' : !s2) /\ Γ ⊢ T ≡' Π (A), D
  H7 : Γ ⊢ A1 ▹▹ A2 : !s2
  H8 : A1 :: Γ ⊢ b1 ▹▹ b2 : D2
  H9 : A1 :: Γ ⊢ D2 ▹▹ D'2 : !t2
  H10 : Γ ⊢ T ≡' Π (A1), D2
  ============================
   Γ ⊢ T ≡' Π (A), D1

(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 using , ?33646 using ,)


trivial.
No more subgoals.
(dependent evars: ?33638 using , ?33639 using , ?33642 using , ?33643 using , ?33646 using ,)


Qed.
La_Reds is defined



Lemma Sort_Reds : forall Γ s P T, Γ !s ▹▹ P : T -> P = !s /\ exists t, Ax s t /\ (T = !t \/ ( Γ T ≡' !t)).
1 subgoals, subgoal 1 (ID 33667)
  
  ============================
   forall (Γ : Env) (s : Sorts) (P T : Term),
   Γ ⊢ !s ▹▹ P : T ->
   P = !s /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 33672)
  
  Γ : Env
  s : Sorts
  P : Term
  T : Term
  H : Γ ⊢ !s ▹▹ P : T
  ============================
   P = !s /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 33679)
  
  Γ : Env
  s : Sorts
  P : Term
  T : Term
  S : Term
  HeqS : S = !s
  H : Γ ⊢ S ▹▹ P : T
  ============================
   P = S /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)

revert s HeqS.
1 subgoals, subgoal 1 (ID 33681)
  
  Γ : Env
  P : Term
  T : Term
  S : Term
  H : Γ ⊢ S ▹▹ P : T
  ============================
   forall s : Sorts,
   S = !s -> P = S /\ (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 33717)
  
  Γ : Env
  t : Term
  T : Term
  s0 : Sorts
  H : Γ ⊢ !s0 ▹ t : T
  ============================
   t = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))

subgoal 2 (ID 33723) is:
 u = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))
(dependent evars:)


apply pgen_sort in H.
2 subgoals, subgoal 1 (ID 33725)
  
  Γ : Env
  t : Term
  T : Term
  s0 : Sorts
  H : t = !s0 /\ (exists t : Sorts, Ax s0 t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  ============================
   t = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))

subgoal 2 (ID 33723) is:
 u = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))
(dependent evars:)

intuition.
1 subgoals, subgoal 1 (ID 33723)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  ============================
   u = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))

(dependent evars:)


destruct (IHtyp_reds1 s0) as (? & s1 & ? & ?); trivial.
1 subgoals, subgoal 1 (ID 33751)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  H1 : t = !s0
  s1 : Sorts
  H2 : Ax s0 s1
  H3 : T = !s1 \/ Γ ⊢ T ≡' !s1
  ============================
   u = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))

(dependent evars:)


destruct (IHtyp_reds2 s0) as (? & s2 & ?& ?); trivial.
1 subgoals, subgoal 1 (ID 33769)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  H1 : t = !s0
  s1 : Sorts
  H2 : Ax s0 s1
  H3 : T = !s1 \/ Γ ⊢ T ≡' !s1
  H4 : u = t
  s2 : Sorts
  H5 : Ax s0 s2
  H6 : T = !s2 \/ Γ ⊢ T ≡' !s2
  ============================
   u = !s0 /\ (exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0))

(dependent evars:)


split.
2 subgoals, subgoal 1 (ID 33771)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  H1 : t = !s0
  s1 : Sorts
  H2 : Ax s0 s1
  H3 : T = !s1 \/ Γ ⊢ T ≡' !s1
  H4 : u = t
  s2 : Sorts
  H5 : Ax s0 s2
  H6 : T = !s2 \/ Γ ⊢ T ≡' !s2
  ============================
   u = !s0

subgoal 2 (ID 33772) is:
 exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0)
(dependent evars:)

transitivity t.
3 subgoals, subgoal 1 (ID 33774)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  H1 : t = !s0
  s1 : Sorts
  H2 : Ax s0 s1
  H3 : T = !s1 \/ Γ ⊢ T ≡' !s1
  H4 : u = t
  s2 : Sorts
  H5 : Ax s0 s2
  H6 : T = !s2 \/ Γ ⊢ T ≡' !s2
  ============================
   u = t

subgoal 2 (ID 33775) is:
 t = !s0
subgoal 3 (ID 33772) is:
 exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0)
(dependent evars:)

trivial.
2 subgoals, subgoal 1 (ID 33775)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  H1 : t = !s0
  s1 : Sorts
  H2 : Ax s0 s1
  H3 : T = !s1 \/ Γ ⊢ T ≡' !s1
  H4 : u = t
  s2 : Sorts
  H5 : Ax s0 s2
  H6 : T = !s2 \/ Γ ⊢ T ≡' !s2
  ============================
   t = !s0

subgoal 2 (ID 33772) is:
 exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0)
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 33772)
  
  Γ : Env
  t : Term
  u : Term
  T : Term
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds2 : forall s : Sorts,
                t = !s ->
                u = t /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  s0 : Sorts
  H : Γ ⊢ !s0 ▹▹ t : T
  IHtyp_reds1 : forall s : Sorts,
                !s0 = !s ->
                t = !s0 /\
                (exists t : Sorts, Ax s t /\ (T = !t \/ Γ ⊢ T ≡' !t))
  H1 : t = !s0
  s1 : Sorts
  H2 : Ax s0 s1
  H3 : T = !s1 \/ Γ ⊢ T ≡' !s1
  H4 : u = t
  s2 : Sorts
  H5 : Ax s0 s2
  H6 : T = !s2 \/ Γ ⊢ T ≡' !s2
  ============================
   exists t0 : Sorts, Ax s0 t0 /\ (T = !t0 \/ Γ ⊢ T ≡' !t0)

(dependent evars:)


exists s2; split; trivial.
No more subgoals.
(dependent evars:)


Qed.
Sort_Reds is defined



Lemma typ_ind2 :
forall P : Env -> Term -> Term -> Term -> Prop,
       (forall (Γ : Env) (x : nat) (A : Term),
        Γ -> A x Γ -> P Γ #x #x A) ->
       (forall (Γ : Env) (s1 s2 : Sorts), Ax s1 s2 -> Γ -> P Γ !s1 !s1 !s2) ->
       (forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ A A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ B B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3) ->
       (forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ A A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ B B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ M M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)) ->
       (forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ A A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ B B' : !s2 ->
        P (A :: Γ) B B' !s2 ->
        Γ M M' : Π (A), B -> P Γ M M' (Π (A), B) ->
        (forall AA MM, M = La AA MM -> exists MM',exists AA', exists BB, M' = La AA' MM' /\
            AA :: Γ MM MM' : BB /\ P (AA :: Γ) MM MM' BB )
        ->
        Γ N N' : A -> P Γ N N' A -> P Γ (M ·(A, B)N) (M' ·(A', B')N') B [ N]) ->
       (forall (Γ : Env) (M M' N N' A A' A0 B : Term)
          (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ A A : !s1 ->
        P Γ A A !s1 ->
        Γ A' A' : !s1 ->
        P Γ A' A' !s1 ->
        Γ A0 ▹▹ A : !s1 ->
        Γ A0 ▹▹ A' : !s1 ->
        A :: Γ B B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ M M' : B ->
        P (A :: Γ) M M' B ->
        Γ N N' : A ->
        P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ N'] B [ N]) ->
       (forall (Γ : Env) (M N A B : Term) (s : Sorts),
        Γ M N : A ->
        P Γ M N A -> Γ A B : !s -> P Γ A B !s -> P Γ M N B) ->
       (forall (Γ : Env) (M N A B : Term) (s : Sorts),
        Γ M N : B ->
        P Γ M N B -> Γ A B : !s -> P Γ A B !s -> P Γ M N A) ->
       forall (e : Env) (t t0 t1 : Term), e t t0 : t1 -> P e t t0 t1.
1 subgoals, subgoal 1 (ID 33808)
  
  ============================
   forall P : Env -> Term -> Term -> Term -> Prop,
   (forall (Γ : Env) (x : nat) (A : Term), Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A) ->
   (forall (Γ : Env) (s1 s2 : Sorts), Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2) ->
   (forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
    Rel s1 s2 s3 ->
    Γ ⊢ A ▹ A' : !s1 ->
    P Γ A A' !s1 ->
    A :: Γ ⊢ B ▹ B' : !s2 ->
    P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3) ->
   (forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
    Rel s1 s2 s3 ->
    Γ ⊢ A ▹ A' : !s1 ->
    P Γ A A' !s1 ->
    A :: Γ ⊢ B ▹ B : !s2 ->
    P (A :: Γ) B B !s2 ->
    A :: Γ ⊢ M ▹ M' : B ->
    P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)) ->
   (forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
    Rel s1 s2 s3 ->
    Γ ⊢ A ▹ A' : !s1 ->
    P Γ A A' !s1 ->
    A :: Γ ⊢ B ▹ B' : !s2 ->
    P (A :: Γ) B B' !s2 ->
    Γ ⊢ M ▹ M' : Π (A), B ->
    P Γ M M' (Π (A), B) ->
    (forall AA MM : Term,
     M = λ [AA], MM ->
     exists MM' AA' BB : Term,
       M' = λ [AA'], MM' /\
       (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
    Γ ⊢ N ▹ N' : A ->
    P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]) ->
   (forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
    Rel s1 s2 s3 ->
    Γ ⊢ A ▹ A : !s1 ->
    P Γ A A !s1 ->
    Γ ⊢ A' ▹ A' : !s1 ->
    P Γ A' A' !s1 ->
    Γ ⊢ A0 ▹▹ A : !s1 ->
    Γ ⊢ A0 ▹▹ A' : !s1 ->
    A :: Γ ⊢ B ▹ B : !s2 ->
    P (A :: Γ) B B !s2 ->
    A :: Γ ⊢ M ▹ M' : B ->
    P (A :: Γ) M M' B ->
    Γ ⊢ N ▹ N' : A ->
    P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]) ->
   (forall (Γ : Env) (M N A B : Term) (s : Sorts),
    Γ ⊢ M ▹ N : A -> P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B) ->
   (forall (Γ : Env) (M N A B : Term) (s : Sorts),
    Γ ⊢ M ▹ N : B -> P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A) ->
   forall (e : Env) (t t0 t1 : Term), e ⊢ t ▹ t0 : t1 -> P e t t0 t1

(dependent evars:)


intros P Cvar Csort CPi CLa CApp CBeta CRed CExp.
1 subgoals, subgoal 1 (ID 33817)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  ============================
   forall (e : Env) (t t0 t1 : Term), e ⊢ t ▹ t0 : t1 -> P e t t0 t1

(dependent evars:)


fix 5.
1 subgoals, subgoal 1 (ID 33818)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  ============================
   forall (e : Env) (t t0 t1 : Term), e ⊢ t ▹ t0 : t1 -> P e t t0 t1

(dependent evars:)


destruct 1.
8 subgoals, subgoal 1 (ID 33876)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  ============================
   P Γ #x #x A

subgoal 2 (ID 33881) is:
 P Γ !s1 !s1 !s2
subgoal 3 (ID 33892) is:
 P Γ (Π (A), B) (Π (A'), B') !s3
subgoal 4 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 5 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars:)


apply Cvar; trivial.
7 subgoals, subgoal 1 (ID 33881)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  ============================
   P Γ !s1 !s1 !s2

subgoal 2 (ID 33892) is:
 P Γ (Π (A), B) (Π (A'), B') !s3
subgoal 3 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 4 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 5 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars:)


apply Csort; trivial.
6 subgoals, subgoal 1 (ID 33892)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   P Γ (Π (A), B) (Π (A'), B') !s3

subgoal 2 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 3 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 4 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars:)


eapply CPi.
10 subgoals, subgoal 1 (ID 33965)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   Rel ?33963 ?33964 s3

subgoal 2 (ID 33966) is:
 Γ ⊢ A ▹ A' : !?33963
subgoal 3 (ID 33967) is:
 P Γ A A' !?33963
subgoal 4 (ID 33968) is:
 A :: Γ ⊢ B ▹ B' : !?33964
subgoal 5 (ID 33969) is:
 P (A :: Γ) B B' !?33964
subgoal 6 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 7 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 open, ?33964 open,)

apply H.
9 subgoals, subgoal 1 (ID 33966)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 33967) is:
 P Γ A A' !s1
subgoal 3 (ID 33968) is:
 A :: Γ ⊢ B ▹ B' : !s2
subgoal 4 (ID 33969) is:
 P (A :: Γ) B B' !s2
subgoal 5 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 6 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)

trivial.
8 subgoals, subgoal 1 (ID 33967)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   P Γ A A' !s1

subgoal 2 (ID 33968) is:
 A :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 33969) is:
 P (A :: Γ) B B' !s2
subgoal 4 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 5 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)

apply typ_ind2.
8 subgoals, subgoal 1 (ID 33970)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 33968) is:
 A :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 33969) is:
 P (A :: Γ) B B' !s2
subgoal 4 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 5 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)

trivial.
7 subgoals, subgoal 1 (ID 33968)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   A :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 33969) is:
 P (A :: Γ) B B' !s2
subgoal 3 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 4 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 5 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)

trivial.
6 subgoals, subgoal 1 (ID 33969)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   P (A :: Γ) B B' !s2

subgoal 2 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 3 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 4 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)

apply typ_ind2.
6 subgoals, subgoal 1 (ID 33971)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  ============================
   A :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 33905) is:
 P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
subgoal 3 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 4 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)

trivial.
5 subgoals, subgoal 1 (ID 33905)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   P Γ (λ [A], M) (λ [A'], M') (Π (A), B)

subgoal 2 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 3 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 4 (ID 33950) is:
 P Γ M N B
subgoal 5 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using ,)


eapply CLa.
11 subgoals, subgoal 1 (ID 33975)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   Rel ?33972 ?33973 ?33974

subgoal 2 (ID 33976) is:
 Γ ⊢ A ▹ A' : !?33972
subgoal 3 (ID 33977) is:
 P Γ A A' !?33972
subgoal 4 (ID 33978) is:
 A :: Γ ⊢ B ▹ B : !?33973
subgoal 5 (ID 33979) is:
 P (A :: Γ) B B !?33973
subgoal 6 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 7 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 8 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 9 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 10 (ID 33950) is:
 P Γ M N B
subgoal 11 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 open, ?33973 open, ?33974 open,)

apply H.
10 subgoals, subgoal 1 (ID 33976)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 33977) is:
 P Γ A A' !s1
subgoal 3 (ID 33978) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 33979) is:
 P (A :: Γ) B B !s2
subgoal 5 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 6 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 7 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

trivial.
9 subgoals, subgoal 1 (ID 33977)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   P Γ A A' !s1

subgoal 2 (ID 33978) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 33979) is:
 P (A :: Γ) B B !s2
subgoal 4 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 5 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 6 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

apply typ_ind2.
9 subgoals, subgoal 1 (ID 33982)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 33978) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 33979) is:
 P (A :: Γ) B B !s2
subgoal 4 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 5 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 6 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

trivial.
8 subgoals, subgoal 1 (ID 33978)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 33979) is:
 P (A :: Γ) B B !s2
subgoal 3 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 4 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 5 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

apply H1.
7 subgoals, subgoal 1 (ID 33979)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   P (A :: Γ) B B !s2

subgoal 2 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 3 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 4 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 5 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

apply typ_ind2.
7 subgoals, subgoal 1 (ID 33983)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 33980) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 3 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 4 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 5 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

trivial.
6 subgoals, subgoal 1 (ID 33980)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   A :: Γ ⊢ M ▹ M' : B

subgoal 2 (ID 33981) is:
 P (A :: Γ) M M' B
subgoal 3 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 4 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

trivial.
5 subgoals, subgoal 1 (ID 33981)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   P (A :: Γ) M M' B

subgoal 2 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 3 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 4 (ID 33950) is:
 P Γ M N B
subgoal 5 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

apply typ_ind2.
5 subgoals, subgoal 1 (ID 33984)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  ============================
   A :: Γ ⊢ M ▹ M' : B

subgoal 2 (ID 33922) is:
 P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
subgoal 3 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 4 (ID 33950) is:
 P Γ M N B
subgoal 5 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)

trivial.
4 subgoals, subgoal 1 (ID 33922)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]

subgoal 2 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 3 (ID 33950) is:
 P Γ M N B
subgoal 4 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using ,)


eapply CApp.
13 subgoals, subgoal 1 (ID 33988)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   Rel ?33985 ?33986 ?33987

subgoal 2 (ID 33989) is:
 Γ ⊢ A ▹ A' : !?33985
subgoal 3 (ID 33990) is:
 P Γ A A' !?33985
subgoal 4 (ID 33991) is:
 A :: Γ ⊢ B ▹ B' : !?33986
subgoal 5 (ID 33992) is:
 P (A :: Γ) B B' !?33986
subgoal 6 (ID 33993) is:
 Γ ⊢ M ▹ M' : Π (A), B
subgoal 7 (ID 33994) is:
 P Γ M M' (Π (A), B)
subgoal 8 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 9 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 10 (ID 33997) is:
 P Γ N N' A
subgoal 11 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 12 (ID 33950) is:
 P Γ M N B
subgoal 13 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 open, ?33986 open, ?33987 open,)

apply H.
12 subgoals, subgoal 1 (ID 33989)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 33990) is:
 P Γ A A' !s1
subgoal 3 (ID 33991) is:
 A :: Γ ⊢ B ▹ B' : !s2
subgoal 4 (ID 33992) is:
 P (A :: Γ) B B' !s2
subgoal 5 (ID 33993) is:
 Γ ⊢ M ▹ M' : Π (A), B
subgoal 6 (ID 33994) is:
 P Γ M M' (Π (A), B)
subgoal 7 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 8 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 9 (ID 33997) is:
 P Γ N N' A
subgoal 10 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 11 (ID 33950) is:
 P Γ M N B
subgoal 12 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply H0.
11 subgoals, subgoal 1 (ID 33990)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ A A' !s1

subgoal 2 (ID 33991) is:
 A :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 33992) is:
 P (A :: Γ) B B' !s2
subgoal 4 (ID 33993) is:
 Γ ⊢ M ▹ M' : Π (A), B
subgoal 5 (ID 33994) is:
 P Γ M M' (Π (A), B)
subgoal 6 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 7 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 8 (ID 33997) is:
 P Γ N N' A
subgoal 9 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 10 (ID 33950) is:
 P Γ M N B
subgoal 11 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply typ_ind2; trivial.
10 subgoals, subgoal 1 (ID 33991)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   A :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 33992) is:
 P (A :: Γ) B B' !s2
subgoal 3 (ID 33993) is:
 Γ ⊢ M ▹ M' : Π (A), B
subgoal 4 (ID 33994) is:
 P Γ M M' (Π (A), B)
subgoal 5 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 6 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 33997) is:
 P Γ N N' A
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply H1.
9 subgoals, subgoal 1 (ID 33992)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   P (A :: Γ) B B' !s2

subgoal 2 (ID 33993) is:
 Γ ⊢ M ▹ M' : Π (A), B
subgoal 3 (ID 33994) is:
 P Γ M M' (Π (A), B)
subgoal 4 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 5 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 33997) is:
 P Γ N N' A
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply typ_ind2; trivial.
8 subgoals, subgoal 1 (ID 33993)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ M ▹ M' : Π (A), B

subgoal 2 (ID 33994) is:
 P Γ M M' (Π (A), B)
subgoal 3 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 4 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 33997) is:
 P Γ N N' A
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

trivial.
7 subgoals, subgoal 1 (ID 33994)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ M M' (Π (A), B)

subgoal 2 (ID 33995) is:
 forall AA MM : Term,
 M = λ [AA], MM ->
 exists MM' AA' BB : Term,
   M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB
subgoal 3 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 4 (ID 33997) is:
 P Γ N N' A
subgoal 5 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply typ_ind2; trivial.
6 subgoals, subgoal 1 (ID 33995)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   forall AA MM : Term,
   M = λ [AA], MM ->
   exists MM' AA' BB : Term,
     M' = λ [AA'], MM' /\ (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB

subgoal 2 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 3 (ID 33997) is:
 P Γ N N' A
subgoal 4 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)


elim H2; intros; try discriminate.
8 subgoals, subgoal 1 (ID 34059)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   exists MM' AA' BB : Term,
     λ [A'0], M'0 = λ [AA'], MM' /\
     (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB

subgoal 2 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 3 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 33997) is:
 P Γ N N' A
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

exists M'0; exists A'0; exists B0; split.
9 subgoals, subgoal 1 (ID 34170)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   λ [A'0], M'0 = λ [A'0], M'0

subgoal 2 (ID 34171) is:
 (AA :: Γ0 ⊢ MM ▹ M'0 : B0) /\ P (AA :: Γ0) MM M'0 B0
subgoal 3 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 33997) is:
 P Γ N N' A
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

trivial.
8 subgoals, subgoal 1 (ID 34171)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   (AA :: Γ0 ⊢ MM ▹ M'0 : B0) /\ P (AA :: Γ0) MM M'0 B0

subgoal 2 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 3 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 33997) is:
 P Γ N N' A
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

split.
9 subgoals, subgoal 1 (ID 34173)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   AA :: Γ0 ⊢ MM ▹ M'0 : B0

subgoal 2 (ID 34174) is:
 P (AA :: Γ0) MM M'0 B0
subgoal 3 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 33997) is:
 P Γ N N' A
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)


replace AA with A0.
10 subgoals, subgoal 1 (ID 34178)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   A0 :: Γ0 ⊢ MM ▹ M'0 : B0

subgoal 2 (ID 34175) is:
 A0 = AA
subgoal 3 (ID 34174) is:
 P (AA :: Γ0) MM M'0 B0
subgoal 4 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 6 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 33997) is:
 P Γ N N' A
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

replace MM with M0.
11 subgoals, subgoal 1 (ID 34183)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   A0 :: Γ0 ⊢ M0 ▹ M'0 : B0

subgoal 2 (ID 34180) is:
 M0 = MM
subgoal 3 (ID 34175) is:
 A0 = AA
subgoal 4 (ID 34174) is:
 P (AA :: Γ0) MM M'0 B0
subgoal 5 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 6 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 7 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 8 (ID 33997) is:
 P Γ N N' A
subgoal 9 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 10 (ID 33950) is:
 P Γ M N B
subgoal 11 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

trivial.
10 subgoals, subgoal 1 (ID 34180)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   M0 = MM

subgoal 2 (ID 34175) is:
 A0 = AA
subgoal 3 (ID 34174) is:
 P (AA :: Γ0) MM M'0 B0
subgoal 4 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 6 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 33997) is:
 P Γ N N' A
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

injection H11; intros; subst; trivial.
9 subgoals, subgoal 1 (ID 34175)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   A0 = AA

subgoal 2 (ID 34174) is:
 P (AA :: Γ0) MM M'0 B0
subgoal 3 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 33997) is:
 P Γ N N' A
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)


injection H11; intros; subst; trivial.
8 subgoals, subgoal 1 (ID 34174)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   P (AA :: Γ0) MM M'0 B0

subgoal 2 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 3 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 33997) is:
 P Γ N N' A
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

replace MM with M0.
9 subgoals, subgoal 1 (ID 34244)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   P (AA :: Γ0) M0 M'0 B0

subgoal 2 (ID 34241) is:
 M0 = MM
subgoal 3 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 33997) is:
 P Γ N N' A
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

replace AA with A0.
10 subgoals, subgoal 1 (ID 34249)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   P (A0 :: Γ0) M0 M'0 B0

subgoal 2 (ID 34246) is:
 A0 = AA
subgoal 3 (ID 34241) is:
 M0 = MM
subgoal 4 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 6 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 33997) is:
 P Γ N N' A
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply typ_ind2.
10 subgoals, subgoal 1 (ID 34251)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   A0 :: Γ0 ⊢ M0 ▹ M'0 : B0

subgoal 2 (ID 34246) is:
 A0 = AA
subgoal 3 (ID 34241) is:
 M0 = MM
subgoal 4 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 6 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 33997) is:
 P Γ N N' A
subgoal 8 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)


trivial.
9 subgoals, subgoal 1 (ID 34246)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   A0 = AA

subgoal 2 (ID 34241) is:
 M0 = MM
subgoal 3 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 5 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 33997) is:
 P Γ N N' A
subgoal 7 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

injection H11; intros; subst; trivial.
8 subgoals, subgoal 1 (ID 34241)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  A0 : Term
  A'0 : Term
  B0 : Term
  M0 : Term
  M'0 : Term
  s0 : Sorts
  s4 : Sorts
  s5 : Sorts
  H4 : Rel s0 s4 s5
  H5 : Γ0 ⊢ A0 ▹ A'0 : !s0
  H6 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         A'0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H7 : A0 :: Γ0 ⊢ B0 ▹ B0 : !s4
  H8 : forall AA MM : Term,
       B0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  H9 : A0 :: Γ0 ⊢ M0 ▹ M'0 : B0
  H10 : forall AA MM : Term,
        M0 = λ [AA], MM ->
        exists MM' AA' BB : Term,
          M'0 = λ [AA'], MM' /\
          (AA :: A0 :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: A0 :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H11 : λ [A0], M0 = λ [AA], MM
  ============================
   M0 = MM

subgoal 2 (ID 34124) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 3 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 4 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 33997) is:
 P Γ N N' A
subgoal 6 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

injection H11; intros; subst; trivial.
7 subgoals, subgoal 1 (ID 34124)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  M0 : Term
  N0 : Term
  A0 : Term
  B0 : Term
  s : Sorts
  H4 : Γ0 ⊢ M0 ▹ N0 : A0
  H5 : forall AA MM : Term,
       M0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         N0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H6 : Γ0 ⊢ A0 ▹ B0 : !s
  H7 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H8 : M0 = λ [AA], MM
  ============================
   exists MM' AA' BB : Term,
     N0 = λ [AA'], MM' /\
     (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB

subgoal 2 (ID 34137) is:
 exists MM' AA' BB : Term,
   N0 = λ [AA'], MM' /\ (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
subgoal 3 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 4 (ID 33997) is:
 P Γ N N' A
subgoal 5 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply H5; trivial.
6 subgoals, subgoal 1 (ID 34137)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  Γ0 : Env
  M0 : Term
  N0 : Term
  A0 : Term
  B0 : Term
  s : Sorts
  H4 : Γ0 ⊢ M0 ▹ N0 : B0
  H5 : forall AA MM : Term,
       M0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         N0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  H6 : Γ0 ⊢ A0 ▹ B0 : !s
  H7 : forall AA MM : Term,
       A0 = λ [AA], MM ->
       exists MM' AA' BB : Term,
         B0 = λ [AA'], MM' /\
         (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB
  AA : Term
  MM : Term
  H8 : M0 = λ [AA], MM
  ============================
   exists MM' AA' BB : Term,
     N0 = λ [AA'], MM' /\
     (AA :: Γ0 ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ0) MM MM' BB

subgoal 2 (ID 33996) is:
 Γ ⊢ N ▹ N' : A
subgoal 3 (ID 33997) is:
 P Γ N N' A
subgoal 4 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply H5;trivial.
5 subgoals, subgoal 1 (ID 33996)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 33997) is:
 P Γ N N' A
subgoal 3 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 4 (ID 33950) is:
 P Γ M N B
subgoal 5 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)


trivial.
4 subgoals, subgoal 1 (ID 33997)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ N N' A

subgoal 2 (ID 33942) is:
 P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
subgoal 3 (ID 33950) is:
 P Γ M N B
subgoal 4 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)

apply typ_ind2; trivial.
3 subgoals, subgoal 1 (ID 33942)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]

subgoal 2 (ID 33950) is:
 P Γ M N B
subgoal 3 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using ,)


eapply CBeta.
15 subgoals, subgoal 1 (ID 34315)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   Rel ?34312 ?34313 ?34314

subgoal 2 (ID 34316) is:
 Γ ⊢ A ▹ A : !?34312
subgoal 3 (ID 34317) is:
 P Γ A A !?34312
subgoal 4 (ID 34318) is:
 Γ ⊢ A' ▹ A' : !?34312
subgoal 5 (ID 34319) is:
 P Γ A' A' !?34312
subgoal 6 (ID 34320) is:
 Γ ⊢ ?34311 ▹▹ A : !?34312
subgoal 7 (ID 34321) is:
 Γ ⊢ ?34311 ▹▹ A' : !?34312
subgoal 8 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !?34313
subgoal 9 (ID 34323) is:
 P (A :: Γ) B B !?34313
subgoal 10 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 11 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 12 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 13 (ID 34327) is:
 P Γ N N' A
subgoal 14 (ID 33950) is:
 P Γ M N B
subgoal 15 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 open, ?34312 open, ?34313 open, ?34314 open,)

apply H.
14 subgoals, subgoal 1 (ID 34316)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ A ▹ A : !s1

subgoal 2 (ID 34317) is:
 P Γ A A !s1
subgoal 3 (ID 34318) is:
 Γ ⊢ A' ▹ A' : !s1
subgoal 4 (ID 34319) is:
 P Γ A' A' !s1
subgoal 5 (ID 34320) is:
 Γ ⊢ ?34311 ▹▹ A : !s1
subgoal 6 (ID 34321) is:
 Γ ⊢ ?34311 ▹▹ A' : !s1
subgoal 7 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 8 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 9 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 10 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 11 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 12 (ID 34327) is:
 P Γ N N' A
subgoal 13 (ID 33950) is:
 P Γ M N B
subgoal 14 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 open, ?34312 using , ?34313 using , ?34314 using ,)

apply H0.
13 subgoals, subgoal 1 (ID 34317)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ A A !s1

subgoal 2 (ID 34318) is:
 Γ ⊢ A' ▹ A' : !s1
subgoal 3 (ID 34319) is:
 P Γ A' A' !s1
subgoal 4 (ID 34320) is:
 Γ ⊢ ?34311 ▹▹ A : !s1
subgoal 5 (ID 34321) is:
 Γ ⊢ ?34311 ▹▹ A' : !s1
subgoal 6 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 7 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 8 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 9 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 10 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 11 (ID 34327) is:
 P Γ N N' A
subgoal 12 (ID 33950) is:
 P Γ M N B
subgoal 13 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 open, ?34312 using , ?34313 using , ?34314 using ,)

apply typ_ind2; trivial.
12 subgoals, subgoal 1 (ID 34318)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ A' ▹ A' : !s1

subgoal 2 (ID 34319) is:
 P Γ A' A' !s1
subgoal 3 (ID 34320) is:
 Γ ⊢ ?34311 ▹▹ A : !s1
subgoal 4 (ID 34321) is:
 Γ ⊢ ?34311 ▹▹ A' : !s1
subgoal 5 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 6 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 7 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 8 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 9 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 10 (ID 34327) is:
 P Γ N N' A
subgoal 11 (ID 33950) is:
 P Γ M N B
subgoal 12 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 open, ?34312 using , ?34313 using , ?34314 using ,)

apply H1.
11 subgoals, subgoal 1 (ID 34319)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ A' A' !s1

subgoal 2 (ID 34320) is:
 Γ ⊢ ?34311 ▹▹ A : !s1
subgoal 3 (ID 34321) is:
 Γ ⊢ ?34311 ▹▹ A' : !s1
subgoal 4 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 5 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 6 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 7 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 8 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 9 (ID 34327) is:
 P Γ N N' A
subgoal 10 (ID 33950) is:
 P Γ M N B
subgoal 11 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 open, ?34312 using , ?34313 using , ?34314 using ,)

apply typ_ind2; trivial.
10 subgoals, subgoal 1 (ID 34320)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ ?34311 ▹▹ A : !s1

subgoal 2 (ID 34321) is:
 Γ ⊢ ?34311 ▹▹ A' : !s1
subgoal 3 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 5 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 6 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 7 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 8 (ID 34327) is:
 P Γ N N' A
subgoal 9 (ID 33950) is:
 P Γ M N B
subgoal 10 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 open, ?34312 using , ?34313 using , ?34314 using ,)


apply H2.
9 subgoals, subgoal 1 (ID 34321)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ A0 ▹▹ A' : !s1

subgoal 2 (ID 34322) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 4 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 5 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 6 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 7 (ID 34327) is:
 P Γ N N' A
subgoal 8 (ID 33950) is:
 P Γ M N B
subgoal 9 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

trivial.
8 subgoals, subgoal 1 (ID 34322)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 34323) is:
 P (A :: Γ) B B !s2
subgoal 3 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 4 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 5 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 6 (ID 34327) is:
 P Γ N N' A
subgoal 7 (ID 33950) is:
 P Γ M N B
subgoal 8 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

apply H4.
7 subgoals, subgoal 1 (ID 34323)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   P (A :: Γ) B B !s2

subgoal 2 (ID 34324) is:
 A :: Γ ⊢ M ▹ M' : B
subgoal 3 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 4 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 5 (ID 34327) is:
 P Γ N N' A
subgoal 6 (ID 33950) is:
 P Γ M N B
subgoal 7 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

apply typ_ind2; trivial.
6 subgoals, subgoal 1 (ID 34324)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   A :: Γ ⊢ M ▹ M' : B

subgoal 2 (ID 34325) is:
 P (A :: Γ) M M' B
subgoal 3 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 4 (ID 34327) is:
 P Γ N N' A
subgoal 5 (ID 33950) is:
 P Γ M N B
subgoal 6 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

trivial.
5 subgoals, subgoal 1 (ID 34325)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   P (A :: Γ) M M' B

subgoal 2 (ID 34326) is:
 Γ ⊢ N ▹ N' : A
subgoal 3 (ID 34327) is:
 P Γ N N' A
subgoal 4 (ID 33950) is:
 P Γ M N B
subgoal 5 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

apply typ_ind2; trivial.
4 subgoals, subgoal 1 (ID 34326)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 34327) is:
 P Γ N N' A
subgoal 3 (ID 33950) is:
 P Γ M N B
subgoal 4 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

trivial.
3 subgoals, subgoal 1 (ID 34327)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  ============================
   P Γ N N' A

subgoal 2 (ID 33950) is:
 P Γ M N B
subgoal 3 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)

apply typ_ind2; trivial.
2 subgoals, subgoal 1 (ID 33950)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   P Γ M N B

subgoal 2 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using ,)


eapply CRed.
5 subgoals, subgoal 1 (ID 34335)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   Γ ⊢ M ▹ N : ?34333

subgoal 2 (ID 34336) is:
 P Γ M N ?34333
subgoal 3 (ID 34337) is:
 Γ ⊢ ?34333 ▹ B : !?34334
subgoal 4 (ID 34338) is:
 P Γ ?34333 B !?34334
subgoal 5 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 open, ?34334 open,)

apply H.
4 subgoals, subgoal 1 (ID 34336)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   P Γ M N A

subgoal 2 (ID 34337) is:
 Γ ⊢ A ▹ B : !?34334
subgoal 3 (ID 34338) is:
 P Γ A B !?34334
subgoal 4 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 open,)

apply typ_ind2; trivial.
3 subgoals, subgoal 1 (ID 34337)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   Γ ⊢ A ▹ B : !?34334

subgoal 2 (ID 34338) is:
 P Γ A B !?34334
subgoal 3 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 open,)

apply H0.
2 subgoals, subgoal 1 (ID 34338)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   P Γ A B !s

subgoal 2 (ID 33958) is:
 P Γ M N A
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using ,)

apply typ_ind2; trivial.
1 subgoals, subgoal 1 (ID 33958)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   P Γ M N A

(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using ,)


eapply CExp.
4 subgoals, subgoal 1 (ID 34343)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   Γ ⊢ M ▹ N : ?34341

subgoal 2 (ID 34344) is:
 P Γ M N ?34341
subgoal 3 (ID 34345) is:
 Γ ⊢ A ▹ ?34341 : !?34342
subgoal 4 (ID 34346) is:
 P Γ A ?34341 !?34342
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using , ?34341 open, ?34342 open,)

apply H.
3 subgoals, subgoal 1 (ID 34344)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   P Γ M N B

subgoal 2 (ID 34345) is:
 Γ ⊢ A ▹ B : !?34342
subgoal 3 (ID 34346) is:
 P Γ A B !?34342
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using , ?34341 using , ?34342 open,)

apply typ_ind2; trivial.
2 subgoals, subgoal 1 (ID 34345)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   Γ ⊢ A ▹ B : !?34342

subgoal 2 (ID 34346) is:
 P Γ A B !?34342
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using , ?34341 using , ?34342 open,)

apply H0.
1 subgoals, subgoal 1 (ID 34346)
  
  P : Env -> Term -> Term -> Term -> Prop
  Cvar : forall (Γ : Env) (x : nat) (A : Term),
         Γ ⊣ -> A ↓ x ⊂ Γ -> P Γ #x #x A
  Csort : forall (Γ : Env) (s1 s2 : Sorts),
          Ax s1 s2 -> Γ ⊣ -> P Γ !s1 !s1 !s2
  CPi : forall (Γ : Env) (s1 s2 s3 : Sorts) (A A' B B' : Term),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B' : !s2 ->
        P (A :: Γ) B B' !s2 -> P Γ (Π (A), B) (Π (A'), B') !s3
  CLa : forall (Γ : Env) (A A' B M M' : Term) (s1 s2 s3 : Sorts),
        Rel s1 s2 s3 ->
        Γ ⊢ A ▹ A' : !s1 ->
        P Γ A A' !s1 ->
        A :: Γ ⊢ B ▹ B : !s2 ->
        P (A :: Γ) B B !s2 ->
        A :: Γ ⊢ M ▹ M' : B ->
        P (A :: Γ) M M' B -> P Γ (λ [A], M) (λ [A'], M') (Π (A), B)
  CApp : forall (Γ : Env) (M M' N N' A A' B B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 ->
         Γ ⊢ A ▹ A' : !s1 ->
         P Γ A A' !s1 ->
         A :: Γ ⊢ B ▹ B' : !s2 ->
         P (A :: Γ) B B' !s2 ->
         Γ ⊢ M ▹ M' : Π (A), B ->
         P Γ M M' (Π (A), B) ->
         (forall AA MM : Term,
          M = λ [AA], MM ->
          exists MM' AA' BB : Term,
            M' = λ [AA'], MM' /\
            (AA :: Γ ⊢ MM ▹ MM' : BB) /\ P (AA :: Γ) MM MM' BB) ->
         Γ ⊢ N ▹ N' : A ->
         P Γ N N' A -> P Γ (M ·( A, B)N) (M' ·( A', B')N') B [ ← N]
  CBeta : forall (Γ : Env) (M M' N N' A A' A0 B : Term) (s1 s2 s3 : Sorts),
          Rel s1 s2 s3 ->
          Γ ⊢ A ▹ A : !s1 ->
          P Γ A A !s1 ->
          Γ ⊢ A' ▹ A' : !s1 ->
          P Γ A' A' !s1 ->
          Γ ⊢ A0 ▹▹ A : !s1 ->
          Γ ⊢ A0 ▹▹ A' : !s1 ->
          A :: Γ ⊢ B ▹ B : !s2 ->
          P (A :: Γ) B B !s2 ->
          A :: Γ ⊢ M ▹ M' : B ->
          P (A :: Γ) M M' B ->
          Γ ⊢ N ▹ N' : A ->
          P Γ N N' A -> P Γ ((λ [A], M) ·( A', B)N) M' [ ← N'] B [ ← N]
  CRed : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : A ->
         P Γ M N A -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N B
  CExp : forall (Γ : Env) (M N A B : Term) (s : Sorts),
         Γ ⊢ M ▹ N : B ->
         P Γ M N B -> Γ ⊢ A ▹ B : !s -> P Γ A B !s -> P Γ M N A
  typ_ind2 : forall (e : Env) (t t0 t1 : Term),
             e ⊢ t ▹ t0 : t1 -> P e t t0 t1
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  ============================
   P Γ A B !s

(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using , ?34341 using , ?34342 using ,)

apply typ_ind2; trivial.
No more subgoals.
(dependent evars: ?33963 using , ?33964 using , ?33972 using , ?33973 using , ?33974 using , ?33985 using , ?33986 using , ?33987 using , ?34311 using , ?34312 using , ?34313 using , ?34314 using , ?34333 using , ?34334 using , ?34341 using , ?34342 using ,)


Qed.
typ_ind2 is defined



Diamond Property: PTS{atr} is like Betap, it enjoys the diamond property. This is where half the magic happens (and mainly where the new annotation is needed.
Theorem OSDiamond : forall Γ M N A , Γ M N : A -> forall P B, Γ M P : B ->
  exists Q, Γ N Q : A /\ Γ N Q : B /\ Γ P Q: A /\ Γ P Q : B.
1 subgoals, subgoal 1 (ID 34371)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹ N : A ->
   forall P B : Term,
   Γ ⊢ M ▹ P : B ->
   exists Q : Term,
     (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B

(dependent evars:)


induction 1 using typ_ind2; intros.
8 subgoals, subgoal 1 (ID 34548)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  P : Term
  B : Term
  H1 : Γ ⊢ #x ▹ P : B
  ============================
   exists Q : Term,
     (Γ ⊢ #x ▹ Q : A) /\ (Γ ⊢ #x ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B

subgoal 2 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 3 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)


apply pgen_var in H1.
8 subgoals, subgoal 1 (ID 34571)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  P : Term
  B : Term
  H1 : P = #x /\ (exists Z : Term, (Z ↓ x ⊂ Γ) /\ Γ ⊢ B ≡' Z)
  ============================
   exists Q : Term,
     (Γ ⊢ #x ▹ Q : A) /\ (Γ ⊢ #x ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B

subgoal 2 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 3 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)

destruct H1 as ( -> & A' & ? & ?).
8 subgoals, subgoal 1 (ID 34586)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   exists Q : Term,
     (Γ ⊢ #x ▹ Q : A) /\
     (Γ ⊢ #x ▹ Q : B) /\ (Γ ⊢ #x ▹ Q : A) /\ Γ ⊢ #x ▹ Q : B

subgoal 2 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 3 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)


replace A' with A in *.
9 subgoals, subgoal 1 (ID 34593)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A
  ============================
   exists Q : Term,
     (Γ ⊢ #x ▹ Q : A) /\
     (Γ ⊢ #x ▹ Q : B) /\ (Γ ⊢ #x ▹ Q : A) /\ Γ ⊢ #x ▹ Q : B

subgoal 2 (ID 34587) is:
 A = A'
subgoal 3 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 4 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)

exists #x; intuition.
10 subgoals, subgoal 1 (ID 34601)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A
  ============================
   Γ ⊢ #x ▹ #x : B

subgoal 2 (ID 34605) is:
 Γ ⊢ #x ▹ #x : B
subgoal 3 (ID 34587) is:
 A = A'
subgoal 4 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 5 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)


apply typ_pcompat with A; intuition.
9 subgoals, subgoal 1 (ID 34605)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A
  ============================
   Γ ⊢ #x ▹ #x : B

subgoal 2 (ID 34587) is:
 A = A'
subgoal 3 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 4 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)

apply typ_pcompat with A; intuition.
8 subgoals, subgoal 1 (ID 34587)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   A = A'

subgoal 2 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 3 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars:)


eapply fun_item_lift .
9 subgoals, subgoal 1 (ID 34714)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   A ↓ ?34712 ⊂ ?34713

subgoal 2 (ID 34715) is:
 A' ↓ ?34712 ⊂ ?34713
subgoal 3 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 4 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 open, ?34713 open,)

apply H0.
8 subgoals, subgoal 1 (ID 34715)
  
  Γ : Env
  x : nat
  A : Term
  H : Γ ⊣
  H0 : A ↓ x ⊂ Γ
  B : Term
  A' : Term
  H1 : A' ↓ x ⊂ Γ
  H2 : Γ ⊢ B ≡' A'
  ============================
   A' ↓ x ⊂ Γ

subgoal 2 (ID 34551) is:
 exists Q : Term,
   (Γ ⊢ !s1 ▹ Q : !s2) /\
   (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B
subgoal 3 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

trivial.
7 subgoals, subgoal 1 (ID 34551)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  P : Term
  B : Term
  H1 : Γ ⊢ !s1 ▹ P : B
  ============================
   exists Q : Term,
     (Γ ⊢ !s1 ▹ Q : !s2) /\
     (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B

subgoal 2 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)


apply pgen_sort in H1.
7 subgoals, subgoal 1 (ID 34717)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  P : Term
  B : Term
  H1 : P = !s1 /\ (exists t : Sorts, Ax s1 t /\ (B = !t \/ Γ ⊢ B ≡' !t))
  ============================
   exists Q : Term,
     (Γ ⊢ !s1 ▹ Q : !s2) /\
     (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s2) /\ Γ ⊢ P ▹ Q : B

subgoal 2 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

destruct H1 as (-> & t & ? & ?).
7 subgoals, subgoal 1 (ID 34732)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : B = !t \/ Γ ⊢ B ≡' !t
  ============================
   exists Q : Term,
     (Γ ⊢ !s1 ▹ Q : !s2) /\
     (Γ ⊢ !s1 ▹ Q : B) /\ (Γ ⊢ !s1 ▹ Q : !s2) /\ Γ ⊢ !s1 ▹ Q : B

subgoal 2 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)


destruct H2; subst; exists !s1; intuition.
8 subgoals, subgoal 1 (ID 34799)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : Γ ⊢ B ≡' !t
  ============================
   Γ ⊢ !s1 ▹ !s1 : B

subgoal 2 (ID 34803) is:
 Γ ⊢ !s1 ▹ !s1 : B
subgoal 3 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

apply typ_pcompat with !t; intuition.
7 subgoals, subgoal 1 (ID 34803)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  H : Ax s1 s2
  H0 : Γ ⊣
  B : Term
  t : Sorts
  H1 : Ax s1 t
  H2 : Γ ⊢ B ≡' !t
  ============================
   Γ ⊢ !s1 ▹ !s1 : B

subgoal 2 (ID 34554) is:
 exists Q : Term,
   (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
   (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

apply typ_pcompat with !t; intuition.
6 subgoals, subgoal 1 (ID 34554)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H2 : Γ ⊢ Π (A), B ▹ P : B0
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)


apply pgen_pi in H2.
6 subgoals, subgoal 1 (ID 34899)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H2 : exists (A' B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 /\
         (Γ ⊢ A ▹ A' : !s1) /\
         (A :: Γ ⊢ B ▹ B' : !s2) /\
         P = Π (A'), B' /\ (B0 = !s3 \/ Γ ⊢ B0 ≡' !s3)
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

destruct H2 as (A'' & B'' & t1 & t2 & t3 & h).
6 subgoals, subgoal 1 (ID 34919)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ A ▹ A'' : !t1) /\
      (A :: Γ ⊢ B ▹ B'' : !t2) /\
      P = Π (A''), B'' /\ (B0 = !t3 \/ Γ ⊢ B0 ≡' !t3)
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

decompose [and] h; clear h.
6 subgoals, subgoal 1 (ID 34941)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H5 : P = Π (A''), B''
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s3) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)


subst.
6 subgoals, subgoal 1 (ID 34944)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\
     (Γ ⊢ Π (A''), B'' ▹ Q : !s3) /\ Γ ⊢ Π (A''), B'' ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

destruct (IHtyp1 A'' !t1 H4) as ( QA & ? & ? & ?& ?).
6 subgoals, subgoal 1 (ID 34963)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\
     (Γ ⊢ Π (A''), B'' ▹ Q : !s3) /\ Γ ⊢ Π (A''), B'' ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)


destruct (IHtyp2 B'' !t2 H3) as (QB & ? & ? & ? & ?).
6 subgoals, subgoal 1 (ID 34982)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   exists Q : Term,
     (Γ ⊢ Π (A'), B' ▹ Q : !s3) /\
     (Γ ⊢ Π (A'), B' ▹ Q : B0) /\
     (Γ ⊢ Π (A''), B'' ▹ Q : !s3) /\ Γ ⊢ Π (A''), B'' ▹ Q : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)

exists (Pi QA QB); repeat split.
9 subgoals, subgoal 1 (ID 34986)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (QA), QB : !s3

subgoal 2 (ID 34989) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using ,)


econstructor.
11 subgoals, subgoal 1 (ID 34999)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Rel ?34997 ?34998 s3

subgoal 2 (ID 35000) is:
 Γ ⊢ A' ▹ QA : !?34997
subgoal 3 (ID 35001) is:
 A' :: Γ ⊢ B' ▹ QB : !?34998
subgoal 4 (ID 34989) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 5 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 6 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 7 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 open, ?34998 open,)

apply H.
10 subgoals, subgoal 1 (ID 35000)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ A' ▹ QA : !s1

subgoal 2 (ID 35001) is:
 A' :: Γ ⊢ B' ▹ QB : !s2
subgoal 3 (ID 34989) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 4 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 5 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 6 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using ,)

trivial.
9 subgoals, subgoal 1 (ID 35001)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   A' :: Γ ⊢ B' ▹ QB : !s2

subgoal 2 (ID 34989) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using ,)

eapply conv_in_env.
10 subgoals, subgoal 1 (ID 35003)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   ?35002 ⊢ B' ▹ QB : !s2

subgoal 2 (ID 35004) is:
 env_conv ?35002 (A' :: Γ)
subgoal 3 (ID 34989) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 4 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 5 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 6 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 open,)

apply H10.
9 subgoals, subgoal 1 (ID 35004)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 34989) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using ,)

eauto.
8 subgoals, subgoal 1 (ID 34989)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0

subgoal 2 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using ,)


destruct H7.
9 subgoals, subgoal 1 (ID 35030)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0

subgoal 2 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using ,)

subst.
9 subgoals, subgoal 1 (ID 35035)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (QA), QB : !t3

subgoal 2 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using ,)

econstructor.
11 subgoals, subgoal 1 (ID 35041)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Rel ?35039 ?35040 t3

subgoal 2 (ID 35042) is:
 Γ ⊢ A' ▹ QA : !?35039
subgoal 3 (ID 35043) is:
 A' :: Γ ⊢ B' ▹ QB : !?35040
subgoal 4 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 5 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 6 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 7 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 open, ?35040 open,)

apply H2.
10 subgoals, subgoal 1 (ID 35042)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ A' ▹ QA : !t1

subgoal 2 (ID 35043) is:
 A' :: Γ ⊢ B' ▹ QB : !t2
subgoal 3 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 4 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 5 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 6 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using ,)

trivial.
9 subgoals, subgoal 1 (ID 35043)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   A' :: Γ ⊢ B' ▹ QB : !t2

subgoal 2 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using ,)

eapply conv_in_env.
10 subgoals, subgoal 1 (ID 35045)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   ?35044 ⊢ B' ▹ QB : !t2

subgoal 2 (ID 35046) is:
 env_conv ?35044 (A' :: Γ)
subgoal 3 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 4 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 5 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 6 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 open,)

apply H11.
9 subgoals, subgoal 1 (ID 35046)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 35032) is:
 Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using ,)

eauto.
8 subgoals, subgoal 1 (ID 35032)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (QA), QB : B0

subgoal 2 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using ,)


apply typ_pcompat with !t3; intuition.
8 subgoals, subgoal 1 (ID 35067)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A'), B' ▹ Π (QA), QB : !t3

subgoal 2 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using ,)

econstructor.
10 subgoals, subgoal 1 (ID 35143)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Rel ?35141 ?35142 t3

subgoal 2 (ID 35144) is:
 Γ ⊢ A' ▹ QA : !?35141
subgoal 3 (ID 35145) is:
 A' :: Γ ⊢ B' ▹ QB : !?35142
subgoal 4 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 5 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 6 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 open, ?35142 open,)

apply H2.
9 subgoals, subgoal 1 (ID 35144)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ A' ▹ QA : !t1

subgoal 2 (ID 35145) is:
 A' :: Γ ⊢ B' ▹ QB : !t2
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using ,)

trivial.
8 subgoals, subgoal 1 (ID 35145)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   A' :: Γ ⊢ B' ▹ QB : !t2

subgoal 2 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using ,)


eapply conv_in_env.
9 subgoals, subgoal 1 (ID 35147)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   ?35146 ⊢ B' ▹ QB : !t2

subgoal 2 (ID 35148) is:
 env_conv ?35146 (A' :: Γ)
subgoal 3 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 open,)

apply H11.
8 subgoals, subgoal 1 (ID 35148)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 34992) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using ,)

eauto.
7 subgoals, subgoal 1 (ID 34992)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !s3

subgoal 2 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using ,)


econstructor.
9 subgoals, subgoal 1 (ID 35174)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Rel ?35172 ?35173 s3

subgoal 2 (ID 35175) is:
 Γ ⊢ A'' ▹ QA : !?35172
subgoal 3 (ID 35176) is:
 A'' :: Γ ⊢ B'' ▹ QB : !?35173
subgoal 4 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 open, ?35173 open,)

apply H.
8 subgoals, subgoal 1 (ID 35175)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ A'' ▹ QA : !s1

subgoal 2 (ID 35176) is:
 A'' :: Γ ⊢ B'' ▹ QB : !s2
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using ,)

trivial.
7 subgoals, subgoal 1 (ID 35176)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   A'' :: Γ ⊢ B'' ▹ QB : !s2

subgoal 2 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using ,)

eapply conv_in_env.
8 subgoals, subgoal 1 (ID 35178)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   ?35177 ⊢ B'' ▹ QB : !s2

subgoal 2 (ID 35179) is:
 env_conv ?35177 (A'' :: Γ)
subgoal 3 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 open,)

apply H12.
7 subgoals, subgoal 1 (ID 35179)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 34993) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using ,)

eauto.
6 subgoals, subgoal 1 (ID 34993)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3 \/ Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using ,)


destruct H7.
7 subgoals, subgoal 1 (ID 35205)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : B0 = !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0

subgoal 2 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using ,)

subst.
7 subgoals, subgoal 1 (ID 35210)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !t3

subgoal 2 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using ,)

econstructor.
9 subgoals, subgoal 1 (ID 35216)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Rel ?35214 ?35215 t3

subgoal 2 (ID 35217) is:
 Γ ⊢ A'' ▹ QA : !?35214
subgoal 3 (ID 35218) is:
 A'' :: Γ ⊢ B'' ▹ QB : !?35215
subgoal 4 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 5 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 open, ?35215 open,)

apply H2.
8 subgoals, subgoal 1 (ID 35217)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ A'' ▹ QA : !t1

subgoal 2 (ID 35218) is:
 A'' :: Γ ⊢ B'' ▹ QB : !t2
subgoal 3 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using ,)

trivial.
7 subgoals, subgoal 1 (ID 35218)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   A'' :: Γ ⊢ B'' ▹ QB : !t2

subgoal 2 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using ,)

eapply conv_in_env.
8 subgoals, subgoal 1 (ID 35220)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   ?35219 ⊢ B'' ▹ QB : !t2

subgoal 2 (ID 35221) is:
 env_conv ?35219 (A'' :: Γ)
subgoal 3 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 open,)

apply H13.
7 subgoals, subgoal 1 (ID 35221)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 35207) is:
 Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using ,)

eauto.
6 subgoals, subgoal 1 (ID 35207)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : B0

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using ,)


apply typ_pcompat with !t3; intuition.
6 subgoals, subgoal 1 (ID 35242)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ Π (A''), B'' ▹ Π (QA), QB : !t3

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using ,)

econstructor.
8 subgoals, subgoal 1 (ID 35318)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Rel ?35316 ?35317 t3

subgoal 2 (ID 35319) is:
 Γ ⊢ A'' ▹ QA : !?35316
subgoal 3 (ID 35320) is:
 A'' :: Γ ⊢ B'' ▹ QB : !?35317
subgoal 4 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 open, ?35317 open,)

apply H2.
7 subgoals, subgoal 1 (ID 35319)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   Γ ⊢ A'' ▹ QA : !t1

subgoal 2 (ID 35320) is:
 A'' :: Γ ⊢ B'' ▹ QB : !t2
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using ,)

trivial.
6 subgoals, subgoal 1 (ID 35320)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   A'' :: Γ ⊢ B'' ▹ QB : !t2

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using ,)

eapply conv_in_env.
7 subgoals, subgoal 1 (ID 35322)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   ?35321 ⊢ B'' ▹ QB : !t2

subgoal 2 (ID 35323) is:
 env_conv ?35321 (A'' :: Γ)
subgoal 3 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 open,)

apply H13.
6 subgoals, subgoal 1 (ID 35323)
  
  Γ : Env
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H2 : Rel t1 t2 t3
  H4 : Γ ⊢ A ▹ A'' : !t1
  H3 : A :: Γ ⊢ B ▹ B'' : !t2
  H7 : Γ ⊢ B0 ≡' !t3
  QA : Term
  H5 : Γ ⊢ A' ▹ QA : !s1
  H6 : Γ ⊢ A' ▹ QA : !t1
  H8 : Γ ⊢ A'' ▹ QA : !s1
  H9 : Γ ⊢ A'' ▹ QA : !t1
  QB : Term
  H10 : A :: Γ ⊢ B' ▹ QB : !s2
  H11 : A :: Γ ⊢ B' ▹ QB : !t2
  H12 : A :: Γ ⊢ B'' ▹ QB : !s2
  H13 : A :: Γ ⊢ B'' ▹ QB : !t2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 34557) is:
 exists Q : Term,
   (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
   (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using ,)

eauto.
5 subgoals, subgoal 1 (ID 34557)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H3 : Γ ⊢ λ [A], M ▹ P : B0
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)


apply pgen_la in H3.
5 subgoals, subgoal 1 (ID 35345)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H3 : exists (A' M' B : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 /\
         (Γ ⊢ A ▹ A' : !s1) /\
         (A :: Γ ⊢ M ▹ M' : B) /\
         (A :: Γ ⊢ B ▹ B : !s2) /\ P = λ [A'], M' /\ Γ ⊢ Π (A), B ≡' B0
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)

destruct H3 as (A'' & M'' & D & t1 & t2 & t3 & h).
5 subgoals, subgoal 1 (ID 35369)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ A ▹ A'' : !t1) /\
      (A :: Γ ⊢ M ▹ M'' : D) /\
      (A :: Γ ⊢ D ▹ D : !t2) /\ P = λ [A''], M'' /\ Γ ⊢ Π (A), D ≡' B0
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)


decompose [and] h; clear h.
5 subgoals, subgoal 1 (ID 35395)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H7 : P = λ [A''], M''
  H9 : Γ ⊢ Π (A), D ≡' B0
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)

subst.
5 subgoals, subgoal 1 (ID 35398)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\
     (Γ ⊢ λ [A''], M'' ▹ Q : Π (A), B) /\ Γ ⊢ λ [A''], M'' ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)

destruct (IHtyp1 A'' !t1 H5) as (QA & ? & ?& ?& ?).
5 subgoals, subgoal 1 (ID 35417)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\
     (Γ ⊢ λ [A''], M'' ▹ Q : Π (A), B) /\ Γ ⊢ λ [A''], M'' ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)


destruct (IHtyp3 M'' D H4) as (QM & ? & ? & ?& ?).
5 subgoals, subgoal 1 (ID 35436)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   exists Q : Term,
     (Γ ⊢ λ [A'], M' ▹ Q : Π (A), B) /\
     (Γ ⊢ λ [A'], M' ▹ Q : B0) /\
     (Γ ⊢ λ [A''], M'' ▹ Q : Π (A), B) /\ Γ ⊢ λ [A''], M'' ▹ Q : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)

exists (La QA QM); intuition.
8 subgoals, subgoal 1 (ID 35440)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [QA], QM : Π (A), B

subgoal 2 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)


eapply typ_exp with (Pi A' B) s3.
9 subgoals, subgoal 1 (ID 35604)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [QA], QM : Π (A'), B

subgoal 2 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using ,)

econstructor.
12 subgoals, subgoal 1 (ID 35613)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?35610 ?35611 ?35612

subgoal 2 (ID 35614) is:
 Γ ⊢ A' ▹ QA : !?35610
subgoal 3 (ID 35615) is:
 A' :: Γ ⊢ B ▹ B : !?35611
subgoal 4 (ID 35616) is:
 A' :: Γ ⊢ M' ▹ QM : B
subgoal 5 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 6 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 7 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 8 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 9 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 open, ?35611 open, ?35612 open,)

apply H.
11 subgoals, subgoal 1 (ID 35614)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A' ▹ QA : !s1

subgoal 2 (ID 35615) is:
 A' :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 35616) is:
 A' :: Γ ⊢ M' ▹ QM : B
subgoal 4 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 6 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 7 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 8 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using ,)

trivial.
10 subgoals, subgoal 1 (ID 35615)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A' :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 35616) is:
 A' :: Γ ⊢ M' ▹ QM : B
subgoal 3 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 5 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using ,)


eapply conv_in_env.
11 subgoals, subgoal 1 (ID 35618)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?35617 ⊢ B ▹ B : !s2

subgoal 2 (ID 35619) is:
 env_conv ?35617 (A' :: Γ)
subgoal 3 (ID 35616) is:
 A' :: Γ ⊢ M' ▹ QM : B
subgoal 4 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 5 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 6 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 7 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 8 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 open,)

apply H1.
10 subgoals, subgoal 1 (ID 35619)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 35616) is:
 A' :: Γ ⊢ M' ▹ QM : B
subgoal 3 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 5 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using ,)

eauto.
9 subgoals, subgoal 1 (ID 35616)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A' :: Γ ⊢ M' ▹ QM : B

subgoal 2 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using ,)

eapply conv_in_env.
10 subgoals, subgoal 1 (ID 35641)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?35640 ⊢ M' ▹ QM : B

subgoal 2 (ID 35642) is:
 env_conv ?35640 (A' :: Γ)
subgoal 3 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 4 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 5 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 open,)

apply H12.
9 subgoals, subgoal 1 (ID 35642)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 35605) is:
 Γ ⊢ Π (A), B ▹ Π (A'), B : !s3
subgoal 3 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using ,)

eauto.
8 subgoals, subgoal 1 (ID 35605)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ Π (A), B ▹ Π (A'), B : !s3

subgoal 2 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using ,)


econstructor.
10 subgoals, subgoal 1 (ID 35668)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?35666 ?35667 s3

subgoal 2 (ID 35669) is:
 Γ ⊢ A ▹ A' : !?35666
subgoal 3 (ID 35670) is:
 A :: Γ ⊢ B ▹ B : !?35667
subgoal 4 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 5 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 open, ?35667 open,)

apply H.
9 subgoals, subgoal 1 (ID 35669)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ A' : !s1

subgoal 2 (ID 35670) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using ,)

trivial.
8 subgoals, subgoal 1 (ID 35670)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using ,)

apply red_refl_lt in H1.
8 subgoals, subgoal 1 (ID 35672)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 35443) is:
 Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using ,)

trivial.
7 subgoals, subgoal 1 (ID 35443)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [QA], QM : B0

subgoal 2 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using ,)


apply typ_pcompat with (Pi A D); trivial.
7 subgoals, subgoal 1 (ID 35673)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [QA], QM : Π (A), D

subgoal 2 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using ,)

apply typ_exp with (Pi A' D) t3.
8 subgoals, subgoal 1 (ID 35675)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A'], M' ▹ λ [QA], QM : Π (A'), D

subgoal 2 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using ,)


econstructor.
11 subgoals, subgoal 1 (ID 35684)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?35681 ?35682 ?35683

subgoal 2 (ID 35685) is:
 Γ ⊢ A' ▹ QA : !?35681
subgoal 3 (ID 35686) is:
 A' :: Γ ⊢ D ▹ D : !?35682
subgoal 4 (ID 35687) is:
 A' :: Γ ⊢ M' ▹ QM : D
subgoal 5 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 6 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 7 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 8 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 open, ?35682 open, ?35683 open,)

apply H3.
10 subgoals, subgoal 1 (ID 35685)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A' ▹ QA : !t1

subgoal 2 (ID 35686) is:
 A' :: Γ ⊢ D ▹ D : !t2
subgoal 3 (ID 35687) is:
 A' :: Γ ⊢ M' ▹ QM : D
subgoal 4 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 5 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using ,)

trivial.
9 subgoals, subgoal 1 (ID 35686)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A' :: Γ ⊢ D ▹ D : !t2

subgoal 2 (ID 35687) is:
 A' :: Γ ⊢ M' ▹ QM : D
subgoal 3 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using ,)

eapply conv_in_env.
10 subgoals, subgoal 1 (ID 35689)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?35688 ⊢ D ▹ D : !t2

subgoal 2 (ID 35690) is:
 env_conv ?35688 (A' :: Γ)
subgoal 3 (ID 35687) is:
 A' :: Γ ⊢ M' ▹ QM : D
subgoal 4 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 5 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 open,)

apply H6.
9 subgoals, subgoal 1 (ID 35690)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 35687) is:
 A' :: Γ ⊢ M' ▹ QM : D
subgoal 3 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using ,)

eauto.
8 subgoals, subgoal 1 (ID 35687)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A' :: Γ ⊢ M' ▹ QM : D

subgoal 2 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using ,)


eauto.
8 subgoals, subgoal 1 (ID 35687)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A' :: Γ ⊢ M' ▹ QM : D

subgoal 2 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using ,)

eapply conv_in_env.
9 subgoals, subgoal 1 (ID 35960)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?35959 ⊢ M' ▹ QM : D

subgoal 2 (ID 35961) is:
 env_conv ?35959 (A' :: Γ)
subgoal 3 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 open,)

apply H13.
8 subgoals, subgoal 1 (ID 35961)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 35676) is:
 Γ ⊢ Π (A), D ▹ Π (A'), D : !t3
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using ,)

eauto.
7 subgoals, subgoal 1 (ID 35676)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ Π (A), D ▹ Π (A'), D : !t3

subgoal 2 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using ,)

econstructor.
9 subgoals, subgoal 1 (ID 35987)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?35985 ?35986 t3

subgoal 2 (ID 35988) is:
 Γ ⊢ A ▹ A' : !?35985
subgoal 3 (ID 35989) is:
 A :: Γ ⊢ D ▹ D : !?35986
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 open, ?35986 open,)

apply H3.
8 subgoals, subgoal 1 (ID 35988)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ A' : !t1

subgoal 2 (ID 35989) is:
 A :: Γ ⊢ D ▹ D : !t2
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using ,)

eapply relocate.
9 subgoals, subgoal 1 (ID 35997)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ ?35996 : !t1

subgoal 2 (ID 35999) is:
 Γ ⊢ A ▹ A' : ?35998
subgoal 3 (ID 35989) is:
 A :: Γ ⊢ D ▹ D : !t2
subgoal 4 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 open, ?35998 open,)

apply H5.
8 subgoals, subgoal 1 (ID 35999)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ A' : ?35998

subgoal 2 (ID 35989) is:
 A :: Γ ⊢ D ▹ D : !t2
subgoal 3 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 open,)

apply H0.
7 subgoals, subgoal 1 (ID 35989)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A :: Γ ⊢ D ▹ D : !t2

subgoal 2 (ID 35446) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using ,)

apply red_refl_lt in H6; trivial.
6 subgoals, subgoal 1 (ID 35446)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), B

subgoal 2 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using ,)


eapply typ_exp with (Pi A'' B) s3.
7 subgoals, subgoal 1 (ID 36002)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A''), B

subgoal 2 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using ,)

econstructor.
10 subgoals, subgoal 1 (ID 36011)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?36008 ?36009 ?36010

subgoal 2 (ID 36012) is:
 Γ ⊢ A'' ▹ QA : !?36008
subgoal 3 (ID 36013) is:
 A'' :: Γ ⊢ B ▹ B : !?36009
subgoal 4 (ID 36014) is:
 A'' :: Γ ⊢ M'' ▹ QM : B
subgoal 5 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 6 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 7 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 open, ?36009 open, ?36010 open,)

apply H.
9 subgoals, subgoal 1 (ID 36012)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A'' ▹ QA : !s1

subgoal 2 (ID 36013) is:
 A'' :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 36014) is:
 A'' :: Γ ⊢ M'' ▹ QM : B
subgoal 4 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using ,)

trivial.
8 subgoals, subgoal 1 (ID 36013)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A'' :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 36014) is:
 A'' :: Γ ⊢ M'' ▹ QM : B
subgoal 3 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using ,)


eapply conv_in_env.
9 subgoals, subgoal 1 (ID 36016)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?36015 ⊢ B ▹ B : !s2

subgoal 2 (ID 36017) is:
 env_conv ?36015 (A'' :: Γ)
subgoal 3 (ID 36014) is:
 A'' :: Γ ⊢ M'' ▹ QM : B
subgoal 4 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 5 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 open,)

apply H1.
8 subgoals, subgoal 1 (ID 36017)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 36014) is:
 A'' :: Γ ⊢ M'' ▹ QM : B
subgoal 3 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using ,)

eauto.
7 subgoals, subgoal 1 (ID 36014)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A'' :: Γ ⊢ M'' ▹ QM : B

subgoal 2 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using ,)

eapply conv_in_env.
8 subgoals, subgoal 1 (ID 36039)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?36038 ⊢ M'' ▹ QM : B

subgoal 2 (ID 36040) is:
 env_conv ?36038 (A'' :: Γ)
subgoal 3 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 open,)

apply H14.
7 subgoals, subgoal 1 (ID 36040)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 36003) is:
 Γ ⊢ Π (A), B ▹ Π (A''), B : !s3
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using ,)

eauto.
6 subgoals, subgoal 1 (ID 36003)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ Π (A), B ▹ Π (A''), B : !s3

subgoal 2 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using ,)


econstructor.
8 subgoals, subgoal 1 (ID 36066)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?36064 ?36065 s3

subgoal 2 (ID 36067) is:
 Γ ⊢ A ▹ A'' : !?36064
subgoal 3 (ID 36068) is:
 A :: Γ ⊢ B ▹ B : !?36065
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 open, ?36065 open,)

apply H.
7 subgoals, subgoal 1 (ID 36067)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ A'' : !s1

subgoal 2 (ID 36068) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using ,)

eapply relocate.
8 subgoals, subgoal 1 (ID 36076)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ ?36075 : !s1

subgoal 2 (ID 36078) is:
 Γ ⊢ A ▹ A'' : ?36077
subgoal 3 (ID 36068) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 4 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 open, ?36077 open,)

apply H0.
7 subgoals, subgoal 1 (ID 36078)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ A'' : ?36077

subgoal 2 (ID 36068) is:
 A :: Γ ⊢ B ▹ B : !s2
subgoal 3 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 open,)

apply H5.
6 subgoals, subgoal 1 (ID 36068)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using ,)

apply red_refl_lt in H1.
6 subgoals, subgoal 1 (ID 36080)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 35447) is:
 Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using ,)

trivial.
5 subgoals, subgoal 1 (ID 35447)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : B0

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using ,)


apply typ_pcompat with (Pi A D); trivial.
5 subgoals, subgoal 1 (ID 36081)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A), D

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using ,)

apply typ_exp with (Pi A'' D) t3.
6 subgoals, subgoal 1 (ID 36083)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ λ [A''], M'' ▹ λ [QA], QM : Π (A''), D

subgoal 2 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using ,)


econstructor.
9 subgoals, subgoal 1 (ID 36092)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?36089 ?36090 ?36091

subgoal 2 (ID 36093) is:
 Γ ⊢ A'' ▹ QA : !?36089
subgoal 3 (ID 36094) is:
 A'' :: Γ ⊢ D ▹ D : !?36090
subgoal 4 (ID 36095) is:
 A'' :: Γ ⊢ M'' ▹ QM : D
subgoal 5 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 6 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 open, ?36090 open, ?36091 open,)

apply H3.
8 subgoals, subgoal 1 (ID 36093)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A'' ▹ QA : !t1

subgoal 2 (ID 36094) is:
 A'' :: Γ ⊢ D ▹ D : !t2
subgoal 3 (ID 36095) is:
 A'' :: Γ ⊢ M'' ▹ QM : D
subgoal 4 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using ,)

trivial.
7 subgoals, subgoal 1 (ID 36094)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A'' :: Γ ⊢ D ▹ D : !t2

subgoal 2 (ID 36095) is:
 A'' :: Γ ⊢ M'' ▹ QM : D
subgoal 3 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using ,)

eapply conv_in_env.
8 subgoals, subgoal 1 (ID 36097)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?36096 ⊢ D ▹ D : !t2

subgoal 2 (ID 36098) is:
 env_conv ?36096 (A'' :: Γ)
subgoal 3 (ID 36095) is:
 A'' :: Γ ⊢ M'' ▹ QM : D
subgoal 4 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 5 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 open,)

apply H6.
7 subgoals, subgoal 1 (ID 36098)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 36095) is:
 A'' :: Γ ⊢ M'' ▹ QM : D
subgoal 3 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using ,)

eauto.
6 subgoals, subgoal 1 (ID 36095)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A'' :: Γ ⊢ M'' ▹ QM : D

subgoal 2 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using ,)


eapply conv_in_env.
7 subgoals, subgoal 1 (ID 36120)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   ?36119 ⊢ M'' ▹ QM : D

subgoal 2 (ID 36121) is:
 env_conv ?36119 (A'' :: Γ)
subgoal 3 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 open,)

apply H15.
6 subgoals, subgoal 1 (ID 36121)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 36084) is:
 Γ ⊢ Π (A), D ▹ Π (A''), D : !t3
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using ,)

eauto.
5 subgoals, subgoal 1 (ID 36084)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ Π (A), D ▹ Π (A''), D : !t3

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using ,)

econstructor.
7 subgoals, subgoal 1 (ID 36147)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Rel ?36145 ?36146 t3

subgoal 2 (ID 36148) is:
 Γ ⊢ A ▹ A'' : !?36145
subgoal 3 (ID 36149) is:
 A :: Γ ⊢ D ▹ D : !?36146
subgoal 4 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 open, ?36146 open,)

apply H3.
6 subgoals, subgoal 1 (ID 36148)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   Γ ⊢ A ▹ A'' : !t1

subgoal 2 (ID 36149) is:
 A :: Γ ⊢ D ▹ D : !t2
subgoal 3 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

trivial.
5 subgoals, subgoal 1 (ID 36149)
  
  Γ : Env
  A : Term
  A' : Term
  B : Term
  M : Term
  M' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B : !s2
  H2 : A :: Γ ⊢ M ▹ M' : B
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ A ▹ A'' : !t1
  H4 : A :: Γ ⊢ M ▹ M'' : D
  H6 : A :: Γ ⊢ D ▹ D : !t2
  H9 : Γ ⊢ Π (A), D ≡' B0
  QA : Term
  H7 : Γ ⊢ A' ▹ QA : !s1
  H8 : Γ ⊢ A' ▹ QA : !t1
  H10 : Γ ⊢ A'' ▹ QA : !s1
  H11 : Γ ⊢ A'' ▹ QA : !t1
  QM : Term
  H12 : A :: Γ ⊢ M' ▹ QM : B
  H13 : A :: Γ ⊢ M' ▹ QM : D
  H14 : A :: Γ ⊢ M'' ▹ QM : B
  H15 : A :: Γ ⊢ M'' ▹ QM : D
  ============================
   A :: Γ ⊢ D ▹ D : !t2

subgoal 2 (ID 34560) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

apply red_refl_lt in H6; trivial.
4 subgoals, subgoal 1 (ID 34560)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  H5 : Γ ⊢ M ·( A, B)N ▹ P : B0
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


apply pgen_app in H5 as (C & C' & D' & N'' & t1 & t2 & t3 & h).
4 subgoals, subgoal 1 (ID 36181)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ C ▹ C' : !t1) /\
      (C :: Γ ⊢ B ▹ D' : !t2) /\
      (Γ ⊢ N ▹ N'' : C) /\
      (Γ ⊢ B [ ← N] ≡' B0) /\
      ((exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ P = W' ·( C', D')N'') \/
       (exists K0 K K' T T' : Term,
          A = K /\
          M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1))
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 36207)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  H11 : (exists W' : Term,
           (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ P = W' ·( C', D')N'') \/
        (exists K0 K K' T T' : Term,
           A = K /\
           M = λ [C], T /\
           (C :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


destruct (IHtyp4 N'' C H8) as (QN & ?& ? &? & ?).
4 subgoals, subgoal 1 (ID 36226)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  H11 : (exists W' : Term,
           (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ P = W' ·( C', D')N'') \/
        (exists K0 K K' T T' : Term,
           A = K /\
           M = λ [C], T /\
           (C :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  QN : Term
  H10 : Γ ⊢ N' ▹ QN : A
  H12 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : A
  H14 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

clear IHtyp4.
4 subgoals, subgoal 1 (ID 36227)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  H11 : (exists W' : Term,
           (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ P = W' ·( C', D')N'') \/
        (exists K0 K K' T T' : Term,
           A = K /\
           M = λ [C], T /\
           (C :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  QN : Term
  H10 : Γ ⊢ N' ▹ QN : A
  H12 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : A
  H14 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

destruct H11.
5 subgoals, subgoal 1 (ID 36233)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  H11 : exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ P = W' ·( C', D')N''
  QN : Term
  H10 : Γ ⊢ N' ▹ QN : A
  H12 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : A
  H14 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


destruct H11 as (M'' & ? & ? & -> ).
5 subgoals, subgoal 1 (ID 36253)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  H15 : A = C
  QN : Term
  H10 : Γ ⊢ N' ▹ QN : A
  H12 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : A
  H14 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

subst.
5 subgoals, subgoal 1 (ID 36266)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B' ▹ Q : !s2) /\
             (C :: Γ ⊢ B' ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (C), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (C), B) /\ Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


destruct (IHtyp2 D' !t2) as (QB & ? & ?& ?& ?).
6 subgoals, subgoal 1 (ID 36272)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B' ▹ Q : !s2) /\
             (C :: Γ ⊢ B' ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (C), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (C), B) /\ Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  ============================
   C :: Γ ⊢ B ▹ D' : !t2

subgoal 2 (ID 36288) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

trivial.
5 subgoals, subgoal 1 (ID 36288)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B' ▹ Q : !s2) /\
             (C :: Γ ⊢ B' ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (C), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (C), B) /\ Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

clear IHtyp2.
5 subgoals, subgoal 1 (ID 36289)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (C), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (C), B) /\ Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


destruct (IHtyp3 M'' (Pi C B) H11) as (QM & ?& ? & ? & ?).
5 subgoals, subgoal 1 (ID 36308)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (C), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (C), B) /\ Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

clear IHtyp3.
5 subgoals, subgoal 1 (ID 36309)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


destruct (IHtyp1 C' !t1 H7) as (QC & ? & ?& ? & ?).
5 subgoals, subgoal 1 (ID 36328)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ M'' ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ M'' ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


exists (App QM QC QB QN); intuition.
8 subgoals, subgoal 1 (ID 36332)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B [ ← N]

subgoal 2 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)


apply typ_exp with (B' [← N']) s2.
9 subgoals, subgoal 1 (ID 36556)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B' [ ← N']

subgoal 2 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using ,)

econstructor.
13 subgoals, subgoal 1 (ID 36566)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36563 ?36564 ?36565

subgoal 2 (ID 36567) is:
 Γ ⊢ A' ▹ QC : !?36563
subgoal 3 (ID 36568) is:
 A' :: Γ ⊢ B' ▹ QB : !?36564
subgoal 4 (ID 36569) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 5 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 6 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 7 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 9 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 10 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 open, ?36564 open, ?36565 open,)

apply H.
12 subgoals, subgoal 1 (ID 36567)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ A' ▹ QC : !s1

subgoal 2 (ID 36568) is:
 A' :: Γ ⊢ B' ▹ QB : !s2
subgoal 3 (ID 36569) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 4 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 5 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 8 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 9 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using ,)

trivial.
11 subgoals, subgoal 1 (ID 36568)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   A' :: Γ ⊢ B' ▹ QB : !s2

subgoal 2 (ID 36569) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 3 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using ,)


eapply conv_in_env.
12 subgoals, subgoal 1 (ID 36572)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?36571 ⊢ B' ▹ QB : !s2

subgoal 2 (ID 36573) is:
 env_conv ?36571 (A' :: Γ)
subgoal 3 (ID 36569) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 4 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 5 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 8 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 9 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 open,)

apply H15.
11 subgoals, subgoal 1 (ID 36573)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   env_conv (C :: Γ) (A' :: Γ)

subgoal 2 (ID 36569) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 3 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using ,)

eauto.
10 subgoals, subgoal 1 (ID 36569)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ▹ QM : Π (A'), B'

subgoal 2 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 3 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using ,)

apply typ_red with (Pi C B) s3.
11 subgoals, subgoal 1 (ID 36594)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ▹ QM : Π (C), B

subgoal 2 (ID 36595) is:
 Γ ⊢ Π (C), B ▹ Π (A'), B' : !s3
subgoal 3 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using ,)

trivial.
10 subgoals, subgoal 1 (ID 36595)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ Π (C), B ▹ Π (A'), B' : !s3

subgoal 2 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 3 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using ,)

econstructor.
12 subgoals, subgoal 1 (ID 36601)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36599 ?36600 s3

subgoal 2 (ID 36602) is:
 Γ ⊢ C ▹ A' : !?36599
subgoal 3 (ID 36603) is:
 C :: Γ ⊢ B ▹ B' : !?36600
subgoal 4 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 5 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 8 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 9 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 open, ?36600 open,)


apply H.
11 subgoals, subgoal 1 (ID 36602)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C ▹ A' : !s1

subgoal 2 (ID 36603) is:
 C :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using ,)

trivial.
10 subgoals, subgoal 1 (ID 36603)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   C :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 36570) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 3 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using ,)

trivial.
9 subgoals, subgoal 1 (ID 36570)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N' ▹ QN : A'

subgoal 2 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using ,)

apply typ_pcompat with C; trivial.
9 subgoals, subgoal 1 (ID 36605)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C ≡' A'

subgoal 2 (ID 36557) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using ,)

eauto.
8 subgoals, subgoal 1 (ID 36557)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2

subgoal 2 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using ,)


change !s2 with (!s2 [ N ]).
8 subgoals, subgoal 1 (ID 36673)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using ,)

eapply subst_gen.
10 subgoals, subgoal 1 (ID 36689)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?36688 ⊢ B ▹ B' : !s2

subgoal 2 (ID 36692) is:
 sub_in_env ?36690 N ?36691 0 ?36688 Γ
subgoal 3 (ID 36693) is:
 ?36690 ⊢ N ▹ N' : ?36691
subgoal 4 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 open, ?36690 open, ?36691 open,)

apply H1.
9 subgoals, subgoal 1 (ID 36692)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   sub_in_env ?36690 N ?36691 0 (C :: Γ) Γ

subgoal 2 (ID 36693) is:
 ?36690 ⊢ N ▹ N' : ?36691
subgoal 3 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 open, ?36691 open,)

constructor.
8 subgoals, subgoal 1 (ID 36693)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N ▹ N' : C

subgoal 2 (ID 36335) is:
 Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using ,)

trivial.
7 subgoals, subgoal 1 (ID 36335)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B0

subgoal 2 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using ,)


apply typ_pcompat with (B [← N]); trivial.
7 subgoals, subgoal 1 (ID 36695)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B [ ← N]

subgoal 2 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using ,)


apply typ_exp with (B' [← N']) s2.
8 subgoals, subgoal 1 (ID 36697)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ·( A', B')N' ▹ QM ·( QC, QB)QN : B' [ ← N']

subgoal 2 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using ,)

econstructor.
12 subgoals, subgoal 1 (ID 36707)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36704 ?36705 ?36706

subgoal 2 (ID 36708) is:
 Γ ⊢ A' ▹ QC : !?36704
subgoal 3 (ID 36709) is:
 A' :: Γ ⊢ B' ▹ QB : !?36705
subgoal 4 (ID 36710) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 5 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 6 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 7 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 8 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 9 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 open, ?36705 open, ?36706 open,)

apply H.
11 subgoals, subgoal 1 (ID 36708)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ A' ▹ QC : !s1

subgoal 2 (ID 36709) is:
 A' :: Γ ⊢ B' ▹ QB : !s2
subgoal 3 (ID 36710) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 4 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 5 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using ,)

trivial.
10 subgoals, subgoal 1 (ID 36709)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   A' :: Γ ⊢ B' ▹ QB : !s2

subgoal 2 (ID 36710) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 3 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using ,)

eapply conv_in_env.
11 subgoals, subgoal 1 (ID 36713)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?36712 ⊢ B' ▹ QB : !s2

subgoal 2 (ID 36714) is:
 env_conv ?36712 (A' :: Γ)
subgoal 3 (ID 36710) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 4 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 5 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 open,)

apply H15.
10 subgoals, subgoal 1 (ID 36714)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   env_conv (C :: Γ) (A' :: Γ)

subgoal 2 (ID 36710) is:
 Γ ⊢ M' ▹ QM : Π (A'), B'
subgoal 3 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using ,)

eauto.
9 subgoals, subgoal 1 (ID 36710)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ▹ QM : Π (A'), B'

subgoal 2 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 3 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using ,)


apply typ_red with (Pi C B) s3.
10 subgoals, subgoal 1 (ID 36735)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M' ▹ QM : Π (C), B

subgoal 2 (ID 36736) is:
 Γ ⊢ Π (C), B ▹ Π (A'), B' : !s3
subgoal 3 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using ,)

trivial.
9 subgoals, subgoal 1 (ID 36736)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ Π (C), B ▹ Π (A'), B' : !s3

subgoal 2 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 3 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using ,)

econstructor.
11 subgoals, subgoal 1 (ID 36742)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36740 ?36741 s3

subgoal 2 (ID 36743) is:
 Γ ⊢ C ▹ A' : !?36740
subgoal 3 (ID 36744) is:
 C :: Γ ⊢ B ▹ B' : !?36741
subgoal 4 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 5 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 open, ?36741 open,)

apply H.
10 subgoals, subgoal 1 (ID 36743)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C ▹ A' : !s1

subgoal 2 (ID 36744) is:
 C :: Γ ⊢ B ▹ B' : !s2
subgoal 3 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 4 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using ,)

trivial.
9 subgoals, subgoal 1 (ID 36744)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   C :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 36711) is:
 Γ ⊢ N' ▹ QN : A'
subgoal 3 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using ,)

trivial.
8 subgoals, subgoal 1 (ID 36711)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N' ▹ QN : A'

subgoal 2 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using ,)

apply typ_pcompat with C; trivial.
8 subgoals, subgoal 1 (ID 36746)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C ≡' A'

subgoal 2 (ID 36698) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using ,)

eauto.
7 subgoals, subgoal 1 (ID 36698)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2

subgoal 2 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using ,)


change !s2 with (!s2 [ N ]).
7 subgoals, subgoal 1 (ID 36814)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using ,)

eapply subst_gen.
9 subgoals, subgoal 1 (ID 36830)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?36829 ⊢ B ▹ B' : !s2

subgoal 2 (ID 36833) is:
 sub_in_env ?36831 N ?36832 0 ?36829 Γ
subgoal 3 (ID 36834) is:
 ?36831 ⊢ N ▹ N' : ?36832
subgoal 4 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 open, ?36831 open, ?36832 open,)

apply H1.
8 subgoals, subgoal 1 (ID 36833)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   sub_in_env ?36831 N ?36832 0 (C :: Γ) Γ

subgoal 2 (ID 36834) is:
 ?36831 ⊢ N ▹ N' : ?36832
subgoal 3 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 open, ?36832 open,)

constructor.
7 subgoals, subgoal 1 (ID 36834)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N ▹ N' : C

subgoal 2 (ID 36338) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using ,)

trivial.
6 subgoals, subgoal 1 (ID 36338)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]

subgoal 2 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using ,)


apply typ_exp with (D' [← N'']) t2.
7 subgoals, subgoal 1 (ID 36836)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : D' [ ← N'']

subgoal 2 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using ,)

econstructor.
11 subgoals, subgoal 1 (ID 36846)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36843 ?36844 ?36845

subgoal 2 (ID 36847) is:
 Γ ⊢ C' ▹ QC : !?36843
subgoal 3 (ID 36848) is:
 C' :: Γ ⊢ D' ▹ QB : !?36844
subgoal 4 (ID 36849) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 5 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 6 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 7 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 8 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 open, ?36844 open, ?36845 open,)

apply H5.
10 subgoals, subgoal 1 (ID 36847)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C' ▹ QC : !t1

subgoal 2 (ID 36848) is:
 C' :: Γ ⊢ D' ▹ QB : !t2
subgoal 3 (ID 36849) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 4 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 5 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using ,)

trivial.
9 subgoals, subgoal 1 (ID 36848)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   C' :: Γ ⊢ D' ▹ QB : !t2

subgoal 2 (ID 36849) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 3 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using ,)

eapply conv_in_env.
10 subgoals, subgoal 1 (ID 36852)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?36851 ⊢ D' ▹ QB : !t2

subgoal 2 (ID 36853) is:
 env_conv ?36851 (C' :: Γ)
subgoal 3 (ID 36849) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 4 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 5 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 open,)

apply H18.
9 subgoals, subgoal 1 (ID 36853)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   env_conv (C :: Γ) (C' :: Γ)

subgoal 2 (ID 36849) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 3 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using ,)

eauto.
8 subgoals, subgoal 1 (ID 36849)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ▹ QM : Π (C'), D'

subgoal 2 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 3 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using ,)


apply typ_red with (Pi C B) t3.
9 subgoals, subgoal 1 (ID 36874)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ▹ QM : Π (C), B

subgoal 2 (ID 36875) is:
 Γ ⊢ Π (C), B ▹ Π (C'), D' : !t3
subgoal 3 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using ,)

trivial.
8 subgoals, subgoal 1 (ID 36875)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ Π (C), B ▹ Π (C'), D' : !t3

subgoal 2 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 3 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using ,)

econstructor.
10 subgoals, subgoal 1 (ID 36881)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36879 ?36880 t3

subgoal 2 (ID 36882) is:
 Γ ⊢ C ▹ C' : !?36879
subgoal 3 (ID 36883) is:
 C :: Γ ⊢ B ▹ D' : !?36880
subgoal 4 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 5 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 open, ?36880 open,)

apply H5.
9 subgoals, subgoal 1 (ID 36882)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C ▹ C' : !t1

subgoal 2 (ID 36883) is:
 C :: Γ ⊢ B ▹ D' : !t2
subgoal 3 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using ,)

trivial.
8 subgoals, subgoal 1 (ID 36883)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   C :: Γ ⊢ B ▹ D' : !t2

subgoal 2 (ID 36850) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 3 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using ,)

trivial.
7 subgoals, subgoal 1 (ID 36850)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N'' ▹ QN : C'

subgoal 2 (ID 36837) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using ,)

apply typ_pcompat with C; eauto.
6 subgoals, subgoal 1 (ID 36837)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2

subgoal 2 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using ,)


change !t2 with (!t2 [ N ]).
6 subgoals, subgoal 1 (ID 36961)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2 [ ← N]

subgoal 2 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using ,)

eapply subst_gen.
8 subgoals, subgoal 1 (ID 36977)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?36976 ⊢ B ▹ D' : !t2

subgoal 2 (ID 36980) is:
 sub_in_env ?36978 N ?36979 0 ?36976 Γ
subgoal 3 (ID 36981) is:
 ?36978 ⊢ N ▹ N'' : ?36979
subgoal 4 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 open, ?36978 open, ?36979 open,)

apply H6.
7 subgoals, subgoal 1 (ID 36980)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   sub_in_env ?36978 N ?36979 0 (C :: Γ) Γ

subgoal 2 (ID 36981) is:
 ?36978 ⊢ N ▹ N'' : ?36979
subgoal 3 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 open, ?36979 open,)

constructor.
6 subgoals, subgoal 1 (ID 36981)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 36339) is:
 Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using ,)

trivial.
5 subgoals, subgoal 1 (ID 36339)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B0

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using ,)


apply typ_pcompat with (B [← N]); trivial.
5 subgoals, subgoal 1 (ID 36983)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : B [ ← N]

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using ,)


apply typ_exp with (D' [← N'']) t2.
6 subgoals, subgoal 1 (ID 36985)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ·( C', D')N'' ▹ QM ·( QC, QB)QN : D' [ ← N'']

subgoal 2 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using ,)

econstructor.
10 subgoals, subgoal 1 (ID 36995)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?36992 ?36993 ?36994

subgoal 2 (ID 36996) is:
 Γ ⊢ C' ▹ QC : !?36992
subgoal 3 (ID 36997) is:
 C' :: Γ ⊢ D' ▹ QB : !?36993
subgoal 4 (ID 36998) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 5 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 6 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 7 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 open, ?36993 open, ?36994 open,)

apply H5.
9 subgoals, subgoal 1 (ID 36996)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C' ▹ QC : !t1

subgoal 2 (ID 36997) is:
 C' :: Γ ⊢ D' ▹ QB : !t2
subgoal 3 (ID 36998) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 4 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 5 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using ,)

trivial.
8 subgoals, subgoal 1 (ID 36997)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   C' :: Γ ⊢ D' ▹ QB : !t2

subgoal 2 (ID 36998) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 3 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using ,)

eapply conv_in_env.
9 subgoals, subgoal 1 (ID 37001)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?37000 ⊢ D' ▹ QB : !t2

subgoal 2 (ID 37002) is:
 env_conv ?37000 (C' :: Γ)
subgoal 3 (ID 36998) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 4 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 5 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 open,)

apply H18.
8 subgoals, subgoal 1 (ID 37002)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   env_conv (C :: Γ) (C' :: Γ)

subgoal 2 (ID 36998) is:
 Γ ⊢ M'' ▹ QM : Π (C'), D'
subgoal 3 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using ,)

eauto.
7 subgoals, subgoal 1 (ID 36998)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ▹ QM : Π (C'), D'

subgoal 2 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 3 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using ,)


apply typ_red with (Pi C B) t3.
8 subgoals, subgoal 1 (ID 37023)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ M'' ▹ QM : Π (C), B

subgoal 2 (ID 37024) is:
 Γ ⊢ Π (C), B ▹ Π (C'), D' : !t3
subgoal 3 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using ,)

trivial.
7 subgoals, subgoal 1 (ID 37024)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ Π (C), B ▹ Π (C'), D' : !t3

subgoal 2 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 3 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using ,)

econstructor.
9 subgoals, subgoal 1 (ID 37030)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Rel ?37028 ?37029 t3

subgoal 2 (ID 37031) is:
 Γ ⊢ C ▹ C' : !?37028
subgoal 3 (ID 37032) is:
 C :: Γ ⊢ B ▹ D' : !?37029
subgoal 4 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 5 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 open, ?37029 open,)

apply H5.
8 subgoals, subgoal 1 (ID 37031)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ C ▹ C' : !t1

subgoal 2 (ID 37032) is:
 C :: Γ ⊢ B ▹ D' : !t2
subgoal 3 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 4 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using ,)

trivial.
7 subgoals, subgoal 1 (ID 37032)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   C :: Γ ⊢ B ▹ D' : !t2

subgoal 2 (ID 36999) is:
 Γ ⊢ N'' ▹ QN : C'
subgoal 3 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using ,)

trivial.
6 subgoals, subgoal 1 (ID 36999)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N'' ▹ QN : C'

subgoal 2 (ID 36986) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using ,)

apply typ_pcompat with C; eauto.
5 subgoals, subgoal 1 (ID 36986)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using ,)


change !t2 with (!t2 [ N ]).
5 subgoals, subgoal 1 (ID 37110)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2 [ ← N]

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using ,)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 37126)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   ?37125 ⊢ B ▹ D' : !t2

subgoal 2 (ID 37129) is:
 sub_in_env ?37127 N ?37128 0 ?37125 Γ
subgoal 3 (ID 37130) is:
 ?37127 ⊢ N ▹ N'' : ?37128
subgoal 4 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 open, ?37127 open, ?37128 open,)

apply H6.
6 subgoals, subgoal 1 (ID 37129)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   sub_in_env ?37127 N ?37128 0 (C :: Γ) Γ

subgoal 2 (ID 37130) is:
 ?37127 ⊢ N ▹ N'' : ?37128
subgoal 3 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 open, ?37128 open,)

constructor.
5 subgoals, subgoal 1 (ID 37130)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  M'' : Term
  H11 : Γ ⊢ M ▹ M'' : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ A' : !s1
  H1 : C :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (C), B
  H4 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  H10 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : C
  QB : Term
  H15 : C :: Γ ⊢ B' ▹ QB : !s2
  H16 : C :: Γ ⊢ B' ▹ QB : !t2
  H17 : C :: Γ ⊢ D' ▹ QB : !s2
  H18 : C :: Γ ⊢ D' ▹ QB : !t2
  QM : Term
  H19 : Γ ⊢ M' ▹ QM : Π (C), B
  H20 : Γ ⊢ M' ▹ QM : Π (C), B
  H21 : Γ ⊢ M'' ▹ QM : Π (C), B
  H22 : Γ ⊢ M'' ▹ QM : Π (C), B
  QC : Term
  H23 : Γ ⊢ A' ▹ QC : !s1
  H24 : Γ ⊢ A' ▹ QC : !t1
  H25 : Γ ⊢ C' ▹ QC : !s1
  H26 : Γ ⊢ C' ▹ QC : !t1
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 36235) is:
 exists Q : Term,
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

trivial.
4 subgoals, subgoal 1 (ID 36235)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H2 : Γ ⊢ M ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       M = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  H11 : exists K0 K K' T T' : Term,
          A = K /\
          M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1
  QN : Term
  H10 : Γ ⊢ N' ▹ QN : A
  H12 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : A
  H14 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)



destruct H11 as (C0 & K & K' & T & T' & ? & -> & ? & -> & ? & ? & ?).
4 subgoals, subgoal 1 (ID 37195)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A' : !s1
  H1 : A :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B' ▹ Q : !s2) /\
             (A :: Γ ⊢ B' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H11 : A = K
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H10 : Γ ⊢ N' ▹ QN : A
  H12 : Γ ⊢ N' ▹ QN : C
  H13 : Γ ⊢ N'' ▹ QN : A
  H14 : Γ ⊢ N'' ▹ QN : C
  H2 : Γ ⊢ λ [C], T ▹ M' : Π (A), B
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (A), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (A), B) /\ Γ ⊢ P ▹ Q : B0
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

subst.
4 subgoals, subgoal 1 (ID 37208)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  H2 : Γ ⊢ λ [C], T ▹ M' : Π (K), B
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (K), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)


apply pgen_la in H2 as (C'' & T'' & F & u1 & u2 & u3 & h).
4 subgoals, subgoal 1 (ID 37234)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (K), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  C'' : Term
  T'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  h : Rel u1 u2 u3 /\
      (Γ ⊢ C ▹ C'' : !u1) /\
      (C :: Γ ⊢ T ▹ T'' : F) /\
      (C :: Γ ⊢ F ▹ F : !u2) /\ M' = λ [C''], T'' /\ Γ ⊢ Π (C), F ≡' Π (K), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 37260)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         M' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ M' ▹ Q : Π (K), B) /\
             (Γ ⊢ M' ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  C'' : Term
  T'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H19 : Γ ⊢ C ▹ C'' : !u1
  H11 : C :: Γ ⊢ T ▹ T'' : F
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H21 : M' = λ [C''], T''
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

subst.
4 subgoals, subgoal 1 (ID 37266)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  C'' : Term
  T'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H19 : Γ ⊢ C ▹ C'' : !u1
  H11 : C :: Γ ⊢ T ▹ T'' : F
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         λ [C''], T'' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [C''], T'' ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [C''], T'' ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [C''], T'') ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [C''], T'') ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)


destruct (H3 C T) as (MM & AA' & BB & h); trivial.
4 subgoals, subgoal 1 (ID 37284)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  C'' : Term
  T'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H19 : Γ ⊢ C ▹ C'' : !u1
  H11 : C :: Γ ⊢ T ▹ T'' : F
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         λ [C''], T'' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [C''], T'' ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [C''], T'' ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  MM : Term
  AA' : Term
  BB : Term
  h : λ [C''], T'' = λ [AA'], MM /\
      (C :: Γ ⊢ T ▹ MM : BB) /\
      (forall P B : Term,
       C :: Γ ⊢ T ▹ P : B ->
       exists Q : Term,
         (C :: Γ ⊢ MM ▹ Q : BB) /\
         (C :: Γ ⊢ MM ▹ Q : B) /\ (C :: Γ ⊢ P ▹ Q : BB) /\ C :: Γ ⊢ P ▹ Q : B)
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [C''], T'') ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [C''], T'') ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 37298)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  C'' : Term
  T'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H19 : Γ ⊢ C ▹ C'' : !u1
  H11 : C :: Γ ⊢ T ▹ T'' : F
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  H3 : forall AA MM : Term,
       λ [C], T = λ [AA], MM ->
       exists MM' AA' BB : Term,
         λ [C''], T'' = λ [AA'], MM' /\
         (AA :: Γ ⊢ MM ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [C''], T'' ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [C''], T'' ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  MM : Term
  AA' : Term
  BB : Term
  H21 : λ [C''], T'' = λ [AA'], MM
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H25 : forall P B : Term,
        C :: Γ ⊢ T ▹ P : B ->
        exists Q : Term,
          (C :: Γ ⊢ MM ▹ Q : BB) /\
          (C :: Γ ⊢ MM ▹ Q : B) /\
          (C :: Γ ⊢ P ▹ Q : BB) /\ C :: Γ ⊢ P ▹ Q : B
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [C''], T'') ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [C''], T'') ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)


injection H21; intros; subst; clear H21.
4 subgoals, subgoal 1 (ID 37325)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H25 : forall P B : Term,
        C :: Γ ⊢ T ▹ P : B ->
        exists Q : Term,
          (C :: Γ ⊢ MM ▹ Q : BB) /\
          (C :: Γ ⊢ MM ▹ Q : B) /\
          (C :: Γ ⊢ P ▹ Q : BB) /\ C :: Γ ⊢ P ▹ Q : B
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  H3 : forall AA MM0 : Term,
       λ [C], T = λ [AA], MM0 ->
       exists MM' AA'0 BB : Term,
         λ [AA'], MM = λ [AA'0], MM' /\
         (AA :: Γ ⊢ MM0 ▹ MM' : BB) /\
         (forall P B : Term,
          AA :: Γ ⊢ MM0 ▹ P : B ->
          exists Q : Term,
            (AA :: Γ ⊢ MM' ▹ Q : BB) /\
            (AA :: Γ ⊢ MM' ▹ Q : B) /\
            (AA :: Γ ⊢ P ▹ Q : BB) /\ AA :: Γ ⊢ P ▹ Q : B)
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

clear H3.
4 subgoals, subgoal 1 (ID 37326)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H25 : forall P B : Term,
        C :: Γ ⊢ T ▹ P : B ->
        exists Q : Term,
          (C :: Γ ⊢ MM ▹ Q : BB) /\
          (C :: Γ ⊢ MM ▹ Q : B) /\
          (C :: Γ ⊢ P ▹ Q : BB) /\ C :: Γ ⊢ P ▹ Q : B
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

destruct (H25 T' B H15) as (QMM &? & ? & ? & ?).
4 subgoals, subgoal 1 (ID 37345)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H25 : forall P B : Term,
        C :: Γ ⊢ T ▹ P : B ->
        exists Q : Term,
          (C :: Γ ⊢ MM ▹ Q : BB) /\
          (C :: Γ ⊢ MM ▹ Q : B) /\
          (C :: Γ ⊢ P ▹ Q : BB) /\ C :: Γ ⊢ P ▹ Q : B
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

clear H25.
4 subgoals, subgoal 1 (ID 37346)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)


assert( Γ AA' AA' : !t1).
5 subgoals, subgoal 1 (ID 37347)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  ============================
   Γ ⊢ AA' ▹ AA' : !t1

subgoal 2 (ID 37348) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

destruct (relocate Γ C C' !t1 H7 AA' !u1 H19).
5 subgoals, subgoal 1 (ID 37355)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ C ▹ C' : !u1
  H27 : Γ ⊢ C ▹ AA' : !t1
  ============================
   Γ ⊢ AA' ▹ AA' : !t1

subgoal 2 (ID 37348) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

apply red_refl_rt in H27; trivial.
4 subgoals, subgoal 1 (ID 37348)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)


assert( Γ A' A' : !t1).
5 subgoals, subgoal 1 (ID 37358)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  ============================
   Γ ⊢ A' ▹ A' : !t1

subgoal 2 (ID 37359) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

destruct (relocate Γ K K' !t1 H18 A' !s1 H0).
5 subgoals, subgoal 1 (ID 37366)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ K ▹ K' : !s1
  H28 : Γ ⊢ K ▹ A' : !t1
  ============================
   Γ ⊢ A' ▹ A' : !t1

subgoal 2 (ID 37359) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

apply red_refl_rt in H28; trivial.
4 subgoals, subgoal 1 (ID 37359)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)


assert (AA' :: Γ B' B' : !t2).
5 subgoals, subgoal 1 (ID 37370)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   AA' :: Γ ⊢ B' ▹ B' : !t2

subgoal 2 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

destruct (relocate (C :: Γ) B D' !t2 H6 B' !s2) as (? & ? ).
6 subgoals, subgoal 1 (ID 37378)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   C :: Γ ⊢ B ▹ B' : !s2

subgoal 2 (ID 37382) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 3 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using ,)

eapply conv_in_env.
7 subgoals, subgoal 1 (ID 37384)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   ?37383 ⊢ B ▹ B' : !s2

subgoal 2 (ID 37385) is:
 env_conv ?37383 (C :: Γ)
subgoal 3 (ID 37382) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 4 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 open,)


eauto.
6 subgoals, subgoal 1 (ID 37385)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   env_conv (K :: Γ) (C :: Γ)

subgoal 2 (ID 37382) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 3 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using ,)

apply c_trans with (C0::Γ).
7 subgoals, subgoal 1 (ID 37395)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   env_conv (K :: Γ) (C0 :: Γ)

subgoal 2 (ID 37396) is:
 env_conv (C0 :: Γ) (C :: Γ)
subgoal 3 (ID 37382) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 4 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using ,)

eauto.
6 subgoals, subgoal 1 (ID 37396)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  ============================
   env_conv (C0 :: Γ) (C :: Γ)

subgoal 2 (ID 37382) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 3 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using ,)

eauto.
5 subgoals, subgoal 1 (ID 37382)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ B' ▹ B' : !t2

subgoal 2 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using ,)

eapply conv_in_env with (C::Γ).
6 subgoals, subgoal 1 (ID 38703)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B' : !t2
  ============================
   C :: Γ ⊢ B' ▹ B' : !t2

subgoal 2 (ID 38704) is:
 env_conv (C :: Γ) (AA' :: Γ)
subgoal 3 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using ,)

apply red_refl_rt in H29; trivial.
5 subgoals, subgoal 1 (ID 38704)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B' : !t2
  ============================
   env_conv (C :: Γ) (AA' :: Γ)

subgoal 2 (ID 37371) is:
 exists Q : Term,
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
   (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
   (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using ,)

eauto.
4 subgoals, subgoal 1 (ID 37371)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   exists Q : Term,
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B [ ← N]) /\
     (Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using ,)


exists ( QMM [ QN]); repeat split.
7 subgoals, subgoal 1 (ID 38730)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B [ ← N]

subgoal 2 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using ,)


apply typ_exp with (B' [← N']) s2.
8 subgoals, subgoal 1 (ID 38738)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B' [ ← N']

subgoal 2 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using ,)

econstructor.
15 subgoals, subgoal 1 (ID 38750)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Rel ?38747 ?38748 ?38749

subgoal 2 (ID 38751) is:
 Γ ⊢ AA' ▹ AA' : !?38747
subgoal 3 (ID 38752) is:
 Γ ⊢ A' ▹ A' : !?38747
subgoal 4 (ID 38753) is:
 Γ ⊢ ?38746 ▹▹ AA' : !?38747
subgoal 5 (ID 38754) is:
 Γ ⊢ ?38746 ▹▹ A' : !?38747
subgoal 6 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !?38748
subgoal 7 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 8 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 9 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 10 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 11 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 12 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 13 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 14 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 15 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 open, ?38747 open, ?38748 open, ?38749 open,)

apply H5.
14 subgoals, subgoal 1 (ID 38751)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ AA' ▹ AA' : !t1

subgoal 2 (ID 38752) is:
 Γ ⊢ A' ▹ A' : !t1
subgoal 3 (ID 38753) is:
 Γ ⊢ ?38746 ▹▹ AA' : !t1
subgoal 4 (ID 38754) is:
 Γ ⊢ ?38746 ▹▹ A' : !t1
subgoal 5 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 6 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 7 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 8 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 9 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 10 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 11 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 12 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 14 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 open, ?38747 using , ?38748 using , ?38749 using ,)

apply H25.
13 subgoals, subgoal 1 (ID 38752)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ A' ▹ A' : !t1

subgoal 2 (ID 38753) is:
 Γ ⊢ ?38746 ▹▹ AA' : !t1
subgoal 3 (ID 38754) is:
 Γ ⊢ ?38746 ▹▹ A' : !t1
subgoal 4 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 5 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 6 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 7 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 8 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 9 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 10 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 11 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 open, ?38747 using , ?38748 using , ?38749 using ,)

apply H27.
12 subgoals, subgoal 1 (ID 38753)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ ?38746 ▹▹ AA' : !t1

subgoal 2 (ID 38754) is:
 Γ ⊢ ?38746 ▹▹ A' : !t1
subgoal 3 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 4 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 5 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 6 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 7 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 8 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 9 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 open, ?38747 using , ?38748 using , ?38749 using ,)


eapply typ_reds_trans2.
13 subgoals, subgoal 1 (ID 38760)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ ?38746 ▹▹ ?38758 : !t1

subgoal 2 (ID 38761) is:
 Γ ⊢ ?38758 ▹▹ AA' : ?38759
subgoal 3 (ID 38754) is:
 Γ ⊢ ?38746 ▹▹ A' : !t1
subgoal 4 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 5 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 6 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 7 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 8 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 9 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 10 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 11 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 open, ?38747 using , ?38748 using , ?38749 using , ?38758 open, ?38759 open,)

apply H17.
12 subgoals, subgoal 1 (ID 38761)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ C ▹▹ AA' : ?38759

subgoal 2 (ID 38754) is:
 Γ ⊢ C0 ▹▹ A' : !t1
subgoal 3 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 4 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 5 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 6 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 7 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 8 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 9 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 open,)

eauto.
11 subgoals, subgoal 1 (ID 38754)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ C0 ▹▹ A' : !t1

subgoal 2 (ID 38755) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 3 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 4 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 5 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 7 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 8 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using ,)

eauto.
10 subgoals, subgoal 1 (ID 38755)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ B' ▹ B' : !t2

subgoal 2 (ID 38756) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using ,)

apply H28.
9 subgoals, subgoal 1 (ID 38756)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ MM ▹ QMM : B'

subgoal 2 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using ,)


apply typ_pcompat with B.
10 subgoals, subgoal 1 (ID 40878)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ MM ▹ QMM : B

subgoal 2 (ID 40879) is:
 AA' :: Γ ⊢ B ≡' B'
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using ,)

eapply conv_in_env.
11 subgoals, subgoal 1 (ID 40881)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?40880 ⊢ MM ▹ QMM : B

subgoal 2 (ID 40882) is:
 env_conv ?40880 (AA' :: Γ)
subgoal 3 (ID 40879) is:
 AA' :: Γ ⊢ B ≡' B'
subgoal 4 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 5 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 6 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 7 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 8 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 open,)

apply H21.
10 subgoals, subgoal 1 (ID 40882)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C :: Γ) (AA' :: Γ)

subgoal 2 (ID 40879) is:
 AA' :: Γ ⊢ B ≡' B'
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using ,)

eauto.
9 subgoals, subgoal 1 (ID 40879)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ B ≡' B'

subgoal 2 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using ,)

eapply conv_in_env_peq.
10 subgoals, subgoal 1 (ID 40904)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?40903 ⊢ B ≡' B'

subgoal 2 (ID 40905) is:
 env_conv ?40903 (AA' :: Γ)
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 open,)


econstructor.
10 subgoals, subgoal 1 (ID 40908)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?40903 ⊢ B ▹ B' : !?40907

subgoal 2 (ID 40905) is:
 env_conv ?40903 (AA' :: Γ)
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 open, ?40907 open,)

apply H1.
9 subgoals, subgoal 1 (ID 40905)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (K :: Γ) (AA' :: Γ)

subgoal 2 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using ,)

apply c_trans with (C0::Γ).
10 subgoals, subgoal 1 (ID 40910)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (K :: Γ) (C0 :: Γ)

subgoal 2 (ID 40911) is:
 env_conv (C0 :: Γ) (AA' :: Γ)
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using ,)

eauto.
9 subgoals, subgoal 1 (ID 40911)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C0 :: Γ) (AA' :: Γ)

subgoal 2 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using ,)

apply c_trans with (C::Γ).
10 subgoals, subgoal 1 (ID 41297)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C0 :: Γ) (C :: Γ)

subgoal 2 (ID 41298) is:
 env_conv (C :: Γ) (AA' :: Γ)
subgoal 3 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 5 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using ,)

eauto.
9 subgoals, subgoal 1 (ID 41298)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C :: Γ) (AA' :: Γ)

subgoal 2 (ID 38757) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using ,)

eauto.
8 subgoals, subgoal 1 (ID 38757)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N' ▹ QN : AA'

subgoal 2 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using ,)

apply typ_pcompat with C.
9 subgoals, subgoal 1 (ID 42240)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N' ▹ QN : C

subgoal 2 (ID 42241) is:
 Γ ⊢ C ≡' AA'
subgoal 3 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using ,)

trivial.
8 subgoals, subgoal 1 (ID 42241)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ C ≡' AA'

subgoal 2 (ID 38739) is:
 Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2
subgoal 3 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using ,)


eauto.
7 subgoals, subgoal 1 (ID 38739)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2

subgoal 2 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using ,)

change !s2 with (!s2 [ N ]).
7 subgoals, subgoal 1 (ID 42309)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using ,)

eapply subst_gen.
9 subgoals, subgoal 1 (ID 42325)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?42324 ⊢ B ▹ B' : !s2

subgoal 2 (ID 42328) is:
 sub_in_env ?42326 N ?42327 0 ?42324 Γ
subgoal 3 (ID 42329) is:
 ?42326 ⊢ N ▹ N' : ?42327
subgoal 4 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 open, ?42326 open, ?42327 open,)

apply H1.
8 subgoals, subgoal 1 (ID 42328)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   sub_in_env ?42326 N ?42327 0 (K :: Γ) Γ

subgoal 2 (ID 42329) is:
 ?42326 ⊢ N ▹ N' : ?42327
subgoal 3 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 open, ?42327 open,)

constructor.
7 subgoals, subgoal 1 (ID 42329)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N ▹ N' : K

subgoal 2 (ID 38733) is:
 Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using ,)

trivial.
6 subgoals, subgoal 1 (ID 38733)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B0

subgoal 2 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using ,)


apply typ_pcompat with (B [← N]); trivial.
6 subgoals, subgoal 1 (ID 42331)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B [ ← N]

subgoal 2 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using ,)

apply typ_pcompat with (B'[← N']).
7 subgoals, subgoal 1 (ID 42333)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ (λ [AA'], MM) ·( A', B')N' ▹ QMM [ ← QN] : B' [ ← N']

subgoal 2 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using ,)


econstructor.
14 subgoals, subgoal 1 (ID 42345)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Rel ?42342 ?42343 ?42344

subgoal 2 (ID 42346) is:
 Γ ⊢ AA' ▹ AA' : !?42342
subgoal 3 (ID 42347) is:
 Γ ⊢ A' ▹ A' : !?42342
subgoal 4 (ID 42348) is:
 Γ ⊢ ?42341 ▹▹ AA' : !?42342
subgoal 5 (ID 42349) is:
 Γ ⊢ ?42341 ▹▹ A' : !?42342
subgoal 6 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !?42343
subgoal 7 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 8 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 9 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 10 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 11 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 12 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 14 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 open, ?42342 open, ?42343 open, ?42344 open,)

apply H5.
13 subgoals, subgoal 1 (ID 42346)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ AA' ▹ AA' : !t1

subgoal 2 (ID 42347) is:
 Γ ⊢ A' ▹ A' : !t1
subgoal 3 (ID 42348) is:
 Γ ⊢ ?42341 ▹▹ AA' : !t1
subgoal 4 (ID 42349) is:
 Γ ⊢ ?42341 ▹▹ A' : !t1
subgoal 5 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 6 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 7 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 8 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 9 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 10 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 11 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 open, ?42342 using , ?42343 using , ?42344 using ,)

apply H25.
12 subgoals, subgoal 1 (ID 42347)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ A' ▹ A' : !t1

subgoal 2 (ID 42348) is:
 Γ ⊢ ?42341 ▹▹ AA' : !t1
subgoal 3 (ID 42349) is:
 Γ ⊢ ?42341 ▹▹ A' : !t1
subgoal 4 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 5 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 6 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 7 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 8 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 9 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 open, ?42342 using , ?42343 using , ?42344 using ,)

apply H27.
11 subgoals, subgoal 1 (ID 42348)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ ?42341 ▹▹ AA' : !t1

subgoal 2 (ID 42349) is:
 Γ ⊢ ?42341 ▹▹ A' : !t1
subgoal 3 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 4 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 5 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 6 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 7 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 8 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 open, ?42342 using , ?42343 using , ?42344 using ,)

eapply typ_reds_trans2.
12 subgoals, subgoal 1 (ID 42355)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ ?42341 ▹▹ ?42353 : !t1

subgoal 2 (ID 42356) is:
 Γ ⊢ ?42353 ▹▹ AA' : ?42354
subgoal 3 (ID 42349) is:
 Γ ⊢ ?42341 ▹▹ A' : !t1
subgoal 4 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 5 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 6 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 7 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 8 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 9 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 10 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 open, ?42342 using , ?42343 using , ?42344 using , ?42353 open, ?42354 open,)

apply H17.
11 subgoals, subgoal 1 (ID 42356)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ C ▹▹ AA' : ?42354

subgoal 2 (ID 42349) is:
 Γ ⊢ C0 ▹▹ A' : !t1
subgoal 3 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 4 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 5 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 6 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 7 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 8 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 9 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 open,)

eauto.
10 subgoals, subgoal 1 (ID 42349)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ C0 ▹▹ A' : !t1

subgoal 2 (ID 42350) is:
 AA' :: Γ ⊢ B' ▹ B' : !t2
subgoal 3 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 4 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 5 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using ,)

eauto.
9 subgoals, subgoal 1 (ID 42350)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ B' ▹ B' : !t2

subgoal 2 (ID 42351) is:
 AA' :: Γ ⊢ MM ▹ QMM : B'
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using ,)

apply H28.
8 subgoals, subgoal 1 (ID 42351)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ MM ▹ QMM : B'

subgoal 2 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using ,)


apply typ_pcompat with B.
9 subgoals, subgoal 1 (ID 44473)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ MM ▹ QMM : B

subgoal 2 (ID 44474) is:
 AA' :: Γ ⊢ B ≡' B'
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using ,)

eapply conv_in_env.
10 subgoals, subgoal 1 (ID 44476)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?44475 ⊢ MM ▹ QMM : B

subgoal 2 (ID 44477) is:
 env_conv ?44475 (AA' :: Γ)
subgoal 3 (ID 44474) is:
 AA' :: Γ ⊢ B ≡' B'
subgoal 4 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 5 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 6 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 7 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 8 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 open,)

apply H21.
9 subgoals, subgoal 1 (ID 44477)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C :: Γ) (AA' :: Γ)

subgoal 2 (ID 44474) is:
 AA' :: Γ ⊢ B ≡' B'
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using ,)

eauto.
8 subgoals, subgoal 1 (ID 44474)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   AA' :: Γ ⊢ B ≡' B'

subgoal 2 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using ,)

eapply conv_in_env_peq.
9 subgoals, subgoal 1 (ID 44499)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?44498 ⊢ B ≡' B'

subgoal 2 (ID 44500) is:
 env_conv ?44498 (AA' :: Γ)
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 open,)

econstructor.
9 subgoals, subgoal 1 (ID 44503)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?44498 ⊢ B ▹ B' : !?44502

subgoal 2 (ID 44500) is:
 env_conv ?44498 (AA' :: Γ)
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 open, ?44502 open,)


apply H1.
8 subgoals, subgoal 1 (ID 44500)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (K :: Γ) (AA' :: Γ)

subgoal 2 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using ,)

apply c_trans with (C0::Γ).
9 subgoals, subgoal 1 (ID 44505)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (K :: Γ) (C0 :: Γ)

subgoal 2 (ID 44506) is:
 env_conv (C0 :: Γ) (AA' :: Γ)
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using ,)

eauto.
8 subgoals, subgoal 1 (ID 44506)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C0 :: Γ) (AA' :: Γ)

subgoal 2 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using ,)

apply c_trans with (C::Γ).
9 subgoals, subgoal 1 (ID 44892)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C0 :: Γ) (C :: Γ)

subgoal 2 (ID 44893) is:
 env_conv (C :: Γ) (AA' :: Γ)
subgoal 3 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 4 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 5 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 6 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 7 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using ,)

eauto.
8 subgoals, subgoal 1 (ID 44893)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   env_conv (C :: Γ) (AA' :: Γ)

subgoal 2 (ID 42352) is:
 Γ ⊢ N' ▹ QN : AA'
subgoal 3 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using ,)

eauto.
7 subgoals, subgoal 1 (ID 42352)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N' ▹ QN : AA'

subgoal 2 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using ,)

apply typ_pcompat with C.
8 subgoals, subgoal 1 (ID 45835)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N' ▹ QN : C

subgoal 2 (ID 45836) is:
 Γ ⊢ C ≡' AA'
subgoal 3 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using ,)

trivial.
7 subgoals, subgoal 1 (ID 45836)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ C ≡' AA'

subgoal 2 (ID 42334) is:
 Γ ⊢ B' [ ← N'] ≡' B [ ← N]
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using ,)


eauto.
6 subgoals, subgoal 1 (ID 42334)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B' [ ← N'] ≡' B [ ← N]

subgoal 2 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using ,)

apply typ_peq_intro2 with s2.
6 subgoals, subgoal 1 (ID 45903)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2

subgoal 2 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using ,)

change !s2 with (!s2 [ N ]).
6 subgoals, subgoal 1 (ID 45905)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B' [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using ,)

eapply subst_gen.
8 subgoals, subgoal 1 (ID 45921)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?45920 ⊢ B ▹ B' : !s2

subgoal 2 (ID 45924) is:
 sub_in_env ?45922 N ?45923 0 ?45920 Γ
subgoal 3 (ID 45925) is:
 ?45922 ⊢ N ▹ N' : ?45923
subgoal 4 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 open, ?45922 open, ?45923 open,)

apply H1.
7 subgoals, subgoal 1 (ID 45924)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   sub_in_env ?45922 N ?45923 0 (K :: Γ) Γ

subgoal 2 (ID 45925) is:
 ?45922 ⊢ N ▹ N' : ?45923
subgoal 3 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 open, ?45923 open,)

constructor.
6 subgoals, subgoal 1 (ID 45925)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N ▹ N' : K

subgoal 2 (ID 38736) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using ,)

trivial.
5 subgoals, subgoal 1 (ID 38736)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]

subgoal 2 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using ,)


apply typ_pcompat with (B [← N'']).
6 subgoals, subgoal 1 (ID 45927)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N'']

subgoal 2 (ID 45928) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using ,)

eapply subst_gen.
8 subgoals, subgoal 1 (ID 45944)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?45943 ⊢ T' ▹ QMM : B

subgoal 2 (ID 45947) is:
 sub_in_env ?45945 N'' ?45946 0 ?45943 Γ
subgoal 3 (ID 45948) is:
 ?45945 ⊢ N'' ▹ QN : ?45946
subgoal 4 (ID 45928) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 5 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 6 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 open, ?45945 open, ?45946 open,)

apply H26.
7 subgoals, subgoal 1 (ID 45947)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   sub_in_env ?45945 N'' ?45946 0 (C :: Γ) Γ

subgoal 2 (ID 45948) is:
 ?45945 ⊢ N'' ▹ QN : ?45946
subgoal 3 (ID 45928) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 open, ?45946 open,)

constructor.
6 subgoals, subgoal 1 (ID 45948)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N'' ▹ QN : C

subgoal 2 (ID 45928) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using ,)

trivial.
5 subgoals, subgoal 1 (ID 45928)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N''] ≡' B [ ← N]

subgoal 2 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using ,)


apply typ_peq_intro2 with s2.
5 subgoals, subgoal 1 (ID 45950)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !s2

subgoal 2 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using ,)

change !s2 with (!s2 [ N ]).
5 subgoals, subgoal 1 (ID 45952)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !s2 [ ← N]

subgoal 2 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using ,)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 45968)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?45967 ⊢ B ▹ B : !s2

subgoal 2 (ID 45971) is:
 sub_in_env ?45969 N ?45970 0 ?45967 Γ
subgoal 3 (ID 45972) is:
 ?45969 ⊢ N ▹ N'' : ?45970
subgoal 4 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 open, ?45969 open, ?45970 open,)

apply red_refl_lt in H1; apply H1.
6 subgoals, subgoal 1 (ID 45971)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   sub_in_env ?45969 N ?45970 0 (K :: Γ) Γ

subgoal 2 (ID 45972) is:
 ?45969 ⊢ N ▹ N'' : ?45970
subgoal 3 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 open, ?45970 open, ?45974 using ,)

constructor.
5 subgoals, subgoal 1 (ID 45972)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N ▹ N'' : K

subgoal 2 (ID 38737) is:
 Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using ,)

apply typ_pcompat with C; eauto.
4 subgoals, subgoal 1 (ID 38737)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B0

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using ,)


apply typ_pcompat with (B [← N]); trivial.
4 subgoals, subgoal 1 (ID 47799)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N]

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using ,)

apply typ_pcompat with (B [← N'']).
5 subgoals, subgoal 1 (ID 47801)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ T' [ ← N''] ▹ QMM [ ← QN] : B [ ← N'']

subgoal 2 (ID 47802) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using ,)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 47818)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?47817 ⊢ T' ▹ QMM : B

subgoal 2 (ID 47821) is:
 sub_in_env ?47819 N'' ?47820 0 ?47817 Γ
subgoal 3 (ID 47822) is:
 ?47819 ⊢ N'' ▹ QN : ?47820
subgoal 4 (ID 47802) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 5 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 open, ?47819 open, ?47820 open,)

apply H26.
6 subgoals, subgoal 1 (ID 47821)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   sub_in_env ?47819 N'' ?47820 0 (C :: Γ) Γ

subgoal 2 (ID 47822) is:
 ?47819 ⊢ N'' ▹ QN : ?47820
subgoal 3 (ID 47802) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 open, ?47820 open,)

constructor.
5 subgoals, subgoal 1 (ID 47822)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N'' ▹ QN : C

subgoal 2 (ID 47802) is:
 Γ ⊢ B [ ← N''] ≡' B [ ← N]
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using ,)

trivial.
4 subgoals, subgoal 1 (ID 47802)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N''] ≡' B [ ← N]

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using ,)


apply typ_peq_intro2 with s2.
4 subgoals, subgoal 1 (ID 47824)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !s2

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using ,)

change !s2 with (!s2 [ N ]).
4 subgoals, subgoal 1 (ID 47826)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !s2 [ ← N]

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using ,)

eapply subst_gen.
6 subgoals, subgoal 1 (ID 47842)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   ?47841 ⊢ B ▹ B : !s2

subgoal 2 (ID 47845) is:
 sub_in_env ?47843 N ?47844 0 ?47841 Γ
subgoal 3 (ID 47846) is:
 ?47843 ⊢ N ▹ N'' : ?47844
subgoal 4 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 open, ?47843 open, ?47844 open,)

apply red_refl_lt in H1; apply H1.
5 subgoals, subgoal 1 (ID 47845)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   sub_in_env ?47843 N ?47844 0 (K :: Γ) Γ

subgoal 2 (ID 47846) is:
 ?47843 ⊢ N ▹ N'' : ?47844
subgoal 3 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 open, ?47844 open, ?47848 using ,)

constructor.
4 subgoals, subgoal 1 (ID 47846)
  
  Γ : Env
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H5 : Rel t1 t2 t3
  H7 : Γ ⊢ C ▹ C' : !t1
  H6 : C :: Γ ⊢ B ▹ D' : !t2
  H8 : Γ ⊢ N ▹ N'' : C
  H9 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H15 : C :: Γ ⊢ T ▹ T' : B
  H16 : Γ ⊢ C0 ▹▹ K : !t1
  H17 : Γ ⊢ C0 ▹▹ C : !t1
  H18 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : C
  H14 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ K ▹ A' : !s1
  H1 : K :: Γ ⊢ B ▹ B' : !s2
  H4 : Γ ⊢ N ▹ N' : K
  IHtyp1 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           K :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (K :: Γ ⊢ B' ▹ Q : !s2) /\
             (K :: Γ ⊢ B' ▹ Q : B0) /\
             (K :: Γ ⊢ P ▹ Q : !s2) /\ K :: Γ ⊢ P ▹ Q : B0
  H10 : Γ ⊢ N' ▹ QN : K
  H13 : Γ ⊢ N'' ▹ QN : K
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H2 : Rel u1 u2 u3
  H20 : C :: Γ ⊢ F ▹ F : !u2
  H23 : Γ ⊢ Π (C), F ≡' Π (K), B
  MM : Term
  AA' : Term
  BB : Term
  H24 : C :: Γ ⊢ T ▹ MM : BB
  H19 : Γ ⊢ C ▹ AA' : !u1
  H11 : C :: Γ ⊢ T ▹ MM : F
  IHtyp3 : forall P B0 : Term,
           Γ ⊢ λ [C], T ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ λ [AA'], MM ▹ Q : Π (K), B) /\
             (Γ ⊢ λ [AA'], MM ▹ Q : B0) /\
             (Γ ⊢ P ▹ Q : Π (K), B) /\ Γ ⊢ P ▹ Q : B0
  QMM : Term
  H3 : C :: Γ ⊢ MM ▹ QMM : BB
  H21 : C :: Γ ⊢ MM ▹ QMM : B
  H22 : C :: Γ ⊢ T' ▹ QMM : BB
  H26 : C :: Γ ⊢ T' ▹ QMM : B
  H25 : Γ ⊢ AA' ▹ AA' : !t1
  H27 : Γ ⊢ A' ▹ A' : !t1
  H28 : AA' :: Γ ⊢ B' ▹ B' : !t2
  ============================
   Γ ⊢ N ▹ N'' : K

subgoal 2 (ID 34563) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using ,)

apply typ_pcompat with C; eauto.
3 subgoals, subgoal 1 (ID 34563)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  H7 : Γ ⊢ (λ [A], M) ·( A', B)N ▹ P : B0
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)


apply pgen_app in H7 as (C & C' & D' & N'' & t1 & t2 & t3 & h).
3 subgoals, subgoal 1 (ID 49702)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ C ▹ C' : !t1) /\
      (C :: Γ ⊢ B ▹ D' : !t2) /\
      (Γ ⊢ N ▹ N'' : C) /\
      (Γ ⊢ B [ ← N] ≡' B0) /\
      ((exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (C), B) /\ A' = C /\ P = W' ·( C', D')N'') \/
       (exists K0 K K' T T' : Term,
          A' = K /\
          λ [A], M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1))
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

decompose [and] h; clear h.
3 subgoals, subgoal 1 (ID 49728)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : (exists W' : Term,
           (Γ ⊢ λ [A], M ▹ W' : Π (C), B) /\ A' = C /\ P = W' ·( C', D')N'') \/
        (exists K0 K K' T T' : Term,
           A' = K /\
           λ [A], M = λ [C], T /\
           (C :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)


destruct (IHtyp5 N'' C H10) as (QN & ?& ? &? & ?).
3 subgoals, subgoal 1 (ID 49747)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp5 : forall P B : Term,
           Γ ⊢ N ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N' ▹ Q : A) /\
             (Γ ⊢ N' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : (exists W' : Term,
           (Γ ⊢ λ [A], M ▹ W' : Π (C), B) /\ A' = C /\ P = W' ·( C', D')N'') \/
        (exists K0 K K' T T' : Term,
           A' = K /\
           λ [A], M = λ [C], T /\
           (C :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

clear IHtyp5.
3 subgoals, subgoal 1 (ID 49748)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : (exists W' : Term,
           (Γ ⊢ λ [A], M ▹ W' : Π (C), B) /\ A' = C /\ P = W' ·( C', D')N'') \/
        (exists K0 K K' T T' : Term,
           A' = K /\
           λ [A], M = λ [C], T /\
           (C :: Γ ⊢ T ▹ T' : B) /\
           P = T' [ ← N''] /\
           (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)


destruct H13.
4 subgoals, subgoal 1 (ID 49754)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (C), B) /\ A' = C /\ P = W' ·( C', D')N''
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

destruct H13 as (LM & ? & ? & ->).
4 subgoals, subgoal 1 (ID 49774)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  LM : Term
  H13 : Γ ⊢ λ [A], M ▹ LM : Π (C), B
  H17 : A' = C
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ LM ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ LM ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

subst.
4 subgoals, subgoal 1 (ID 49781)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  LM : Term
  H13 : Γ ⊢ λ [A], M ▹ LM : Π (C), B
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ LM ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ LM ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)


apply pgen_la in H13 as (A'' & M'' & F & u1 & u2 & u3 & h).
4 subgoals, subgoal 1 (ID 49807)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  LM : Term
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  h : Rel u1 u2 u3 /\
      (Γ ⊢ A ▹ A'' : !u1) /\
      (A :: Γ ⊢ M ▹ M'' : F) /\
      (A :: Γ ⊢ F ▹ F : !u2) /\ LM = λ [A''], M'' /\ Γ ⊢ Π (A), F ≡' Π (C), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ LM ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ LM ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 49833)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  LM : Term
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H20 : LM = λ [A''], M''
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ LM ·( C', D')N'' ▹ Q : B [ ← N]) /\ Γ ⊢ LM ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

subst.
4 subgoals, subgoal 1 (ID 49836)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)


destruct (IHtyp4 M'' F H17) as (QM & ? & ? & ? & ?).
4 subgoals, subgoal 1 (ID 49855)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

clear IHtyp4.
4 subgoals, subgoal 1 (ID 49856)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)


assert (Γ A ≡' C).
5 subgoals, subgoal 1 (ID 49857)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  ============================
   Γ ⊢ A ≡' C

subgoal 2 (ID 49858) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

apply reds_to_conv in H3.
5 subgoals, subgoal 1 (ID 49860)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ≡' C
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  ============================
   Γ ⊢ A ≡' C

subgoal 2 (ID 49858) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

apply reds_to_conv in H2.
5 subgoals, subgoal 1 (ID 49862)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ≡' A
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ≡' C
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  ============================
   Γ ⊢ A ≡' C

subgoal 2 (ID 49858) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using ,)

eauto.
4 subgoals, subgoal 1 (ID 49858)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)


assert( Γ A'' A'' : !s1).
5 subgoals, subgoal 1 (ID 50057)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  ============================
   Γ ⊢ A'' ▹ A'' : !s1

subgoal 2 (ID 50058) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)

destruct (relocate Γ A A !s1 H0 A'' !u1 H18).
5 subgoals, subgoal 1 (ID 50065)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A ▹ A : !u1
  H27 : Γ ⊢ A ▹ A'' : !s1
  ============================
   Γ ⊢ A'' ▹ A'' : !s1

subgoal 2 (ID 50058) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)

apply red_refl_rt in H27; trivial.
4 subgoals, subgoal 1 (ID 50058)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)


assert( Γ C' C' : !s1).
5 subgoals, subgoal 1 (ID 50068)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  ============================
   Γ ⊢ C' ▹ C' : !s1

subgoal 2 (ID 50069) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)

destruct (relocate Γ C C !s1 H1 C' !t1 H9).
5 subgoals, subgoal 1 (ID 50076)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C ▹ C : !t1
  H28 : Γ ⊢ C ▹ C' : !s1
  ============================
   Γ ⊢ C' ▹ C' : !s1

subgoal 2 (ID 50069) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)

apply red_refl_rt in H28; trivial.
4 subgoals, subgoal 1 (ID 50069)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)


assert( A''::Γ D' D' : !s2).
5 subgoals, subgoal 1 (ID 50080)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  ============================
   A'' :: Γ ⊢ D' ▹ D' : !s2

subgoal 2 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)

destruct (relocate (C::Γ) B D'!t2 H8 B !s2 ).
6 subgoals, subgoal 1 (ID 50088)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  ============================
   C :: Γ ⊢ B ▹ B : !s2

subgoal 2 (ID 50092) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 3 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using ,)


eapply conv_in_env.
7 subgoals, subgoal 1 (ID 50094)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  ============================
   ?50093 ⊢ B ▹ B : !s2

subgoal 2 (ID 50095) is:
 env_conv ?50093 (C :: Γ)
subgoal 3 (ID 50092) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 4 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 open,)

apply H4.
6 subgoals, subgoal 1 (ID 50095)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  ============================
   env_conv (A :: Γ) (C :: Γ)

subgoal 2 (ID 50092) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 3 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using ,)

eauto.
5 subgoals, subgoal 1 (ID 50092)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B : !t2
  ============================
   A'' :: Γ ⊢ D' ▹ D' : !s2

subgoal 2 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using ,)

eapply conv_in_env.
6 subgoals, subgoal 1 (ID 50371)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B : !t2
  ============================
   ?50370 ⊢ D' ▹ D' : !s2

subgoal 2 (ID 50372) is:
 env_conv ?50370 (A'' :: Γ)
subgoal 3 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 open,)

apply red_refl_rt in H28; apply H28.
5 subgoals, subgoal 1 (ID 50372)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B : !t2
  ============================
   env_conv (C :: Γ) (A'' :: Γ)

subgoal 2 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using ,)

apply c_trans with (A:: Γ ).
6 subgoals, subgoal 1 (ID 50377)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B : !t2
  ============================
   env_conv (C :: Γ) (A :: Γ)

subgoal 2 (ID 50378) is:
 env_conv (A :: Γ) (A'' :: Γ)
subgoal 3 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using ,)

eauto.
5 subgoals, subgoal 1 (ID 50378)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : C :: Γ ⊢ B ▹ D' : !s2
  H29 : C :: Γ ⊢ B ▹ B : !t2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 50081) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
   (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using ,)

eauto.
4 subgoals, subgoal 1 (ID 50081)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B [ ← N]) /\
     Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ Q : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using ,)


exists (QM [ QN]); intuition.
7 subgoals, subgoal 1 (ID 50768)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using ,)


apply typ_exp with (B [← N']) s2.
8 subgoals, subgoal 1 (ID 51020)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N']

subgoal 2 (ID 51021) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 4 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using ,)

eapply subst_gen.
10 subgoals, subgoal 1 (ID 51037)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?51036 ⊢ M' ▹ QM : B

subgoal 2 (ID 51040) is:
 sub_in_env ?51038 N' ?51039 0 ?51036 Γ
subgoal 3 (ID 51041) is:
 ?51038 ⊢ N' ▹ QN : ?51039
subgoal 4 (ID 51021) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 5 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 6 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 7 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 8 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 open, ?51038 open, ?51039 open,)

apply H20.
9 subgoals, subgoal 1 (ID 51040)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   sub_in_env ?51038 N' ?51039 0 (A :: Γ) Γ

subgoal 2 (ID 51041) is:
 ?51038 ⊢ N' ▹ QN : ?51039
subgoal 3 (ID 51021) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 4 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 5 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 6 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 open, ?51039 open,)

constructor.
8 subgoals, subgoal 1 (ID 51041)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N' ▹ QN : A

subgoal 2 (ID 51021) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 4 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using ,)

trivial.
7 subgoals, subgoal 1 (ID 51021)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2

subgoal 2 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using ,)


change !s2 with (!s2 [ N ]).
7 subgoals, subgoal 1 (ID 51044)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using ,)

eapply subst_gen.
9 subgoals, subgoal 1 (ID 51060)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?51059 ⊢ B ▹ B : !s2

subgoal 2 (ID 51063) is:
 sub_in_env ?51061 N ?51062 0 ?51059 Γ
subgoal 3 (ID 51064) is:
 ?51061 ⊢ N ▹ N' : ?51062
subgoal 4 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 5 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 6 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 open, ?51061 open, ?51062 open,)

apply red_refl_lt in H4; apply H4.
8 subgoals, subgoal 1 (ID 51063)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   sub_in_env ?51061 N ?51062 0 (A :: Γ) Γ

subgoal 2 (ID 51064) is:
 ?51061 ⊢ N ▹ N' : ?51062
subgoal 3 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 4 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 open, ?51062 open, ?51066 using ,)

constructor.
7 subgoals, subgoal 1 (ID 51064)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 50771) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using ,)

trivial.
6 subgoals, subgoal 1 (ID 50771)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0

subgoal 2 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using ,)


apply typ_pcompat with (B[ N]); trivial.
6 subgoals, subgoal 1 (ID 51069)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using ,)

apply typ_exp with (B [← N']) s2.
7 subgoals, subgoal 1 (ID 51071)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N']

subgoal 2 (ID 51072) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using ,)

eapply subst_gen.
9 subgoals, subgoal 1 (ID 51088)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?51087 ⊢ M' ▹ QM : B

subgoal 2 (ID 51091) is:
 sub_in_env ?51089 N' ?51090 0 ?51087 Γ
subgoal 3 (ID 51092) is:
 ?51089 ⊢ N' ▹ QN : ?51090
subgoal 4 (ID 51072) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 5 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 6 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 open, ?51089 open, ?51090 open,)

apply H20.
8 subgoals, subgoal 1 (ID 51091)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   sub_in_env ?51089 N' ?51090 0 (A :: Γ) Γ

subgoal 2 (ID 51092) is:
 ?51089 ⊢ N' ▹ QN : ?51090
subgoal 3 (ID 51072) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 4 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 open, ?51090 open,)


constructor.
7 subgoals, subgoal 1 (ID 51092)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N' ▹ QN : A

subgoal 2 (ID 51072) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using ,)

trivial.
6 subgoals, subgoal 1 (ID 51072)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2

subgoal 2 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using ,)

change !s2 with (!s2 [ N ]).
6 subgoals, subgoal 1 (ID 51095)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using ,)

eapply subst_gen.
8 subgoals, subgoal 1 (ID 51111)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?51110 ⊢ B ▹ B : !s2

subgoal 2 (ID 51114) is:
 sub_in_env ?51112 N ?51113 0 ?51110 Γ
subgoal 3 (ID 51115) is:
 ?51112 ⊢ N ▹ N' : ?51113
subgoal 4 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 open, ?51112 open, ?51113 open,)

apply red_refl_lt in H4; apply H4.
7 subgoals, subgoal 1 (ID 51114)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   sub_in_env ?51112 N ?51113 0 (A :: Γ) Γ

subgoal 2 (ID 51115) is:
 ?51112 ⊢ N ▹ N' : ?51113
subgoal 3 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 open, ?51113 open, ?51117 using ,)

constructor.
6 subgoals, subgoal 1 (ID 51115)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N ▹ N' : A

subgoal 2 (ID 50774) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using ,)

trivial.
5 subgoals, subgoal 1 (ID 50774)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using ,)


apply typ_exp with (D' [← N'']) t2.
6 subgoals, subgoal 1 (ID 51120)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : D' [ ← N'']

subgoal 2 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using ,)

econstructor.
13 subgoals, subgoal 1 (ID 51132)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Rel ?51129 ?51130 ?51131

subgoal 2 (ID 51133) is:
 Γ ⊢ A'' ▹ A'' : !?51129
subgoal 3 (ID 51134) is:
 Γ ⊢ C' ▹ C' : !?51129
subgoal 4 (ID 51135) is:
 Γ ⊢ ?51128 ▹▹ A'' : !?51129
subgoal 5 (ID 51136) is:
 Γ ⊢ ?51128 ▹▹ C' : !?51129
subgoal 6 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !?51130
subgoal 7 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 8 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 9 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 10 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 11 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 13 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 open, ?51129 open, ?51130 open, ?51131 open,)

apply H.
12 subgoals, subgoal 1 (ID 51133)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A'' ▹ A'' : !s1

subgoal 2 (ID 51134) is:
 Γ ⊢ C' ▹ C' : !s1
subgoal 3 (ID 51135) is:
 Γ ⊢ ?51128 ▹▹ A'' : !s1
subgoal 4 (ID 51136) is:
 Γ ⊢ ?51128 ▹▹ C' : !s1
subgoal 5 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 6 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 7 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 8 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 9 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 10 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 open, ?51129 using , ?51130 using , ?51131 using ,)

apply H26.
11 subgoals, subgoal 1 (ID 51134)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ C' ▹ C' : !s1

subgoal 2 (ID 51135) is:
 Γ ⊢ ?51128 ▹▹ A'' : !s1
subgoal 3 (ID 51136) is:
 Γ ⊢ ?51128 ▹▹ C' : !s1
subgoal 4 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 5 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 6 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 7 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 8 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 9 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 open, ?51129 using , ?51130 using , ?51131 using ,)

apply H27.
10 subgoals, subgoal 1 (ID 51135)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ ?51128 ▹▹ A'' : !s1

subgoal 2 (ID 51136) is:
 Γ ⊢ ?51128 ▹▹ C' : !s1
subgoal 3 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 4 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 5 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 6 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 7 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 8 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 open, ?51129 using , ?51130 using , ?51131 using ,)

eapply typ_reds_trans2.
11 subgoals, subgoal 1 (ID 51142)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ ?51128 ▹▹ ?51140 : !s1

subgoal 2 (ID 51143) is:
 Γ ⊢ ?51140 ▹▹ A'' : ?51141
subgoal 3 (ID 51136) is:
 Γ ⊢ ?51128 ▹▹ C' : !s1
subgoal 4 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 5 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 6 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 7 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 8 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 9 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 open, ?51129 using , ?51130 using , ?51131 using , ?51140 open, ?51141 open,)

apply H2.
10 subgoals, subgoal 1 (ID 51143)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A ▹▹ A'' : ?51141

subgoal 2 (ID 51136) is:
 Γ ⊢ A0 ▹▹ C' : !s1
subgoal 3 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 4 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 5 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 6 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 7 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 8 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 open,)

eauto.
9 subgoals, subgoal 1 (ID 51136)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A0 ▹▹ C' : !s1

subgoal 2 (ID 51137) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 3 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 4 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 5 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using ,)


eauto.
8 subgoals, subgoal 1 (ID 51137)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ D' ▹ D' : !s2

subgoal 2 (ID 51138) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 3 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using ,)

apply H28.
7 subgoals, subgoal 1 (ID 51138)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ M'' ▹ QM : D'

subgoal 2 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using ,)

apply typ_pcompat with B.
8 subgoals, subgoal 1 (ID 51664)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ M'' ▹ QM : B

subgoal 2 (ID 51665) is:
 A'' :: Γ ⊢ B ≡' D'
subgoal 3 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using ,)

eapply conv_in_env.
9 subgoals, subgoal 1 (ID 51667)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?51666 ⊢ M'' ▹ QM : B

subgoal 2 (ID 51668) is:
 env_conv ?51666 (A'' :: Γ)
subgoal 3 (ID 51665) is:
 A'' :: Γ ⊢ B ≡' D'
subgoal 4 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 5 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 open,)

apply H23.
8 subgoals, subgoal 1 (ID 51668)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 51665) is:
 A'' :: Γ ⊢ B ≡' D'
subgoal 3 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using ,)

eauto.
7 subgoals, subgoal 1 (ID 51665)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ B ≡' D'

subgoal 2 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using ,)

eapply conv_in_env_peq.
8 subgoals, subgoal 1 (ID 51690)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?51689 ⊢ B ≡' D'

subgoal 2 (ID 51691) is:
 env_conv ?51689 (A'' :: Γ)
subgoal 3 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 open,)


eauto.
7 subgoals, subgoal 1 (ID 51691)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   env_conv (C :: Γ) (A'' :: Γ)

subgoal 2 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using ,)

apply c_trans with (A::Γ).
8 subgoals, subgoal 1 (ID 51759)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   env_conv (C :: Γ) (A :: Γ)

subgoal 2 (ID 51760) is:
 env_conv (A :: Γ) (A'' :: Γ)
subgoal 3 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using ,)

eauto.
7 subgoals, subgoal 1 (ID 51760)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 51139) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using ,)

eauto.
6 subgoals, subgoal 1 (ID 51139)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N'' ▹ QN : A''

subgoal 2 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using ,)

apply typ_pcompat with A; trivial.
6 subgoals, subgoal 1 (ID 52148)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A ≡' A''

subgoal 2 (ID 51121) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using ,)

eauto.
5 subgoals, subgoal 1 (ID 51121)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2

subgoal 2 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using ,)


change !t2 with (!t2 [ N ]).
5 subgoals, subgoal 1 (ID 52216)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2 [ ← N]

subgoal 2 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using ,)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 52232)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?52231 ⊢ B ▹ D' : !t2

subgoal 2 (ID 52235) is:
 sub_in_env ?52233 N ?52234 0 ?52231 Γ
subgoal 3 (ID 52236) is:
 ?52233 ⊢ N ▹ N'' : ?52234
subgoal 4 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 open, ?52233 open, ?52234 open,)

apply H8.
6 subgoals, subgoal 1 (ID 52235)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   sub_in_env ?52233 N ?52234 0 (C :: Γ) Γ

subgoal 2 (ID 52236) is:
 ?52233 ⊢ N ▹ N'' : ?52234
subgoal 3 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 open, ?52234 open,)

constructor.
5 subgoals, subgoal 1 (ID 52236)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 50775) is:
 Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using ,)

trivial.
4 subgoals, subgoal 1 (ID 50775)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B0

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using ,)


apply typ_pcompat with (B [← N]); trivial.
4 subgoals, subgoal 1 (ID 52238)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using ,)

apply typ_exp with (D' [← N'']) t2.
5 subgoals, subgoal 1 (ID 52240)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ (λ [A''], M'') ·( C', D')N'' ▹ QM [ ← QN] : D' [ ← N'']

subgoal 2 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using ,)

econstructor.
12 subgoals, subgoal 1 (ID 52252)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Rel ?52249 ?52250 ?52251

subgoal 2 (ID 52253) is:
 Γ ⊢ A'' ▹ A'' : !?52249
subgoal 3 (ID 52254) is:
 Γ ⊢ C' ▹ C' : !?52249
subgoal 4 (ID 52255) is:
 Γ ⊢ ?52248 ▹▹ A'' : !?52249
subgoal 5 (ID 52256) is:
 Γ ⊢ ?52248 ▹▹ C' : !?52249
subgoal 6 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !?52250
subgoal 7 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 8 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 9 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 10 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 12 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 open, ?52249 open, ?52250 open, ?52251 open,)

apply H.
11 subgoals, subgoal 1 (ID 52253)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A'' ▹ A'' : !s1

subgoal 2 (ID 52254) is:
 Γ ⊢ C' ▹ C' : !s1
subgoal 3 (ID 52255) is:
 Γ ⊢ ?52248 ▹▹ A'' : !s1
subgoal 4 (ID 52256) is:
 Γ ⊢ ?52248 ▹▹ C' : !s1
subgoal 5 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 6 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 7 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 8 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 9 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 11 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 open, ?52249 using , ?52250 using , ?52251 using ,)

apply H26.
10 subgoals, subgoal 1 (ID 52254)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ C' ▹ C' : !s1

subgoal 2 (ID 52255) is:
 Γ ⊢ ?52248 ▹▹ A'' : !s1
subgoal 3 (ID 52256) is:
 Γ ⊢ ?52248 ▹▹ C' : !s1
subgoal 4 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 5 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 6 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 7 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 8 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 open, ?52249 using , ?52250 using , ?52251 using ,)

apply H27.
9 subgoals, subgoal 1 (ID 52255)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ ?52248 ▹▹ A'' : !s1

subgoal 2 (ID 52256) is:
 Γ ⊢ ?52248 ▹▹ C' : !s1
subgoal 3 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 4 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 5 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 6 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 open, ?52249 using , ?52250 using , ?52251 using ,)


eapply typ_reds_trans2.
10 subgoals, subgoal 1 (ID 52262)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ ?52248 ▹▹ ?52260 : !s1

subgoal 2 (ID 52263) is:
 Γ ⊢ ?52260 ▹▹ A'' : ?52261
subgoal 3 (ID 52256) is:
 Γ ⊢ ?52248 ▹▹ C' : !s1
subgoal 4 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 5 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 6 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 7 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 8 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 10 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 open, ?52249 using , ?52250 using , ?52251 using , ?52260 open, ?52261 open,)

apply H2.
9 subgoals, subgoal 1 (ID 52263)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A ▹▹ A'' : ?52261

subgoal 2 (ID 52256) is:
 Γ ⊢ A0 ▹▹ C' : !s1
subgoal 3 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 4 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 5 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 6 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 7 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 open,)

eauto.
8 subgoals, subgoal 1 (ID 52256)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A0 ▹▹ C' : !s1

subgoal 2 (ID 52257) is:
 A'' :: Γ ⊢ D' ▹ D' : !s2
subgoal 3 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 4 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 5 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using ,)

eauto.
7 subgoals, subgoal 1 (ID 52257)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ D' ▹ D' : !s2

subgoal 2 (ID 52258) is:
 A'' :: Γ ⊢ M'' ▹ QM : D'
subgoal 3 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using ,)

apply H28.
6 subgoals, subgoal 1 (ID 52258)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ M'' ▹ QM : D'

subgoal 2 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using ,)

apply typ_pcompat with B.
7 subgoals, subgoal 1 (ID 52784)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ M'' ▹ QM : B

subgoal 2 (ID 52785) is:
 A'' :: Γ ⊢ B ≡' D'
subgoal 3 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using ,)

eapply conv_in_env.
8 subgoals, subgoal 1 (ID 52787)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?52786 ⊢ M'' ▹ QM : B

subgoal 2 (ID 52788) is:
 env_conv ?52786 (A'' :: Γ)
subgoal 3 (ID 52785) is:
 A'' :: Γ ⊢ B ≡' D'
subgoal 4 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 5 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 6 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 open,)

apply H23.
7 subgoals, subgoal 1 (ID 52788)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   env_conv (A :: Γ) (A'' :: Γ)

subgoal 2 (ID 52785) is:
 A'' :: Γ ⊢ B ≡' D'
subgoal 3 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using ,)

apply c_trans with (A::Γ); eauto.
6 subgoals, subgoal 1 (ID 52785)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   A'' :: Γ ⊢ B ≡' D'

subgoal 2 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using ,)


eapply conv_in_env_peq.
7 subgoals, subgoal 1 (ID 52819)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?52818 ⊢ B ≡' D'

subgoal 2 (ID 52820) is:
 env_conv ?52818 (A'' :: Γ)
subgoal 3 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 4 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 5 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 open,)

eauto.
6 subgoals, subgoal 1 (ID 52820)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   env_conv (C :: Γ) (A'' :: Γ)

subgoal 2 (ID 52259) is:
 Γ ⊢ N'' ▹ QN : A''
subgoal 3 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using ,)

apply c_trans with (A::Γ); eauto.
5 subgoals, subgoal 1 (ID 52259)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N'' ▹ QN : A''

subgoal 2 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using ,)

apply typ_pcompat with A; trivial.
5 subgoals, subgoal 1 (ID 53277)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ A ≡' A''

subgoal 2 (ID 52241) is:
 Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using ,)

eauto.
4 subgoals, subgoal 1 (ID 52241)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using ,)


change !t2 with (!t2 [ N ]).
4 subgoals, subgoal 1 (ID 53345)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ B [ ← N] ▹ D' [ ← N''] : !t2 [ ← N]

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using ,)

eapply subst_gen.
6 subgoals, subgoal 1 (ID 53361)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   ?53360 ⊢ B ▹ D' : !t2

subgoal 2 (ID 53364) is:
 sub_in_env ?53362 N ?53363 0 ?53360 Γ
subgoal 3 (ID 53365) is:
 ?53362 ⊢ N ▹ N'' : ?53363
subgoal 4 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 open, ?53362 open, ?53363 open,)

apply H8.
5 subgoals, subgoal 1 (ID 53364)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   sub_in_env ?53362 N ?53363 0 (C :: Γ) Γ

subgoal 2 (ID 53365) is:
 ?53362 ⊢ N ▹ N'' : ?53363
subgoal 3 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 open, ?53363 open,)

constructor.
4 subgoals, subgoal 1 (ID 53365)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  H1 : Γ ⊢ C ▹ C : !s1
  H3 : Γ ⊢ A0 ▹▹ C : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  A'' : Term
  M'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H13 : Rel u1 u2 u3
  H18 : Γ ⊢ A ▹ A'' : !u1
  H17 : A :: Γ ⊢ M ▹ M'' : F
  H19 : A :: Γ ⊢ F ▹ F : !u2
  H22 : Γ ⊢ Π (A), F ≡' Π (C), B
  QM : Term
  H20 : A :: Γ ⊢ M' ▹ QM : B
  H21 : A :: Γ ⊢ M' ▹ QM : F
  H23 : A :: Γ ⊢ M'' ▹ QM : B
  H24 : A :: Γ ⊢ M'' ▹ QM : F
  H25 : Γ ⊢ A ≡' C
  H26 : Γ ⊢ A'' ▹ A'' : !s1
  H27 : Γ ⊢ C' ▹ C' : !s1
  H28 : A'' :: Γ ⊢ D' ▹ D' : !s2
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 49756) is:
 exists Q : Term,
   (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
   (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)

trivial.
3 subgoals, subgoal 1 (ID 49756)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  H13 : exists K0 K K' T T' : Term,
          A' = K /\
          λ [A], M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          P = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B [ ← N]) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)


destruct H13 as (C0 & K & K' & T & T' & ? & ? & ? & -> & ? & ? & ?).
3 subgoals, subgoal 1 (ID 53424)
  
  Γ : Env
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  H0 : Γ ⊢ A ▹ A : !s1
  H1 : Γ ⊢ A' ▹ A' : !s1
  H2 : Γ ⊢ A0 ▹▹ A : !s1
  H3 : Γ ⊢ A0 ▹▹ A' : !s1
  H4 : A :: Γ ⊢ B ▹ B : !s2
  H5 : A :: Γ ⊢ M ▹ M' : B
  H6 : Γ ⊢ N ▹ N' : A
  IHtyp1 : forall P B : Term,
           Γ ⊢ A ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A ▹ Q : !s1) /\
             (Γ ⊢ A ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B : Term,
           Γ ⊢ A' ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ A' ▹ Q : !s1) /\
             (Γ ⊢ A' ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           A :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ B ▹ Q : !s2) /\
             (A :: Γ ⊢ B ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : !s2) /\ A :: Γ ⊢ P ▹ Q : B0
  IHtyp4 : forall P B0 : Term,
           A :: Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (A :: Γ ⊢ M' ▹ Q : B) /\
             (A :: Γ ⊢ M' ▹ Q : B0) /\
             (A :: Γ ⊢ P ▹ Q : B) /\ A :: Γ ⊢ P ▹ Q : B0
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H13 : A' = K
  H17 : λ [A], M = λ [C], T
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H12 : Γ ⊢ N' ▹ QN : A
  H14 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : A
  H16 : Γ ⊢ N'' ▹ QN : C
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)

injection H17; intros; subst; clear H17.
3 subgoals, subgoal 1 (ID 53464)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           C :: Γ ⊢ T ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ M' ▹ Q : B) /\
             (C :: Γ ⊢ M' ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : B) /\ C :: Γ ⊢ P ▹ Q : B0
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)


destruct (IHtyp4 T' B H18) as (QM & ? & ? & ? & ?).
3 subgoals, subgoal 1 (ID 53483)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  IHtyp4 : forall P B0 : Term,
           C :: Γ ⊢ T ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ M' ▹ Q : B) /\
             (C :: Γ ⊢ M' ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : B) /\ C :: Γ ⊢ P ▹ Q : B0
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)

clear IHtyp4.
3 subgoals, subgoal 1 (ID 53484)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   exists Q : Term,
     (Γ ⊢ M' [ ← N'] ▹ Q : B [ ← N]) /\
     (Γ ⊢ M' [ ← N'] ▹ Q : B0) /\
     (Γ ⊢ T' [ ← N''] ▹ Q : B [ ← N]) /\ Γ ⊢ T' [ ← N''] ▹ Q : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)


exists (QM [ QN]); intuition.
6 subgoals, subgoal 1 (ID 53488)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)


apply typ_exp with (B [← N']) s2.
7 subgoals, subgoal 1 (ID 53708)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N']

subgoal 2 (ID 53709) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 4 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using ,)

eapply subst_gen.
9 subgoals, subgoal 1 (ID 53725)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53724 ⊢ M' ▹ QM : B

subgoal 2 (ID 53728) is:
 sub_in_env ?53726 N' ?53727 0 ?53724 Γ
subgoal 3 (ID 53729) is:
 ?53726 ⊢ N' ▹ QN : ?53727
subgoal 4 (ID 53709) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 5 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 6 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 7 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 8 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 9 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 open, ?53726 open, ?53727 open,)

apply H13.
8 subgoals, subgoal 1 (ID 53728)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53726 N' ?53727 0 (C :: Γ) Γ

subgoal 2 (ID 53729) is:
 ?53726 ⊢ N' ▹ QN : ?53727
subgoal 3 (ID 53709) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 4 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 5 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 6 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 open, ?53727 open,)

constructor.
7 subgoals, subgoal 1 (ID 53729)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N' ▹ QN : C

subgoal 2 (ID 53709) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 4 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using ,)

trivial.
6 subgoals, subgoal 1 (ID 53709)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2

subgoal 2 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using ,)


change !s2 with (!s2 [← N]).
6 subgoals, subgoal 1 (ID 53732)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using ,)

eapply subst_gen.
8 subgoals, subgoal 1 (ID 53748)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53747 ⊢ B ▹ B : !s2

subgoal 2 (ID 53751) is:
 sub_in_env ?53749 N ?53750 0 ?53747 Γ
subgoal 3 (ID 53752) is:
 ?53749 ⊢ N ▹ N' : ?53750
subgoal 4 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 5 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 6 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 open, ?53749 open, ?53750 open,)

apply red_refl_lt in H4; apply H4.
7 subgoals, subgoal 1 (ID 53751)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53749 N ?53750 0 (C :: Γ) Γ

subgoal 2 (ID 53752) is:
 ?53749 ⊢ N ▹ N' : ?53750
subgoal 3 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 4 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 open, ?53750 open, ?53754 using ,)

constructor.
6 subgoals, subgoal 1 (ID 53752)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N ▹ N' : C

subgoal 2 (ID 53491) is:
 Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using ,)

trivial.
5 subgoals, subgoal 1 (ID 53491)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B0

subgoal 2 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using ,)


apply typ_pcompat with (B[← N]); trivial.
5 subgoals, subgoal 1 (ID 53757)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using ,)

apply typ_exp with (B[← N']) s2.
6 subgoals, subgoal 1 (ID 53759)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ M' [ ← N'] ▹ QM [ ← QN] : B [ ← N']

subgoal 2 (ID 53760) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using ,)


eapply subst_gen.
8 subgoals, subgoal 1 (ID 53776)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53775 ⊢ M' ▹ QM : B

subgoal 2 (ID 53779) is:
 sub_in_env ?53777 N' ?53778 0 ?53775 Γ
subgoal 3 (ID 53780) is:
 ?53777 ⊢ N' ▹ QN : ?53778
subgoal 4 (ID 53760) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 5 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 6 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 7 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 8 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 open, ?53777 open, ?53778 open,)

apply H13.
7 subgoals, subgoal 1 (ID 53779)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53777 N' ?53778 0 (C :: Γ) Γ

subgoal 2 (ID 53780) is:
 ?53777 ⊢ N' ▹ QN : ?53778
subgoal 3 (ID 53760) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 4 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 open, ?53778 open,)

constructor.
6 subgoals, subgoal 1 (ID 53780)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N' ▹ QN : C

subgoal 2 (ID 53760) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using ,)

trivial.
5 subgoals, subgoal 1 (ID 53760)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2

subgoal 2 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using ,)


change !s2 with (!s2 [← N]).
5 subgoals, subgoal 1 (ID 53783)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N'] : !s2 [ ← N]

subgoal 2 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using ,)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 53799)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53798 ⊢ B ▹ B : !s2

subgoal 2 (ID 53802) is:
 sub_in_env ?53800 N ?53801 0 ?53798 Γ
subgoal 3 (ID 53803) is:
 ?53800 ⊢ N ▹ N' : ?53801
subgoal 4 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 5 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 open, ?53800 open, ?53801 open,)

apply red_refl_lt in H4; apply H4.
6 subgoals, subgoal 1 (ID 53802)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53800 N ?53801 0 (C :: Γ) Γ

subgoal 2 (ID 53803) is:
 ?53800 ⊢ N ▹ N' : ?53801
subgoal 3 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 open, ?53801 open, ?53805 using ,)

constructor.
5 subgoals, subgoal 1 (ID 53803)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N ▹ N' : C

subgoal 2 (ID 53494) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using ,)

trivial.
4 subgoals, subgoal 1 (ID 53494)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using ,)


apply typ_exp with (B [← N'']) t2.
5 subgoals, subgoal 1 (ID 53808)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N'']

subgoal 2 (ID 53809) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using ,)

eapply subst_gen.
7 subgoals, subgoal 1 (ID 53825)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53824 ⊢ T' ▹ QM : B

subgoal 2 (ID 53828) is:
 sub_in_env ?53826 N'' ?53827 0 ?53824 Γ
subgoal 3 (ID 53829) is:
 ?53826 ⊢ N'' ▹ QN : ?53827
subgoal 4 (ID 53809) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 5 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 6 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 7 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 open, ?53826 open, ?53827 open,)

apply H22.
6 subgoals, subgoal 1 (ID 53828)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53826 N'' ?53827 0 (C :: Γ) Γ

subgoal 2 (ID 53829) is:
 ?53826 ⊢ N'' ▹ QN : ?53827
subgoal 3 (ID 53809) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 open, ?53827 open,)

constructor.
5 subgoals, subgoal 1 (ID 53829)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N'' ▹ QN : C

subgoal 2 (ID 53809) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using ,)

trivial.
4 subgoals, subgoal 1 (ID 53809)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2

subgoal 2 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using ,)


change !t2 with (!t2 [← N]).
4 subgoals, subgoal 1 (ID 53832)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2 [ ← N]

subgoal 2 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using ,)

eapply subst_gen.
6 subgoals, subgoal 1 (ID 53848)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53847 ⊢ B ▹ B : !t2

subgoal 2 (ID 53851) is:
 sub_in_env ?53849 N ?53850 0 ?53847 Γ
subgoal 3 (ID 53852) is:
 ?53849 ⊢ N ▹ N'' : ?53850
subgoal 4 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 open, ?53849 open, ?53850 open,)

apply red_refl_lt in H8; apply H8.
5 subgoals, subgoal 1 (ID 53851)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53849 N ?53850 0 (C :: Γ) Γ

subgoal 2 (ID 53852) is:
 ?53849 ⊢ N ▹ N'' : ?53850
subgoal 3 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 open, ?53850 open, ?53854 using ,)

constructor.
4 subgoals, subgoal 1 (ID 53852)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 53495) is:
 Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using ,)

trivial.
3 subgoals, subgoal 1 (ID 53495)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B0

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using ,)


apply typ_pcompat with (B[← N]); trivial.
3 subgoals, subgoal 1 (ID 53857)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N]

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using ,)

apply typ_exp with (B[← N'']) t2.
4 subgoals, subgoal 1 (ID 53859)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ T' [ ← N''] ▹ QM [ ← QN] : B [ ← N'']

subgoal 2 (ID 53860) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using ,)


eapply subst_gen.
6 subgoals, subgoal 1 (ID 53876)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53875 ⊢ T' ▹ QM : B

subgoal 2 (ID 53879) is:
 sub_in_env ?53877 N'' ?53878 0 ?53875 Γ
subgoal 3 (ID 53880) is:
 ?53877 ⊢ N'' ▹ QN : ?53878
subgoal 4 (ID 53860) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 5 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 6 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 open, ?53877 open, ?53878 open,)

apply H22.
5 subgoals, subgoal 1 (ID 53879)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53877 N'' ?53878 0 (C :: Γ) Γ

subgoal 2 (ID 53880) is:
 ?53877 ⊢ N'' ▹ QN : ?53878
subgoal 3 (ID 53860) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 open, ?53878 open,)

constructor.
4 subgoals, subgoal 1 (ID 53880)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N'' ▹ QN : C

subgoal 2 (ID 53860) is:
 Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using ,)

trivial.
3 subgoals, subgoal 1 (ID 53860)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using ,)


change !t2 with (!t2 [← N]).
3 subgoals, subgoal 1 (ID 53883)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ B [ ← N] ▹ B [ ← N''] : !t2 [ ← N]

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using ,)

eapply subst_gen.
5 subgoals, subgoal 1 (ID 53899)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   ?53898 ⊢ B ▹ B : !t2

subgoal 2 (ID 53902) is:
 sub_in_env ?53900 N ?53901 0 ?53898 Γ
subgoal 3 (ID 53903) is:
 ?53900 ⊢ N ▹ N'' : ?53901
subgoal 4 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 5 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 open, ?53900 open, ?53901 open,)

apply red_refl_lt in H8; apply H8.
4 subgoals, subgoal 1 (ID 53902)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   sub_in_env ?53900 N ?53901 0 (C :: Γ) Γ

subgoal 2 (ID 53903) is:
 ?53900 ⊢ N ▹ N'' : ?53901
subgoal 3 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 4 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 open, ?53901 open, ?53905 using ,)

constructor.
3 subgoals, subgoal 1 (ID 53903)
  
  Γ : Env
  M' : Term
  N : Term
  N' : Term
  A0 : Term
  B : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H : Rel s1 s2 s3
  B0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H7 : Rel t1 t2 t3
  H9 : Γ ⊢ C ▹ C' : !t1
  H8 : C :: Γ ⊢ B ▹ D' : !t2
  H10 : Γ ⊢ N ▹ N'' : C
  H11 : Γ ⊢ B [ ← N] ≡' B0
  C0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H18 : C :: Γ ⊢ T ▹ T' : B
  H19 : Γ ⊢ C0 ▹▹ K : !t1
  H20 : Γ ⊢ C0 ▹▹ C : !t1
  H21 : Γ ⊢ K ▹ K' : !t1
  QN : Term
  H14 : Γ ⊢ N' ▹ QN : C
  H16 : Γ ⊢ N'' ▹ QN : C
  H0 : Γ ⊢ C ▹ C : !s1
  H2 : Γ ⊢ A0 ▹▹ C : !s1
  H4 : C :: Γ ⊢ B ▹ B : !s2
  H6 : Γ ⊢ N ▹ N' : C
  IHtyp1 : forall P B : Term,
           Γ ⊢ C ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ C ▹ Q : !s1) /\
             (Γ ⊢ C ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  IHtyp3 : forall P B0 : Term,
           C :: Γ ⊢ B ▹ P : B0 ->
           exists Q : Term,
             (C :: Γ ⊢ B ▹ Q : !s2) /\
             (C :: Γ ⊢ B ▹ Q : B0) /\
             (C :: Γ ⊢ P ▹ Q : !s2) /\ C :: Γ ⊢ P ▹ Q : B0
  H12 : Γ ⊢ N' ▹ QN : C
  H15 : Γ ⊢ N'' ▹ QN : C
  H5 : C :: Γ ⊢ T ▹ M' : B
  H1 : Γ ⊢ K ▹ K : !s1
  H3 : Γ ⊢ A0 ▹▹ K : !s1
  IHtyp2 : forall P B : Term,
           Γ ⊢ K ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ K ▹ Q : !s1) /\
             (Γ ⊢ K ▹ Q : B) /\ (Γ ⊢ P ▹ Q : !s1) /\ Γ ⊢ P ▹ Q : B
  QM : Term
  H13 : C :: Γ ⊢ M' ▹ QM : B
  H17 : C :: Γ ⊢ M' ▹ QM : B
  H22 : C :: Γ ⊢ T' ▹ QM : B
  H23 : C :: Γ ⊢ T' ▹ QM : B
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 34566) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
subgoal 3 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 using , ?53901 using , ?53905 using ,)

trivial.
2 subgoals, subgoal 1 (ID 34566)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : forall P B : Term,
           Γ ⊢ M ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N ▹ Q : A) /\
             (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ B ▹ Q : !s) /\
             (Γ ⊢ B ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  ============================
   exists Q : Term,
     (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 using , ?53901 using , ?53905 using ,)


YOUHHHHOU
destruct (IHtyp1 P B0 H1) as (Z & ? & ? & ? & ?).
2 subgoals, subgoal 1 (ID 53926)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : A
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : forall P B : Term,
           Γ ⊢ M ▹ P : B ->
           exists Q : Term,
             (Γ ⊢ N ▹ Q : A) /\
             (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ B ▹ Q : !s) /\
             (Γ ⊢ B ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  Z : Term
  H2 : Γ ⊢ N ▹ Z : A
  H3 : Γ ⊢ N ▹ Z : B0
  H4 : Γ ⊢ P ▹ Z : A
  H5 : Γ ⊢ P ▹ Z : B0
  ============================
   exists Q : Term,
     (Γ ⊢ N ▹ Q : B) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0

subgoal 2 (ID 34569) is:
 exists Q : Term,
   (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 using , ?53901 using , ?53905 using ,)


exists Z; split; eauto.
1 subgoals, subgoal 1 (ID 34569)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ N ▹ Q : B) /\
             (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ B ▹ Q : !s) /\
             (Γ ⊢ B ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  ============================
   exists Q : Term,
     (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0

(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 using , ?53901 using , ?53905 using , ?53936 using , ?53937 using , ?55344 using , ?55345 using ,)


destruct (IHtyp1 P B0 H1) as (Z & ? & ? & ? & ?).
1 subgoals, subgoal 1 (ID 55526)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ M ▹ N : B
  H0 : Γ ⊢ A ▹ B : !s
  IHtyp1 : forall P B0 : Term,
           Γ ⊢ M ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ N ▹ Q : B) /\
             (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : B) /\ Γ ⊢ P ▹ Q : B0
  IHtyp2 : forall P B0 : Term,
           Γ ⊢ A ▹ P : B0 ->
           exists Q : Term,
             (Γ ⊢ B ▹ Q : !s) /\
             (Γ ⊢ B ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : !s) /\ Γ ⊢ P ▹ Q : B0
  P : Term
  B0 : Term
  H1 : Γ ⊢ M ▹ P : B0
  Z : Term
  H2 : Γ ⊢ N ▹ Z : B
  H3 : Γ ⊢ N ▹ Z : B0
  H4 : Γ ⊢ P ▹ Z : B
  H5 : Γ ⊢ P ▹ Z : B0
  ============================
   exists Q : Term,
     (Γ ⊢ N ▹ Q : A) /\ (Γ ⊢ N ▹ Q : B0) /\ (Γ ⊢ P ▹ Q : A) /\ Γ ⊢ P ▹ Q : B0

(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 using , ?53901 using , ?53905 using , ?53936 using , ?53937 using , ?55344 using , ?55345 using ,)


exists Z; split; eauto.
No more subgoals.
(dependent evars: ?34712 using , ?34713 using , ?34997 using , ?34998 using , ?35002 using , ?35015 using , ?35039 using , ?35040 using , ?35044 using , ?35057 using , ?35141 using , ?35142 using , ?35146 using , ?35159 using , ?35172 using , ?35173 using , ?35177 using , ?35190 using , ?35214 using , ?35215 using , ?35219 using , ?35232 using , ?35316 using , ?35317 using , ?35321 using , ?35334 using , ?35610 using , ?35611 using , ?35612 using , ?35617 using , ?35630 using , ?35640 using , ?35653 using , ?35666 using , ?35667 using , ?35681 using , ?35682 using , ?35683 using , ?35688 using , ?35701 using , ?35959 using , ?35972 using , ?35985 using , ?35986 using , ?35992 using ?35996 , ?35993 using ?35998 , ?35996 using , ?35998 using , ?36008 using , ?36009 using , ?36010 using , ?36015 using , ?36028 using , ?36038 using , ?36051 using , ?36064 using , ?36065 using , ?36071 using ?36075 , ?36072 using ?36077 , ?36075 using , ?36077 using , ?36089 using , ?36090 using , ?36091 using , ?36096 using , ?36109 using , ?36119 using , ?36132 using , ?36145 using , ?36146 using , ?36563 using , ?36564 using , ?36565 using , ?36571 using , ?36584 using , ?36599 using , ?36600 using , ?36639 using , ?36682 using ?36688 , ?36683 using ?36690 , ?36684 using ?36691 , ?36688 using , ?36690 using , ?36691 using , ?36704 using , ?36705 using , ?36706 using , ?36712 using , ?36725 using , ?36740 using , ?36741 using , ?36780 using , ?36823 using ?36829 , ?36824 using ?36831 , ?36825 using ?36832 , ?36829 using , ?36831 using , ?36832 using , ?36843 using , ?36844 using , ?36845 using , ?36851 using , ?36864 using , ?36879 using , ?36880 using , ?36927 using , ?36970 using ?36976 , ?36971 using ?36978 , ?36972 using ?36979 , ?36976 using , ?36978 using , ?36979 using , ?36992 using , ?36993 using , ?36994 using , ?37000 using , ?37013 using , ?37028 using , ?37029 using , ?37076 using , ?37119 using ?37125 , ?37120 using ?37127 , ?37121 using ?37128 , ?37125 using , ?37127 using , ?37128 using , ?37383 using , ?37754 using , ?38631 using , ?38717 using , ?38746 using , ?38747 using , ?38748 using , ?38749 using , ?38758 using , ?38759 using , ?38779 using , ?38910 using , ?38911 using , ?40880 using , ?40893 using , ?40903 using , ?40907 using , ?41269 using , ?42149 using , ?42230 using , ?42275 using , ?42318 using ?42324 , ?42319 using ?42326 , ?42320 using ?42327 , ?42324 using , ?42326 using , ?42327 using , ?42341 using , ?42342 using , ?42343 using , ?42344 using , ?42353 using , ?42354 using , ?42374 using , ?42505 using , ?42506 using , ?44475 using , ?44488 using , ?44498 using , ?44502 using , ?44864 using , ?45744 using , ?45825 using , ?45870 using , ?45914 using ?45920 , ?45915 using ?45922 , ?45916 using ?45923 , ?45920 using , ?45922 using , ?45923 using , ?45937 using ?45943 , ?45938 using ?45945 , ?45939 using ?45946 , ?45943 using , ?45945 using , ?45946 using , ?45961 using ?45967 , ?45962 using ?45969 , ?45963 using ?45970 , ?45967 using ?45974 , ?45969 using , ?45970 using , ?45974 using , ?45994 using , ?47680 using , ?47772 using , ?47811 using ?47817 , ?47812 using ?47819 , ?47813 using ?47820 , ?47817 using , ?47819 using , ?47820 using , ?47835 using ?47841 , ?47836 using ?47843 , ?47837 using ?47844 , ?47841 using ?47848 , ?47843 using , ?47844 using , ?47848 using , ?47868 using , ?49554 using , ?49646 using , ?49890 using , ?50093 using , ?50370 using ?50374 , ?50374 using , ?50755 using , ?51030 using ?51036 , ?51031 using ?51038 , ?51032 using ?51039 , ?51036 using , ?51038 using , ?51039 using , ?51053 using ?51059 , ?51054 using ?51061 , ?51055 using ?51062 , ?51059 using ?51066 , ?51061 using , ?51062 using , ?51066 using , ?51081 using ?51087 , ?51082 using ?51089 , ?51083 using ?51090 , ?51087 using , ?51089 using , ?51090 using , ?51104 using ?51110 , ?51105 using ?51112 , ?51106 using ?51113 , ?51110 using ?51117 , ?51112 using , ?51113 using , ?51117 using , ?51128 using , ?51129 using , ?51130 using , ?51131 using , ?51140 using , ?51141 using , ?51161 using , ?51300 using , ?51301 using , ?51666 using , ?51679 using , ?51689 using , ?51725 using , ?52137 using , ?52182 using , ?52225 using ?52231 , ?52226 using ?52233 , ?52227 using ?52234 , ?52231 using , ?52233 using , ?52234 using , ?52248 using , ?52249 using , ?52250 using , ?52251 using , ?52260 using , ?52261 using , ?52281 using , ?52420 using , ?52421 using , ?52786 using , ?52808 using , ?52818 using , ?52854 using , ?53266 using , ?53311 using , ?53354 using ?53360 , ?53355 using ?53362 , ?53356 using ?53363 , ?53360 using , ?53362 using , ?53363 using , ?53718 using ?53724 , ?53719 using ?53726 , ?53720 using ?53727 , ?53724 using , ?53726 using , ?53727 using , ?53741 using ?53747 , ?53742 using ?53749 , ?53743 using ?53750 , ?53747 using ?53754 , ?53749 using , ?53750 using , ?53754 using , ?53769 using ?53775 , ?53770 using ?53777 , ?53771 using ?53778 , ?53775 using , ?53777 using , ?53778 using , ?53792 using ?53798 , ?53793 using ?53800 , ?53794 using ?53801 , ?53798 using ?53805 , ?53800 using , ?53801 using , ?53805 using , ?53818 using ?53824 , ?53819 using ?53826 , ?53820 using ?53827 , ?53824 using , ?53826 using , ?53827 using , ?53841 using ?53847 , ?53842 using ?53849 , ?53843 using ?53850 , ?53847 using ?53854 , ?53849 using , ?53850 using , ?53854 using , ?53869 using ?53875 , ?53870 using ?53877 , ?53871 using ?53878 , ?53875 using , ?53877 using , ?53878 using , ?53892 using ?53898 , ?53893 using ?53900 , ?53894 using ?53901 , ?53898 using ?53905 , ?53900 using , ?53901 using , ?53905 using , ?53936 using , ?53937 using , ?55344 using , ?55345 using , ?55532 using , ?55533 using , ?55688 using , ?55689 using ,)


Qed.
OSDiamond is defined



Lemma SubDiam : forall Γ M N A, Γ M N : A -> forall P B, Γ M ▹▹ P : B -> exists Q, Γ N ▹▹ Q : A /\ Γ P Q : B.
1 subgoals, subgoal 1 (ID 55760)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹ N : A ->
   forall P B : Term,
   Γ ⊢ M ▹▹ P : B -> exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ P ▹ Q : B

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 55768)
  
  Γ : Env
  M : Term
  N : Term
  A : Term
  H : Γ ⊢ M ▹ N : A
  P : Term
  B : Term
  H0 : Γ ⊢ M ▹▹ P : B
  ============================
   exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ P ▹ Q : B

(dependent evars:)

revert N A H.
1 subgoals, subgoal 1 (ID 55770)
  
  Γ : Env
  M : Term
  P : Term
  B : Term
  H0 : Γ ⊢ M ▹▹ P : B
  ============================
   forall N A : Term,
   Γ ⊢ M ▹ N : A -> exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ P ▹ Q : B

(dependent evars:)

induction H0; intros.
2 subgoals, subgoal 1 (ID 55800)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  N : Term
  A : Term
  H0 : Γ ⊢ s ▹ N : A
  ============================
   exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ t ▹ Q : T

subgoal 2 (ID 55803) is:
 exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T
(dependent evars:)


destruct (OSDiamond Γ s t T H N A H0) as (w & ? & ? & ? & ?).
2 subgoals, subgoal 1 (ID 55822)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  N : Term
  A : Term
  H0 : Γ ⊢ s ▹ N : A
  w : Term
  H1 : Γ ⊢ t ▹ w : T
  H2 : Γ ⊢ t ▹ w : A
  H3 : Γ ⊢ N ▹ w : T
  H4 : Γ ⊢ N ▹ w : A
  ============================
   exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ t ▹ Q : T

subgoal 2 (ID 55803) is:
 exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T
(dependent evars:)


exists w; split; eauto.
1 subgoals, subgoal 1 (ID 55803)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall N A : Term,
                Γ ⊢ s ▹ N : A ->
                exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ t ▹ Q : T
  IHtyp_reds2 : forall N A : Term,
                Γ ⊢ t ▹ N : A ->
                exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T
  N : Term
  A : Term
  H : Γ ⊢ s ▹ N : A
  ============================
   exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T

(dependent evars:)


destruct (IHtyp_reds1 N A H) as (w1 &? & ?).
1 subgoals, subgoal 1 (ID 55862)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall N A : Term,
                Γ ⊢ s ▹ N : A ->
                exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ t ▹ Q : T
  IHtyp_reds2 : forall N A : Term,
                Γ ⊢ t ▹ N : A ->
                exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T
  N : Term
  A : Term
  H : Γ ⊢ s ▹ N : A
  w1 : Term
  H0 : Γ ⊢ N ▹▹ w1 : A
  H1 : Γ ⊢ t ▹ w1 : T
  ============================
   exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T

(dependent evars:)


destruct (IHtyp_reds2 w1 T H1) as (w2 & ? & ?).
1 subgoals, subgoal 1 (ID 55873)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall N A : Term,
                Γ ⊢ s ▹ N : A ->
                exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ t ▹ Q : T
  IHtyp_reds2 : forall N A : Term,
                Γ ⊢ t ▹ N : A ->
                exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T
  N : Term
  A : Term
  H : Γ ⊢ s ▹ N : A
  w1 : Term
  H0 : Γ ⊢ N ▹▹ w1 : A
  H1 : Γ ⊢ t ▹ w1 : T
  w2 : Term
  H2 : Γ ⊢ w1 ▹▹ w2 : T
  H3 : Γ ⊢ u ▹ w2 : T
  ============================
   exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ u ▹ Q : T

(dependent evars:)


exists w2; split; eauto.
No more subgoals.
(dependent evars: ?55883 using , ?55884 using ,)


Qed.
SubDiam is defined



Lemma ChurchRosser: forall Γ M N A , Γ M ▹▹ N : A -> forall P B, Γ M ▹▹ P : B -> exists Q, Γ N ▹▹ Q : A /\ Γ P ▹▹ Q: B.
1 subgoals, subgoal 1 (ID 57263)
  
  ============================
   forall (Γ : Env) (M N A : Term),
   Γ ⊢ M ▹▹ N : A ->
   forall P B : Term,
   Γ ⊢ M ▹▹ P : B -> exists Q : Term, (Γ ⊢ N ▹▹ Q : A) /\ Γ ⊢ P ▹▹ Q : B

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 57298)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  B : Term
  H0 : Γ ⊢ s ▹▹ P : B
  ============================
   exists Q : Term, (Γ ⊢ t ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B

subgoal 2 (ID 57301) is:
 exists Q : Term, (Γ ⊢ u ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
(dependent evars:)


destruct (SubDiam Γ s t T H P B H0) as (w & ? & ?).
2 subgoals, subgoal 1 (ID 57312)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  P : Term
  B : Term
  H0 : Γ ⊢ s ▹▹ P : B
  w : Term
  H1 : Γ ⊢ t ▹▹ w : T
  H2 : Γ ⊢ P ▹ w : B
  ============================
   exists Q : Term, (Γ ⊢ t ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B

subgoal 2 (ID 57301) is:
 exists Q : Term, (Γ ⊢ u ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
(dependent evars:)


exists w; split; eauto.
1 subgoals, subgoal 1 (ID 57301)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall P B : Term,
                Γ ⊢ s ▹▹ P : B ->
                exists Q : Term, (Γ ⊢ t ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
  IHtyp_reds2 : forall P B : Term,
                Γ ⊢ t ▹▹ P : B ->
                exists Q : Term, (Γ ⊢ u ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
  P : Term
  B : Term
  H1 : Γ ⊢ s ▹▹ P : B
  ============================
   exists Q : Term, (Γ ⊢ u ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B

(dependent evars:)


destruct (IHtyp_reds1 P B H1) as (Q & ? & ?).
1 subgoals, subgoal 1 (ID 57352)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall P B : Term,
                Γ ⊢ s ▹▹ P : B ->
                exists Q : Term, (Γ ⊢ t ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
  IHtyp_reds2 : forall P B : Term,
                Γ ⊢ t ▹▹ P : B ->
                exists Q : Term, (Γ ⊢ u ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
  P : Term
  B : Term
  H1 : Γ ⊢ s ▹▹ P : B
  Q : Term
  H2 : Γ ⊢ t ▹▹ Q : T
  H3 : Γ ⊢ P ▹▹ Q : B
  ============================
   exists Q0 : Term, (Γ ⊢ u ▹▹ Q0 : T) /\ Γ ⊢ P ▹▹ Q0 : B

(dependent evars:)


destruct (IHtyp_reds2 Q T H2) as (R & ? & ?).
1 subgoals, subgoal 1 (ID 57363)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H : Γ ⊢ s ▹▹ t : T
  H0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall P B : Term,
                Γ ⊢ s ▹▹ P : B ->
                exists Q : Term, (Γ ⊢ t ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
  IHtyp_reds2 : forall P B : Term,
                Γ ⊢ t ▹▹ P : B ->
                exists Q : Term, (Γ ⊢ u ▹▹ Q : T) /\ Γ ⊢ P ▹▹ Q : B
  P : Term
  B : Term
  H1 : Γ ⊢ s ▹▹ P : B
  Q : Term
  H2 : Γ ⊢ t ▹▹ Q : T
  H3 : Γ ⊢ P ▹▹ Q : B
  R : Term
  H4 : Γ ⊢ u ▹▹ R : T
  H5 : Γ ⊢ Q ▹▹ R : T
  ============================
   exists Q0 : Term, (Γ ⊢ u ▹▹ Q0 : T) /\ Γ ⊢ P ▹▹ Q0 : B

(dependent evars:)


exists R; split; eauto.
No more subgoals.
(dependent evars: ?57381 using , ?57382 using ,)


Qed.
ChurchRosser is defined



Theorem Confluence : forall Γ A B, Γ A ≡' B -> exists Q,exists s, exists t, Γ A ▹▹ Q : !s /\ Γ B ▹▹ Q : !t.
1 subgoals, subgoal 1 (ID 58752)
  
  ============================
   forall (Γ : Env) (A B : Term),
   Γ ⊢ A ≡' B ->
   exists (Q : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ B ▹▹ Q : !t

(dependent evars:)


induction 1; intros.
3 subgoals, subgoal 1 (ID 58776)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  ============================
   exists (Q : Term) (s0 t : Sorts), (Γ ⊢ A ▹▹ Q : !s0) /\ Γ ⊢ B ▹▹ Q : !t

subgoal 2 (ID 58781) is:
 exists (Q : Term) (s0 t : Sorts), (Γ ⊢ A ▹▹ Q : !s0) /\ Γ ⊢ B ▹▹ Q : !t
subgoal 3 (ID 58790) is:
 exists (Q : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t
(dependent evars:)


exists B; exists s; exists s; intuition.
3 subgoals, subgoal 1 (ID 58799)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ A ▹ B : !s
  ============================
   Γ ⊢ B ▹▹ B : !s

subgoal 2 (ID 58781) is:
 exists (Q : Term) (s0 t : Sorts), (Γ ⊢ A ▹▹ Q : !s0) /\ Γ ⊢ B ▹▹ Q : !t
subgoal 3 (ID 58790) is:
 exists (Q : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t
(dependent evars:)

apply red_refl_rt in H; intuition.
2 subgoals, subgoal 1 (ID 58781)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  ============================
   exists (Q : Term) (s0 t : Sorts), (Γ ⊢ A ▹▹ Q : !s0) /\ Γ ⊢ B ▹▹ Q : !t

subgoal 2 (ID 58790) is:
 exists (Q : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t
(dependent evars:)


exists A; exists s; exists s; intuition.
2 subgoals, subgoal 1 (ID 58831)
  
  Γ : Env
  A : Term
  B : Term
  s : Sorts
  H : Γ ⊢ B ▹ A : !s
  ============================
   Γ ⊢ A ▹▹ A : !s

subgoal 2 (ID 58790) is:
 exists (Q : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t
(dependent evars:)

apply red_refl_rt in H; intuition.
1 subgoals, subgoal 1 (ID 58790)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  IHtyp_peq1 : exists (Q : Term) (s t : Sorts),
                 (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ B ▹▹ Q : !t
  IHtyp_peq2 : exists (Q : Term) (s t : Sorts),
                 (Γ ⊢ B ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t
  ============================
   exists (Q : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t

(dependent evars:)


destruct IHtyp_peq1 as (Q & q & q' & ? & ?).
1 subgoals, subgoal 1 (ID 58877)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  Q : Term
  q : Sorts
  q' : Sorts
  H1 : Γ ⊢ A ▹▹ Q : !q
  H2 : Γ ⊢ B ▹▹ Q : !q'
  IHtyp_peq2 : exists (Q : Term) (s t : Sorts),
                 (Γ ⊢ B ▹▹ Q : !s) /\ Γ ⊢ C ▹▹ Q : !t
  ============================
   exists (Q0 : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q0 : !s) /\ Γ ⊢ C ▹▹ Q0 : !t

(dependent evars:)

destruct IHtyp_peq2 as (Q1 & q1 & q'1 & ?& ?).
1 subgoals, subgoal 1 (ID 58893)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  Q : Term
  q : Sorts
  q' : Sorts
  H1 : Γ ⊢ A ▹▹ Q : !q
  H2 : Γ ⊢ B ▹▹ Q : !q'
  Q1 : Term
  q1 : Sorts
  q'1 : Sorts
  H3 : Γ ⊢ B ▹▹ Q1 : !q1
  H4 : Γ ⊢ C ▹▹ Q1 : !q'1
  ============================
   exists (Q0 : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q0 : !s) /\ Γ ⊢ C ▹▹ Q0 : !t

(dependent evars:)


destruct (ChurchRosser Γ B Q1 !q1 H3 Q !q' H2) as (z &? & ?).
1 subgoals, subgoal 1 (ID 58904)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  H : Γ ⊢ A ≡' B
  H0 : Γ ⊢ B ≡' C
  Q : Term
  q : Sorts
  q' : Sorts
  H1 : Γ ⊢ A ▹▹ Q : !q
  H2 : Γ ⊢ B ▹▹ Q : !q'
  Q1 : Term
  q1 : Sorts
  q'1 : Sorts
  H3 : Γ ⊢ B ▹▹ Q1 : !q1
  H4 : Γ ⊢ C ▹▹ Q1 : !q'1
  z : Term
  H5 : Γ ⊢ Q1 ▹▹ z : !q1
  H6 : Γ ⊢ Q ▹▹ z : !q'
  ============================
   exists (Q0 : Term) (s t : Sorts), (Γ ⊢ A ▹▹ Q0 : !s) /\ Γ ⊢ C ▹▹ Q0 : !t

(dependent evars:)


exists z; exists q; exists q'1; split; eauto.
No more subgoals.
(dependent evars: ?58918 using , ?58919 using , ?60278 using , ?60279 using ,)


Qed.
Confluence is defined



The holy graal: Weak Pi Injectivity is the key property to prove Typed SubjectReduction and the equivalence between PTS and PTSe.
Theorem PiInj : forall Γ A B C D , Γ Π(A),B ≡' Π(C),D -> Γ A ≡' C /\ A::Γ B ≡' D.
1 subgoals, subgoal 1 (ID 61645)
  
  ============================
   forall (Γ : Env) (A B C D : Term),
   Γ ⊢ Π (A), B ≡' Π (C), D -> (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 61651)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  H : Γ ⊢ Π (A), B ≡' Π (C), D
  ============================
   (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)

apply Confluence in H.
1 subgoals, subgoal 1 (ID 61653)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  H : exists (Q : Term) (s t : Sorts),
        (Γ ⊢ Π (A), B ▹▹ Q : !s) /\ Γ ⊢ Π (C), D ▹▹ Q : !t
  ============================
   (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)

destruct H as (P & s & t & ? & ?) .
1 subgoals, subgoal 1 (ID 61669)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  P : Term
  s : Sorts
  t : Sorts
  H : Γ ⊢ Π (A), B ▹▹ P : !s
  H0 : Γ ⊢ Π (C), D ▹▹ P : !t
  ============================
   (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)


apply Pi_Reds in H as (A1 & B1 & s1 & t1 & u1 & ? & -> & ? & ? & ?).
1 subgoals, subgoal 1 (ID 61712)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H0 : Γ ⊢ Π (C), D ▹▹ Π (A1), B1 : !t
  H1 : Γ ⊢ A ▹▹ A1 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  ============================
   (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)


apply Pi_Reds in H0 as (A2 & B2 & s2 & t2 & u2 & ? & ? & ? & ? & ?).
1 subgoals, subgoal 1 (ID 61750)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  A1 : Term
  B1 : Term
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H1 : Γ ⊢ A ▹▹ A1 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B1 : !t1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H4 : Π (A1), B1 = Π (A2), B2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  ============================
   (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)


injection H4; intros; subst; clear H4.
1 subgoals, subgoal 1 (ID 61773)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   (Γ ⊢ A ≡' C) /\ A :: Γ ⊢ B ≡' D

(dependent evars:)


split.
2 subgoals, subgoal 1 (ID 61775)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   Γ ⊢ A ≡' C

subgoal 2 (ID 61776) is:
 A :: Γ ⊢ B ≡' D
(dependent evars:)

apply typ_peq_trans with A2.
3 subgoals, subgoal 1 (ID 61777)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   Γ ⊢ A ≡' A2

subgoal 2 (ID 61778) is:
 Γ ⊢ A2 ≡' C
subgoal 3 (ID 61776) is:
 A :: Γ ⊢ B ≡' D
(dependent evars:)

apply reds_to_conv in H1; trivial.
2 subgoals, subgoal 1 (ID 61778)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   Γ ⊢ A2 ≡' C

subgoal 2 (ID 61776) is:
 A :: Γ ⊢ B ≡' D
(dependent evars:)

apply reds_to_conv in H5; intuition.
1 subgoals, subgoal 1 (ID 61776)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   A :: Γ ⊢ B ≡' D

(dependent evars:)


apply typ_peq_trans with B2.
2 subgoals, subgoal 1 (ID 61901)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   A :: Γ ⊢ B ≡' B2

subgoal 2 (ID 61902) is:
 A :: Γ ⊢ B2 ≡' D
(dependent evars:)

apply reds_to_conv in H2; trivial.
1 subgoals, subgoal 1 (ID 61902)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ▹▹ B2 : !t2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   A :: Γ ⊢ B2 ≡' D

(dependent evars:)

apply reds_to_conv in H6.
1 subgoals, subgoal 1 (ID 61906)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ≡' B2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   A :: Γ ⊢ B2 ≡' D

(dependent evars:)

eapply conv_in_env_peq.
2 subgoals, subgoal 1 (ID 61908)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ≡' B2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   ?61907 ⊢ B2 ≡' D

subgoal 2 (ID 61909) is:
 env_conv ?61907 (A :: Γ)
(dependent evars: ?61907 open,)


apply typ_peq_sym.
2 subgoals, subgoal 1 (ID 61910)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ≡' B2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   ?61907 ⊢ D ≡' B2

subgoal 2 (ID 61909) is:
 env_conv ?61907 (A :: Γ)
(dependent evars: ?61907 open,)

apply H6.
1 subgoals, subgoal 1 (ID 61909)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ▹▹ A2 : !s2
  H6 : C :: Γ ⊢ D ≡' B2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   env_conv (C :: Γ) (A :: Γ)

(dependent evars: ?61907 using ,)

apply reds_to_conv in H5.
1 subgoals, subgoal 1 (ID 61912)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ≡' A2
  H6 : C :: Γ ⊢ D ≡' B2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ▹▹ A2 : !s1
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   env_conv (C :: Γ) (A :: Γ)

(dependent evars: ?61907 using ,)

apply reds_to_conv in H1.
1 subgoals, subgoal 1 (ID 61914)
  
  Γ : Env
  A : Term
  B : Term
  C : Term
  D : Term
  s : Sorts
  t : Sorts
  s1 : Sorts
  t1 : Sorts
  u1 : Sorts
  H : Rel s1 t1 u1
  H3 : !s = !u1 \/ Γ ⊢ !s ≡' !u1
  A2 : Term
  B2 : Term
  s2 : Sorts
  t2 : Sorts
  u2 : Sorts
  H0 : Rel s2 t2 u2
  H5 : Γ ⊢ C ≡' A2
  H6 : C :: Γ ⊢ D ≡' B2
  H7 : !t = !u2 \/ Γ ⊢ !t ≡' !u2
  H1 : Γ ⊢ A ≡' A2
  H2 : A :: Γ ⊢ B ▹▹ B2 : !t1
  ============================
   env_conv (C :: Γ) (A :: Γ)

(dependent evars: ?61907 using ,)

eauto.
No more subgoals.
(dependent evars: ?61907 using , ?62781 using ,)


Qed.
PiInj is defined



Some congruence consequences of PiInj .
Lemma ConvSort : forall Γ s t, Γ !s ≡' !t -> s = t.
1 subgoals, subgoal 1 (ID 62969)
  
  ============================
   forall (Γ : Env) (s t : Sorts), Γ ⊢ !s ≡' !t -> s = t

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 62973)
  
  Γ : Env
  s : Sorts
  t : Sorts
  H : Γ ⊢ !s ≡' !t
  ============================
   s = t

(dependent evars:)

apply Confluence in H as (R& ?& ? & ? & ?).
1 subgoals, subgoal 1 (ID 62991)
  
  Γ : Env
  s : Sorts
  t : Sorts
  R : Term
  x : Sorts
  x0 : Sorts
  H : Γ ⊢ !s ▹▹ R : !x
  H0 : Γ ⊢ !t ▹▹ R : !x0
  ============================
   s = t

(dependent evars:)

apply Sort_Reds in H as ( ? & _).
1 subgoals, subgoal 1 (ID 62998)
  
  Γ : Env
  s : Sorts
  t : Sorts
  R : Term
  x : Sorts
  x0 : Sorts
  H0 : Γ ⊢ !t ▹▹ R : !x0
  H : R = !s
  ============================
   s = t

(dependent evars:)


apply Sort_Reds in H0 as (? & _).
1 subgoals, subgoal 1 (ID 63005)
  
  Γ : Env
  s : Sorts
  t : Sorts
  R : Term
  x : Sorts
  x0 : Sorts
  H : R = !s
  H0 : R = !t
  ============================
   s = t

(dependent evars:)

rewrite H in H0; injection H0; intros; trivial.
No more subgoals.
(dependent evars:)


Qed.
ConvSort is defined



Lemma reds_Pi : forall Γ A A' s, Γ A ▹▹ A' : !s -> forall B B' t u, A::Γ B ▹▹ B' :!t ->
  Rel s t u -> Γ Π (A), B ▹▹ Π (A'), B' : !u.
1 subgoals, subgoal 1 (ID 63027)
  
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (B B' : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

(dependent evars:)


assert (forall Γ A A' S, Γ A ▹▹ A' : S -> forall s B B' t u, S = !s -> A::Γ B B' :!t ->
  Rel s t u -> Γ Π (A), B ▹▹ Π (A'), B' : !u).
2 subgoals, subgoal 1 (ID 63039)
  
  ============================
   forall (Γ : Env) (A A' S : Term),
   Γ ⊢ A ▹▹ A' : S ->
   forall (s : Sorts) (B B' : Term) (t u : Sorts),
   S = !s ->
   A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

subgoal 2 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars:)


induction 1; intros; subst.
3 subgoals, subgoal 1 (ID 63093)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ B ▹ B' : !t0
  H2 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u

subgoal 2 (ID 63101) is:
 Γ ⊢ Π (s), B ▹▹ Π (u), B' : !u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars:)

constructor.
3 subgoals, subgoal 1 (ID 63103)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ B ▹ B' : !t0
  H2 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ Π (s), B ▹ Π (t), B' : !u

subgoal 2 (ID 63101) is:
 Γ ⊢ Π (s), B ▹▹ Π (u), B' : !u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars:)

eapply typ_pi; eauto.
2 subgoals, subgoal 1 (ID 63101)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (u), B' : !u0

subgoal 2 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using ,)


apply typ_reds_trans with (Pi t B).
3 subgoals, subgoal 1 (ID 63125)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (t), B : !u0

subgoal 2 (ID 63126) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using ,)

eapply IHtyp_reds1.
5 subgoals, subgoal 1 (ID 63129)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   !s0 = !?63127

subgoal 2 (ID 63130) is:
 s :: Γ ⊢ B ▹ B : !?63128
subgoal 3 (ID 63131) is:
 Rel ?63127 ?63128 u0
subgoal 4 (ID 63126) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
subgoal 5 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 open, ?63128 open,)

reflexivity.
4 subgoals, subgoal 1 (ID 63130)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   s :: Γ ⊢ B ▹ B : !?63128

subgoal 2 (ID 63131) is:
 Rel s0 ?63128 u0
subgoal 3 (ID 63126) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
subgoal 4 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 open,)

apply red_refl_lt in H2.
4 subgoals, subgoal 1 (ID 63135)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   s :: Γ ⊢ B ▹ B : !?63134

subgoal 2 (ID 63131) is:
 Rel s0 ?63134 u0
subgoal 3 (ID 63126) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
subgoal 4 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 open,)


apply H2.
3 subgoals, subgoal 1 (ID 63131)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   Rel s0 t0 u0

subgoal 2 (ID 63126) is:
 Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using ,)

trivial.
2 subgoals, subgoal 1 (ID 63126)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0

subgoal 2 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using ,)

eapply IHtyp_reds2.
4 subgoals, subgoal 1 (ID 63138)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   !s0 = !?63136

subgoal 2 (ID 63139) is:
 t :: Γ ⊢ B ▹ B' : !?63137
subgoal 3 (ID 63140) is:
 Rel ?63136 ?63137 u0
subgoal 4 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 open, ?63137 open,)

reflexivity.
3 subgoals, subgoal 1 (ID 63139)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   t :: Γ ⊢ B ▹ B' : !?63137

subgoal 2 (ID 63140) is:
 Rel s0 ?63137 u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 open,)

eapply conv_in_env.
4 subgoals, subgoal 1 (ID 63143)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   ?63142 ⊢ B ▹ B' : !?63137

subgoal 2 (ID 63144) is:
 env_conv ?63142 (t :: Γ)
subgoal 3 (ID 63140) is:
 Rel s0 ?63137 u0
subgoal 4 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 open, ?63142 open,)

apply H2.
3 subgoals, subgoal 1 (ID 63144)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   env_conv (s :: Γ) (t :: Γ)

subgoal 2 (ID 63140) is:
 Rel s0 t0 u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)


apply reds_to_conv in H.
3 subgoals, subgoal 1 (ID 63146)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ≡' t
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   env_conv (s :: Γ) (t :: Γ)

subgoal 2 (ID 63140) is:
 Rel s0 t0 u0
subgoal 3 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)

eauto.
2 subgoals, subgoal 1 (ID 63140)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  B : Term
  B' : Term
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ B ▹ B' : !t0
  H3 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (s1 : Sorts) (B B' : Term) (t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s1 t0 u -> Γ ⊢ Π (s), B ▹▹ Π (t), B' : !u
  IHtyp_reds2 : forall (s : Sorts) (B B' : Term) (t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ B ▹ B' : !t0 ->
                Rel s t0 u0 -> Γ ⊢ Π (t), B ▹▹ Π (u), B' : !u0
  ============================
   Rel s0 t0 u0

subgoal 2 (ID 63040) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)

trivial.
1 subgoals, subgoal 1 (ID 63040)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (B B' : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)


assert (forall Γ' B B' T, Γ' B ▹▹ B' : T -> forall Γ A A' s t u, T = !t -> Γ' = A::Γ ->
  Γ A A' :!s -> Rel s t u -> Γ Π (A), B ▹▹ Π (A'), B' : !u).
2 subgoals, subgoal 1 (ID 63435)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  ============================
   forall (Γ' : Env) (B B' T : Term),
   Γ' ⊢ B ▹▹ B' : T ->
   forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
   T = !t ->
   Γ' = A :: Γ ->
   Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

subgoal 2 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)

clear H.
2 subgoals, subgoal 1 (ID 63437)
  
  ============================
   forall (Γ' : Env) (B B' T : Term),
   Γ' ⊢ B ▹▹ B' : T ->
   forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
   T = !t ->
   Γ' = A :: Γ ->
   Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

subgoal 2 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)


induction 1; intros; subst.
3 subgoals, subgoal 1 (ID 63499)
  
  s : Term
  t : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : !t0
  ============================
   Γ0 ⊢ Π (A), s ▹▹ Π (A'), t : !u

subgoal 2 (ID 63515) is:
 Γ0 ⊢ Π (A), s ▹▹ Π (A'), u : !u0
subgoal 3 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)

constructor.
3 subgoals, subgoal 1 (ID 63517)
  
  s : Term
  t : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : !t0
  ============================
   Γ0 ⊢ Π (A), s ▹ Π (A'), t : !u

subgoal 2 (ID 63515) is:
 Γ0 ⊢ Π (A), s ▹▹ Π (A'), u : !u0
subgoal 3 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using ,)

eapply typ_pi; eauto.
2 subgoals, subgoal 1 (ID 63515)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Γ0 ⊢ Π (A), s ▹▹ Π (A'), u : !u0

subgoal 2 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using ,)


apply typ_reds_trans with (Pi A t).
3 subgoals, subgoal 1 (ID 63539)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Γ0 ⊢ Π (A), s ▹▹ Π (A), t : !u0

subgoal 2 (ID 63540) is:
 Γ0 ⊢ Π (A), t ▹▹ Π (A'), u : !u0
subgoal 3 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using ,)

eapply IHtyp_reds1.
6 subgoals, subgoal 1 (ID 63543)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   !t0 = !?63542

subgoal 2 (ID 63544) is:
 A :: Γ0 = A :: Γ0
subgoal 3 (ID 63545) is:
 Γ0 ⊢ A ▹ A : !?63541
subgoal 4 (ID 63546) is:
 Rel ?63541 ?63542 u0
subgoal 5 (ID 63540) is:
 Γ0 ⊢ Π (A), t ▹▹ Π (A'), u : !u0
subgoal 6 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 open, ?63542 open,)

reflexivity.
5 subgoals, subgoal 1 (ID 63544)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   A :: Γ0 = A :: Γ0

subgoal 2 (ID 63545) is:
 Γ0 ⊢ A ▹ A : !?63541
subgoal 3 (ID 63546) is:
 Rel ?63541 t0 u0
subgoal 4 (ID 63540) is:
 Γ0 ⊢ Π (A), t ▹▹ Π (A'), u : !u0
subgoal 5 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 open, ?63542 using ,)

trivial.
4 subgoals, subgoal 1 (ID 63545)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Γ0 ⊢ A ▹ A : !?63541

subgoal 2 (ID 63546) is:
 Rel ?63541 t0 u0
subgoal 3 (ID 63540) is:
 Γ0 ⊢ Π (A), t ▹▹ Π (A'), u : !u0
subgoal 4 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 open, ?63542 using ,)

apply red_refl_lt in H3; apply H3.
3 subgoals, subgoal 1 (ID 63546)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Rel s0 t0 u0

subgoal 2 (ID 63540) is:
 Γ0 ⊢ Π (A), t ▹▹ Π (A'), u : !u0
subgoal 3 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using ,)


trivial.
2 subgoals, subgoal 1 (ID 63540)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Γ0 ⊢ Π (A), t ▹▹ Π (A'), u : !u0

subgoal 2 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using ,)

eapply IHtyp_reds2.
5 subgoals, subgoal 1 (ID 63553)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   !t0 = !?63552

subgoal 2 (ID 63554) is:
 A :: Γ0 = A :: Γ0
subgoal 3 (ID 63555) is:
 Γ0 ⊢ A ▹ A' : !?63551
subgoal 4 (ID 63556) is:
 Rel ?63551 ?63552 u0
subgoal 5 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 open, ?63552 open,)

reflexivity.
4 subgoals, subgoal 1 (ID 63554)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   A :: Γ0 = A :: Γ0

subgoal 2 (ID 63555) is:
 Γ0 ⊢ A ▹ A' : !?63551
subgoal 3 (ID 63556) is:
 Rel ?63551 t0 u0
subgoal 4 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 open, ?63552 using ,)

trivial.
3 subgoals, subgoal 1 (ID 63555)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Γ0 ⊢ A ▹ A' : !?63551

subgoal 2 (ID 63556) is:
 Rel ?63551 t0 u0
subgoal 3 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 open, ?63552 using ,)

apply H3.
2 subgoals, subgoal 1 (ID 63556)
  
  s : Term
  t : Term
  u : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H3 : Γ0 ⊢ A ▹ A' : !s0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : !t0
  H0 : A :: Γ0 ⊢ t ▹▹ u : !t0
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t1 u : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                Rel s0 t1 u -> Γ ⊢ Π (A0), s ▹▹ Π (A'), t : !u
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t1 u0 : Sorts),
                !t0 = !t1 ->
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                Rel s t1 u0 -> Γ ⊢ Π (A0), t ▹▹ Π (A'), u : !u0
  ============================
   Rel s0 t0 u0

subgoal 2 (ID 63436) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (B B' : Term) (t u : Sorts),
 A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using ,)

trivial.
1 subgoals, subgoal 1 (ID 63436)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (B B' : Term) (t u : Sorts),
   A :: Γ ⊢ B ▹▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using ,)


intros.
1 subgoals, subgoal 1 (ID 63568)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u

(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using ,)

apply typ_reds_trans with (Pi A B').
2 subgoals, subgoal 1 (ID 63569)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A), B' : !u

subgoal 2 (ID 63570) is:
 Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using ,)

eapply H0.
6 subgoals, subgoal 1 (ID 63575)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   ?63571 ⊢ B ▹▹ B' : ?63572

subgoal 2 (ID 63576) is:
 ?63572 = !?63574
subgoal 3 (ID 63577) is:
 ?63571 = A :: Γ
subgoal 4 (ID 63578) is:
 Γ ⊢ A ▹ A : !?63573
subgoal 5 (ID 63579) is:
 Rel ?63573 ?63574 u
subgoal 6 (ID 63570) is:
 Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 open, ?63572 open, ?63573 open, ?63574 open,)

apply H2.
5 subgoals, subgoal 1 (ID 63576)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   !t = !?63574

subgoal 2 (ID 63577) is:
 A :: Γ = A :: Γ
subgoal 3 (ID 63578) is:
 Γ ⊢ A ▹ A : !?63573
subgoal 4 (ID 63579) is:
 Rel ?63573 ?63574 u
subgoal 5 (ID 63570) is:
 Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 open, ?63574 open,)

reflexivity.
4 subgoals, subgoal 1 (ID 63577)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   A :: Γ = A :: Γ

subgoal 2 (ID 63578) is:
 Γ ⊢ A ▹ A : !?63573
subgoal 3 (ID 63579) is:
 Rel ?63573 t u
subgoal 4 (ID 63570) is:
 Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 open, ?63574 using ,)

trivial.
3 subgoals, subgoal 1 (ID 63578)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Γ ⊢ A ▹ A : !?63573

subgoal 2 (ID 63579) is:
 Rel ?63573 t u
subgoal 3 (ID 63570) is:
 Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 open, ?63574 using ,)


apply reds_refl_lt in H1; apply H1.
2 subgoals, subgoal 1 (ID 63579)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Rel s t u

subgoal 2 (ID 63570) is:
 Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using ,)

trivial.
1 subgoals, subgoal 1 (ID 63570)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Γ ⊢ Π (A), B' ▹▹ Π (A'), B' : !u

(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using ,)


eapply H.
4 subgoals, subgoal 1 (ID 63587)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Γ ⊢ A ▹▹ A' : ?63584

subgoal 2 (ID 63588) is:
 ?63584 = !?63585
subgoal 3 (ID 63589) is:
 A :: Γ ⊢ B' ▹ B' : !?63586
subgoal 4 (ID 63590) is:
 Rel ?63585 ?63586 u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using , ?63584 open, ?63585 open, ?63586 open,)

apply H1.
3 subgoals, subgoal 1 (ID 63588)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   !s = !?63585

subgoal 2 (ID 63589) is:
 A :: Γ ⊢ B' ▹ B' : !?63586
subgoal 3 (ID 63590) is:
 Rel ?63585 ?63586 u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using , ?63584 using , ?63585 open, ?63586 open,)

reflexivity.
2 subgoals, subgoal 1 (ID 63589)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   A :: Γ ⊢ B' ▹ B' : !?63586

subgoal 2 (ID 63590) is:
 Rel s ?63586 u
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using , ?63584 using , ?63585 using , ?63586 open,)

apply reds_refl_rt in H2; apply H2.
1 subgoals, subgoal 1 (ID 63590)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (s : Sorts) (B B' : Term) (t u : Sorts),
      S = !s ->
      A :: Γ ⊢ B ▹ B' : !t -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  H0 : forall (Γ' : Env) (B B' T : Term),
       Γ' ⊢ B ▹▹ B' : T ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       T = !t ->
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s -> Rel s t u -> Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !u
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  B : Term
  B' : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H3 : Rel s t u
  ============================
   Rel s t u

(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using , ?63584 using , ?63585 using , ?63586 using ?63593 , ?63593 using ,)

trivial.
No more subgoals.
(dependent evars: ?63104 using , ?63105 using , ?63127 using , ?63128 using ?63134 , ?63134 using , ?63136 using , ?63137 using , ?63142 using , ?63518 using , ?63519 using , ?63541 using ?63549 , ?63542 using , ?63549 using , ?63551 using , ?63552 using , ?63571 using , ?63572 using , ?63573 using ?63582 , ?63574 using , ?63582 using , ?63584 using , ?63585 using , ?63586 using ?63593 , ?63593 using ,)


Qed.
reds_Pi is defined



Lemma reds_La : forall Γ A A' s, Γ A ▹▹ A' : !s -> forall M M' B t u, A::Γ M ▹▹ M' :B ->
  A::Γ B B : !t -> Rel s t u -> Γ λ[A], M ▹▹ λ[A'], M' :Π (A), B .
1 subgoals, subgoal 1 (ID 63618)
  
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (M M' B : Term) (t u : Sorts),
   A :: Γ ⊢ M ▹▹ M' : B ->
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

(dependent evars:)


assert (forall Γ A A' S, Γ A ▹▹ A' : S -> forall M M' B s t u,S = !s -> A::Γ M M' :B ->
  A::Γ B B : !t -> Rel s t u -> Γ λ[A], M ▹▹ λ[A'], M' :Π (A), B) .
2 subgoals, subgoal 1 (ID 63632)
  
  ============================
   forall (Γ : Env) (A A' S : Term),
   Γ ⊢ A ▹▹ A' : S ->
   forall (M M' B : Term) (s t u : Sorts),
   S = !s ->
   A :: Γ ⊢ M ▹ M' : B ->
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars:)


induction 1; intros; subst.
3 subgoals, subgoal 1 (ID 63690)
  
  Γ : Env
  s : Term
  t : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ M ▹ M' : B
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B

subgoal 2 (ID 63698) is:
 Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars:)

constructor.
3 subgoals, subgoal 1 (ID 63700)
  
  Γ : Env
  s : Term
  t : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ M ▹ M' : B
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ λ [s], M ▹ λ [t], M' : Π (s), B

subgoal 2 (ID 63698) is:
 Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars:)

econstructor.
6 subgoals, subgoal 1 (ID 63708)
  
  Γ : Env
  s : Term
  t : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ M ▹ M' : B
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Rel ?63705 ?63706 ?63707

subgoal 2 (ID 63709) is:
 Γ ⊢ s ▹ t : !?63705
subgoal 3 (ID 63710) is:
 s :: Γ ⊢ B ▹ B : !?63706
subgoal 4 (ID 63711) is:
 s :: Γ ⊢ M ▹ M' : B
subgoal 5 (ID 63698) is:
 Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B
subgoal 6 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 open, ?63706 open, ?63707 open,)

apply H3.
5 subgoals, subgoal 1 (ID 63709)
  
  Γ : Env
  s : Term
  t : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ M ▹ M' : B
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ s ▹ t : !s0

subgoal 2 (ID 63710) is:
 s :: Γ ⊢ B ▹ B : !t0
subgoal 3 (ID 63711) is:
 s :: Γ ⊢ M ▹ M' : B
subgoal 4 (ID 63698) is:
 Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B
subgoal 5 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using ,)

trivial.
4 subgoals, subgoal 1 (ID 63710)
  
  Γ : Env
  s : Term
  t : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ M ▹ M' : B
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   s :: Γ ⊢ B ▹ B : !t0

subgoal 2 (ID 63711) is:
 s :: Γ ⊢ M ▹ M' : B
subgoal 3 (ID 63698) is:
 Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B
subgoal 4 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using ,)

apply H2.
3 subgoals, subgoal 1 (ID 63711)
  
  Γ : Env
  s : Term
  t : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : s :: Γ ⊢ M ▹ M' : B
  H2 : s :: Γ ⊢ B ▹ B : !t0
  H3 : Rel s0 t0 u
  H : Γ ⊢ s ▹ t : !s0
  ============================
   s :: Γ ⊢ M ▹ M' : B

subgoal 2 (ID 63698) is:
 Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using ,)

trivial.
2 subgoals, subgoal 1 (ID 63698)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ λ [s], M ▹▹ λ [u], M' : Π (s), B

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using ,)


apply typ_reds_trans with (La t M).
3 subgoals, subgoal 1 (ID 63712)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ λ [s], M ▹▹ λ [t], M : Π (s), B

subgoal 2 (ID 63713) is:
 Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using ,)

eapply IHtyp_reds1.
6 subgoals, subgoal 1 (ID 63717)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   !s0 = !?63714

subgoal 2 (ID 63718) is:
 s :: Γ ⊢ M ▹ M : B
subgoal 3 (ID 63719) is:
 s :: Γ ⊢ B ▹ B : !?63715
subgoal 4 (ID 63720) is:
 Rel ?63714 ?63715 ?63716
subgoal 5 (ID 63713) is:
 Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (s), B
subgoal 6 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 open, ?63715 open, ?63716 open,)

reflexivity.
5 subgoals, subgoal 1 (ID 63718)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   s :: Γ ⊢ M ▹ M : B

subgoal 2 (ID 63719) is:
 s :: Γ ⊢ B ▹ B : !?63715
subgoal 3 (ID 63720) is:
 Rel s0 ?63715 ?63716
subgoal 4 (ID 63713) is:
 Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (s), B
subgoal 5 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 open, ?63716 open,)

apply red_refl_lt in H2; trivial.
4 subgoals, subgoal 1 (ID 63719)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   s :: Γ ⊢ B ▹ B : !?63715

subgoal 2 (ID 63720) is:
 Rel s0 ?63715 ?63716
subgoal 3 (ID 63713) is:
 Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (s), B
subgoal 4 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 open, ?63716 open,)


apply H3.
3 subgoals, subgoal 1 (ID 63720)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Rel s0 t0 ?63716

subgoal 2 (ID 63713) is:
 Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 open,)

apply H4.
2 subgoals, subgoal 1 (ID 63713)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (s), B

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using ,)

eapply reds_typ_pcompat.
3 subgoals, subgoal 1 (ID 63725)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ λ [t], M ▹▹ λ [u], M' : ?63724

subgoal 2 (ID 63726) is:
 Γ ⊢ ?63724 ≡' Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 open,)

eapply IHtyp_reds2.
6 subgoals, subgoal 1 (ID 63732)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   !s0 = !?63729

subgoal 2 (ID 63733) is:
 t :: Γ ⊢ M ▹ M' : ?63728
subgoal 3 (ID 63734) is:
 t :: Γ ⊢ ?63728 ▹ ?63728 : !?63730
subgoal 4 (ID 63735) is:
 Rel ?63729 ?63730 ?63731
subgoal 5 (ID 63726) is:
 Γ ⊢ Π (t), ?63728 ≡' Π (s), B
subgoal 6 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 open, ?63729 open, ?63730 open, ?63731 open,)

reflexivity.
5 subgoals, subgoal 1 (ID 63733)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   t :: Γ ⊢ M ▹ M' : ?63728

subgoal 2 (ID 63734) is:
 t :: Γ ⊢ ?63728 ▹ ?63728 : !?63730
subgoal 3 (ID 63735) is:
 Rel s0 ?63730 ?63731
subgoal 4 (ID 63726) is:
 Γ ⊢ Π (t), ?63728 ≡' Π (s), B
subgoal 5 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 open, ?63729 using , ?63730 open, ?63731 open,)


eapply conv_in_env.
6 subgoals, subgoal 1 (ID 63738)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   ?63737 ⊢ M ▹ M' : ?63728

subgoal 2 (ID 63739) is:
 env_conv ?63737 (t :: Γ)
subgoal 3 (ID 63734) is:
 t :: Γ ⊢ ?63728 ▹ ?63728 : !?63730
subgoal 4 (ID 63735) is:
 Rel s0 ?63730 ?63731
subgoal 5 (ID 63726) is:
 Γ ⊢ Π (t), ?63728 ≡' Π (s), B
subgoal 6 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 open, ?63729 using , ?63730 open, ?63731 open, ?63737 open,)

apply H2.
5 subgoals, subgoal 1 (ID 63739)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   env_conv (s :: Γ) (t :: Γ)

subgoal 2 (ID 63734) is:
 t :: Γ ⊢ B ▹ B : !?63730
subgoal 3 (ID 63735) is:
 Rel s0 ?63730 ?63731
subgoal 4 (ID 63726) is:
 Γ ⊢ Π (t), B ≡' Π (s), B
subgoal 5 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 open, ?63731 open, ?63737 using ,)

apply reds_to_conv in H; eauto.
4 subgoals, subgoal 1 (ID 63734)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   t :: Γ ⊢ B ▹ B : !?63730

subgoal 2 (ID 63735) is:
 Rel s0 ?63730 ?63731
subgoal 3 (ID 63726) is:
 Γ ⊢ Π (t), B ≡' Π (s), B
subgoal 4 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 open, ?63731 open, ?63737 using ,)


eapply conv_in_env.
5 subgoals, subgoal 1 (ID 64017)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   ?64016 ⊢ B ▹ B : !?63730

subgoal 2 (ID 64018) is:
 env_conv ?64016 (t :: Γ)
subgoal 3 (ID 63735) is:
 Rel s0 ?63730 ?63731
subgoal 4 (ID 63726) is:
 Γ ⊢ Π (t), B ≡' Π (s), B
subgoal 5 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 open, ?63731 open, ?63737 using , ?64016 open,)

apply H3.
4 subgoals, subgoal 1 (ID 64018)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   env_conv (s :: Γ) (t :: Γ)

subgoal 2 (ID 63735) is:
 Rel s0 t0 ?63731
subgoal 3 (ID 63726) is:
 Γ ⊢ Π (t), B ≡' Π (s), B
subgoal 4 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 open, ?63737 using , ?64016 using ,)

apply reds_to_conv in H; eauto.
3 subgoals, subgoal 1 (ID 63735)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Rel s0 t0 ?63731

subgoal 2 (ID 63726) is:
 Γ ⊢ Π (t), B ≡' Π (s), B
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 open, ?63737 using , ?64016 using ,)

apply H4.
2 subgoals, subgoal 1 (ID 63726)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ Π (t), B ≡' Π (s), B

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using ,)


apply typ_peq_sym.
2 subgoals, subgoal 1 (ID 64295)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ Π (s), B ≡' Π (t), B

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using ,)

apply reds_to_conv with u0.
2 subgoals, subgoal 1 (ID 64296)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (t), B : !u0

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using ,)

eapply reds_Pi.
4 subgoals, subgoal 1 (ID 64299)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Γ ⊢ s ▹▹ t : !?64297

subgoal 2 (ID 64300) is:
 s :: Γ ⊢ B ▹▹ B : !?64298
subgoal 3 (ID 64301) is:
 Rel ?64297 ?64298 u0
subgoal 4 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 open, ?64298 open,)

apply H.
3 subgoals, subgoal 1 (ID 64300)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   s :: Γ ⊢ B ▹▹ B : !?64298

subgoal 2 (ID 64301) is:
 Rel s0 ?64298 u0
subgoal 3 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 open,)

apply red_refl_lt in H3; constructor; apply H3.
2 subgoals, subgoal 1 (ID 64301)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  M : Term
  M' : Term
  B : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : s :: Γ ⊢ M ▹ M' : B
  H3 : s :: Γ ⊢ B ▹ B : !t0
  H4 : Rel s0 t0 u0
  H : Γ ⊢ s ▹▹ t : !s0
  H0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (M M' B : Term) (s1 t0 u : Sorts),
                !s0 = !s1 ->
                s :: Γ ⊢ M ▹ M' : B ->
                s :: Γ ⊢ B ▹ B : !t0 ->
                Rel s1 t0 u -> Γ ⊢ λ [s], M ▹▹ λ [t], M' : Π (s), B
  IHtyp_reds2 : forall (M M' B : Term) (s t0 u0 : Sorts),
                !s0 = !s ->
                t :: Γ ⊢ M ▹ M' : B ->
                t :: Γ ⊢ B ▹ B : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [t], M ▹▹ λ [u], M' : Π (t), B
  ============================
   Rel s0 t0 u0

subgoal 2 (ID 63633) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using ,)

trivial.
1 subgoals, subgoal 1 (ID 63633)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (M M' B : Term) (t u : Sorts),
   A :: Γ ⊢ M ▹▹ M' : B ->
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using ,)


assert (forall Γ' M M' B, Γ' M ▹▹ M' : B -> forall Γ A A' s t u, Γ' = A::Γ ->
  Γ A A' :!s -> A::Γ B B : !t -> Rel s t u -> Γ λ[A], M ▹▹ λ[A'], M' :Π (A), B) .
2 subgoals, subgoal 1 (ID 64321)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  ============================
   forall (Γ' : Env) (M M' B : Term),
   Γ' ⊢ M ▹▹ M' : B ->
   forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
   Γ' = A :: Γ ->
   Γ ⊢ A ▹ A' : !s ->
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

subgoal 2 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using ,)

clear H.
2 subgoals, subgoal 1 (ID 64323)
  
  ============================
   forall (Γ' : Env) (M M' B : Term),
   Γ' ⊢ M ▹▹ M' : B ->
   forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
   Γ' = A :: Γ ->
   Γ ⊢ A ▹ A' : !s ->
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

subgoal 2 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using ,)


induction 1; intros; subst.
3 subgoals, subgoal 1 (ID 64380)
  
  s : Term
  t : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : Γ0 ⊢ A ▹ A' : !s0
  H2 : A :: Γ0 ⊢ T ▹ T : !t0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Γ0 ⊢ λ [A], s ▹▹ λ [A'], t : Π (A), T

subgoal 2 (ID 64388) is:
 Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T
subgoal 3 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using ,)


constructor.
3 subgoals, subgoal 1 (ID 64390)
  
  s : Term
  t : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : Γ0 ⊢ A ▹ A' : !s0
  H2 : A :: Γ0 ⊢ T ▹ T : !t0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Γ0 ⊢ λ [A], s ▹ λ [A'], t : Π (A), T

subgoal 2 (ID 64388) is:
 Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T
subgoal 3 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using ,)

econstructor.
6 subgoals, subgoal 1 (ID 64398)
  
  s : Term
  t : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : Γ0 ⊢ A ▹ A' : !s0
  H2 : A :: Γ0 ⊢ T ▹ T : !t0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Rel ?64395 ?64396 ?64397

subgoal 2 (ID 64399) is:
 Γ0 ⊢ A ▹ A' : !?64395
subgoal 3 (ID 64400) is:
 A :: Γ0 ⊢ T ▹ T : !?64396
subgoal 4 (ID 64401) is:
 A :: Γ0 ⊢ s ▹ t : T
subgoal 5 (ID 64388) is:
 Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T
subgoal 6 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 open, ?64396 open, ?64397 open,)

apply H3.
5 subgoals, subgoal 1 (ID 64399)
  
  s : Term
  t : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : Γ0 ⊢ A ▹ A' : !s0
  H2 : A :: Γ0 ⊢ T ▹ T : !t0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Γ0 ⊢ A ▹ A' : !s0

subgoal 2 (ID 64400) is:
 A :: Γ0 ⊢ T ▹ T : !t0
subgoal 3 (ID 64401) is:
 A :: Γ0 ⊢ s ▹ t : T
subgoal 4 (ID 64388) is:
 Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T
subgoal 5 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using ,)

trivial.
4 subgoals, subgoal 1 (ID 64400)
  
  s : Term
  t : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : Γ0 ⊢ A ▹ A' : !s0
  H2 : A :: Γ0 ⊢ T ▹ T : !t0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   A :: Γ0 ⊢ T ▹ T : !t0

subgoal 2 (ID 64401) is:
 A :: Γ0 ⊢ s ▹ t : T
subgoal 3 (ID 64388) is:
 Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T
subgoal 4 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using ,)

apply H2.
3 subgoals, subgoal 1 (ID 64401)
  
  s : Term
  t : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u : Sorts
  H1 : Γ0 ⊢ A ▹ A' : !s0
  H2 : A :: Γ0 ⊢ T ▹ T : !t0
  H3 : Rel s0 t0 u
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   A :: Γ0 ⊢ s ▹ t : T

subgoal 2 (ID 64388) is:
 Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T
subgoal 3 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using ,)

trivial.
2 subgoals, subgoal 1 (ID 64388)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Γ0 ⊢ λ [A], s ▹▹ λ [A'], u : Π (A), T

subgoal 2 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using ,)


apply typ_reds_trans with (La A t).
3 subgoals, subgoal 1 (ID 64402)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Γ0 ⊢ λ [A], s ▹▹ λ [A], t : Π (A), T

subgoal 2 (ID 64403) is:
 Γ0 ⊢ λ [A], t ▹▹ λ [A'], u : Π (A), T
subgoal 3 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using ,)

eapply IHtyp_reds1.
6 subgoals, subgoal 1 (ID 64407)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   A :: Γ0 = A :: Γ0

subgoal 2 (ID 64408) is:
 Γ0 ⊢ A ▹ A : !?64404
subgoal 3 (ID 64409) is:
 A :: Γ0 ⊢ T ▹ T : !?64405
subgoal 4 (ID 64410) is:
 Rel ?64404 ?64405 ?64406
subgoal 5 (ID 64403) is:
 Γ0 ⊢ λ [A], t ▹▹ λ [A'], u : Π (A), T
subgoal 6 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 open, ?64405 open, ?64406 open,)

trivial.
5 subgoals, subgoal 1 (ID 64408)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Γ0 ⊢ A ▹ A : !?64404

subgoal 2 (ID 64409) is:
 A :: Γ0 ⊢ T ▹ T : !?64405
subgoal 3 (ID 64410) is:
 Rel ?64404 ?64405 ?64406
subgoal 4 (ID 64403) is:
 Γ0 ⊢ λ [A], t ▹▹ λ [A'], u : Π (A), T
subgoal 5 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 open, ?64405 open, ?64406 open,)

apply red_refl_lt in H2; apply H2.
4 subgoals, subgoal 1 (ID 64409)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   A :: Γ0 ⊢ T ▹ T : !?64405

subgoal 2 (ID 64410) is:
 Rel s0 ?64405 ?64406
subgoal 3 (ID 64403) is:
 Γ0 ⊢ λ [A], t ▹▹ λ [A'], u : Π (A), T
subgoal 4 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 open, ?64406 open, ?64412 using ,)


apply H3.
3 subgoals, subgoal 1 (ID 64410)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Rel s0 t0 ?64406

subgoal 2 (ID 64403) is:
 Γ0 ⊢ λ [A], t ▹▹ λ [A'], u : Π (A), T
subgoal 3 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 open, ?64412 using ,)

apply H4.
2 subgoals, subgoal 1 (ID 64403)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Γ0 ⊢ λ [A], t ▹▹ λ [A'], u : Π (A), T

subgoal 2 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using ,)

eapply IHtyp_reds2.
5 subgoals, subgoal 1 (ID 64417)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   A :: Γ0 = A :: Γ0

subgoal 2 (ID 64418) is:
 Γ0 ⊢ A ▹ A' : !?64414
subgoal 3 (ID 64419) is:
 A :: Γ0 ⊢ T ▹ T : !?64415
subgoal 4 (ID 64420) is:
 Rel ?64414 ?64415 ?64416
subgoal 5 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 open, ?64415 open, ?64416 open,)

trivial.
4 subgoals, subgoal 1 (ID 64418)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Γ0 ⊢ A ▹ A' : !?64414

subgoal 2 (ID 64419) is:
 A :: Γ0 ⊢ T ▹ T : !?64415
subgoal 3 (ID 64420) is:
 Rel ?64414 ?64415 ?64416
subgoal 4 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 open, ?64415 open, ?64416 open,)

apply H2.
3 subgoals, subgoal 1 (ID 64419)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   A :: Γ0 ⊢ T ▹ T : !?64415

subgoal 2 (ID 64420) is:
 Rel s0 ?64415 ?64416
subgoal 3 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 open, ?64416 open,)

apply H3.
2 subgoals, subgoal 1 (ID 64420)
  
  s : Term
  t : Term
  u : Term
  T : Term
  Γ0 : list Term
  A : Term
  A' : Term
  s0 : Sorts
  t0 : Sorts
  u0 : Sorts
  H2 : Γ0 ⊢ A ▹ A' : !s0
  H3 : A :: Γ0 ⊢ T ▹ T : !t0
  H4 : Rel s0 t0 u0
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (Γ : list Term) (A0 A' : Term) (s0 t0 u : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s0 ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s0 t0 u -> Γ ⊢ λ [A0], s ▹▹ λ [A'], t : Π (A0), T
  IHtyp_reds2 : forall (Γ : list Term) (A0 A' : Term) (s t0 u0 : Sorts),
                A :: Γ0 = A0 :: Γ ->
                Γ ⊢ A0 ▹ A' : !s ->
                A0 :: Γ ⊢ T ▹ T : !t0 ->
                Rel s t0 u0 -> Γ ⊢ λ [A0], t ▹▹ λ [A'], u : Π (A0), T
  ============================
   Rel s0 t0 ?64416

subgoal 2 (ID 64322) is:
 forall (Γ : Env) (A A' : Term) (s : Sorts),
 Γ ⊢ A ▹▹ A' : !s ->
 forall (M M' B : Term) (t u : Sorts),
 A :: Γ ⊢ M ▹▹ M' : B ->
 A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 open,)

apply H4.
1 subgoals, subgoal 1 (ID 64322)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  ============================
   forall (Γ : Env) (A A' : Term) (s : Sorts),
   Γ ⊢ A ▹▹ A' : !s ->
   forall (M M' B : Term) (t u : Sorts),
   A :: Γ ⊢ M ▹▹ M' : B ->
   A :: Γ ⊢ B ▹ B : !t -> Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using ,)


intros.
1 subgoals, subgoal 1 (ID 64433)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B

(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using ,)

apply typ_reds_trans with (La A M').
2 subgoals, subgoal 1 (ID 64434)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A], M' : Π (A), B

subgoal 2 (ID 64435) is:
 Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using ,)

eapply H0.
6 subgoals, subgoal 1 (ID 64440)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   ?64436 ⊢ M ▹▹ M' : B

subgoal 2 (ID 64441) is:
 ?64436 = A :: Γ
subgoal 3 (ID 64442) is:
 Γ ⊢ A ▹ A : !?64437
subgoal 4 (ID 64443) is:
 A :: Γ ⊢ B ▹ B : !?64438
subgoal 5 (ID 64444) is:
 Rel ?64437 ?64438 ?64439
subgoal 6 (ID 64435) is:
 Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 open, ?64437 open, ?64438 open, ?64439 open,)

apply H2.
5 subgoals, subgoal 1 (ID 64441)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   A :: Γ = A :: Γ

subgoal 2 (ID 64442) is:
 Γ ⊢ A ▹ A : !?64437
subgoal 3 (ID 64443) is:
 A :: Γ ⊢ B ▹ B : !?64438
subgoal 4 (ID 64444) is:
 Rel ?64437 ?64438 ?64439
subgoal 5 (ID 64435) is:
 Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 open, ?64438 open, ?64439 open,)

trivial.
4 subgoals, subgoal 1 (ID 64442)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Γ ⊢ A ▹ A : !?64437

subgoal 2 (ID 64443) is:
 A :: Γ ⊢ B ▹ B : !?64438
subgoal 3 (ID 64444) is:
 Rel ?64437 ?64438 ?64439
subgoal 4 (ID 64435) is:
 Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 open, ?64438 open, ?64439 open,)

apply reds_refl_lt in H1; apply H1.
3 subgoals, subgoal 1 (ID 64443)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   A :: Γ ⊢ B ▹ B : !?64438

subgoal 2 (ID 64444) is:
 Rel s ?64438 ?64439
subgoal 3 (ID 64435) is:
 Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 open, ?64439 open, ?64446 using ,)


apply H3.
2 subgoals, subgoal 1 (ID 64444)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Rel s t ?64439

subgoal 2 (ID 64435) is:
 Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 open, ?64446 using ,)

apply H4.
1 subgoals, subgoal 1 (ID 64435)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Γ ⊢ λ [A], M' ▹▹ λ [A'], M' : Π (A), B

(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using ,)

eapply H.
5 subgoals, subgoal 1 (ID 64452)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Γ ⊢ A ▹▹ A' : ?64448

subgoal 2 (ID 64453) is:
 ?64448 = !?64449
subgoal 3 (ID 64454) is:
 A :: Γ ⊢ M' ▹ M' : B
subgoal 4 (ID 64455) is:
 A :: Γ ⊢ B ▹ B : !?64450
subgoal 5 (ID 64456) is:
 Rel ?64449 ?64450 ?64451
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using , ?64448 open, ?64449 open, ?64450 open, ?64451 open,)

apply H1.
4 subgoals, subgoal 1 (ID 64453)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   !s = !?64449

subgoal 2 (ID 64454) is:
 A :: Γ ⊢ M' ▹ M' : B
subgoal 3 (ID 64455) is:
 A :: Γ ⊢ B ▹ B : !?64450
subgoal 4 (ID 64456) is:
 Rel ?64449 ?64450 ?64451
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using , ?64448 using , ?64449 open, ?64450 open, ?64451 open,)

reflexivity.
3 subgoals, subgoal 1 (ID 64454)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   A :: Γ ⊢ M' ▹ M' : B

subgoal 2 (ID 64455) is:
 A :: Γ ⊢ B ▹ B : !?64450
subgoal 3 (ID 64456) is:
 Rel s ?64450 ?64451
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using , ?64448 using , ?64449 using , ?64450 open, ?64451 open,)

apply reds_refl_rt in H2; apply H2.
2 subgoals, subgoal 1 (ID 64455)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   A :: Γ ⊢ B ▹ B : !?64450

subgoal 2 (ID 64456) is:
 Rel s ?64450 ?64451
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using , ?64448 using , ?64449 using , ?64450 open, ?64451 open,)


apply H3.
1 subgoals, subgoal 1 (ID 64456)
  
  H : forall (Γ : Env) (A A' S : Term),
      Γ ⊢ A ▹▹ A' : S ->
      forall (M M' B : Term) (s t u : Sorts),
      S = !s ->
      A :: Γ ⊢ M ▹ M' : B ->
      A :: Γ ⊢ B ▹ B : !t ->
      Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  H0 : forall (Γ' : Env) (M M' B : Term),
       Γ' ⊢ M ▹▹ M' : B ->
       forall (Γ : list Term) (A A' : Term) (s t u : Sorts),
       Γ' = A :: Γ ->
       Γ ⊢ A ▹ A' : !s ->
       A :: Γ ⊢ B ▹ B : !t ->
       Rel s t u -> Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), B
  Γ : Env
  A : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  M : Term
  M' : Term
  B : Term
  t : Sorts
  u : Sorts
  H2 : A :: Γ ⊢ M ▹▹ M' : B
  H3 : A :: Γ ⊢ B ▹ B : !t
  H4 : Rel s t u
  ============================
   Rel s t ?64451

(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using , ?64448 using , ?64449 using , ?64450 using , ?64451 open,)

apply H4.
No more subgoals.
(dependent evars: ?63705 using , ?63706 using , ?63707 using , ?63714 using , ?63715 using , ?63716 using , ?63724 using ?63728 ?63727 , ?63727 using , ?63728 using , ?63729 using , ?63730 using , ?63731 using , ?63737 using , ?64016 using , ?64297 using , ?64298 using ?64303 , ?64303 using , ?64395 using , ?64396 using , ?64397 using , ?64404 using ?64412 , ?64405 using , ?64406 using , ?64412 using , ?64414 using , ?64415 using , ?64416 using , ?64436 using , ?64437 using ?64446 , ?64438 using , ?64439 using , ?64446 using , ?64448 using , ?64449 using , ?64450 using , ?64451 using ,)


Qed.
reds_La is defined



Lemma reds_subst : forall A Γ M M' B , A::Γ M ▹▹ M' : B -> forall N N' , Γ N N' : A ->
   Γ M[ N ] ▹▹ M' [ N' ] : B[ N ].
1 subgoals, subgoal 1 (ID 64483)
  
  ============================
   forall (A : Term) (Γ : list Term) (M M' B : Term),
   A :: Γ ⊢ M ▹▹ M' : B ->
   forall N N' : Term,
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)


intros until 1.
1 subgoals, subgoal 1 (ID 64489)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  B : Term
  H : A :: Γ ⊢ M ▹▹ M' : B
  ============================
   forall N N' : Term,
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)

remember (A::Γ) as ΓΓ.
1 subgoals, subgoal 1 (ID 64497)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  B : Term
  ΓΓ : list Term
  HeqΓΓ : ΓΓ = A :: Γ
  H : ΓΓ ⊢ M ▹▹ M' : B
  ============================
   forall N N' : Term,
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)

revert A Γ HeqΓΓ.
1 subgoals, subgoal 1 (ID 64499)
  
  M : Term
  M' : Term
  B : Term
  ΓΓ : list Term
  H : ΓΓ ⊢ M ▹▹ M' : B
  ============================
   forall (A : Term) (Γ : list Term),
   ΓΓ = A :: Γ ->
   forall N N' : Term,
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 64543)
  
  s : Term
  t : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Γ0 ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]

subgoal 2 (ID 64551) is:
 Γ0 ⊢ s [ ← N] ▹▹ u [ ← N'] : T [ ← N]
(dependent evars:)


constructor.
2 subgoals, subgoal 1 (ID 64553)
  
  s : Term
  t : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Γ0 ⊢ s [ ← N] ▹ t [ ← N'] : T [ ← N]

subgoal 2 (ID 64551) is:
 Γ0 ⊢ s [ ← N] ▹▹ u [ ← N'] : T [ ← N]
(dependent evars:)

eapply subst_gen.
4 subgoals, subgoal 1 (ID 64569)
  
  s : Term
  t : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   ?64568 ⊢ s ▹ t : T

subgoal 2 (ID 64572) is:
 sub_in_env ?64570 N ?64571 0 ?64568 Γ0
subgoal 3 (ID 64573) is:
 ?64570 ⊢ N ▹ N' : ?64571
subgoal 4 (ID 64551) is:
 Γ0 ⊢ s [ ← N] ▹▹ u [ ← N'] : T [ ← N]
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 open, ?64570 open, ?64571 open,)

apply H.
3 subgoals, subgoal 1 (ID 64572)
  
  s : Term
  t : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   sub_in_env ?64570 N ?64571 0 (A :: Γ0) Γ0

subgoal 2 (ID 64573) is:
 ?64570 ⊢ N ▹ N' : ?64571
subgoal 3 (ID 64551) is:
 Γ0 ⊢ s [ ← N] ▹▹ u [ ← N'] : T [ ← N]
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 open, ?64571 open,)

constructor.
2 subgoals, subgoal 1 (ID 64573)
  
  s : Term
  t : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : T
  ============================
   Γ0 ⊢ N ▹ N' : A

subgoal 2 (ID 64551) is:
 Γ0 ⊢ s [ ← N] ▹▹ u [ ← N'] : T [ ← N]
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using ,)

trivial.
1 subgoals, subgoal 1 (ID 64551)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   Γ0 ⊢ s [ ← N] ▹▹ u [ ← N'] : T [ ← N]

(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using ,)


eapply typ_reds_trans2.
2 subgoals, subgoal 1 (ID 64577)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   Γ0 ⊢ s [ ← N] ▹▹ ?64575 : T [ ← N]

subgoal 2 (ID 64578) is:
 Γ0 ⊢ ?64575 ▹▹ u [ ← N'] : ?64576
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 open, ?64576 open,)

eapply IHtyp_reds1.
3 subgoals, subgoal 1 (ID 64581)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   A :: Γ0 = ?64580 :: Γ0

subgoal 2 (ID 64582) is:
 Γ0 ⊢ N ▹ ?64579 : ?64580
subgoal 3 (ID 64578) is:
 Γ0 ⊢ t [ ← ?64579] ▹▹ u [ ← N'] : ?64576
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 using ?64579 , ?64576 open, ?64579 open, ?64580 open,)

reflexivity.
2 subgoals, subgoal 1 (ID 64582)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   Γ0 ⊢ N ▹ ?64579 : A

subgoal 2 (ID 64578) is:
 Γ0 ⊢ t [ ← ?64579] ▹▹ u [ ← N'] : ?64576
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 using ?64579 , ?64576 open, ?64579 open, ?64580 using ,)

apply H1.
1 subgoals, subgoal 1 (ID 64578)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   Γ0 ⊢ t [ ← N'] ▹▹ u [ ← N'] : ?64576

(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 using ?64579 , ?64576 open, ?64579 using , ?64580 using ,)


eapply IHtyp_reds2.
2 subgoals, subgoal 1 (ID 64585)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   A :: Γ0 = ?64584 :: Γ0

subgoal 2 (ID 64586) is:
 Γ0 ⊢ N' ▹ N' : ?64584
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 using ?64579 , ?64576 using , ?64579 using , ?64580 using , ?64584 open,)

reflexivity.
1 subgoals, subgoal 1 (ID 64586)
  
  s : Term
  t : Term
  u : Term
  T : Term
  A : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹▹ t : T
  H0 : A :: Γ0 ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ s [ ← N] ▹▹ t [ ← N'] : T [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : list Term),
                A :: Γ0 = A0 :: Γ ->
                forall N N' : Term,
                Γ ⊢ N ▹ N' : A0 -> Γ ⊢ t [ ← N] ▹▹ u [ ← N'] : T [ ← N]
  ============================
   Γ0 ⊢ N' ▹ N' : A

(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 using ?64579 , ?64576 using , ?64579 using , ?64580 using , ?64584 using ,)

apply red_refl_rt in H1; trivial.
No more subgoals.
(dependent evars: ?64562 using ?64568 , ?64563 using ?64570 , ?64564 using ?64571 , ?64568 using , ?64570 using , ?64571 using , ?64575 using ?64579 , ?64576 using , ?64579 using , ?64580 using , ?64584 using ,)


Qed.
reds_subst is defined



Lemma reds_subst_gen : forall A Γ M M' B , A::Γ M ▹▹ M' : B -> forall N N' , Γ N ▹▹ N' : A ->
   Γ M[ N ] ▹▹ M' [ N' ] : B[ N ].
1 subgoals, subgoal 1 (ID 64609)
  
  ============================
   forall (A : Term) (Γ : list Term) (M M' B : Term),
   A :: Γ ⊢ M ▹▹ M' : B ->
   forall N N' : Term,
   Γ ⊢ N ▹▹ N' : A -> Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 64618)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  B : Term
  H : A :: Γ ⊢ M ▹▹ M' : B
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  ============================
   Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)

revert M M' B H.
1 subgoals, subgoal 1 (ID 64620)
  
  A : Term
  Γ : list Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  ============================
   forall M M' B : Term,
   A :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : B [ ← N]

(dependent evars:)

induction H0; intros.
2 subgoals, subgoal 1 (ID 64651)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  M : Term
  M' : Term
  B : Term
  H0 : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]

subgoal 2 (ID 64655) is:
 Γ ⊢ M [ ← s] ▹▹ M' [ ← u] : B [ ← s]
(dependent evars:)


eapply reds_subst.
3 subgoals, subgoal 1 (ID 64657)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  M : Term
  M' : Term
  B : Term
  H0 : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   ?64656 :: Γ ⊢ M ▹▹ M' : B

subgoal 2 (ID 64658) is:
 Γ ⊢ s ▹ t : ?64656
subgoal 3 (ID 64655) is:
 Γ ⊢ M [ ← s] ▹▹ M' [ ← u] : B [ ← s]
(dependent evars: ?64656 open,)

apply H0.
2 subgoals, subgoal 1 (ID 64658)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  M : Term
  M' : Term
  B : Term
  H0 : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   Γ ⊢ s ▹ t : T

subgoal 2 (ID 64655) is:
 Γ ⊢ M [ ← s] ▹▹ M' [ ← u] : B [ ← s]
(dependent evars: ?64656 using ,)

trivial.
1 subgoals, subgoal 1 (ID 64655)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]
  IHtyp_reds2 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← t] ▹▹ M' [ ← u] : B [ ← t]
  M : Term
  M' : Term
  B : Term
  H : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   Γ ⊢ M [ ← s] ▹▹ M' [ ← u] : B [ ← s]

(dependent evars: ?64656 using ,)


eapply typ_reds_trans2.
2 subgoals, subgoal 1 (ID 64661)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]
  IHtyp_reds2 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← t] ▹▹ M' [ ← u] : B [ ← t]
  M : Term
  M' : Term
  B : Term
  H : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   Γ ⊢ M [ ← s] ▹▹ ?64659 : B [ ← s]

subgoal 2 (ID 64662) is:
 Γ ⊢ ?64659 ▹▹ M' [ ← u] : ?64660
(dependent evars: ?64656 using , ?64659 open, ?64660 open,)

eapply IHtyp_reds1.
2 subgoals, subgoal 1 (ID 64664)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]
  IHtyp_reds2 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← t] ▹▹ M' [ ← u] : B [ ← t]
  M : Term
  M' : Term
  B : Term
  H : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   T :: Γ ⊢ M ▹▹ ?64663 : B

subgoal 2 (ID 64662) is:
 Γ ⊢ ?64663 [ ← t] ▹▹ M' [ ← u] : ?64660
(dependent evars: ?64656 using , ?64659 using ?64663 , ?64660 open, ?64663 open,)

apply H.
1 subgoals, subgoal 1 (ID 64662)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]
  IHtyp_reds2 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← t] ▹▹ M' [ ← u] : B [ ← t]
  M : Term
  M' : Term
  B : Term
  H : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   Γ ⊢ M' [ ← t] ▹▹ M' [ ← u] : ?64660

(dependent evars: ?64656 using , ?64659 using ?64663 , ?64660 open, ?64663 using ,)


eapply IHtyp_reds2.
1 subgoals, subgoal 1 (ID 64666)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]
  IHtyp_reds2 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← t] ▹▹ M' [ ← u] : B [ ← t]
  M : Term
  M' : Term
  B : Term
  H : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   T :: Γ ⊢ M' ▹▹ M' : ?64665

(dependent evars: ?64656 using , ?64659 using ?64663 , ?64660 using ?64665 , ?64663 using , ?64665 open,)

constructor.
1 subgoals, subgoal 1 (ID 64668)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← s] ▹▹ M' [ ← t] : B [ ← s]
  IHtyp_reds2 : forall M M' B : Term,
                T :: Γ ⊢ M ▹▹ M' : B -> Γ ⊢ M [ ← t] ▹▹ M' [ ← u] : B [ ← t]
  M : Term
  M' : Term
  B : Term
  H : T :: Γ ⊢ M ▹▹ M' : B
  ============================
   T :: Γ ⊢ M' ▹ M' : ?64665

(dependent evars: ?64656 using , ?64659 using ?64663 , ?64660 using ?64665 , ?64663 using , ?64665 open,)

apply reds_refl_rt in H; apply H.
No more subgoals.
(dependent evars: ?64656 using , ?64659 using ?64663 , ?64660 using ?64665 , ?64663 using , ?64665 using ?64670 , ?64670 using ,)


Qed.
reds_subst_gen is defined



Lemma eq_subst_gen : forall A Γ M M' , A::Γ M ≡' M' -> forall N N' N'' , Γ N ▹▹ N' : A ->
Γ N'' ▹▹ N' : A -> Γ M[ N ] ≡' M' [ N'' ] .
1 subgoals, subgoal 1 (ID 64691)
  
  ============================
   forall (A : Term) (Γ : list Term) (M M' : Term),
   A :: Γ ⊢ M ≡' M' ->
   forall N N' N'' : Term,
   Γ ⊢ N ▹▹ N' : A -> Γ ⊢ N'' ▹▹ N' : A -> Γ ⊢ M [ ← N] ≡' M' [ ← N'']

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 64701)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  H : A :: Γ ⊢ M ≡' M'
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  ============================
   Γ ⊢ M [ ← N] ≡' M' [ ← N'']

(dependent evars:)

apply Confluence in H as (P & q & q' & ? & ?).
1 subgoals, subgoal 1 (ID 64719)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M [ ← N] ≡' M' [ ← N'']

(dependent evars:)


apply typ_peq_trans with (P[ N']).
2 subgoals, subgoal 1 (ID 64720)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M [ ← N] ≡' P [ ← N']

subgoal 2 (ID 64721) is:
 Γ ⊢ P [ ← N'] ≡' M' [ ← N'']
(dependent evars:)

apply reds_to_conv with q.
2 subgoals, subgoal 1 (ID 64722)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M [ ← N] ▹▹ P [ ← N'] : !q

subgoal 2 (ID 64721) is:
 Γ ⊢ P [ ← N'] ≡' M' [ ← N'']
(dependent evars:)

change !q with (!q [ N]).
2 subgoals, subgoal 1 (ID 64724)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M [ ← N] ▹▹ P [ ← N'] : !q [ ← N]

subgoal 2 (ID 64721) is:
 Γ ⊢ P [ ← N'] ≡' M' [ ← N'']
(dependent evars:)


eapply reds_subst_gen.
3 subgoals, subgoal 1 (ID 64726)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   ?64725 :: Γ ⊢ M ▹▹ P : !q

subgoal 2 (ID 64727) is:
 Γ ⊢ N ▹▹ N' : ?64725
subgoal 3 (ID 64721) is:
 Γ ⊢ P [ ← N'] ≡' M' [ ← N'']
(dependent evars: ?64725 open,)

apply H.
2 subgoals, subgoal 1 (ID 64727)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ N ▹▹ N' : A

subgoal 2 (ID 64721) is:
 Γ ⊢ P [ ← N'] ≡' M' [ ← N'']
(dependent evars: ?64725 using ,)

apply H0.
1 subgoals, subgoal 1 (ID 64721)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ P [ ← N'] ≡' M' [ ← N'']

(dependent evars: ?64725 using ,)

apply typ_peq_sym.
1 subgoals, subgoal 1 (ID 64728)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M' [ ← N''] ≡' P [ ← N']

(dependent evars: ?64725 using ,)


apply reds_to_conv with q'.
1 subgoals, subgoal 1 (ID 64729)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M' [ ← N''] ▹▹ P [ ← N'] : !q'

(dependent evars: ?64725 using ,)

change !q' with (!q' [ N'']).
1 subgoals, subgoal 1 (ID 64731)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ M' [ ← N''] ▹▹ P [ ← N'] : !q' [ ← N'']

(dependent evars: ?64725 using ,)


eapply reds_subst_gen.
2 subgoals, subgoal 1 (ID 64733)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   ?64732 :: Γ ⊢ M' ▹▹ P : !q'

subgoal 2 (ID 64734) is:
 Γ ⊢ N'' ▹▹ N' : ?64732
(dependent evars: ?64725 using , ?64732 open,)

apply H2.
1 subgoals, subgoal 1 (ID 64734)
  
  A : Term
  Γ : list Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  N'' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ N'' ▹▹ N' : A
  P : Term
  q : Sorts
  q' : Sorts
  H : A :: Γ ⊢ M ▹▹ P : !q
  H2 : A :: Γ ⊢ M' ▹▹ P : !q'
  ============================
   Γ ⊢ N'' ▹▹ N' : A

(dependent evars: ?64725 using , ?64732 using ,)

apply H1.
No more subgoals.
(dependent evars: ?64725 using , ?64732 using ,)


Qed.
eq_subst_gen is defined



Lemma reds_App_ : forall Γ M M' A B , Γ M ▹▹ M' : Π(A),B -> forall N N' , Γ N ▹▹ N' : A ->
  Γ M ·(A,B) N ▹▹ M'·(A,B) N' : B[ N].
1 subgoals, subgoal 1 (ID 64753)
  
  ============================
   forall (Γ : Env) (M M' A B : Term),
   Γ ⊢ M ▹▹ M' : Π (A), B ->
   forall N N' : Term,
   Γ ⊢ N ▹▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M' ·( A, B)N' : B [ ← N]

(dependent evars:)


intros until 1.
1 subgoals, subgoal 1 (ID 64759)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  ============================
   forall N N' : Term,
   Γ ⊢ N ▹▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M' ·( A, B)N' : B [ ← N]

(dependent evars:)

remember (Pi A B) as P.
1 subgoals, subgoal 1 (ID 64766)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  P : Term
  HeqP : P = Π (A), B
  H : Γ ⊢ M ▹▹ M' : P
  ============================
   forall N N' : Term,
   Γ ⊢ N ▹▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M' ·( A, B)N' : B [ ← N]

(dependent evars:)

revert A B HeqP.
1 subgoals, subgoal 1 (ID 64768)
  
  Γ : Env
  M : Term
  M' : Term
  P : Term
  H : Γ ⊢ M ▹▹ M' : P
  ============================
   forall A B : Term,
   P = Π (A), B ->
   forall N N' : Term,
   Γ ⊢ N ▹▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M' ·( A, B)N' : B [ ← N]

(dependent evars:)

induction H; intros; subst.
2 subgoals, subgoal 1 (ID 64812)
  
  Γ : Env
  s : Term
  t : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹ t : Π (A), B
  ============================
   Γ ⊢ s ·( A, B)N ▹▹ t ·( A, B)N' : B [ ← N]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)


revert B s t H.
2 subgoals, subgoal 1 (ID 64822)
  
  Γ : Env
  A : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  ============================
   forall B s t : Term,
   Γ ⊢ s ▹ t : Π (A), B -> Γ ⊢ s ·( A, B)N ▹▹ t ·( A, B)N' : B [ ← N]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)

induction H0; intros.
3 subgoals, subgoal 1 (ID 64853)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  s0 : Term
  t0 : Term
  H0 : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)


destruct (typ_wf Γ s0 t0 (Pi T B) H0).
4 subgoals, subgoal 1 (ID 64866)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  s0 : Term
  t0 : Term
  H0 : Γ ⊢ s0 ▹ t0 : Π (T), B
  H1 : exists s : Sorts, Π (T), B = !s
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64867) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
subgoal 3 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 4 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)

destruct H1 as (? & ?); discriminate.
3 subgoals, subgoal 1 (ID 64867)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  s0 : Term
  t0 : Term
  H0 : Γ ⊢ s0 ▹ t0 : Π (T), B
  H1 : exists s : Sorts, Γ ⊢ Π (T), B ▹ Π (T), B : !s
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)


destruct H1 as (u & ?).
3 subgoals, subgoal 1 (ID 64880)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  s0 : Term
  t0 : Term
  H0 : Γ ⊢ s0 ▹ t0 : Π (T), B
  u : Sorts
  H1 : Γ ⊢ Π (T), B ▹ Π (T), B : !u
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)

apply pgen_pi in H1 as (T' & B'' & t1 & t2 & t3 & h).
3 subgoals, subgoal 1 (ID 64902)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  s0 : Term
  t0 : Term
  H0 : Γ ⊢ s0 ▹ t0 : Π (T), B
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ T ▹ T' : !t1) /\
      (T :: Γ ⊢ B ▹ B'' : !t2) /\
      Π (T), B = Π (T'), B'' /\ (!u = !t3 \/ Γ ⊢ !u ≡' !t3)
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)


decompose [and] h; clear h.
3 subgoals, subgoal 1 (ID 64924)
  
  Γ : Env
  s : Term
  t : Term
  T : Term
  H : Γ ⊢ s ▹ t : T
  B : Term
  s0 : Term
  t0 : Term
  H0 : Γ ⊢ s0 ▹ t0 : Π (T), B
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ T ▹ T' : !t1
  H2 : T :: Γ ⊢ B ▹ B'' : !t2
  H4 : Π (T), B = Π (T'), B''
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)

injection H4; intros; subst; clear H4.
3 subgoals, subgoal 1 (ID 64951)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ s0 ·( T', B'')s ▹▹ t0 ·( T', B'')t : B'' [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)


constructor.
3 subgoals, subgoal 1 (ID 64953)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ s0 ·( T', B'')s ▹ t0 ·( T', B'')t : B'' [ ← s]

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars:)

econstructor.
7 subgoals, subgoal 1 (ID 64962)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Rel ?64959 ?64960 ?64961

subgoal 2 (ID 64963) is:
 Γ ⊢ T' ▹ T' : !?64959
subgoal 3 (ID 64964) is:
 T' :: Γ ⊢ B'' ▹ B'' : !?64960
subgoal 4 (ID 64965) is:
 Γ ⊢ s0 ▹ t0 : Π (T'), B''
subgoal 5 (ID 64966) is:
 Γ ⊢ s ▹ t : T'
subgoal 6 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 7 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 open, ?64960 open, ?64961 open,)

apply H1.
6 subgoals, subgoal 1 (ID 64963)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ T' ▹ T' : !t1

subgoal 2 (ID 64964) is:
 T' :: Γ ⊢ B'' ▹ B'' : !t2
subgoal 3 (ID 64965) is:
 Γ ⊢ s0 ▹ t0 : Π (T'), B''
subgoal 4 (ID 64966) is:
 Γ ⊢ s ▹ t : T'
subgoal 5 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 6 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

apply H3.
5 subgoals, subgoal 1 (ID 64964)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   T' :: Γ ⊢ B'' ▹ B'' : !t2

subgoal 2 (ID 64965) is:
 Γ ⊢ s0 ▹ t0 : Π (T'), B''
subgoal 3 (ID 64966) is:
 Γ ⊢ s ▹ t : T'
subgoal 4 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 5 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

trivial.
4 subgoals, subgoal 1 (ID 64965)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ s0 ▹ t0 : Π (T'), B''

subgoal 2 (ID 64966) is:
 Γ ⊢ s ▹ t : T'
subgoal 3 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 4 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

trivial.
3 subgoals, subgoal 1 (ID 64966)
  
  Γ : Env
  s : Term
  t : Term
  s0 : Term
  t0 : Term
  u : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H6 : !u = !t3 \/ Γ ⊢ !u ≡' !t3
  H : Γ ⊢ s ▹ t : T'
  H3 : Γ ⊢ T' ▹ T' : !t1
  H0 : Γ ⊢ s0 ▹ t0 : Π (T'), B''
  H2 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ s ▹ t : T'

subgoal 2 (ID 64857) is:
 Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

trivial.
2 subgoals, subgoal 1 (ID 64857)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)u : B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


apply typ_reds_trans with (App s0 T B t).
3 subgoals, subgoal 1 (ID 64967)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ·( T, B)s ▹▹ s0 ·( T, B)t : B [ ← s]

subgoal 2 (ID 64968) is:
 Γ ⊢ s0 ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

eapply IHtyp_reds1.
3 subgoals, subgoal 1 (ID 64969)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ▹ s0 : Π (T), B

subgoal 2 (ID 64968) is:
 Γ ⊢ s0 ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

apply red_refl_lt in H; trivial.
2 subgoals, subgoal 1 (ID 64968)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


apply reds_typ_pcompat with (B [← t]).
3 subgoals, subgoal 1 (ID 64972)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]

subgoal 2 (ID 64973) is:
 Γ ⊢ B [ ← t] ≡' B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

eapply IHtyp_reds2.
3 subgoals, subgoal 1 (ID 64974)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ s0 ▹ t0 : Π (T), B

subgoal 2 (ID 64973) is:
 Γ ⊢ B [ ← t] ≡' B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

trivial.
2 subgoals, subgoal 1 (ID 64973)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : Γ ⊢ s0 ▹ t0 : Π (T), B
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


apply typ_wf in H.
2 subgoals, subgoal 1 (ID 64976)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : (exists s : Sorts, Π (T), B = !s) \/
      (exists s : Sorts, Γ ⊢ Π (T), B ▹ Π (T), B : !s)
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

destruct H.
3 subgoals, subgoal 1 (ID 64981)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : exists s : Sorts, Π (T), B = !s
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64982) is:
 Γ ⊢ B [ ← t] ≡' B [ ← s]
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

destruct H as (? & ?); discriminate.
2 subgoals, subgoal 1 (ID 64982)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  H : exists s : Sorts, Γ ⊢ Π (T), B ▹ Π (T), B : !s
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

destruct H as (s3 & ?).
2 subgoals, subgoal 1 (ID 64995)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  H : Γ ⊢ Π (T), B ▹ Π (T), B : !s3
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


apply pgen_pi in H as (T' & B'' & t1 & t2 & t3 & h).
2 subgoals, subgoal 1 (ID 65017)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ T ▹ T' : !t1) /\
      (T :: Γ ⊢ B ▹ B'' : !t2) /\
      Π (T), B = Π (T'), B'' /\ (!s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3)
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 65039)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  T : Term
  H0_ : Γ ⊢ s ▹▹ t : T
  H0_0 : Γ ⊢ t ▹▹ u : T
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T), B ->
                Γ ⊢ s0 ·( T, B)s ▹▹ t0 ·( T, B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T), B ->
                Γ ⊢ s ·( T, B)t ▹▹ t0 ·( T, B)u : B [ ← t]
  B : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H1 : Γ ⊢ T ▹ T' : !t1
  H0 : T :: Γ ⊢ B ▹ B'' : !t2
  H2 : Π (T), B = Π (T'), B''
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  ============================
   Γ ⊢ B [ ← t] ≡' B [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


injection H2; intros; subst; clear H2.
2 subgoals, subgoal 1 (ID 65067)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ B'' [ ← t] ≡' B'' [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

apply typ_peq_sym.
2 subgoals, subgoal 1 (ID 65068)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ B'' [ ← s] ≡' B'' [ ← t]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


apply reds_to_conv with t2.
2 subgoals, subgoal 1 (ID 65069)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ B'' [ ← s] ▹▹ B'' [ ← t] : !t2

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)

change !t2 with (!t2 [← s]).
2 subgoals, subgoal 1 (ID 65071)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ B'' [ ← s] ▹▹ B'' [ ← t] : !t2 [ ← s]

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using ,)


eapply reds_subst_gen.
3 subgoals, subgoal 1 (ID 65073)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   ?65072 :: Γ ⊢ B'' ▹▹ B'' : !t2

subgoal 2 (ID 65074) is:
 Γ ⊢ s ▹▹ t : ?65072
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 open,)

constructor.
3 subgoals, subgoal 1 (ID 65076)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   ?65072 :: Γ ⊢ B'' ▹ B'' : !t2

subgoal 2 (ID 65074) is:
 Γ ⊢ s ▹▹ t : ?65072
subgoal 3 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 open,)

apply H0.
2 subgoals, subgoal 1 (ID 65074)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Term
  t0 : Term
  s3 : Sorts
  T' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H : Rel t1 t2 t3
  H4 : !s3 = !t3 \/ Γ ⊢ !s3 ≡' !t3
  H0_ : Γ ⊢ s ▹▹ t : T'
  H0_0 : Γ ⊢ t ▹▹ u : T'
  IHtyp_reds1 : forall B s0 t0 : Term,
                Γ ⊢ s0 ▹ t0 : Π (T'), B ->
                Γ ⊢ s0 ·( T', B)s ▹▹ t0 ·( T', B)t : B [ ← s]
  IHtyp_reds2 : forall B s t0 : Term,
                Γ ⊢ s ▹ t0 : Π (T'), B ->
                Γ ⊢ s ·( T', B)t ▹▹ t0 ·( T', B)u : B [ ← t]
  H1 : Γ ⊢ T' ▹ T' : !t1
  H0 : T' :: Γ ⊢ B'' ▹ B'' : !t2
  ============================
   Γ ⊢ s ▹▹ t : T'

subgoal 2 (ID 64820) is:
 Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using ,)

trivial.
1 subgoals, subgoal 1 (ID 64820)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Γ ⊢ s ·( A, B)N ▹▹ u ·( A, B)N' : B [ ← N]

(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using ,)


eapply typ_reds_trans2.
2 subgoals, subgoal 1 (ID 65079)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Γ ⊢ s ·( A, B)N ▹▹ ?65077 : B [ ← N]

subgoal 2 (ID 65080) is:
 Γ ⊢ ?65077 ▹▹ u ·( A, B)N' : ?65078
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 open, ?65078 open,)

eapply IHtyp_reds1.
3 subgoals, subgoal 1 (ID 65085)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Π (A), B = Π (A), B

subgoal 2 (ID 65086) is:
 Γ ⊢ N ▹▹ ?65084 : A
subgoal 3 (ID 65080) is:
 Γ ⊢ t ·( A, B)?65084 ▹▹ u ·( A, B)N' : ?65078
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 using ?65084 ?65083 ?65082 ?65081 , ?65078 open, ?65081 using , ?65082 using , ?65083 using , ?65084 open,)

reflexivity.
2 subgoals, subgoal 1 (ID 65086)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Γ ⊢ N ▹▹ ?65084 : A

subgoal 2 (ID 65080) is:
 Γ ⊢ t ·( A, B)?65084 ▹▹ u ·( A, B)N' : ?65078
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 using ?65084 ?65083 ?65082 ?65081 , ?65078 open, ?65081 using , ?65082 using , ?65083 using , ?65084 open,)

apply H1.
1 subgoals, subgoal 1 (ID 65080)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Γ ⊢ t ·( A, B)N' ▹▹ u ·( A, B)N' : ?65078

(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 using ?65084 ?65083 ?65082 ?65081 , ?65078 open, ?65081 using , ?65082 using , ?65083 using , ?65084 using ,)


eapply IHtyp_reds2.
2 subgoals, subgoal 1 (ID 65088)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Π (A), B = Π (A), B

subgoal 2 (ID 65089) is:
 Γ ⊢ N' ▹▹ N' : A
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 using ?65084 ?65083 ?65082 ?65081 , ?65078 using , ?65081 using , ?65082 using , ?65083 using , ?65084 using ,)

reflexivity.
1 subgoals, subgoal 1 (ID 65089)
  
  Γ : Env
  s : Term
  t : Term
  u : Term
  A : Term
  B : Term
  N : Term
  N' : Term
  H1 : Γ ⊢ N ▹▹ N' : A
  H : Γ ⊢ s ▹▹ t : Π (A), B
  H0 : Γ ⊢ t ▹▹ u : Π (A), B
  IHtyp_reds1 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ s ·( A0, B0)N ▹▹ t ·( A0, B0)N' : B0 [ ← N]
  IHtyp_reds2 : forall A0 B0 : Term,
                Π (A), B = Π (A0), B0 ->
                forall N N' : Term,
                Γ ⊢ N ▹▹ N' : A0 ->
                Γ ⊢ t ·( A0, B0)N ▹▹ u ·( A0, B0)N' : B0 [ ← N]
  ============================
   Γ ⊢ N' ▹▹ N' : A

(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 using ?65084 ?65083 ?65082 ?65081 , ?65078 using , ?65081 using , ?65082 using , ?65083 using , ?65084 using ,)

constructor; apply reds_refl_rt in H1; trivial.
No more subgoals.
(dependent evars: ?64959 using , ?64960 using , ?64961 using , ?65072 using , ?65077 using ?65084 ?65083 ?65082 ?65081 , ?65078 using , ?65081 using , ?65082 using , ?65083 using , ?65084 using ,)


Qed.
reds_App_ is defined



Lemma reds_App__ : forall Γ M M' A B , Γ M M' : Π(A),B -> forall B' s N N' , Γ N N' : A ->
 A::Γ B ▹▹ B' : !s -> Γ M ·(A,B) N ▹▹ M·(A,B') N : B[ N].
1 subgoals, subgoal 1 (ID 65115)
  
  ============================
   forall (Γ : Env) (M M' A B : Term),
   Γ ⊢ M ▹ M' : Π (A), B ->
   forall (B' : Term) (s : Sorts) (N N' : Term),
   Γ ⊢ N ▹ N' : A ->
   A :: Γ ⊢ B ▹▹ B' : !s -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A, B')N : B [ ← N]

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 65127)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹ M' : Π (A), B
  B' : Term
  s : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : A
  H1 : A :: Γ ⊢ B ▹▹ B' : !s
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M ·( A, B')N : B [ ← N]

(dependent evars:)

revert M M' N N' H H0 .
1 subgoals, subgoal 1 (ID 65129)
  
  Γ : Env
  A : Term
  B : Term
  B' : Term
  s : Sorts
  H1 : A :: Γ ⊢ B ▹▹ B' : !s
  ============================
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A, B')N : B [ ← N]

(dependent evars:)

remember (A::Γ) as ΓΓ.
1 subgoals, subgoal 1 (ID 65137)
  
  Γ : Env
  A : Term
  B : Term
  B' : Term
  s : Sorts
  ΓΓ : list Term
  HeqΓΓ : ΓΓ = A :: Γ
  H1 : ΓΓ ⊢ B ▹▹ B' : !s
  ============================
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A, B')N : B [ ← N]

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 65144)
  
  Γ : Env
  A : Term
  B : Term
  B' : Term
  s : Sorts
  ΓΓ : list Term
  HeqΓΓ : ΓΓ = A :: Γ
  S : Term
  HeqS : S = !s
  H1 : ΓΓ ⊢ B ▹▹ B' : S
  ============================
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A, B')N : B [ ← N]

(dependent evars:)


revert A Γ HeqΓΓ s HeqS.
1 subgoals, subgoal 1 (ID 65146)
  
  B : Term
  B' : Term
  ΓΓ : list Term
  S : Term
  H1 : ΓΓ ⊢ B ▹▹ B' : S
  ============================
   forall (A : Term) (Γ : Env),
   ΓΓ = A :: Γ ->
   forall s : Sorts,
   S = !s ->
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A, B')N : B [ ← N]

(dependent evars:)

induction H1; intros; subst.
2 subgoals, subgoal 1 (ID 65205)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  ============================
   Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)


constructor.
2 subgoals, subgoal 1 (ID 65223)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  ============================
   Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)

destruct (typ_wf Γ0 M M' (Pi A s) H0).
3 subgoals, subgoal 1 (ID 65232)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  H2 : exists s0 : Sorts, Π (A), s = !s0
  ============================
   Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65233) is:
 Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]
subgoal 3 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)

destruct H2 as ( ?& ?); discriminate.
2 subgoals, subgoal 1 (ID 65233)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  H2 : exists s0 : Sorts, Γ0 ⊢ Π (A), s ▹ Π (A), s : !s0
  ============================
   Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)


destruct H2 as (x & ?).
2 subgoals, subgoal 1 (ID 65246)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  x : Sorts
  H2 : Γ0 ⊢ Π (A), s ▹ Π (A), s : !x
  ============================
   Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)

apply pgen_pi in H2 as (A' & s' & s1 & s2 & s3 & h).
2 subgoals, subgoal 1 (ID 65268)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ0 ⊢ A ▹ A' : !s1) /\
      (A :: Γ0 ⊢ s ▹ s' : !s2) /\
      Π (A), s = Π (A'), s' /\ (!x = !s3 \/ Γ0 ⊢ !x ≡' !s3)
  ============================
   Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)

decompose [and] h;clear h.
2 subgoals, subgoal 1 (ID 65290)
  
  s : Term
  t : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ M ▹ M' : Π (A), s
  H1 : Γ0 ⊢ N ▹ N' : A
  H : A :: Γ0 ⊢ s ▹ t : !s0
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H4 : Γ0 ⊢ A ▹ A' : !s1
  H3 : A :: Γ0 ⊢ s ▹ s' : !s2
  H5 : Π (A), s = Π (A'), s'
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  ============================
   Γ0 ⊢ M ·( A, s)N ▹ M ·( A, t)N : s [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)


injection H5; intros; subst; clear H5.
2 subgoals, subgoal 1 (ID 65319)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   Γ0 ⊢ M ·( A', s')N ▹ M ·( A', t)N : s' [ ← N]

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars:)


econstructor.
6 subgoals, subgoal 1 (ID 65328)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   Rel ?65325 ?65326 ?65327

subgoal 2 (ID 65329) is:
 Γ0 ⊢ A' ▹ A' : !?65325
subgoal 3 (ID 65330) is:
 A' :: Γ0 ⊢ s' ▹ t : !?65326
subgoal 4 (ID 65331) is:
 Γ0 ⊢ M ▹ M : Π (A'), s'
subgoal 5 (ID 65332) is:
 Γ0 ⊢ N ▹ N : A'
subgoal 6 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 open, ?65326 open, ?65327 open,)

apply H2.
5 subgoals, subgoal 1 (ID 65329)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   Γ0 ⊢ A' ▹ A' : !s1

subgoal 2 (ID 65330) is:
 A' :: Γ0 ⊢ s' ▹ t : !s2
subgoal 3 (ID 65331) is:
 Γ0 ⊢ M ▹ M : Π (A'), s'
subgoal 4 (ID 65332) is:
 Γ0 ⊢ N ▹ N : A'
subgoal 5 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 using , ?65326 using , ?65327 using ,)

apply H4.
4 subgoals, subgoal 1 (ID 65330)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   A' :: Γ0 ⊢ s' ▹ t : !s2

subgoal 2 (ID 65331) is:
 Γ0 ⊢ M ▹ M : Π (A'), s'
subgoal 3 (ID 65332) is:
 Γ0 ⊢ N ▹ N : A'
subgoal 4 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 using , ?65326 using , ?65327 using ,)

eapply relocate.
5 subgoals, subgoal 1 (ID 65340)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   A' :: Γ0 ⊢ s' ▹ ?65339 : !s2

subgoal 2 (ID 65342) is:
 A' :: Γ0 ⊢ s' ▹ t : ?65341
subgoal 3 (ID 65331) is:
 Γ0 ⊢ M ▹ M : Π (A'), s'
subgoal 4 (ID 65332) is:
 Γ0 ⊢ N ▹ N : A'
subgoal 5 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 open, ?65341 open,)

apply H3.
4 subgoals, subgoal 1 (ID 65342)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   A' :: Γ0 ⊢ s' ▹ t : ?65341

subgoal 2 (ID 65331) is:
 Γ0 ⊢ M ▹ M : Π (A'), s'
subgoal 3 (ID 65332) is:
 Γ0 ⊢ N ▹ N : A'
subgoal 4 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 open,)

apply H.
3 subgoals, subgoal 1 (ID 65331)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   Γ0 ⊢ M ▹ M : Π (A'), s'

subgoal 2 (ID 65332) is:
 Γ0 ⊢ N ▹ N : A'
subgoal 3 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using ,)

apply red_refl_lt with M'; trivial.
2 subgoals, subgoal 1 (ID 65332)
  
  t : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  A' : Term
  s' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ0 ⊢ !x ≡' !s3
  H1 : Γ0 ⊢ N ▹ N' : A'
  H4 : Γ0 ⊢ A' ▹ A' : !s1
  H0 : Γ0 ⊢ M ▹ M' : Π (A'), s'
  H : A' :: Γ0 ⊢ s' ▹ t : !s0
  H3 : A' :: Γ0 ⊢ s' ▹ s' : !s2
  ============================
   Γ0 ⊢ N ▹ N : A'

subgoal 2 (ID 65221) is:
 Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using ,)


apply red_refl_lt with N'; trivial.
1 subgoals, subgoal 1 (ID 65221)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ M ·( A, s)N ▹▹ M ·( A, u)N : s [ ← N]

(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using ,)


eapply typ_reds_trans2.
2 subgoals, subgoal 1 (ID 65347)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ M ·( A, s)N ▹▹ ?65345 : s [ ← N]

subgoal 2 (ID 65348) is:
 Γ0 ⊢ ?65345 ▹▹ M ·( A, u)N : ?65346
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 open, ?65346 open,)

eapply IHtyp_reds1.
5 subgoals, subgoal 1 (ID 65352)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   A :: Γ0 = A :: Γ0

subgoal 2 (ID 65353) is:
 !s0 = !?65349
subgoal 3 (ID 65354) is:
 Γ0 ⊢ M ▹ ?65350 : Π (A), s
subgoal 4 (ID 65355) is:
 Γ0 ⊢ N ▹ ?65351 : A
subgoal 5 (ID 65348) is:
 Γ0 ⊢ M ·( A, t)N ▹▹ M ·( A, u)N : ?65346
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 open, ?65349 open, ?65350 open, ?65351 open,)

reflexivity.
4 subgoals, subgoal 1 (ID 65353)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   !s0 = !?65349

subgoal 2 (ID 65354) is:
 Γ0 ⊢ M ▹ ?65350 : Π (A), s
subgoal 3 (ID 65355) is:
 Γ0 ⊢ N ▹ ?65351 : A
subgoal 4 (ID 65348) is:
 Γ0 ⊢ M ·( A, t)N ▹▹ M ·( A, u)N : ?65346
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 open, ?65349 open, ?65350 open, ?65351 open,)

reflexivity.
3 subgoals, subgoal 1 (ID 65354)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ M ▹ ?65350 : Π (A), s

subgoal 2 (ID 65355) is:
 Γ0 ⊢ N ▹ ?65351 : A
subgoal 3 (ID 65348) is:
 Γ0 ⊢ M ·( A, t)N ▹▹ M ·( A, u)N : ?65346
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 open, ?65349 using , ?65350 open, ?65351 open,)

apply H.
2 subgoals, subgoal 1 (ID 65355)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ N ▹ ?65351 : A

subgoal 2 (ID 65348) is:
 Γ0 ⊢ M ·( A, t)N ▹▹ M ·( A, u)N : ?65346
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 open, ?65349 using , ?65350 using , ?65351 open,)

apply H0.
1 subgoals, subgoal 1 (ID 65348)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ M ·( A, t)N ▹▹ M ·( A, u)N : ?65346

(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 open, ?65349 using , ?65350 using , ?65351 using ,)


eapply IHtyp_reds2.
4 subgoals, subgoal 1 (ID 65361)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   A :: Γ0 = A :: Γ0

subgoal 2 (ID 65362) is:
 !s0 = !?65358
subgoal 3 (ID 65363) is:
 Γ0 ⊢ M ▹ ?65359 : Π (A), t
subgoal 4 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 open, ?65359 open, ?65360 open,)

reflexivity.
3 subgoals, subgoal 1 (ID 65362)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   !s0 = !?65358

subgoal 2 (ID 65363) is:
 Γ0 ⊢ M ▹ ?65359 : Π (A), t
subgoal 3 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 open, ?65359 open, ?65360 open,)

reflexivity.
2 subgoals, subgoal 1 (ID 65363)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ M ▹ ?65359 : Π (A), t

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 open, ?65360 open,)

apply typ_pcompat with (Pi A s).
3 subgoals, subgoal 1 (ID 65367)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ M ▹ ?65359 : Π (A), s

subgoal 2 (ID 65368) is:
 Γ0 ⊢ Π (A), s ≡' Π (A), t
subgoal 3 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 open, ?65360 open,)

apply H.
2 subgoals, subgoal 1 (ID 65368)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ Π (A), s ≡' Π (A), t

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open,)


apply typ_wf in H as [ | ].
3 subgoals, subgoal 1 (ID 65375)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  H : exists s0 : Sorts, Π (A), s = !s0
  ============================
   Γ0 ⊢ Π (A), s ≡' Π (A), t

subgoal 2 (ID 65376) is:
 Γ0 ⊢ Π (A), s ≡' Π (A), t
subgoal 3 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open,)

destruct H ; discriminate.
2 subgoals, subgoal 1 (ID 65376)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  H : exists s0 : Sorts, Γ0 ⊢ Π (A), s ▹ Π (A), s : !s0
  ============================
   Γ0 ⊢ Π (A), s ≡' Π (A), t

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open,)

destruct H as (x & ?).
2 subgoals, subgoal 1 (ID 65389)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  H : Γ0 ⊢ Π (A), s ▹ Π (A), s : !x
  ============================
   Γ0 ⊢ Π (A), s ≡' Π (A), t

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open,)


apply pgen_pi in H as (A'' & s'' & a & b& c & h); decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 65433)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   Γ0 ⊢ Π (A), s ≡' Π (A), t

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open,)


apply reds_to_conv with c.
2 subgoals, subgoal 1 (ID 65434)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   Γ0 ⊢ Π (A), s ▹▹ Π (A), t : !c

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open,)

eapply reds_Pi.
4 subgoals, subgoal 1 (ID 65437)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   Γ0 ⊢ A ▹▹ A : !?65435

subgoal 2 (ID 65438) is:
 A :: Γ0 ⊢ s ▹▹ t : !?65436
subgoal 3 (ID 65439) is:
 Rel ?65435 ?65436 c
subgoal 4 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 open, ?65436 open,)

constructor.
4 subgoals, subgoal 1 (ID 65441)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   Γ0 ⊢ A ▹ A : !?65435

subgoal 2 (ID 65438) is:
 A :: Γ0 ⊢ s ▹▹ t : !?65436
subgoal 3 (ID 65439) is:
 Rel ?65435 ?65436 c
subgoal 4 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 open, ?65436 open,)

apply red_refl_lt in H2; apply H2.
3 subgoals, subgoal 1 (ID 65438)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   A :: Γ0 ⊢ s ▹▹ t : !?65436

subgoal 2 (ID 65439) is:
 Rel a ?65436 c
subgoal 3 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 using ?65443 , ?65436 open, ?65443 using ,)


eapply typ_reds_relocate.
4 subgoals, subgoal 1 (ID 65446)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   A :: Γ0 ⊢ s ▹▹ t : ?65445

subgoal 2 (ID 65447) is:
 A :: Γ0 ⊢ s ▹ s : !?65436
subgoal 3 (ID 65439) is:
 Rel a ?65436 c
subgoal 4 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 using ?65443 , ?65436 open, ?65443 using , ?65445 open,)

apply H1_.
3 subgoals, subgoal 1 (ID 65447)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   A :: Γ0 ⊢ s ▹ s : !?65436

subgoal 2 (ID 65439) is:
 Rel a ?65436 c
subgoal 3 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 using ?65443 , ?65436 open, ?65443 using , ?65445 using ,)

apply red_refl_lt in H1; apply H1.
2 subgoals, subgoal 1 (ID 65439)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  x : Sorts
  A'' : Term
  s'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ0 ⊢ A ▹ A'' : !a
  H1 : A :: Γ0 ⊢ s ▹ s'' : !b
  H3 : Π (A), s = Π (A''), s''
  H5 : !x = !c \/ Γ0 ⊢ !x ≡' !c
  ============================
   Rel a b c

subgoal 2 (ID 65364) is:
 Γ0 ⊢ N ▹ ?65360 : A
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 using ?65443 , ?65436 using ?65449 , ?65443 using , ?65445 using , ?65449 using ,)


trivial.
1 subgoals, subgoal 1 (ID 65364)
  
  s : Term
  t : Term
  u : Term
  A : Term
  Γ0 : Env
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ0 ⊢ M ▹ M' : Π (A), s
  H0 : Γ0 ⊢ N ▹ N' : A
  H1_ : A :: Γ0 ⊢ s ▹▹ t : !s0
  H1_0 : A :: Γ0 ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), s ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, s)N ▹▹ M ·( A0, t)N : s [ ← N]
  IHtyp_reds2 : forall (A0 : Term) (Γ : Env),
                A :: Γ0 = A0 :: Γ ->
                forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (A0), t ->
                Γ ⊢ N ▹ N' : A0 ->
                Γ ⊢ M ·( A0, t)N ▹▹ M ·( A0, u)N : t [ ← N]
  ============================
   Γ0 ⊢ N ▹ ?65360 : A

(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 open, ?65435 using ?65443 , ?65436 using ?65449 , ?65443 using , ?65445 using , ?65449 using ,)


apply H0.
No more subgoals.
(dependent evars: ?65325 using , ?65326 using , ?65327 using , ?65335 using ?65339 , ?65336 using ?65341 , ?65339 using , ?65341 using , ?65345 using , ?65346 using , ?65349 using , ?65350 using , ?65351 using , ?65358 using , ?65359 using , ?65360 using , ?65435 using ?65443 , ?65436 using ?65449 , ?65443 using , ?65445 using , ?65449 using ,)


Qed.
reds_App__ is defined



Lemma reds_App___ : forall Γ M M' A B , Γ M M' : Π(A),B -> forall A' s N N' , Γ N N' : A ->
 Γ A ▹▹ A' : !s -> Γ M ·(A,B) N ▹▹ M·(A',B) N : B[ N].
1 subgoals, subgoal 1 (ID 65473)
  
  ============================
   forall (Γ : Env) (M M' A B : Term),
   Γ ⊢ M ▹ M' : Π (A), B ->
   forall (A' : Term) (s : Sorts) (N N' : Term),
   Γ ⊢ N ▹ N' : A ->
   Γ ⊢ A ▹▹ A' : !s -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A', B)N : B [ ← N]

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 65485)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹ M' : Π (A), B
  A' : Term
  s : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M ·( A', B)N : B [ ← N]

(dependent evars:)

revert M M' N N' H H0 .
1 subgoals, subgoal 1 (ID 65487)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  s : Sorts
  H1 : Γ ⊢ A ▹▹ A' : !s
  ============================
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A', B)N : B [ ← N]

(dependent evars:)

remember !s as S.
1 subgoals, subgoal 1 (ID 65494)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  s : Sorts
  S : Term
  HeqS : S = !s
  H1 : Γ ⊢ A ▹▹ A' : S
  ============================
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A', B)N : B [ ← N]

(dependent evars:)

revert s HeqS.
1 subgoals, subgoal 1 (ID 65496)
  
  Γ : Env
  A : Term
  B : Term
  A' : Term
  S : Term
  H1 : Γ ⊢ A ▹▹ A' : S
  ============================
   forall s : Sorts,
   S = !s ->
   forall M M' N N' : Term,
   Γ ⊢ M ▹ M' : Π (A), B ->
   Γ ⊢ N ▹ N' : A -> Γ ⊢ M ·( A, B)N ▹▹ M ·( A', B)N : B [ ← N]

(dependent evars:)

induction H1; intros; subst.
2 subgoals, subgoal 1 (ID 65544)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)


constructor.
2 subgoals, subgoal 1 (ID 65554)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  ============================
   Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)

destruct (typ_wf Γ M M' (Pi s B) H0).
3 subgoals, subgoal 1 (ID 65563)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  H2 : exists s0 : Sorts, Π (s), B = !s0
  ============================
   Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65564) is:
 Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]
subgoal 3 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)

destruct H2 as ( ?& ?); discriminate.
2 subgoals, subgoal 1 (ID 65564)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  H2 : exists s0 : Sorts, Γ ⊢ Π (s), B ▹ Π (s), B : !s0
  ============================
   Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)


destruct H2 as (x & ?).
2 subgoals, subgoal 1 (ID 65577)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  x : Sorts
  H2 : Γ ⊢ Π (s), B ▹ Π (s), B : !x
  ============================
   Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)

apply pgen_pi in H2 as (s' & B' & s1 & s2 & s3 & h).
2 subgoals, subgoal 1 (ID 65599)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  h : Rel s1 s2 s3 /\
      (Γ ⊢ s ▹ s' : !s1) /\
      (s :: Γ ⊢ B ▹ B' : !s2) /\
      Π (s), B = Π (s'), B' /\ (!x = !s3 \/ Γ ⊢ !x ≡' !s3)
  ============================
   Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)

decompose [and] h;clear h.
2 subgoals, subgoal 1 (ID 65621)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ M ▹ M' : Π (s), B
  H1 : Γ ⊢ N ▹ N' : s
  H : Γ ⊢ s ▹ t : !s0
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H4 : Γ ⊢ s ▹ s' : !s1
  H3 : s :: Γ ⊢ B ▹ B' : !s2
  H5 : Π (s), B = Π (s'), B'
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  ============================
   Γ ⊢ M ·( s, B)N ▹ M ·( t, B)N : B [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)


injection H5; intros; subst; clear H5.
2 subgoals, subgoal 1 (ID 65649)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ M ·( s', B')N ▹ M ·( t, B')N : B' [ ← N]

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars:)


econstructor.
6 subgoals, subgoal 1 (ID 65658)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Rel ?65655 ?65656 ?65657

subgoal 2 (ID 65659) is:
 Γ ⊢ s' ▹ t : !?65655
subgoal 3 (ID 65660) is:
 s' :: Γ ⊢ B' ▹ B' : !?65656
subgoal 4 (ID 65661) is:
 Γ ⊢ M ▹ M : Π (s'), B'
subgoal 5 (ID 65662) is:
 Γ ⊢ N ▹ N : s'
subgoal 6 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 open, ?65656 open, ?65657 open,)

apply H2.
5 subgoals, subgoal 1 (ID 65659)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ s' ▹ t : !s1

subgoal 2 (ID 65660) is:
 s' :: Γ ⊢ B' ▹ B' : !s2
subgoal 3 (ID 65661) is:
 Γ ⊢ M ▹ M : Π (s'), B'
subgoal 4 (ID 65662) is:
 Γ ⊢ N ▹ N : s'
subgoal 5 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 using , ?65656 using , ?65657 using ,)

eapply relocate.
6 subgoals, subgoal 1 (ID 65670)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ s' ▹ ?65669 : !s1

subgoal 2 (ID 65672) is:
 Γ ⊢ s' ▹ t : ?65671
subgoal 3 (ID 65660) is:
 s' :: Γ ⊢ B' ▹ B' : !s2
subgoal 4 (ID 65661) is:
 Γ ⊢ M ▹ M : Π (s'), B'
subgoal 5 (ID 65662) is:
 Γ ⊢ N ▹ N : s'
subgoal 6 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 open, ?65671 open,)

apply H4.
5 subgoals, subgoal 1 (ID 65672)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ s' ▹ t : ?65671

subgoal 2 (ID 65660) is:
 s' :: Γ ⊢ B' ▹ B' : !s2
subgoal 3 (ID 65661) is:
 Γ ⊢ M ▹ M : Π (s'), B'
subgoal 4 (ID 65662) is:
 Γ ⊢ N ▹ N : s'
subgoal 5 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 open,)

apply H.
4 subgoals, subgoal 1 (ID 65660)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   s' :: Γ ⊢ B' ▹ B' : !s2

subgoal 2 (ID 65661) is:
 Γ ⊢ M ▹ M : Π (s'), B'
subgoal 3 (ID 65662) is:
 Γ ⊢ N ▹ N : s'
subgoal 4 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using ,)

trivial.
3 subgoals, subgoal 1 (ID 65661)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ M ▹ M : Π (s'), B'

subgoal 2 (ID 65662) is:
 Γ ⊢ N ▹ N : s'
subgoal 3 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using ,)

apply red_refl_lt with M'; trivial.
2 subgoals, subgoal 1 (ID 65662)
  
  Γ : Env
  t : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  x : Sorts
  s' : Term
  B' : Term
  s1 : Sorts
  s2 : Sorts
  s3 : Sorts
  H2 : Rel s1 s2 s3
  H7 : !x = !s3 \/ Γ ⊢ !x ≡' !s3
  H1 : Γ ⊢ N ▹ N' : s'
  H : Γ ⊢ s' ▹ t : !s0
  H4 : Γ ⊢ s' ▹ s' : !s1
  H0 : Γ ⊢ M ▹ M' : Π (s'), B'
  H3 : s' :: Γ ⊢ B' ▹ B' : !s2
  ============================
   Γ ⊢ N ▹ N : s'

subgoal 2 (ID 65552) is:
 Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using ,)


apply red_refl_lt with N'; trivial.
1 subgoals, subgoal 1 (ID 65552)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ M ·( s, B)N ▹▹ M ·( u, B)N : B [ ← N]

(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using ,)


eapply typ_reds_trans2.
2 subgoals, subgoal 1 (ID 65677)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ M ·( s, B)N ▹▹ ?65675 : B [ ← N]

subgoal 2 (ID 65678) is:
 Γ ⊢ ?65675 ▹▹ M ·( u, B)N : ?65676
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 open, ?65676 open,)

eapply IHtyp_reds1.
4 subgoals, subgoal 1 (ID 65682)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   !s0 = !?65679

subgoal 2 (ID 65683) is:
 Γ ⊢ M ▹ ?65680 : Π (s), B
subgoal 3 (ID 65684) is:
 Γ ⊢ N ▹ ?65681 : s
subgoal 4 (ID 65678) is:
 Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : ?65676
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 open, ?65679 open, ?65680 open, ?65681 open,)

reflexivity.
3 subgoals, subgoal 1 (ID 65683)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ M ▹ ?65680 : Π (s), B

subgoal 2 (ID 65684) is:
 Γ ⊢ N ▹ ?65681 : s
subgoal 3 (ID 65678) is:
 Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : ?65676
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 open, ?65679 using , ?65680 open, ?65681 open,)

apply red_refl_lt in H; apply H.
2 subgoals, subgoal 1 (ID 65684)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ N ▹ ?65681 : s

subgoal 2 (ID 65678) is:
 Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : ?65676
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 open, ?65679 using , ?65680 using ?65687 , ?65681 open, ?65687 using ,)

apply red_refl_lt in H0; apply H0.
1 subgoals, subgoal 1 (ID 65678)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : ?65676

(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 open, ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using ,)


eapply IHtyp_reds2.
3 subgoals, subgoal 1 (ID 65695)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   !s0 = !?65692

subgoal 2 (ID 65696) is:
 Γ ⊢ M ▹ ?65693 : Π (t), B
subgoal 3 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 open, ?65693 open, ?65694 open,)

reflexivity.
2 subgoals, subgoal 1 (ID 65696)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ M ▹ ?65693 : Π (t), B

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 open, ?65694 open,)

apply typ_pcompat with (Pi s B).
3 subgoals, subgoal 1 (ID 65699)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ M ▹ ?65693 : Π (s), B

subgoal 2 (ID 65700) is:
 Γ ⊢ Π (s), B ≡' Π (t), B
subgoal 3 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 open, ?65694 open,)

apply H.
2 subgoals, subgoal 1 (ID 65700)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ Π (s), B ≡' Π (t), B

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open,)


apply typ_wf in H as [ | ].
3 subgoals, subgoal 1 (ID 65707)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  H : exists s0 : Sorts, Π (s), B = !s0
  ============================
   Γ ⊢ Π (s), B ≡' Π (t), B

subgoal 2 (ID 65708) is:
 Γ ⊢ Π (s), B ≡' Π (t), B
subgoal 3 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open,)

destruct H ; discriminate.
2 subgoals, subgoal 1 (ID 65708)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  H : exists s0 : Sorts, Γ ⊢ Π (s), B ▹ Π (s), B : !s0
  ============================
   Γ ⊢ Π (s), B ≡' Π (t), B

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open,)

destruct H as (x & ?).
2 subgoals, subgoal 1 (ID 65721)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  H : Γ ⊢ Π (s), B ▹ Π (s), B : !x
  ============================
   Γ ⊢ Π (s), B ≡' Π (t), B

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open,)


apply pgen_pi in H as (s'' & B'' & a & b& c & h); decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 65765)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ Π (s), B ≡' Π (t), B

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open,)


apply reds_to_conv with c.
2 subgoals, subgoal 1 (ID 65766)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ Π (s), B ▹▹ Π (t), B : !c

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open,)

eapply reds_Pi.
4 subgoals, subgoal 1 (ID 65769)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ s ▹▹ t : !?65767

subgoal 2 (ID 65770) is:
 s :: Γ ⊢ B ▹▹ B : !?65768
subgoal 3 (ID 65771) is:
 Rel ?65767 ?65768 c
subgoal 4 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 open, ?65768 open,)

eapply typ_reds_relocate.
5 subgoals, subgoal 1 (ID 65773)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ s ▹▹ t : ?65772

subgoal 2 (ID 65774) is:
 Γ ⊢ s ▹ s : !?65767
subgoal 3 (ID 65770) is:
 s :: Γ ⊢ B ▹▹ B : !?65768
subgoal 4 (ID 65771) is:
 Rel ?65767 ?65768 c
subgoal 5 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 open, ?65768 open, ?65772 open,)

apply H1_.
4 subgoals, subgoal 1 (ID 65774)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ s ▹ s : !?65767

subgoal 2 (ID 65770) is:
 s :: Γ ⊢ B ▹▹ B : !?65768
subgoal 3 (ID 65771) is:
 Rel ?65767 ?65768 c
subgoal 4 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 open, ?65768 open, ?65772 using ,)

apply red_refl_lt in H2; apply H2.
3 subgoals, subgoal 1 (ID 65770)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   s :: Γ ⊢ B ▹▹ B : !?65768

subgoal 2 (ID 65771) is:
 Rel a ?65768 c
subgoal 3 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 using ?65776 , ?65768 open, ?65772 using , ?65776 using ,)


constructor; apply red_refl_lt in H1; apply H1.
2 subgoals, subgoal 1 (ID 65771)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  x : Sorts
  s'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H2 : Γ ⊢ s ▹ s'' : !a
  H1 : s :: Γ ⊢ B ▹ B'' : !b
  H3 : Π (s), B = Π (s''), B''
  H5 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Rel a b c

subgoal 2 (ID 65697) is:
 Γ ⊢ N ▹ ?65694 : t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 using ?65776 , ?65768 using ?65781 , ?65772 using , ?65776 using , ?65781 using ,)

trivial.
1 subgoals, subgoal 1 (ID 65697)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ N ▹ ?65694 : t

(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 using ?65776 , ?65768 using ?65781 , ?65772 using , ?65776 using , ?65781 using ,)

apply typ_pcompat with s.
2 subgoals, subgoal 1 (ID 65783)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ N ▹ ?65694 : s

subgoal 2 (ID 65784) is:
 Γ ⊢ s ≡' t
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 open, ?65767 using ?65776 , ?65768 using ?65781 , ?65772 using , ?65776 using , ?65781 using ,)


apply H0.
1 subgoals, subgoal 1 (ID 65784)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ▹▹ t : !s0
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ s ≡' t

(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 using , ?65767 using ?65776 , ?65768 using ?65781 , ?65772 using , ?65776 using , ?65781 using ,)

apply reds_to_conv in H1_.
1 subgoals, subgoal 1 (ID 65786)
  
  B : Term
  Γ : Env
  s : Term
  t : Term
  u : Term
  s0 : Sorts
  M : Term
  M' : Term
  N : Term
  N' : Term
  H : Γ ⊢ M ▹ M' : Π (s), B
  H0 : Γ ⊢ N ▹ N' : s
  H1_ : Γ ⊢ s ≡' t
  H1_0 : Γ ⊢ t ▹▹ u : !s0
  IHtyp_reds1 : forall s1 : Sorts,
                !s0 = !s1 ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (s), B ->
                Γ ⊢ N ▹ N' : s -> Γ ⊢ M ·( s, B)N ▹▹ M ·( t, B)N : B [ ← N]
  IHtyp_reds2 : forall s : Sorts,
                !s0 = !s ->
                forall M M' N N' : Term,
                Γ ⊢ M ▹ M' : Π (t), B ->
                Γ ⊢ N ▹ N' : t -> Γ ⊢ M ·( t, B)N ▹▹ M ·( u, B)N : B [ ← N]
  ============================
   Γ ⊢ s ≡' t

(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 using , ?65767 using ?65776 , ?65768 using ?65781 , ?65772 using , ?65776 using , ?65781 using ,)

trivial.
No more subgoals.
(dependent evars: ?65655 using , ?65656 using , ?65657 using , ?65665 using ?65669 , ?65666 using ?65671 , ?65669 using , ?65671 using , ?65675 using , ?65676 using , ?65679 using , ?65680 using ?65687 , ?65681 using ?65690 , ?65687 using , ?65690 using , ?65692 using , ?65693 using , ?65694 using , ?65767 using ?65776 , ?65768 using ?65781 , ?65772 using , ?65776 using , ?65781 using ,)


Qed.
reds_App___ is defined



Lemma reds_App : forall Γ M M' A B , Γ M ▹▹ M' : Π(A),B -> forall A' B' s t N N' , Γ N ▹▹ N' : A ->
 Γ A ▹▹ A' : !s -> A::Γ B ▹▹ B' : !t -> Γ M ·(A,B) N ▹▹ M'·(A',B') N' : B[ N].
1 subgoals, subgoal 1 (ID 65812)
  
  ============================
   forall (Γ : Env) (M M' A B : Term),
   Γ ⊢ M ▹▹ M' : Π (A), B ->
   forall (A' B' : Term) (s t : Sorts) (N N' : Term),
   Γ ⊢ N ▹▹ N' : A ->
   Γ ⊢ A ▹▹ A' : !s ->
   A :: Γ ⊢ B ▹▹ B' : !t -> Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 65827)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

(dependent evars:)

eapply typ_reds_trans.
2 subgoals, subgoal 1 (ID 65829)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ ?65828 : B [ ← N]

subgoal 2 (ID 65830) is:
 Γ ⊢ ?65828 ▹▹ M' ·( A', B')N' : B [ ← N]
(dependent evars: ?65828 open,)

eapply reds_App_.
3 subgoals, subgoal 1 (ID 65835)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M ▹▹ ?65831 : Π (A), B

subgoal 2 (ID 65836) is:
 Γ ⊢ N ▹▹ ?65834 : A
subgoal 3 (ID 65830) is:
 Γ ⊢ ?65831 ·( A, B)?65834 ▹▹ M' ·( A', B')N' : B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 open, ?65832 using , ?65833 using , ?65834 open,)

apply H.
2 subgoals, subgoal 1 (ID 65836)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ N ▹▹ ?65834 : A

subgoal 2 (ID 65830) is:
 Γ ⊢ M' ·( A, B)?65834 ▹▹ M' ·( A', B')N' : B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 open,)

apply H0.
1 subgoals, subgoal 1 (ID 65830)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ·( A, B)N' ▹▹ M' ·( A', B')N' : B [ ← N]

(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using ,)


apply reds_typ_pcompat with (B [ N']).
2 subgoals, subgoal 1 (ID 65837)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ·( A, B)N' ▹▹ M' ·( A', B')N' : B [ ← N']

subgoal 2 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using ,)

eapply typ_reds_trans.
3 subgoals, subgoal 1 (ID 65840)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ·( A, B)N' ▹▹ ?65839 : B [ ← N']

subgoal 2 (ID 65841) is:
 Γ ⊢ ?65839 ▹▹ M' ·( A', B')N' : B [ ← N']
subgoal 3 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 open,)

eapply reds_App___.
5 subgoals, subgoal 1 (ID 65849)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ▹ ?65846 : Π (A), B

subgoal 2 (ID 65850) is:
 Γ ⊢ N' ▹ ?65848 : A
subgoal 3 (ID 65851) is:
 Γ ⊢ A ▹▹ ?65843 : !?65847
subgoal 4 (ID 65841) is:
 Γ ⊢ M' ·( ?65843, B)N' ▹▹ M' ·( A', B')N' : B [ ← N']
subgoal 5 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 open, ?65844 using , ?65845 using , ?65846 open, ?65847 open, ?65848 open,)


apply reds_refl_rt in H; apply H.
4 subgoals, subgoal 1 (ID 65850)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ N' ▹ ?65848 : A

subgoal 2 (ID 65851) is:
 Γ ⊢ A ▹▹ ?65843 : !?65847
subgoal 3 (ID 65841) is:
 Γ ⊢ M' ·( ?65843, B)N' ▹▹ M' ·( A', B')N' : B [ ← N']
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 open, ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 open, ?65848 open, ?65853 using ,)

apply reds_refl_rt in H0; apply H0.
3 subgoals, subgoal 1 (ID 65851)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ A ▹▹ ?65843 : !?65847

subgoal 2 (ID 65841) is:
 Γ ⊢ M' ·( ?65843, B)N' ▹▹ M' ·( A', B')N' : B [ ← N']
subgoal 3 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 open, ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 open, ?65848 using ?65856 , ?65853 using , ?65856 using ,)

apply H1.
2 subgoals, subgoal 1 (ID 65841)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ·( A', B)N' ▹▹ M' ·( A', B')N' : B [ ← N']

subgoal 2 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using ,)


eapply reds_App__.
4 subgoals, subgoal 1 (ID 65861)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ▹ ?65858 : Π (A'), B

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 open, ?65859 open, ?65860 open,)

apply typ_pcompat with (Π(A),B).
5 subgoals, subgoal 1 (ID 65864)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ M' ▹ ?65858 : Π (A), B

subgoal 2 (ID 65865) is:
 Γ ⊢ Π (A), B ≡' Π (A'), B
subgoal 3 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 4 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 5 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 open, ?65859 open, ?65860 open,)

apply reds_refl_rt in H; apply H.
4 subgoals, subgoal 1 (ID 65865)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ Π (A), B ≡' Π (A'), B

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using ,)


apply reds_refl_lt in H; apply typ_wf in H as [ | ].
5 subgoals, subgoal 1 (ID 65877)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H : exists s : Sorts, Π (A), B = !s
  ============================
   Γ ⊢ Π (A), B ≡' Π (A'), B

subgoal 2 (ID 65878) is:
 Γ ⊢ Π (A), B ≡' Π (A'), B
subgoal 3 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 4 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 5 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using ,)

destruct H ; discriminate.
4 subgoals, subgoal 1 (ID 65878)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  H : exists s : Sorts, Γ ⊢ Π (A), B ▹ Π (A), B : !s
  ============================
   Γ ⊢ Π (A), B ≡' Π (A'), B

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using ,)

destruct H as (x & ?).
4 subgoals, subgoal 1 (ID 65891)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  H : Γ ⊢ Π (A), B ▹ Π (A), B : !x
  ============================
   Γ ⊢ Π (A), B ≡' Π (A'), B

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using ,)


apply pgen_pi in H as (A'' & B'' & a & b& c & h); decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 65935)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ Π (A), B ≡' Π (A'), B

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using ,)


apply reds_to_conv with c.
4 subgoals, subgoal 1 (ID 65936)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B : !c

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using ,)

eapply reds_Pi.
6 subgoals, subgoal 1 (ID 65939)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ A ▹▹ A' : !?65937

subgoal 2 (ID 65940) is:
 A :: Γ ⊢ B ▹▹ B : !?65938
subgoal 3 (ID 65941) is:
 Rel ?65937 ?65938 c
subgoal 4 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 5 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 6 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 open, ?65938 open,)

eapply typ_reds_relocate.
7 subgoals, subgoal 1 (ID 65943)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ A ▹▹ A' : ?65942

subgoal 2 (ID 65944) is:
 Γ ⊢ A ▹ A : !?65937
subgoal 3 (ID 65940) is:
 A :: Γ ⊢ B ▹▹ B : !?65938
subgoal 4 (ID 65941) is:
 Rel ?65937 ?65938 c
subgoal 5 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 6 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 7 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 open, ?65938 open, ?65942 open,)

apply H1.
6 subgoals, subgoal 1 (ID 65944)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Γ ⊢ A ▹ A : !?65937

subgoal 2 (ID 65940) is:
 A :: Γ ⊢ B ▹▹ B : !?65938
subgoal 3 (ID 65941) is:
 Rel ?65937 ?65938 c
subgoal 4 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 5 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 6 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 open, ?65938 open, ?65942 using ,)

apply red_refl_lt in H4; apply H4.
5 subgoals, subgoal 1 (ID 65940)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   A :: Γ ⊢ B ▹▹ B : !?65938

subgoal 2 (ID 65941) is:
 Rel a ?65938 c
subgoal 3 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 4 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 5 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 using ?65946 , ?65938 open, ?65942 using , ?65946 using ,)


constructor.
5 subgoals, subgoal 1 (ID 65949)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   A :: Γ ⊢ B ▹ B : !?65938

subgoal 2 (ID 65941) is:
 Rel a ?65938 c
subgoal 3 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 4 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 5 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 using ?65946 , ?65938 open, ?65942 using , ?65946 using ,)

eapply relocate.
6 subgoals, subgoal 1 (ID 65957)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   A :: Γ ⊢ B ▹ ?65956 : !?65938

subgoal 2 (ID 65959) is:
 A :: Γ ⊢ B ▹ B : ?65958
subgoal 3 (ID 65941) is:
 Rel a ?65938 c
subgoal 4 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 5 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 6 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 using ?65946 , ?65938 open, ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 open, ?65958 open,)

apply H3.
5 subgoals, subgoal 1 (ID 65959)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   A :: Γ ⊢ B ▹ B : ?65958

subgoal 2 (ID 65941) is:
 Rel a b c
subgoal 3 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 4 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 5 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 open,)

apply reds_refl_lt in H2; apply H2.
4 subgoals, subgoal 1 (ID 65941)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  x : Sorts
  A'' : Term
  B'' : Term
  a : Sorts
  b : Sorts
  c : Sorts
  H : Rel a b c
  H4 : Γ ⊢ A ▹ A'' : !a
  H3 : A :: Γ ⊢ B ▹ B'' : !b
  H5 : Π (A), B = Π (A''), B''
  H7 : !x = !c \/ Γ ⊢ !x ≡' !c
  ============================
   Rel a b c

subgoal 2 (ID 65862) is:
 Γ ⊢ N' ▹ ?65860 : A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using ,)

trivial.
3 subgoals, subgoal 1 (ID 65862)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ N' ▹ ?65860 : A'

subgoal 2 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 3 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 open, ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using ,)

apply reds_refl_rt in H0.
3 subgoals, subgoal 1 (ID 65965)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N' ▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ N' ▹ ?65964 : A'

subgoal 2 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 3 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 open,)


apply typ_pcompat with A.
4 subgoals, subgoal 1 (ID 65966)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N' ▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ N' ▹ ?65964 : A

subgoal 2 (ID 65967) is:
 Γ ⊢ A ≡' A'
subgoal 3 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 4 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 open,)

apply H0.
3 subgoals, subgoal 1 (ID 65967)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N' ▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ A ≡' A'

subgoal 2 (ID 65863) is:
 A' :: Γ ⊢ B ▹▹ B' : !?65859
subgoal 3 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using ,)

eauto.
2 subgoals, subgoal 1 (ID 65863)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   A' :: Γ ⊢ B ▹▹ B' : !?65859

subgoal 2 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using ,)

eapply conv_in_env_reds.
3 subgoals, subgoal 1 (ID 66061)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   ?66060 ⊢ B ▹▹ B' : !?65859

subgoal 2 (ID 66062) is:
 env_conv ?66060 (A' :: Γ)
subgoal 3 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 open, ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 open,)

apply H2.
2 subgoals, subgoal 1 (ID 66062)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   env_conv (A :: Γ) (A' :: Γ)

subgoal 2 (ID 65838) is:
 Γ ⊢ B [ ← N'] ≡' B [ ← N]
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using ,)

eauto.
1 subgoals, subgoal 1 (ID 65838)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ B [ ← N'] ≡' B [ ← N]

(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using ,)


apply typ_peq_sym.
1 subgoals, subgoal 1 (ID 66984)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ B [ ← N] ≡' B [ ← N']

(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using ,)

apply reds_to_conv with t.
1 subgoals, subgoal 1 (ID 66985)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ B [ ← N] ▹▹ B [ ← N'] : !t

(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using ,)

change !t with (!t[← N]).
1 subgoals, subgoal 1 (ID 66987)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ B [ ← N] ▹▹ B [ ← N'] : !t [ ← N]

(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using ,)


eapply reds_subst_gen.
2 subgoals, subgoal 1 (ID 66989)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   ?66988 :: Γ ⊢ B ▹▹ B : !t

subgoal 2 (ID 66990) is:
 Γ ⊢ N ▹▹ N' : ?66988
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using , ?66988 open,)

apply reds_refl_lt in H2; constructor; apply H2.
1 subgoals, subgoal 1 (ID 66990)
  
  Γ : Env
  M : Term
  M' : Term
  A : Term
  B : Term
  H : Γ ⊢ M ▹▹ M' : Π (A), B
  A' : Term
  B' : Term
  s : Sorts
  t : Sorts
  N : Term
  N' : Term
  H0 : Γ ⊢ N ▹▹ N' : A
  H1 : Γ ⊢ A ▹▹ A' : !s
  H2 : A :: Γ ⊢ B ▹▹ B' : !t
  ============================
   Γ ⊢ N ▹▹ N' : A

(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using , ?66988 using ?66992 , ?66992 using ,)

trivial.
No more subgoals.
(dependent evars: ?65828 using ?65834 ?65833 ?65832 ?65831 , ?65831 using , ?65832 using , ?65833 using , ?65834 using , ?65839 using ?65845 ?65844 ?65843 ?65842 , ?65842 using , ?65843 using , ?65844 using , ?65845 using , ?65846 using ?65853 , ?65847 using , ?65848 using ?65856 , ?65853 using , ?65856 using , ?65858 using ?65867 , ?65859 using , ?65860 using ?65964 , ?65867 using , ?65937 using ?65946 , ?65938 using , ?65942 using , ?65946 using , ?65952 using ?65956 , ?65953 using ?65958 , ?65956 using , ?65958 using ?65961 , ?65961 using , ?65964 using , ?65989 using , ?66060 using , ?66913 using , ?66988 using ?66992 , ?66992 using ,)


Qed.
reds_App is defined



Subject Reduction: PTS{atr} can lift an untyped reduction from Betap to PTS{atr}. However, we prove here that a one-step Betap reduction can be lifted to a multi-step PTS{atr} judgment. This is because of our new annotation, we need some room to check the validity of the typing.
Theorem SR : forall M N, Betap M N -> forall Γ A, Γ M M : A ->
  Γ M ▹▹ N : A .
1 subgoals, subgoal 1 (ID 67016)
  
  ============================
   forall M N : Term,
   M →' N -> forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A

(dependent evars:)


induction 1; simpl in *; intros.
6 subgoals, subgoal 1 (ID 67148)
  
  s : Sorts
  Γ : Env
  A : Term
  H : Γ ⊢ !s ▹ !s : A
  ============================
   Γ ⊢ !s ▹▹ !s : A

subgoal 2 (ID 67151) is:
 Γ ⊢ #v ▹▹ #v : A
subgoal 3 (ID 67154) is:
 Γ ⊢ λ [A], M ▹▹ λ [A'], M' : A0
subgoal 4 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 5 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)


constructor; apply red_refl_lt in H; trivial.
5 subgoals, subgoal 1 (ID 67151)
  
  v : Vars
  Γ : Env
  A : Term
  H : Γ ⊢ #v ▹ #v : A
  ============================
   Γ ⊢ #v ▹▹ #v : A

subgoal 2 (ID 67154) is:
 Γ ⊢ λ [A], M ▹▹ λ [A'], M' : A0
subgoal 3 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 4 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)


constructor; apply red_refl_lt in H; trivial.
4 subgoals, subgoal 1 (ID 67154)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  H1 : Γ ⊢ λ [A], M ▹ λ [A], M : A0
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : A0

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)


apply pgen_la in H1 as (A'' & M'' & D & t1 & t2 & t3 & h).
4 subgoals, subgoal 1 (ID 67197)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ A ▹ A'' : !t1) /\
      (A :: Γ ⊢ M ▹ M'' : D) /\
      (A :: Γ ⊢ D ▹ D : !t2) /\ λ [A], M = λ [A''], M'' /\ Γ ⊢ Π (A), D ≡' A0
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : A0

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)


decompose [and] h; clear h.
4 subgoals, subgoal 1 (ID 67223)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A'' : !t1
  H2 : A :: Γ ⊢ M ▹ M'' : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : A0

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)

apply reds_typ_pcompat with (Pi A D); trivial.
4 subgoals, subgoal 1 (ID 67224)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A'' : !t1
  H2 : A :: Γ ⊢ M ▹ M'' : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), D

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)


apply red_refl_lt in H3.
4 subgoals, subgoal 1 (ID 67227)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ M ▹ M'' : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), D

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)

apply red_refl_lt in H2.
4 subgoals, subgoal 1 (ID 67229)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ M ▹ M : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   Γ ⊢ λ [A], M ▹▹ λ [A'], M' : Π (A), D

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars:)


eapply reds_La.
7 subgoals, subgoal 1 (ID 67233)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ M ▹ M : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   Γ ⊢ A ▹▹ A' : !?67230

subgoal 2 (ID 67234) is:
 A :: Γ ⊢ M ▹▹ M' : D
subgoal 3 (ID 67235) is:
 A :: Γ ⊢ D ▹ D : !?67231
subgoal 4 (ID 67236) is:
 Rel ?67230 ?67231 ?67232
subgoal 5 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 6 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 open, ?67231 open, ?67232 open,)

eapply IHBetap1; eauto.
6 subgoals, subgoal 1 (ID 67234)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ M ▹ M : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   A :: Γ ⊢ M ▹▹ M' : D

subgoal 2 (ID 67235) is:
 A :: Γ ⊢ D ▹ D : !?67231
subgoal 3 (ID 67236) is:
 Rel t1 ?67231 ?67232
subgoal 4 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 5 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 open, ?67232 open,)

eapply IHBetap2; eauto.
5 subgoals, subgoal 1 (ID 67235)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ M ▹ M : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   A :: Γ ⊢ D ▹ D : !?67231

subgoal 2 (ID 67236) is:
 Rel t1 ?67231 ?67232
subgoal 3 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 4 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 open, ?67232 open,)


apply H4.
4 subgoals, subgoal 1 (ID 67236)
  
  A : Term
  A' : Term
  M : Term
  M' : Term
  H : A →' A'
  H0 : M →' M'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  Γ : Env
  A0 : Term
  A'' : Term
  M'' : Term
  D : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ M ▹ M : D
  H4 : A :: Γ ⊢ D ▹ D : !t2
  H5 : λ [A], M = λ [A''], M''
  H7 : Γ ⊢ Π (A), D ≡' A0
  ============================
   Rel t1 t2 ?67232

subgoal 2 (ID 67157) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 open,)

apply H1.
3 subgoals, subgoal 1 (ID 67157)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  H1 : Γ ⊢ Π (A), B ▹ Π (A), B : A0
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)


apply pgen_pi in H1.
3 subgoals, subgoal 1 (ID 67256)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  H1 : exists (A' B' : Term) (s1 s2 s3 : Sorts),
         Rel s1 s2 s3 /\
         (Γ ⊢ A ▹ A' : !s1) /\
         (A :: Γ ⊢ B ▹ B' : !s2) /\
         Π (A), B = Π (A'), B' /\ (A0 = !s3 \/ Γ ⊢ A0 ≡' !s3)
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)

destruct H1 as (A'' & B'' & t1 & t2 & t3 & h).
3 subgoals, subgoal 1 (ID 67276)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ A ▹ A'' : !t1) /\
      (A :: Γ ⊢ B ▹ B'' : !t2) /\
      Π (A), B = Π (A''), B'' /\ (A0 = !t3 \/ Γ ⊢ A0 ≡' !t3)
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)


decompose [and] h; clear h.
3 subgoals, subgoal 1 (ID 67298)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A'' : !t1
  H2 : A :: Γ ⊢ B ▹ B'' : !t2
  H4 : Π (A), B = Π (A''), B''
  H6 : A0 = !t3 \/ Γ ⊢ A0 ≡' !t3
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)


apply red_refl_lt in H3.
3 subgoals, subgoal 1 (ID 67300)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B'' : !t2
  H4 : Π (A), B = Π (A''), B''
  H6 : A0 = !t3 \/ Γ ⊢ A0 ≡' !t3
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)

apply red_refl_lt in H2.
3 subgoals, subgoal 1 (ID 67302)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H6 : A0 = !t3 \/ Γ ⊢ A0 ≡' !t3
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)


 destruct H6.
4 subgoals, subgoal 1 (ID 67307)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H5 : A0 = !t3
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67308) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)

subst.
4 subgoals, subgoal 1 (ID 67311)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !t3

subgoal 2 (ID 67308) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using ,)

eapply reds_Pi.
6 subgoals, subgoal 1 (ID 67314)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  ============================
   Γ ⊢ A ▹▹ A' : !?67312

subgoal 2 (ID 67315) is:
 A :: Γ ⊢ B ▹▹ B' : !?67313
subgoal 3 (ID 67316) is:
 Rel ?67312 ?67313 t3
subgoal 4 (ID 67308) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 5 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 open, ?67313 open,)

eapply IHBetap1; eauto.
5 subgoals, subgoal 1 (ID 67315)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  ============================
   A :: Γ ⊢ B ▹▹ B' : !?67313

subgoal 2 (ID 67316) is:
 Rel t1 ?67313 t3
subgoal 3 (ID 67308) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 4 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 open,)


eapply IHBetap2; eauto.
4 subgoals, subgoal 1 (ID 67316)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  ============================
   Rel t1 t2 t3

subgoal 2 (ID 67308) is:
 Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using ,)

trivial.
3 subgoals, subgoal 1 (ID 67308)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H5 : Γ ⊢ A0 ≡' !t3
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : A0

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using ,)

apply reds_typ_pcompat with !t3; intuition.
3 subgoals, subgoal 1 (ID 67335)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H5 : Γ ⊢ A0 ≡' !t3
  ============================
   Γ ⊢ Π (A), B ▹▹ Π (A'), B' : !t3

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using ,)


eapply reds_Pi.
5 subgoals, subgoal 1 (ID 67384)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H5 : Γ ⊢ A0 ≡' !t3
  ============================
   Γ ⊢ A ▹▹ A' : !?67382

subgoal 2 (ID 67385) is:
 A :: Γ ⊢ B ▹▹ B' : !?67383
subgoal 3 (ID 67386) is:
 Rel ?67382 ?67383 t3
subgoal 4 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 open, ?67383 open,)

eapply IHBetap1; eauto.
4 subgoals, subgoal 1 (ID 67385)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H5 : Γ ⊢ A0 ≡' !t3
  ============================
   A :: Γ ⊢ B ▹▹ B' : !?67383

subgoal 2 (ID 67386) is:
 Rel t1 ?67383 t3
subgoal 3 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 open,)

eapply IHBetap2; eauto.
3 subgoals, subgoal 1 (ID 67386)
  
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : A →' A'
  H0 : B →' B'
  IHBetap1 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  A'' : Term
  B'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ A ▹ A : !t1
  H2 : A :: Γ ⊢ B ▹ B : !t2
  H4 : Π (A), B = Π (A''), B''
  H5 : Γ ⊢ A0 ≡' !t3
  ============================
   Rel t1 t2 t3

subgoal 2 (ID 67160) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

trivial.
2 subgoals, subgoal 1 (ID 67160)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  H3 : Γ ⊢ M ·( A, B)N ▹ M ·( A, B)N : A0
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)


apply pgen_app in H3 as (C & C' & D' & N'' & t1 & t2 & t3 & h).
2 subgoals, subgoal 1 (ID 67434)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ C ▹ C' : !t1) /\
      (C :: Γ ⊢ B ▹ D' : !t2) /\
      (Γ ⊢ N ▹ N'' : C) /\
      (Γ ⊢ B [ ← N] ≡' A0) /\
      ((exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ M ·( A, B)N = W' ·( C', D')N'') \/
       (exists K0 K K' T T' : Term,
          A = K /\
          M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          M ·( A, B)N = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1))
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 67460)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  H9 : (exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ M ·( A, B)N = W' ·( C', D')N'') \/
       (exists K0 K K' T T' : Term,
          A = K /\
          M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          M ·( A, B)N = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : A0

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)


apply reds_typ_pcompat with (B [ N]); trivial.
2 subgoals, subgoal 1 (ID 67461)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  H9 : (exists W' : Term,
          (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ M ·( A, B)N = W' ·( C', D')N'') \/
       (exists K0 K K' T T' : Term,
          A = K /\
          M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : B) /\
          M ·( A, B)N = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1)
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

destruct H9.
3 subgoals, subgoal 1 (ID 67467)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  H8 : exists W' : Term,
         (Γ ⊢ M ▹ W' : Π (C), B) /\ A = C /\ M ·( A, B)N = W' ·( C', D')N''
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

destruct H8 as (M'' & ? & ? & _ ).
3 subgoals, subgoal 1 (ID 67481)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M'' : Π (C), B
  H9 : A = C
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

subst.
3 subgoals, subgoal 1 (ID 67487)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M'' : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ M ·( C, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)


apply red_refl_lt in H8.
3 subgoals, subgoal 1 (ID 67489)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ M ·( C, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

apply red_refl_lt in H6.
3 subgoals, subgoal 1 (ID 67491)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ M ·( C, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

apply red_refl_lt in H5.
3 subgoals, subgoal 1 (ID 67493)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ M ·( C, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)


apply red_refl_lt in H4.
3 subgoals, subgoal 1 (ID 67495)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C : !t1
  H4 : C :: Γ ⊢ B ▹ B : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ M ·( C, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using ,)

eapply reds_App.
6 subgoals, subgoal 1 (ID 67498)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C : !t1
  H4 : C :: Γ ⊢ B ▹ B : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ M ▹▹ M' : Π (C), B

subgoal 2 (ID 67499) is:
 Γ ⊢ N ▹▹ N' : C
subgoal 3 (ID 67500) is:
 Γ ⊢ C ▹▹ A' : !?67496
subgoal 4 (ID 67501) is:
 C :: Γ ⊢ B ▹▹ B' : !?67497
subgoal 5 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 open, ?67497 open,)


 eapply IHBetap1; eauto.
5 subgoals, subgoal 1 (ID 67499)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C : !t1
  H4 : C :: Γ ⊢ B ▹ B : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ N ▹▹ N' : C

subgoal 2 (ID 67500) is:
 Γ ⊢ C ▹▹ A' : !?67496
subgoal 3 (ID 67501) is:
 C :: Γ ⊢ B ▹▹ B' : !?67497
subgoal 4 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 open, ?67497 open,)

eapply IHBetap2; eauto.
4 subgoals, subgoal 1 (ID 67500)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C : !t1
  H4 : C :: Γ ⊢ B ▹ B : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   Γ ⊢ C ▹▹ A' : !?67496

subgoal 2 (ID 67501) is:
 C :: Γ ⊢ B ▹▹ B' : !?67497
subgoal 3 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 open, ?67497 open,)

eapply IHBetap3; eauto.
3 subgoals, subgoal 1 (ID 67501)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C : !t1
  H4 : C :: Γ ⊢ B ▹ B : !t2
  H6 : Γ ⊢ N ▹ N : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  M'' : Term
  H8 : Γ ⊢ M ▹ M : Π (C), B
  H1 : C →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ C ▹ C : A -> Γ ⊢ C ▹▹ A' : A
  ============================
   C :: Γ ⊢ B ▹▹ B' : !?67497

subgoal 2 (ID 67468) is:
 Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 open,)

eapply IHBetap4; eauto.
2 subgoals, subgoal 1 (ID 67468)
  
  M : Term
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H : M →' M'
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  H8 : exists K0 K K' T T' : Term,
         A = K /\
         M = λ [C], T /\
         (C :: Γ ⊢ T ▹ T' : B) /\
         M ·( A, B)N = T' [ ← N''] /\
         (Γ ⊢ K0 ▹▹ K : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K ▹ K' : !t1
  ============================
   Γ ⊢ M ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using ,)



destruct H8 as (U0 & K & K' & T & T' & ? & -> & ? & _ & ? & ? & ?).
2 subgoals, subgoal 1 (ID 67588)
  
  M' : Term
  N : Term
  N' : Term
  A : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H1 : A →' A'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap3 : forall (Γ : Env) (A0 : Term), Γ ⊢ A ▹ A : A0 -> Γ ⊢ A ▹▹ A' : A0
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H8 : A = K
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  ============================
   Γ ⊢ (λ [C], T) ·( A, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using ,)

subst.
2 subgoals, subgoal 1 (ID 67594)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ (λ [C], T) ·( K, B)N ▹▹ M' ·( A', B')N' : B [ ← N]

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using ,)


eapply reds_App.
5 subgoals, subgoal 1 (ID 67597)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ λ [C], T ▹▹ M' : Π (K), B

subgoal 2 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 3 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 4 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open,)

eapply IHBetap1.
5 subgoals, subgoal 1 (ID 67601)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ λ [C], T ▹ λ [C], T : Π (K), B

subgoal 2 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 3 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 4 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open,)

apply typ_pcompat with (Π(U0),B).
6 subgoals, subgoal 1 (ID 67602)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ λ [C], T ▹ λ [C], T : Π (U0), B

subgoal 2 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open,)

apply typ_pcompat with (Π(C),B).
7 subgoals, subgoal 1 (ID 67604)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ λ [C], T ▹ λ [C], T : Π (C), B

subgoal 2 (ID 67605) is:
 Γ ⊢ Π (C), B ≡' Π (U0), B
subgoal 3 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open,)


econstructor.
10 subgoals, subgoal 1 (ID 67613)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Rel ?67610 ?67611 ?67612

subgoal 2 (ID 67614) is:
 Γ ⊢ C ▹ C : !?67610
subgoal 3 (ID 67615) is:
 C :: Γ ⊢ B ▹ B : !?67611
subgoal 4 (ID 67616) is:
 C :: Γ ⊢ T ▹ T : B
subgoal 5 (ID 67605) is:
 Γ ⊢ Π (C), B ≡' Π (U0), B
subgoal 6 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 7 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 8 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 9 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 10 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 open, ?67611 open, ?67612 open,)

apply H3.
9 subgoals, subgoal 1 (ID 67614)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ C ▹ C : !t1

subgoal 2 (ID 67615) is:
 C :: Γ ⊢ B ▹ B : !t2
subgoal 3 (ID 67616) is:
 C :: Γ ⊢ T ▹ T : B
subgoal 4 (ID 67605) is:
 Γ ⊢ Π (C), B ≡' Π (U0), B
subgoal 5 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 6 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 7 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 8 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 9 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using ,)

apply red_refl_lt in H5; apply H5.
8 subgoals, subgoal 1 (ID 67615)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   C :: Γ ⊢ B ▹ B : !t2

subgoal 2 (ID 67616) is:
 C :: Γ ⊢ T ▹ T : B
subgoal 3 (ID 67605) is:
 Γ ⊢ Π (C), B ≡' Π (U0), B
subgoal 4 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 5 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 6 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 7 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 8 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using ,)


apply red_refl_lt in H4; apply H4.
7 subgoals, subgoal 1 (ID 67616)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   C :: Γ ⊢ T ▹ T : B

subgoal 2 (ID 67605) is:
 Γ ⊢ Π (C), B ≡' Π (U0), B
subgoal 3 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using ,)


apply red_refl_lt in H9; apply H9.
6 subgoals, subgoal 1 (ID 67605)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ Π (C), B ≡' Π (U0), B

subgoal 2 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using ,)


apply typ_peq_sym.
6 subgoals, subgoal 1 (ID 67623)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ Π (U0), B ≡' Π (C), B

subgoal 2 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using ,)

apply reds_to_conv with t3.
6 subgoals, subgoal 1 (ID 67624)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ Π (U0), B ▹▹ Π (C), B : !t3

subgoal 2 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using ,)


eapply reds_Pi.
8 subgoals, subgoal 1 (ID 67627)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ U0 ▹▹ C : !?67625

subgoal 2 (ID 67628) is:
 U0 :: Γ ⊢ B ▹▹ B : !?67626
subgoal 3 (ID 67629) is:
 Rel ?67625 ?67626 t3
subgoal 4 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 5 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 6 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 7 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 8 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 open, ?67626 open,)

apply H11.
7 subgoals, subgoal 1 (ID 67628)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   U0 :: Γ ⊢ B ▹▹ B : !?67626

subgoal 2 (ID 67629) is:
 Rel t1 ?67626 t3
subgoal 3 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 open,)

constructor.
7 subgoals, subgoal 1 (ID 67631)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   U0 :: Γ ⊢ B ▹ B : !?67626

subgoal 2 (ID 67629) is:
 Rel t1 ?67626 t3
subgoal 3 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 open,)

apply red_refl_lt with D'.
7 subgoals, subgoal 1 (ID 67632)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   U0 :: Γ ⊢ B ▹ D' : !?67626

subgoal 2 (ID 67629) is:
 Rel t1 ?67626 t3
subgoal 3 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 open,)

eapply conv_in_env.
8 subgoals, subgoal 1 (ID 67634)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   ?67633 ⊢ B ▹ D' : !?67626

subgoal 2 (ID 67635) is:
 env_conv ?67633 (U0 :: Γ)
subgoal 3 (ID 67629) is:
 Rel t1 ?67626 t3
subgoal 4 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 5 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 6 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 7 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 8 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 open, ?67633 open,)

apply H4.
7 subgoals, subgoal 1 (ID 67635)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   env_conv (C :: Γ) (U0 :: Γ)

subgoal 2 (ID 67629) is:
 Rel t1 t2 t3
subgoal 3 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using ,)

eauto.
6 subgoals, subgoal 1 (ID 67629)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Rel t1 t2 t3

subgoal 2 (ID 67603) is:
 Γ ⊢ Π (U0), B ≡' Π (K), B
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using ,)

trivial.
5 subgoals, subgoal 1 (ID 67603)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ Π (U0), B ≡' Π (K), B

subgoal 2 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 3 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 4 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using ,)


apply reds_to_conv with t3.
5 subgoals, subgoal 1 (ID 68020)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ Π (U0), B ▹▹ Π (K), B : !t3

subgoal 2 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 3 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 4 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using ,)

eapply reds_Pi.
7 subgoals, subgoal 1 (ID 68023)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ U0 ▹▹ K : !?68021

subgoal 2 (ID 68024) is:
 U0 :: Γ ⊢ B ▹▹ B : !?68022
subgoal 3 (ID 68025) is:
 Rel ?68021 ?68022 t3
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 open, ?68022 open,)

apply H10.
6 subgoals, subgoal 1 (ID 68024)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   U0 :: Γ ⊢ B ▹▹ B : !?68022

subgoal 2 (ID 68025) is:
 Rel t1 ?68022 t3
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 open,)

constructor.
6 subgoals, subgoal 1 (ID 68027)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   U0 :: Γ ⊢ B ▹ B : !?68022

subgoal 2 (ID 68025) is:
 Rel t1 ?68022 t3
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 open,)

apply red_refl_lt with D'.
6 subgoals, subgoal 1 (ID 68028)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   U0 :: Γ ⊢ B ▹ D' : !?68022

subgoal 2 (ID 68025) is:
 Rel t1 ?68022 t3
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 open,)

eapply conv_in_env.
7 subgoals, subgoal 1 (ID 68030)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   ?68029 ⊢ B ▹ D' : !?68022

subgoal 2 (ID 68031) is:
 env_conv ?68029 (U0 :: Γ)
subgoal 3 (ID 68025) is:
 Rel t1 ?68022 t3
subgoal 4 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 5 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 6 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 7 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 open, ?68029 open,)


apply H4.
6 subgoals, subgoal 1 (ID 68031)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   env_conv (C :: Γ) (U0 :: Γ)

subgoal 2 (ID 68025) is:
 Rel t1 t2 t3
subgoal 3 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 4 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 5 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 6 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using ,)

eauto.
5 subgoals, subgoal 1 (ID 68025)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Rel t1 t2 t3

subgoal 2 (ID 67598) is:
 Γ ⊢ N ▹▹ N' : K
subgoal 3 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 4 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)

trivial.
4 subgoals, subgoal 1 (ID 67598)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ N ▹▹ N' : K

subgoal 2 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 3 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)

eapply IHBetap2.
4 subgoals, subgoal 1 (ID 68416)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ N ▹ N : K

subgoal 2 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 3 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)

apply typ_pcompat with C.
5 subgoals, subgoal 1 (ID 68417)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ N ▹ N : C

subgoal 2 (ID 68418) is:
 Γ ⊢ C ≡' K
subgoal 3 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 4 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 5 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)


apply red_refl_lt in H6; apply H6.
4 subgoals, subgoal 1 (ID 68418)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ C ≡' K

subgoal 2 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 3 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)


apply reds_to_conv in H11.
4 subgoals, subgoal 1 (ID 68422)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ≡' C
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ C ≡' K

subgoal 2 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 3 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)

apply reds_to_conv in H10.
4 subgoals, subgoal 1 (ID 68424)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ≡' K
  H11 : Γ ⊢ U0 ≡' C
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ C ≡' K

subgoal 2 (ID 67599) is:
 Γ ⊢ K ▹▹ A' : !?67595
subgoal 3 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 4 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using ,)

eauto.
3 subgoals, subgoal 1 (ID 67599)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ K ▹▹ A' : !?67595

subgoal 2 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 open, ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using ,)


apply red_refl_lt in H12.
3 subgoals, subgoal 1 (ID 68621)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   Γ ⊢ K ▹▹ A' : !?68620

subgoal 2 (ID 67600) is:
 K :: Γ ⊢ B ▹▹ B' : !?67596
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 open,)

eapply IHBetap3; eauto.
2 subgoals, subgoal 1 (ID 67600)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   K :: Γ ⊢ B ▹▹ B' : !?67596

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using ,)


eapply IHBetap4.
2 subgoals, subgoal 1 (ID 68631)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   K :: Γ ⊢ B ▹ B : !?67596

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using ,)

eapply conv_in_env.
3 subgoals, subgoal 1 (ID 68633)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   ?68632 ⊢ B ▹ B : !?67596

subgoal 2 (ID 68634) is:
 env_conv ?68632 (K :: Γ)
subgoal 3 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 open, ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 open,)

apply red_refl_lt in H4; apply H4.
2 subgoals, subgoal 1 (ID 68634)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   env_conv (C :: Γ) (K :: Γ)

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using ,)


apply reds_to_conv in H11.
2 subgoals, subgoal 1 (ID 68640)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ▹▹ K : !t1
  H11 : Γ ⊢ U0 ≡' C
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   env_conv (C :: Γ) (K :: Γ)

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using ,)

apply reds_to_conv in H10.
2 subgoals, subgoal 1 (ID 68642)
  
  M' : Term
  N : Term
  N' : Term
  A' : Term
  B : Term
  B' : Term
  H0 : N →' N'
  H2 : B →' B'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  IHBetap4 : forall (Γ : Env) (A : Term), Γ ⊢ B ▹ B : A -> Γ ⊢ B ▹▹ B' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H3 : Rel t1 t2 t3
  H5 : Γ ⊢ C ▹ C' : !t1
  H4 : C :: Γ ⊢ B ▹ D' : !t2
  H6 : Γ ⊢ N ▹ N'' : C
  H7 : Γ ⊢ B [ ← N] ≡' A0
  U0 : Term
  K : Term
  K' : Term
  T : Term
  T' : Term
  H : λ [C], T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term),
             Γ ⊢ λ [C], T ▹ λ [C], T : A -> Γ ⊢ λ [C], T ▹▹ M' : A
  H9 : C :: Γ ⊢ T ▹ T' : B
  H10 : Γ ⊢ U0 ≡' K
  H11 : Γ ⊢ U0 ≡' C
  H12 : Γ ⊢ K ▹ K' : !t1
  H1 : K →' A'
  IHBetap3 : forall (Γ : Env) (A : Term), Γ ⊢ K ▹ K : A -> Γ ⊢ K ▹▹ A' : A
  ============================
   env_conv (C :: Γ) (K :: Γ)

subgoal 2 (ID 67163) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using ,)

eauto.
1 subgoals, subgoal 1 (ID 67163)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  H1 : Γ ⊢ (λ [A], M) ·( K, L)N ▹ (λ [A], M) ·( K, L)N : A0
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


apply pgen_app in H1 as (C & C' & D' & N'' & t1 & t2 & t3 & h).
1 subgoals, subgoal 1 (ID 69695)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  h : Rel t1 t2 t3 /\
      (Γ ⊢ C ▹ C' : !t1) /\
      (C :: Γ ⊢ L ▹ D' : !t2) /\
      (Γ ⊢ N ▹ N'' : C) /\
      (Γ ⊢ L [ ← N] ≡' A0) /\
      ((exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (C), L) /\
          K = C /\ (λ [A], M) ·( K, L)N = W' ·( C', D')N'') \/
       (exists K0 K1 K' T T' : Term,
          K = K1 /\
          λ [A], M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : L) /\
          (λ [A], M) ·( K, L)N = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K1 : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K1 ▹ K' : !t1))
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


decompose [and] h; clear h.
1 subgoals, subgoal 1 (ID 69721)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  H7 : (exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (C), L) /\
          K = C /\ (λ [A], M) ·( K, L)N = W' ·( C', D')N'') \/
       (exists K0 K1 K' T T' : Term,
          K = K1 /\
          λ [A], M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : L) /\
          (λ [A], M) ·( K, L)N = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K1 : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K1 ▹ K' : !t1)
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : A0

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)

apply reds_typ_pcompat with (L [ N]); trivial.
1 subgoals, subgoal 1 (ID 69722)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  H7 : (exists W' : Term,
          (Γ ⊢ λ [A], M ▹ W' : Π (C), L) /\
          K = C /\ (λ [A], M) ·( K, L)N = W' ·( C', D')N'') \/
       (exists K0 K1 K' T T' : Term,
          K = K1 /\
          λ [A], M = λ [C], T /\
          (C :: Γ ⊢ T ▹ T' : L) /\
          (λ [A], M) ·( K, L)N = T' [ ← N''] /\
          (Γ ⊢ K0 ▹▹ K1 : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K1 ▹ K' : !t1)
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


destruct H7.
2 subgoals, subgoal 1 (ID 69728)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  H6 : exists W' : Term,
         (Γ ⊢ λ [A], M ▹ W' : Π (C), L) /\
         K = C /\ (λ [A], M) ·( K, L)N = W' ·( C', D')N''
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)

destruct H6 as (LA & ? & ? & _).
2 subgoals, subgoal 1 (ID 69742)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  LA : Term
  H6 : Γ ⊢ λ [A], M ▹ LA : Π (C), L
  H7 : K = C
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)

subst.
2 subgoals, subgoal 1 (ID 69745)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  LA : Term
  H6 : Γ ⊢ λ [A], M ▹ LA : Π (C), L
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


apply pgen_la in H6 as (A'' & m'' & F & u1 & u2 & u3 & h).
2 subgoals, subgoal 1 (ID 69771)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  LA : Term
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  h : Rel u1 u2 u3 /\
      (Γ ⊢ A ▹ A'' : !u1) /\
      (A :: Γ ⊢ M ▹ m'' : F) /\
      (A :: Γ ⊢ F ▹ F : !u2) /\ LA = λ [A''], m'' /\ Γ ⊢ Π (A), F ≡' Π (C), L
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


decompose [and] h; clear h.
2 subgoals, subgoal 1 (ID 69797)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  LA : Term
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : LA = λ [A''], m''
  H12 : Γ ⊢ Π (A), F ≡' Π (C), L
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


clear H10 LA.
2 subgoals, subgoal 1 (ID 69798)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H12 : Γ ⊢ Π (A), F ≡' Π (C), L
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)

apply PiInj in H12 as (? & ?).
2 subgoals, subgoal 1 (ID 69804)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)

destruct (Confluence Γ A C H10) as ( Z & a & c & ? & ?).
2 subgoals, subgoal 1 (ID 69823)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


destruct (Confluence (A::Γ) F L H11) as (Y & f & d & ? & ?).
2 subgoals, subgoal 1 (ID 69843)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)


apply typ_reds_trans with ((λ[A],M)·(Z,L)N).
3 subgoals, subgoal 1 (ID 69844)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( C, L)N ▹▹ (λ [A], M) ·( Z, L)N : L [ ← N]

subgoal 2 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using ,)

eapply reds_App___.
5 subgoals, subgoal 1 (ID 69849)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ λ [A], M ▹ ?69846 : Π (C), L

subgoal 2 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 3 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 4 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 open, ?69847 open, ?69848 open,)


apply typ_pcompat with (Π(Z),Y).
6 subgoals, subgoal 1 (ID 69852)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ λ [A], M ▹ ?69846 : Π (Z), Y

subgoal 2 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 3 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 4 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 5 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 open, ?69847 open, ?69848 open,)

apply typ_pcompat with (Π(A),Y).
7 subgoals, subgoal 1 (ID 69854)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ λ [A], M ▹ ?69846 : Π (A), Y

subgoal 2 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 open, ?69847 open, ?69848 open,)

econstructor.
10 subgoals, subgoal 1 (ID 69865)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel ?69862 ?69863 ?69864

subgoal 2 (ID 69866) is:
 Γ ⊢ A ▹ ?69860 : !?69862
subgoal 3 (ID 69867) is:
 A :: Γ ⊢ Y ▹ Y : !?69863
subgoal 4 (ID 69868) is:
 A :: Γ ⊢ M ▹ ?69861 : Y
subgoal 5 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 6 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 7 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 8 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 9 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 10 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 open, ?69861 open, ?69862 open, ?69863 open, ?69864 open,)

apply H6.
9 subgoals, subgoal 1 (ID 69866)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ ?69860 : !u1

subgoal 2 (ID 69867) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 3 (ID 69868) is:
 A :: Γ ⊢ M ▹ ?69861 : Y
subgoal 4 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 5 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 6 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 7 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 8 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 open, ?69861 open, ?69862 using , ?69863 using , ?69864 using ,)

apply H8.
8 subgoals, subgoal 1 (ID 69867)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹ Y : !u2

subgoal 2 (ID 69868) is:
 A :: Γ ⊢ M ▹ ?69861 : Y
subgoal 3 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 open, ?69862 using , ?69863 using , ?69864 using ,)


eapply reds_refl_rt.
8 subgoals, subgoal 1 (ID 69870)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ ?69869 ▹▹ Y : !u2

subgoal 2 (ID 69868) is:
 A :: Γ ⊢ M ▹ ?69861 : Y
subgoal 3 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 open, ?69862 using , ?69863 using , ?69864 using , ?69869 open,)

eapply typ_reds_relocate.
9 subgoals, subgoal 1 (ID 69872)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ ?69869 ▹▹ Y : ?69871

subgoal 2 (ID 69873) is:
 A :: Γ ⊢ ?69869 ▹ ?69869 : !u2
subgoal 3 (ID 69868) is:
 A :: Γ ⊢ M ▹ ?69861 : Y
subgoal 4 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 5 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 6 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 7 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 8 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 open, ?69862 using , ?69863 using , ?69864 using , ?69869 open, ?69871 open,)

apply H14.
8 subgoals, subgoal 1 (ID 69873)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹ F : !u2

subgoal 2 (ID 69868) is:
 A :: Γ ⊢ M ▹ ?69861 : Y
subgoal 3 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 open, ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using ,)

apply H9.
7 subgoals, subgoal 1 (ID 69868)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ M ▹ ?69861 : Y

subgoal 2 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 open, ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using ,)

apply typ_pcompat with F.
8 subgoals, subgoal 1 (ID 69874)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ M ▹ ?69861 : F

subgoal 2 (ID 69875) is:
 A :: Γ ⊢ F ≡' Y
subgoal 3 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 open, ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using ,)

apply H7.
7 subgoals, subgoal 1 (ID 69875)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ≡' Y

subgoal 2 (ID 69855) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using ,)

eauto.
6 subgoals, subgoal 1 (ID 69855)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (A), Y ≡' Π (Z), Y

subgoal 2 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 3 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 4 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 5 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using ,)


apply reds_to_conv with u3.
6 subgoals, subgoal 1 (ID 69968)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (A), Y ▹▹ Π (Z), Y : !u3

subgoal 2 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 3 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 4 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 5 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using ,)

apply reds_Pi with u1 u2.
8 subgoals, subgoal 1 (ID 69969)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹▹ Z : !u1

subgoal 2 (ID 69970) is:
 A :: Γ ⊢ Y ▹▹ Y : !u2
subgoal 3 (ID 69971) is:
 Rel u1 u2 u3
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using ,)

eapply typ_reds_relocate.
9 subgoals, subgoal 1 (ID 69973)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹▹ Z : ?69972

subgoal 2 (ID 69974) is:
 Γ ⊢ A ▹ A : !u1
subgoal 3 (ID 69970) is:
 A :: Γ ⊢ Y ▹▹ Y : !u2
subgoal 4 (ID 69971) is:
 Rel u1 u2 u3
subgoal 5 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 6 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 7 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 8 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 open,)

apply H12.
8 subgoals, subgoal 1 (ID 69974)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ A : !u1

subgoal 2 (ID 69970) is:
 A :: Γ ⊢ Y ▹▹ Y : !u2
subgoal 3 (ID 69971) is:
 Rel u1 u2 u3
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using ,)

apply red_refl_lt in H8; apply H8.
7 subgoals, subgoal 1 (ID 69970)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹▹ Y : !u2

subgoal 2 (ID 69971) is:
 Rel u1 u2 u3
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using ,)


constructor.
7 subgoals, subgoal 1 (ID 69978)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹ Y : !u2

subgoal 2 (ID 69971) is:
 Rel u1 u2 u3
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using ,)

apply reds_refl_rt with F.
7 subgoals, subgoal 1 (ID 69979)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹▹ Y : !u2

subgoal 2 (ID 69971) is:
 Rel u1 u2 u3
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using ,)

eapply typ_reds_relocate.
8 subgoals, subgoal 1 (ID 69981)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹▹ Y : ?69980

subgoal 2 (ID 69982) is:
 A :: Γ ⊢ F ▹ F : !u2
subgoal 3 (ID 69971) is:
 Rel u1 u2 u3
subgoal 4 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 open,)

apply H14.
7 subgoals, subgoal 1 (ID 69982)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹ F : !u2

subgoal 2 (ID 69971) is:
 Rel u1 u2 u3
subgoal 3 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using ,)

apply H9.
6 subgoals, subgoal 1 (ID 69971)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel u1 u2 u3

subgoal 2 (ID 69853) is:
 Γ ⊢ Π (Z), Y ≡' Π (C), L
subgoal 3 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 4 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 5 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using ,)

trivial.
5 subgoals, subgoal 1 (ID 69853)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (Z), Y ≡' Π (C), L

subgoal 2 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 3 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 4 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using ,)

apply typ_peq_sym.
5 subgoals, subgoal 1 (ID 69983)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (C), L ≡' Π (Z), Y

subgoal 2 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 3 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 4 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using ,)


apply reds_to_conv with t3.
5 subgoals, subgoal 1 (ID 69984)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (C), L ▹▹ Π (Z), Y : !t3

subgoal 2 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 3 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 4 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using ,)

apply reds_Pi with t1 t2.
7 subgoals, subgoal 1 (ID 69985)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ▹▹ Z : !t1

subgoal 2 (ID 69986) is:
 C :: Γ ⊢ L ▹▹ Y : !t2
subgoal 3 (ID 69987) is:
 Rel t1 t2 t3
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using ,)

eapply typ_reds_relocate.
8 subgoals, subgoal 1 (ID 69989)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ▹▹ Z : ?69988

subgoal 2 (ID 69990) is:
 Γ ⊢ C ▹ C : !t1
subgoal 3 (ID 69986) is:
 C :: Γ ⊢ L ▹▹ Y : !t2
subgoal 4 (ID 69987) is:
 Rel t1 t2 t3
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 open,)

apply H13.
7 subgoals, subgoal 1 (ID 69990)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ▹ C : !t1

subgoal 2 (ID 69986) is:
 C :: Γ ⊢ L ▹▹ Y : !t2
subgoal 3 (ID 69987) is:
 Rel t1 t2 t3
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using ,)

apply red_refl_lt in H3; apply H3.
6 subgoals, subgoal 1 (ID 69986)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   C :: Γ ⊢ L ▹▹ Y : !t2

subgoal 2 (ID 69987) is:
 Rel t1 t2 t3
subgoal 3 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 4 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 5 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using ,)


eapply typ_reds_relocate.
7 subgoals, subgoal 1 (ID 69994)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   C :: Γ ⊢ L ▹▹ Y : ?69993

subgoal 2 (ID 69995) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 3 (ID 69987) is:
 Rel t1 t2 t3
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 open,)

eapply conv_in_env_reds.
8 subgoals, subgoal 1 (ID 69997)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?69996 ⊢ L ▹▹ Y : ?69993

subgoal 2 (ID 69998) is:
 env_conv ?69996 (C :: Γ)
subgoal 3 (ID 69995) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 4 (ID 69987) is:
 Rel t1 t2 t3
subgoal 5 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 6 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 7 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 open, ?69996 open,)

apply H15.
7 subgoals, subgoal 1 (ID 69998)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   env_conv (A :: Γ) (C :: Γ)

subgoal 2 (ID 69995) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 3 (ID 69987) is:
 Rel t1 t2 t3
subgoal 4 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 5 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 6 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)

eauto.
6 subgoals, subgoal 1 (ID 69995)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   C :: Γ ⊢ L ▹ L : !t2

subgoal 2 (ID 69987) is:
 Rel t1 t2 t3
subgoal 3 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 4 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 5 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)


apply red_refl_lt in H2; apply H2.
5 subgoals, subgoal 1 (ID 69987)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel t1 t2 t3

subgoal 2 (ID 69850) is:
 Γ ⊢ N ▹ ?69848 : C
subgoal 3 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 4 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)

trivial.
4 subgoals, subgoal 1 (ID 69850)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ ?69848 : C

subgoal 2 (ID 69851) is:
 Γ ⊢ C ▹▹ Z : !?69847
subgoal 3 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 open, ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)

apply H4.
3 subgoals, subgoal 1 (ID 69851)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ▹▹ Z : !?69847

subgoal 2 (ID 69845) is:
 Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 open, ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)

apply H13.
2 subgoals, subgoal 1 (ID 69845)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)


apply typ_reds_trans with ((λ[A],M)·(Z,Y)N).
3 subgoals, subgoal 1 (ID 70275)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( Z, L)N ▹▹ (λ [A], M) ·( Z, Y)N : L [ ← N]

subgoal 2 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using ,)

eapply reds_App__.
5 subgoals, subgoal 1 (ID 70280)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ λ [A], M ▹ ?70277 : Π (Z), L

subgoal 2 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 3 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 4 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 open, ?70278 open, ?70279 open,)


apply typ_pcompat with (Π(Z),Y).
6 subgoals, subgoal 1 (ID 70283)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ λ [A], M ▹ ?70277 : Π (Z), Y

subgoal 2 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 open, ?70278 open, ?70279 open,)

apply typ_pcompat with (Π(A),Y).
7 subgoals, subgoal 1 (ID 70285)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ λ [A], M ▹ ?70277 : Π (A), Y

subgoal 2 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 open, ?70278 open, ?70279 open,)

econstructor.
10 subgoals, subgoal 1 (ID 70296)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel ?70293 ?70294 ?70295

subgoal 2 (ID 70297) is:
 Γ ⊢ A ▹ ?70291 : !?70293
subgoal 3 (ID 70298) is:
 A :: Γ ⊢ Y ▹ Y : !?70294
subgoal 4 (ID 70299) is:
 A :: Γ ⊢ M ▹ ?70292 : Y
subgoal 5 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 6 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 7 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 8 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 9 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 10 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 open, ?70292 open, ?70293 open, ?70294 open, ?70295 open,)

apply H6.
9 subgoals, subgoal 1 (ID 70297)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ ?70291 : !u1

subgoal 2 (ID 70298) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 3 (ID 70299) is:
 A :: Γ ⊢ M ▹ ?70292 : Y
subgoal 4 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 5 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 6 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 7 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 8 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 open, ?70292 open, ?70293 using , ?70294 using , ?70295 using ,)

apply H8.
8 subgoals, subgoal 1 (ID 70298)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹ Y : !u2

subgoal 2 (ID 70299) is:
 A :: Γ ⊢ M ▹ ?70292 : Y
subgoal 3 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 open, ?70293 using , ?70294 using , ?70295 using ,)


eapply reds_refl_rt.
8 subgoals, subgoal 1 (ID 70301)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ ?70300 ▹▹ Y : !u2

subgoal 2 (ID 70299) is:
 A :: Γ ⊢ M ▹ ?70292 : Y
subgoal 3 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 open, ?70293 using , ?70294 using , ?70295 using , ?70300 open,)

eapply typ_reds_relocate.
9 subgoals, subgoal 1 (ID 70303)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ ?70300 ▹▹ Y : ?70302

subgoal 2 (ID 70304) is:
 A :: Γ ⊢ ?70300 ▹ ?70300 : !u2
subgoal 3 (ID 70299) is:
 A :: Γ ⊢ M ▹ ?70292 : Y
subgoal 4 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 5 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 6 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 7 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 8 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 open, ?70293 using , ?70294 using , ?70295 using , ?70300 open, ?70302 open,)

apply H14.
8 subgoals, subgoal 1 (ID 70304)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹ F : !u2

subgoal 2 (ID 70299) is:
 A :: Γ ⊢ M ▹ ?70292 : Y
subgoal 3 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 open, ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using ,)

apply H9.
7 subgoals, subgoal 1 (ID 70299)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ M ▹ ?70292 : Y

subgoal 2 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 open, ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using ,)

apply typ_pcompat with F.
8 subgoals, subgoal 1 (ID 70305)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ M ▹ ?70292 : F

subgoal 2 (ID 70306) is:
 A :: Γ ⊢ F ≡' Y
subgoal 3 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 open, ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using ,)

apply H7.
7 subgoals, subgoal 1 (ID 70306)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ≡' Y

subgoal 2 (ID 70286) is:
 Γ ⊢ Π (A), Y ≡' Π (Z), Y
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using ,)

eauto.
6 subgoals, subgoal 1 (ID 70286)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (A), Y ≡' Π (Z), Y

subgoal 2 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using ,)


apply reds_to_conv with u3.
6 subgoals, subgoal 1 (ID 70399)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (A), Y ▹▹ Π (Z), Y : !u3

subgoal 2 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using ,)

apply reds_Pi with u1 u2.
8 subgoals, subgoal 1 (ID 70400)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹▹ Z : !u1

subgoal 2 (ID 70401) is:
 A :: Γ ⊢ Y ▹▹ Y : !u2
subgoal 3 (ID 70402) is:
 Rel u1 u2 u3
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using ,)

eapply typ_reds_relocate.
9 subgoals, subgoal 1 (ID 70404)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹▹ Z : ?70403

subgoal 2 (ID 70405) is:
 Γ ⊢ A ▹ A : !u1
subgoal 3 (ID 70401) is:
 A :: Γ ⊢ Y ▹▹ Y : !u2
subgoal 4 (ID 70402) is:
 Rel u1 u2 u3
subgoal 5 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 6 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 7 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 8 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 open,)

apply H12.
8 subgoals, subgoal 1 (ID 70405)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ A : !u1

subgoal 2 (ID 70401) is:
 A :: Γ ⊢ Y ▹▹ Y : !u2
subgoal 3 (ID 70402) is:
 Rel u1 u2 u3
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using ,)

apply red_refl_lt in H8; apply H8.
7 subgoals, subgoal 1 (ID 70401)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹▹ Y : !u2

subgoal 2 (ID 70402) is:
 Rel u1 u2 u3
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using ,)


constructor.
7 subgoals, subgoal 1 (ID 70409)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹ Y : !u2

subgoal 2 (ID 70402) is:
 Rel u1 u2 u3
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using ,)

apply reds_refl_rt with F.
7 subgoals, subgoal 1 (ID 70410)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹▹ Y : !u2

subgoal 2 (ID 70402) is:
 Rel u1 u2 u3
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using ,)

eapply typ_reds_relocate.
8 subgoals, subgoal 1 (ID 70412)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹▹ Y : ?70411

subgoal 2 (ID 70413) is:
 A :: Γ ⊢ F ▹ F : !u2
subgoal 3 (ID 70402) is:
 Rel u1 u2 u3
subgoal 4 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 open,)

apply H14.
7 subgoals, subgoal 1 (ID 70413)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹ F : !u2

subgoal 2 (ID 70402) is:
 Rel u1 u2 u3
subgoal 3 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)

apply H9.
6 subgoals, subgoal 1 (ID 70402)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel u1 u2 u3

subgoal 2 (ID 70284) is:
 Γ ⊢ Π (Z), Y ≡' Π (Z), L
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)

trivial.
5 subgoals, subgoal 1 (ID 70284)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (Z), Y ≡' Π (Z), L

subgoal 2 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 3 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 4 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)

apply typ_peq_sym.
5 subgoals, subgoal 1 (ID 70414)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (Z), L ≡' Π (Z), Y

subgoal 2 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 3 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 4 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)


apply reds_to_conv with t3.
5 subgoals, subgoal 1 (ID 70415)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Π (Z), L ▹▹ Π (Z), Y : !t3

subgoal 2 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 3 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 4 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)

apply reds_Pi with t1 t2.
7 subgoals, subgoal 1 (ID 70416)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Z ▹▹ Z : !t1

subgoal 2 (ID 70417) is:
 Z :: Γ ⊢ L ▹▹ Y : !t2
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)

constructor.
7 subgoals, subgoal 1 (ID 70420)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Z ▹ Z : !t1

subgoal 2 (ID 70417) is:
 Z :: Γ ⊢ L ▹▹ Y : !t2
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using ,)

eapply reds_refl_rt.
7 subgoals, subgoal 1 (ID 70422)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ ?70421 ▹▹ Z : !t1

subgoal 2 (ID 70417) is:
 Z :: Γ ⊢ L ▹▹ Y : !t2
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 open,)

eapply typ_reds_relocate.
8 subgoals, subgoal 1 (ID 70424)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ ?70421 ▹▹ Z : ?70423

subgoal 2 (ID 70425) is:
 Γ ⊢ ?70421 ▹ ?70421 : !t1
subgoal 3 (ID 70417) is:
 Z :: Γ ⊢ L ▹▹ Y : !t2
subgoal 4 (ID 70418) is:
 Rel t1 t2 t3
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 open, ?70423 open,)

apply H13.
7 subgoals, subgoal 1 (ID 70425)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ▹ C : !t1

subgoal 2 (ID 70417) is:
 Z :: Γ ⊢ L ▹▹ Y : !t2
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using ,)


apply red_refl_lt in H3; apply H3.
6 subgoals, subgoal 1 (ID 70417)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Z :: Γ ⊢ L ▹▹ Y : !t2

subgoal 2 (ID 70418) is:
 Rel t1 t2 t3
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using ,)

eapply typ_reds_relocate.
7 subgoals, subgoal 1 (ID 70429)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Z :: Γ ⊢ L ▹▹ Y : ?70428

subgoal 2 (ID 70430) is:
 Z :: Γ ⊢ L ▹ L : !t2
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 open,)

eapply conv_in_env_reds.
8 subgoals, subgoal 1 (ID 70432)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?70431 ⊢ L ▹▹ Y : ?70428

subgoal 2 (ID 70433) is:
 env_conv ?70431 (Z :: Γ)
subgoal 3 (ID 70430) is:
 Z :: Γ ⊢ L ▹ L : !t2
subgoal 4 (ID 70418) is:
 Rel t1 t2 t3
subgoal 5 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 6 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 7 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 open, ?70431 open,)

apply H15.
7 subgoals, subgoal 1 (ID 70433)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   env_conv (A :: Γ) (Z :: Γ)

subgoal 2 (ID 70430) is:
 Z :: Γ ⊢ L ▹ L : !t2
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using ,)

eauto.
6 subgoals, subgoal 1 (ID 70430)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Z :: Γ ⊢ L ▹ L : !t2

subgoal 2 (ID 70418) is:
 Rel t1 t2 t3
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using ,)

eapply conv_in_env.
7 subgoals, subgoal 1 (ID 71356)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?71355 ⊢ L ▹ L : !t2

subgoal 2 (ID 71357) is:
 env_conv ?71355 (Z :: Γ)
subgoal 3 (ID 70418) is:
 Rel t1 t2 t3
subgoal 4 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 5 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 6 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 open,)


apply red_refl_lt in H2; apply H2.
6 subgoals, subgoal 1 (ID 71357)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   env_conv (C :: Γ) (Z :: Γ)

subgoal 2 (ID 70418) is:
 Rel t1 t2 t3
subgoal 3 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 4 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 5 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using ,)

eauto.
5 subgoals, subgoal 1 (ID 70418)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel t1 t2 t3

subgoal 2 (ID 70281) is:
 Γ ⊢ N ▹ ?70279 : Z
subgoal 3 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 4 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using ,)

trivial.
4 subgoals, subgoal 1 (ID 70281)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ ?70279 : Z

subgoal 2 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 3 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using ,)

apply typ_pcompat with C.
5 subgoals, subgoal 1 (ID 72282)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ ?70279 : C

subgoal 2 (ID 72283) is:
 Γ ⊢ C ≡' Z
subgoal 3 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 4 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 open, ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using ,)

apply H4.
4 subgoals, subgoal 1 (ID 72283)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ≡' Z

subgoal 2 (ID 70282) is:
 Z :: Γ ⊢ L ▹▹ Y : !?70278
subgoal 3 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using ,)

eauto.
3 subgoals, subgoal 1 (ID 70282)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Z :: Γ ⊢ L ▹▹ Y : !?70278

subgoal 2 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using ,)

eapply conv_in_env_reds.
4 subgoals, subgoal 1 (ID 72377)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?72376 ⊢ L ▹▹ Y : !?70278

subgoal 2 (ID 72378) is:
 env_conv ?72376 (Z :: Γ)
subgoal 3 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 open, ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 open,)

apply H15.
3 subgoals, subgoal 1 (ID 72378)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   env_conv (A :: Γ) (Z :: Γ)

subgoal 2 (ID 70276) is:
 Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using ,)

eauto.
2 subgoals, subgoal 1 (ID 70276)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M' [ ← N'] : L [ ← N]

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using ,)


eapply typ_reds_trans2 with (N:=M[← N]).
3 subgoals, subgoal 1 (ID 73301)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( Z, Y)N ▹▹ M [ ← N] : L [ ← N]

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open,)

constructor.
3 subgoals, subgoal 1 (ID 73304)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( Z, Y)N ▹ M [ ← N] : L [ ← N]

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open,)

apply typ_pcompat with (Y[← N]).
4 subgoals, subgoal 1 (ID 73305)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ (λ [A], M) ·( Z, Y)N ▹ M [ ← N] : Y [ ← N]

subgoal 2 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 3 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open,)

econstructor.
11 subgoals, subgoal 1 (ID 73317)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Rel ?73314 ?73315 ?73316

subgoal 2 (ID 73318) is:
 Γ ⊢ A ▹ A : !?73314
subgoal 3 (ID 73319) is:
 Γ ⊢ Z ▹ Z : !?73314
subgoal 4 (ID 73320) is:
 Γ ⊢ ?73313 ▹▹ A : !?73314
subgoal 5 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !?73314
subgoal 6 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !?73315
subgoal 7 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 8 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 9 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 10 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 11 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 open, ?73315 open, ?73316 open,)

apply H6.
10 subgoals, subgoal 1 (ID 73318)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ A : !u1

subgoal 2 (ID 73319) is:
 Γ ⊢ Z ▹ Z : !u1
subgoal 3 (ID 73320) is:
 Γ ⊢ ?73313 ▹▹ A : !u1
subgoal 4 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 5 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 6 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 7 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 8 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 9 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 10 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using ,)

apply red_refl_lt in H8; apply H8.
9 subgoals, subgoal 1 (ID 73319)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Z ▹ Z : !u1

subgoal 2 (ID 73320) is:
 Γ ⊢ ?73313 ▹▹ A : !u1
subgoal 3 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 4 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 5 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 6 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 7 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 8 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using ,)


eapply reds_refl_rt.
9 subgoals, subgoal 1 (ID 73328)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ ?73327 ▹▹ Z : !u1

subgoal 2 (ID 73320) is:
 Γ ⊢ ?73313 ▹▹ A : !u1
subgoal 3 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 4 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 5 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 6 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 7 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 8 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using , ?73327 open,)

eapply typ_reds_relocate.
10 subgoals, subgoal 1 (ID 73330)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ ?73327 ▹▹ Z : ?73329

subgoal 2 (ID 73331) is:
 Γ ⊢ ?73327 ▹ ?73327 : !u1
subgoal 3 (ID 73320) is:
 Γ ⊢ ?73313 ▹▹ A : !u1
subgoal 4 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 5 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 6 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 7 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 8 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 9 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 10 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using , ?73327 open, ?73329 open,)

apply H12.
9 subgoals, subgoal 1 (ID 73331)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ A : !u1

subgoal 2 (ID 73320) is:
 Γ ⊢ ?73313 ▹▹ A : !u1
subgoal 3 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 4 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 5 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 6 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 7 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 8 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 9 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using ,)


apply red_refl_lt in H8; apply H8.
8 subgoals, subgoal 1 (ID 73320)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ ?73313 ▹▹ A : !u1

subgoal 2 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 3 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 4 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 5 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 6 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 7 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using ,)

constructor.
8 subgoals, subgoal 1 (ID 73335)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ ?73313 ▹ A : !u1

subgoal 2 (ID 73321) is:
 Γ ⊢ ?73313 ▹▹ Z : !u1
subgoal 3 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 4 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 5 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 6 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 7 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 open, ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using ,)


 apply red_refl_lt in H8; apply H8.
7 subgoals, subgoal 1 (ID 73321)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹▹ Z : !u1

subgoal 2 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 3 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 4 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 5 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 6 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using ,)


eapply typ_reds_relocate.
8 subgoals, subgoal 1 (ID 73340)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹▹ Z : ?73339

subgoal 2 (ID 73341) is:
 Γ ⊢ A ▹ A : !u1
subgoal 3 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 4 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 5 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 6 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 7 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 8 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 open,)

apply H12.
7 subgoals, subgoal 1 (ID 73341)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ A ▹ A : !u1

subgoal 2 (ID 73322) is:
 A :: Γ ⊢ Y ▹ Y : !u2
subgoal 3 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 4 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 5 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 6 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using ,)

apply red_refl_lt in H8; apply H8.
6 subgoals, subgoal 1 (ID 73322)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ Y ▹ Y : !u2

subgoal 2 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 3 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 4 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 5 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using ,)


eapply reds_refl_rt.
6 subgoals, subgoal 1 (ID 73345)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ ?73344 ▹▹ Y : !u2

subgoal 2 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 3 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 4 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 5 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 open,)

eapply typ_reds_relocate.
7 subgoals, subgoal 1 (ID 73347)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ ?73344 ▹▹ Y : ?73346

subgoal 2 (ID 73348) is:
 A :: Γ ⊢ ?73344 ▹ ?73344 : !u2
subgoal 3 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 4 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 5 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 6 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 7 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 open, ?73346 open,)

apply H14.
6 subgoals, subgoal 1 (ID 73348)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ▹ F : !u2

subgoal 2 (ID 73323) is:
 A :: Γ ⊢ M ▹ M : Y
subgoal 3 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 4 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 5 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using ,)

apply H9.
5 subgoals, subgoal 1 (ID 73323)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ M ▹ M : Y

subgoal 2 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 3 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 4 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using ,)


apply typ_pcompat with F.
6 subgoals, subgoal 1 (ID 73349)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ M ▹ M : F

subgoal 2 (ID 73350) is:
 A :: Γ ⊢ F ≡' Y
subgoal 3 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 4 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 5 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 6 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using ,)

apply red_refl_lt with m''; trivial.
5 subgoals, subgoal 1 (ID 73350)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   A :: Γ ⊢ F ≡' Y

subgoal 2 (ID 73324) is:
 Γ ⊢ N ▹ N : A
subgoal 3 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 4 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using ,)

eauto.
4 subgoals, subgoal 1 (ID 73324)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N : A

subgoal 2 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 3 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

apply red_refl_lt with N''.
4 subgoals, subgoal 1 (ID 73444)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N'' : A

subgoal 2 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 3 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

apply typ_pcompat with C.
5 subgoals, subgoal 1 (ID 73445)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N'' : C

subgoal 2 (ID 73446) is:
 Γ ⊢ C ≡' A
subgoal 3 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 4 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 5 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

trivial.
4 subgoals, subgoal 1 (ID 73446)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ≡' A

subgoal 2 (ID 73306) is:
 Γ ⊢ Y [ ← N] ≡' L [ ← N]
subgoal 3 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)


eauto.
3 subgoals, subgoal 1 (ID 73306)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ Y [ ← N] ≡' L [ ← N]

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

apply typ_peq_sym.
3 subgoals, subgoal 1 (ID 73467)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ L [ ← N] ≡' Y [ ← N]

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

apply reds_to_conv with d.
3 subgoals, subgoal 1 (ID 73468)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ L [ ← N] ▹▹ Y [ ← N] : !d

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

change !d with (!d[← N]).
3 subgoals, subgoal 1 (ID 73470)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ L [ ← N] ▹▹ Y [ ← N] : !d [ ← N]

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using ,)

eapply reds_subst.
4 subgoals, subgoal 1 (ID 73472)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?73471 :: Γ ⊢ L ▹▹ Y : !d

subgoal 2 (ID 73473) is:
 Γ ⊢ N ▹ N : ?73471
subgoal 3 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 open,)

apply H15.
3 subgoals, subgoal 1 (ID 73473)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N : A

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using ,)

apply typ_pcompat with C.
4 subgoals, subgoal 1 (ID 73474)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N : C

subgoal 2 (ID 73475) is:
 Γ ⊢ C ≡' A
subgoal 3 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 4 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using ,)


apply red_refl_lt with N''; trivial.
3 subgoals, subgoal 1 (ID 73475)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ≡' A

subgoal 2 (ID 73302) is:
 Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using ,)

eauto.
2 subgoals, subgoal 1 (ID 73302)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ M [ ← N] ▹▹ M' [ ← N'] : ?73300

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 open, ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using ,)

eapply reds_subst_gen.
3 subgoals, subgoal 1 (ID 73499)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?73498 :: Γ ⊢ M ▹▹ M' : ?73497

subgoal 2 (ID 73500) is:
 Γ ⊢ N ▹▹ N' : ?73498
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 open, ?73498 open,)

eapply IHBetap1.
3 subgoals, subgoal 1 (ID 73501)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   ?73498 :: Γ ⊢ M ▹ M : ?73497

subgoal 2 (ID 73500) is:
 Γ ⊢ N ▹▹ N' : ?73498
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 open, ?73498 open,)

apply red_refl_lt in H7; apply H7.
2 subgoals, subgoal 1 (ID 73500)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹▹ N' : A

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)

eapply IHBetap2.
2 subgoals, subgoal 1 (ID 73506)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N : A

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)


apply typ_pcompat with C.
3 subgoals, subgoal 1 (ID 73507)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ N ▹ N : C

subgoal 2 (ID 73508) is:
 Γ ⊢ C ≡' A
subgoal 3 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)


apply red_refl_lt in H4; apply H4.
2 subgoals, subgoal 1 (ID 73508)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  A'' : Term
  m'' : Term
  F : Term
  u1 : Sorts
  u2 : Sorts
  u3 : Sorts
  H6 : Rel u1 u2 u3
  H8 : Γ ⊢ A ▹ A'' : !u1
  H7 : A :: Γ ⊢ M ▹ m'' : F
  H9 : A :: Γ ⊢ F ▹ F : !u2
  H10 : Γ ⊢ A ≡' C
  H11 : A :: Γ ⊢ F ≡' L
  Z : Term
  a : Sorts
  c : Sorts
  H12 : Γ ⊢ A ▹▹ Z : !a
  H13 : Γ ⊢ C ▹▹ Z : !c
  Y : Term
  f : Sorts
  d : Sorts
  H14 : A :: Γ ⊢ F ▹▹ Y : !f
  H15 : A :: Γ ⊢ L ▹▹ Y : !d
  ============================
   Γ ⊢ C ≡' A

subgoal 2 (ID 69729) is:
 Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)

eauto.
1 subgoals, subgoal 1 (ID 69729)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  H6 : exists K0 K1 K' T T' : Term,
         K = K1 /\
         λ [A], M = λ [C], T /\
         (C :: Γ ⊢ T ▹ T' : L) /\
         (λ [A], M) ·( K, L)N = T' [ ← N''] /\
         (Γ ⊢ K0 ▹▹ K1 : !t1) /\ (Γ ⊢ K0 ▹▹ C : !t1) /\ Γ ⊢ K1 ▹ K' : !t1
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)



destruct H6 as (U0 & G & G' & T & T' & h); decompose [and] h; clear h.
1 subgoals, subgoal 1 (ID 73580)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H6 : K = G
  H8 : λ [A], M = λ [C], T
  H7 : C :: Γ ⊢ T ▹ T' : L
  H9 : (λ [A], M) ·( K, L)N = T' [ ← N'']
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)


clear H9.
1 subgoals, subgoal 1 (ID 73581)
  
  A : Term
  M : Term
  M' : Term
  N : Term
  N' : Term
  K : Term
  L : Term
  H : M →' M'
  H0 : N →' N'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ M' : A
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H6 : K = G
  H8 : λ [A], M = λ [C], T
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  ============================
   Γ ⊢ (λ [A], M) ·( K, L)N ▹▹ M' [ ← N'] : L [ ← N]

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)

injection H8; intros; subst; clear H8.
1 subgoals, subgoal 1 (ID 73607)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ (λ [C], T) ·( G, L)N ▹▹ M' [ ← N'] : L [ ← N]

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using ,)


eapply typ_reds_trans2 with (N := T[← N]).
2 subgoals, subgoal 1 (ID 73609)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ (λ [C], T) ·( G, L)N ▹▹ T [ ← N] : L [ ← N]

subgoal 2 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open,)


constructor.
2 subgoals, subgoal 1 (ID 73612)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ (λ [C], T) ·( G, L)N ▹ T [ ← N] : L [ ← N]

subgoal 2 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open,)

econstructor.
9 subgoals, subgoal 1 (ID 73623)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Rel ?73620 ?73621 ?73622

subgoal 2 (ID 73624) is:
 Γ ⊢ C ▹ C : !?73620
subgoal 3 (ID 73625) is:
 Γ ⊢ G ▹ G : !?73620
subgoal 4 (ID 73626) is:
 Γ ⊢ ?73619 ▹▹ C : !?73620
subgoal 5 (ID 73627) is:
 Γ ⊢ ?73619 ▹▹ G : !?73620
subgoal 6 (ID 73628) is:
 C :: Γ ⊢ L ▹ L : !?73621
subgoal 7 (ID 73629) is:
 C :: Γ ⊢ T ▹ T : L
subgoal 8 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 9 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 open, ?73620 open, ?73621 open, ?73622 open,)

apply H1.
8 subgoals, subgoal 1 (ID 73624)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ C ▹ C : !t1

subgoal 2 (ID 73625) is:
 Γ ⊢ G ▹ G : !t1
subgoal 3 (ID 73626) is:
 Γ ⊢ ?73619 ▹▹ C : !t1
subgoal 4 (ID 73627) is:
 Γ ⊢ ?73619 ▹▹ G : !t1
subgoal 5 (ID 73628) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 6 (ID 73629) is:
 C :: Γ ⊢ T ▹ T : L
subgoal 7 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 8 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 open, ?73620 using , ?73621 using , ?73622 using ,)

apply red_refl_lt in H3; apply H3.
7 subgoals, subgoal 1 (ID 73625)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ G ▹ G : !t1

subgoal 2 (ID 73626) is:
 Γ ⊢ ?73619 ▹▹ C : !t1
subgoal 3 (ID 73627) is:
 Γ ⊢ ?73619 ▹▹ G : !t1
subgoal 4 (ID 73628) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 5 (ID 73629) is:
 C :: Γ ⊢ T ▹ T : L
subgoal 6 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 7 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 open, ?73620 using , ?73621 using , ?73622 using ,)


apply red_refl_lt in H13; apply H13.
6 subgoals, subgoal 1 (ID 73626)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ ?73619 ▹▹ C : !t1

subgoal 2 (ID 73627) is:
 Γ ⊢ ?73619 ▹▹ G : !t1
subgoal 3 (ID 73628) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 4 (ID 73629) is:
 C :: Γ ⊢ T ▹ T : L
subgoal 5 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 6 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 open, ?73620 using , ?73621 using , ?73622 using ,)

apply H11.
5 subgoals, subgoal 1 (ID 73627)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ U0 ▹▹ G : !t1

subgoal 2 (ID 73628) is:
 C :: Γ ⊢ L ▹ L : !t2
subgoal 3 (ID 73629) is:
 C :: Γ ⊢ T ▹ T : L
subgoal 4 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 5 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 using , ?73620 using , ?73621 using , ?73622 using ,)


trivial.
4 subgoals, subgoal 1 (ID 73628)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   C :: Γ ⊢ L ▹ L : !t2

subgoal 2 (ID 73629) is:
 C :: Γ ⊢ T ▹ T : L
subgoal 3 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 4 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 using , ?73620 using , ?73621 using , ?73622 using ,)

apply red_refl_lt in H2; trivial.
3 subgoals, subgoal 1 (ID 73629)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   C :: Γ ⊢ T ▹ T : L

subgoal 2 (ID 73630) is:
 Γ ⊢ N ▹ N : C
subgoal 3 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 using , ?73620 using , ?73621 using , ?73622 using ,)


apply red_refl_lt with T'; trivial.
2 subgoals, subgoal 1 (ID 73630)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ N ▹ N : C

subgoal 2 (ID 73610) is:
 Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 using , ?73620 using , ?73621 using , ?73622 using ,)

apply red_refl_lt with N''; trivial.
1 subgoals, subgoal 1 (ID 73610)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ T [ ← N] ▹▹ M' [ ← N'] : ?73608

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 open, ?73619 using , ?73620 using , ?73621 using , ?73622 using ,)


eapply reds_subst_gen.
2 subgoals, subgoal 1 (ID 73641)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   ?73640 :: Γ ⊢ T ▹▹ M' : ?73639

subgoal 2 (ID 73642) is:
 Γ ⊢ N ▹▹ N' : ?73640
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 using ?73639 , ?73619 using , ?73620 using , ?73621 using , ?73622 using , ?73639 open, ?73640 open,)


eapply IHBetap1.
2 subgoals, subgoal 1 (ID 73643)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   ?73640 :: Γ ⊢ T ▹ T : ?73639

subgoal 2 (ID 73642) is:
 Γ ⊢ N ▹▹ N' : ?73640
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 using ?73639 , ?73619 using , ?73620 using , ?73621 using , ?73622 using , ?73639 open, ?73640 open,)

apply red_refl_lt in H7; apply H7.
1 subgoals, subgoal 1 (ID 73642)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ N ▹▹ N' : C

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 using ?73639 , ?73619 using , ?73620 using , ?73621 using , ?73622 using , ?73639 using ?73646 , ?73640 using ?73645 , ?73645 using , ?73646 using ,)


eapply IHBetap2.
1 subgoals, subgoal 1 (ID 73648)
  
  M' : Term
  N : Term
  N' : Term
  L : Term
  H0 : N →' N'
  IHBetap2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ N' : A
  Γ : Env
  A0 : Term
  C : Term
  C' : Term
  D' : Term
  N'' : Term
  t1 : Sorts
  t2 : Sorts
  t3 : Sorts
  H1 : Rel t1 t2 t3
  H3 : Γ ⊢ C ▹ C' : !t1
  H2 : C :: Γ ⊢ L ▹ D' : !t2
  H4 : Γ ⊢ N ▹ N'' : C
  H5 : Γ ⊢ L [ ← N] ≡' A0
  U0 : Term
  G : Term
  G' : Term
  T : Term
  T' : Term
  H7 : C :: Γ ⊢ T ▹ T' : L
  H10 : Γ ⊢ U0 ▹▹ G : !t1
  H11 : Γ ⊢ U0 ▹▹ C : !t1
  H13 : Γ ⊢ G ▹ G' : !t1
  H : T →' M'
  IHBetap1 : forall (Γ : Env) (A : Term), Γ ⊢ T ▹ T : A -> Γ ⊢ T ▹▹ M' : A
  ============================
   Γ ⊢ N ▹ N : C

(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 using ?73639 , ?73619 using , ?73620 using , ?73621 using , ?73622 using , ?73639 using ?73646 , ?73640 using ?73645 , ?73645 using , ?73646 using ,)

apply red_refl_lt in H4; apply H4.
No more subgoals.
(dependent evars: ?67230 using , ?67231 using , ?67232 using , ?67312 using , ?67313 using , ?67382 using , ?67383 using , ?67496 using , ?67497 using , ?67595 using ?68620 , ?67596 using ?68637 , ?67610 using , ?67611 using , ?67612 using , ?67625 using , ?67626 using , ?67633 using , ?67993 using , ?68021 using , ?68022 using , ?68029 using , ?68389 using , ?68452 using , ?68620 using , ?68632 using ?68636 , ?68636 using , ?68637 using , ?69499 using , ?69846 using ?69861 ?69860 , ?69847 using , ?69848 using , ?69860 using , ?69861 using , ?69862 using , ?69863 using , ?69864 using , ?69869 using , ?69871 using , ?69897 using , ?69972 using , ?69980 using , ?69988 using , ?69993 using , ?69996 using , ?70277 using ?70292 ?70291 , ?70278 using , ?70279 using , ?70291 using , ?70292 using , ?70293 using , ?70294 using , ?70295 using , ?70300 using , ?70302 using , ?70328 using , ?70403 using , ?70411 using , ?70421 using , ?70423 using , ?70428 using , ?70431 using , ?71284 using , ?71355 using ?71359 , ?71359 using , ?72211 using , ?72305 using , ?72376 using , ?73229 using , ?73300 using ?73497 , ?73313 using ?73337 , ?73314 using , ?73315 using , ?73316 using , ?73327 using , ?73329 using , ?73337 using , ?73339 using , ?73344 using , ?73346 using , ?73373 using , ?73471 using , ?73497 using ?73504 , ?73498 using ?73503 , ?73503 using , ?73504 using , ?73608 using ?73639 , ?73619 using , ?73620 using , ?73621 using , ?73622 using , ?73639 using ?73646 , ?73640 using ?73645 , ?73645 using , ?73646 using ,)


Qed.
SR is defined



Lemma SR_trans : (forall M N, Betaps M N -> forall Γ A, Γ M M : A -> Γ M ▹▹ N : A ).
1 subgoals, subgoal 1 (ID 73662)
  
  ============================
   forall M N : Term,
   M →→' N -> forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A

(dependent evars:)


induction 1; intros.
2 subgoals, subgoal 1 (ID 73687)
  
  M : Term
  N : Term
  H : M →' N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹▹ N : A

subgoal 2 (ID 73690) is:
 Γ ⊢ M ▹▹ P : A
(dependent evars:)


eapply SR.
3 subgoals, subgoal 1 (ID 73691)
  
  M : Term
  N : Term
  H : M →' N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   M →' N

subgoal 2 (ID 73692) is:
 Γ ⊢ M ▹ M : A
subgoal 3 (ID 73690) is:
 Γ ⊢ M ▹▹ P : A
(dependent evars:)

trivial.
2 subgoals, subgoal 1 (ID 73692)
  
  M : Term
  N : Term
  H : M →' N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹ M : A

subgoal 2 (ID 73690) is:
 Γ ⊢ M ▹▹ P : A
(dependent evars:)

apply H0.
1 subgoals, subgoal 1 (ID 73690)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹▹ P : A

(dependent evars:)


apply typ_reds_trans with N.
2 subgoals, subgoal 1 (ID 73693)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹▹ N : A

subgoal 2 (ID 73694) is:
 Γ ⊢ N ▹▹ P : A
(dependent evars:)

eapply IHBetaps1.
2 subgoals, subgoal 1 (ID 73695)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹ M : A

subgoal 2 (ID 73694) is:
 Γ ⊢ N ▹▹ P : A
(dependent evars:)

apply H1.
1 subgoals, subgoal 1 (ID 73694)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ N ▹▹ P : A

(dependent evars:)


eapply IHBetaps2.
1 subgoals, subgoal 1 (ID 73696)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ N ▹ N : A

(dependent evars:)

eapply reds_refl_rt.
1 subgoals, subgoal 1 (ID 73698)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ ?73697 ▹▹ N : A

(dependent evars: ?73697 open,)

eapply IHBetaps1.
1 subgoals, subgoal 1 (ID 73699)
  
  M : Term
  N : Term
  P : Term
  H : M →→' N
  H0 : N →→' P
  IHBetaps1 : forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A
  IHBetaps2 : forall (Γ : Env) (A : Term), Γ ⊢ N ▹ N : A -> Γ ⊢ N ▹▹ P : A
  Γ : Env
  A : Term
  H1 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹ M : A

(dependent evars: ?73697 using ,)

apply H1.
No more subgoals.
(dependent evars: ?73697 using ,)


Qed.
SR_trans is defined



Lemma SR_trans' : forall M N, Betas M N -> forall Γ A, Γ M M : A ->
  Γ M ▹▹ N : A.
1 subgoals, subgoal 1 (ID 73711)
  
  ============================
   forall M N : Term,
   M →→ N -> forall (Γ : Env) (A : Term), Γ ⊢ M ▹ M : A -> Γ ⊢ M ▹▹ N : A

(dependent evars:)


intros.
1 subgoals, subgoal 1 (ID 73717)
  
  M : Term
  N : Term
  H : M →→ N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹▹ N : A

(dependent evars:)


eapply SR_trans.
2 subgoals, subgoal 1 (ID 73718)
  
  M : Term
  N : Term
  H : M →→ N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   M →→' N

subgoal 2 (ID 73719) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)

apply Betaps_Betas_closure.
2 subgoals, subgoal 1 (ID 73720)
  
  M : Term
  N : Term
  H : M →→ N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   M →→ N

subgoal 2 (ID 73719) is:
 Γ ⊢ M ▹ M : A
(dependent evars:)

trivial.
1 subgoals, subgoal 1 (ID 73719)
  
  M : Term
  N : Term
  H : M →→ N
  Γ : Env
  A : Term
  H0 : Γ ⊢ M ▹ M : A
  ============================
   Γ ⊢ M ▹ M : A

(dependent evars:)

apply H0.
No more subgoals.
(dependent evars:)


Qed.
SR_trans' is defined



Lemma peq_subst : forall A Γ B B' , A::Γ B ≡' B' -> forall N N' , Γ N N' : A ->
   Γ B [ N ] ≡' B'[ N].
1 subgoals, subgoal 1 (ID 73736)
  
  ============================
   forall (A : Term) (Γ : list Term) (B B' : Term),
   A :: Γ ⊢ B ≡' B' ->
   forall N N' : Term, Γ ⊢ N ▹ N' : A -> Γ ⊢ B [ ← N] ≡' B' [ ← N]

(dependent evars:)

intros until 1.
1 subgoals, subgoal 1 (ID 73741)
  
  A : Term
  Γ : list Term
  B : Term
  B' : Term
  H : A :: Γ ⊢ B ≡' B'
  ============================
   forall N N' : Term, Γ ⊢ N ▹ N' : A -> Γ ⊢ B [ ← N] ≡' B' [ ← N]

(dependent evars:)


remember (A::Γ) as ΓΓ.
1 subgoals, subgoal 1 (ID 73749)
  
  A : Term
  Γ : list Term
  B : Term
  B' : Term
  ΓΓ : list Term
  HeqΓΓ : ΓΓ = A :: Γ
  H : ΓΓ ⊢ B ≡' B'
  ============================
   forall N N' : Term, Γ ⊢ N ▹ N' : A -> Γ ⊢ B [ ← N] ≡' B' [ ← N]

(dependent evars:)

revert A Γ HeqΓΓ.
1 subgoals, subgoal 1 (ID 73751)
  
  B : Term
  B' : Term
  ΓΓ : list Term
  H : ΓΓ ⊢ B ≡' B'
  ============================
   forall (A : Term) (Γ : list Term),
   ΓΓ = A :: Γ ->
   forall N N' : Term, Γ ⊢ N ▹ N' : A -> Γ ⊢ B [ ← N] ≡' B' [ ← N]

(dependent evars:)

induction H; intros; subst.
3 subgoals, subgoal 1 (ID 73808)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ▹ B : !s
  ============================
   Γ0 ⊢ A [ ← N] ≡' B [ ← N]

subgoal 2 (ID 73813) is:
 Γ0 ⊢ A [ ← N] ≡' B [ ← N]
subgoal 3 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars:)


apply typ_peq_intro with s.
3 subgoals, subgoal 1 (ID 73822)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ▹ B : !s
  ============================
   Γ0 ⊢ A [ ← N] ▹ B [ ← N] : !s

subgoal 2 (ID 73813) is:
 Γ0 ⊢ A [ ← N] ≡' B [ ← N]
subgoal 3 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars:)

change !s with (!s[← N]).
3 subgoals, subgoal 1 (ID 73824)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ▹ B : !s
  ============================
   Γ0 ⊢ A [ ← N] ▹ B [ ← N] : !s [ ← N]

subgoal 2 (ID 73813) is:
 Γ0 ⊢ A [ ← N] ≡' B [ ← N]
subgoal 3 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars:)

eapply subst_gen.
5 subgoals, subgoal 1 (ID 73840)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ▹ B : !s
  ============================
   ?73839 ⊢ A ▹ B : !s

subgoal 2 (ID 73843) is:
 sub_in_env ?73841 N ?73842 0 ?73839 Γ0
subgoal 3 (ID 73844) is:
 ?73841 ⊢ N ▹ N : ?73842
subgoal 4 (ID 73813) is:
 Γ0 ⊢ A [ ← N] ≡' B [ ← N]
subgoal 5 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 open, ?73841 open, ?73842 open,)


apply H.
4 subgoals, subgoal 1 (ID 73843)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ▹ B : !s
  ============================
   sub_in_env ?73841 N ?73842 0 (A0 :: Γ0) Γ0

subgoal 2 (ID 73844) is:
 ?73841 ⊢ N ▹ N : ?73842
subgoal 3 (ID 73813) is:
 Γ0 ⊢ A [ ← N] ≡' B [ ← N]
subgoal 4 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 open, ?73842 open,)

constructor.
3 subgoals, subgoal 1 (ID 73844)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ▹ B : !s
  ============================
   Γ0 ⊢ N ▹ N : A0

subgoal 2 (ID 73813) is:
 Γ0 ⊢ A [ ← N] ≡' B [ ← N]
subgoal 3 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using ,)

apply red_refl_lt with N'; trivial.
2 subgoals, subgoal 1 (ID 73813)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ B ▹ A : !s
  ============================
   Γ0 ⊢ A [ ← N] ≡' B [ ← N]

subgoal 2 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using ,)


apply typ_peq_intro2 with s.
2 subgoals, subgoal 1 (ID 73847)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ B ▹ A : !s
  ============================
   Γ0 ⊢ B [ ← N] ▹ A [ ← N] : !s

subgoal 2 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using ,)

change !s with (!s[← N]).
2 subgoals, subgoal 1 (ID 73849)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ B ▹ A : !s
  ============================
   Γ0 ⊢ B [ ← N] ▹ A [ ← N] : !s [ ← N]

subgoal 2 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using ,)

eapply subst_gen.
4 subgoals, subgoal 1 (ID 73865)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ B ▹ A : !s
  ============================
   ?73864 ⊢ B ▹ A : !s

subgoal 2 (ID 73868) is:
 sub_in_env ?73866 N ?73867 0 ?73864 Γ0
subgoal 3 (ID 73869) is:
 ?73866 ⊢ N ▹ N : ?73867
subgoal 4 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using , ?73858 using ?73864 , ?73859 using ?73866 , ?73860 using ?73867 , ?73864 open, ?73866 open, ?73867 open,)


apply H.
3 subgoals, subgoal 1 (ID 73868)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ B ▹ A : !s
  ============================
   sub_in_env ?73866 N ?73867 0 (A0 :: Γ0) Γ0

subgoal 2 (ID 73869) is:
 ?73866 ⊢ N ▹ N : ?73867
subgoal 3 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using , ?73858 using ?73864 , ?73859 using ?73866 , ?73860 using ?73867 , ?73864 using , ?73866 open, ?73867 open,)

constructor.
2 subgoals, subgoal 1 (ID 73869)
  
  A : Term
  B : Term
  s : Sorts
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H0 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ B ▹ A : !s
  ============================
   Γ0 ⊢ N ▹ N : A0

subgoal 2 (ID 73821) is:
 Γ0 ⊢ A [ ← N] ≡' C [ ← N]
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using , ?73858 using ?73864 , ?73859 using ?73866 , ?73860 using ?73867 , ?73864 using , ?73866 using , ?73867 using ,)

apply red_refl_lt with N'; trivial.
1 subgoals, subgoal 1 (ID 73821)
  
  A : Term
  B : Term
  C : Term
  A0 : Term
  Γ0 : list Term
  N : Term
  N' : Term
  H1 : Γ0 ⊢ N ▹ N' : A0
  H : A0 :: Γ0 ⊢ A ≡' B
  H0 : A0 :: Γ0 ⊢ B ≡' C
  IHtyp_peq1 : forall (A1 : Term) (Γ : list Term),
               A0 :: Γ0 = A1 :: Γ ->
               forall N N' : Term,
               Γ ⊢ N ▹ N' : A1 -> Γ ⊢ A [ ← N] ≡' B [ ← N]
  IHtyp_peq2 : forall (A : Term) (Γ : list Term),
               A0 :: Γ0 = A :: Γ ->
               forall N N' : Term, Γ ⊢ N ▹ N' : A -> Γ ⊢ B [ ← N] ≡' C [ ← N]
  ============================
   Γ0 ⊢ A [ ← N] ≡' C [ ← N]

(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using , ?73858 using ?73864 , ?73859 using ?73866 , ?73860 using ?73867 , ?73864 using , ?73866 using , ?73867 using ,)


eauto.
No more subgoals.
(dependent evars: ?73833 using ?73839 , ?73834 using ?73841 , ?73835 using ?73842 , ?73839 using , ?73841 using , ?73842 using , ?73858 using ?73864 , ?73859 using ?73866 , ?73860 using ?73867 , ?73864 using , ?73866 using , ?73867 using , ?73879 using , ?75166 using , ?75167 using , ?76060 using , ?76061 using ,)


Qed.
peq_subst is defined



End PTS_ATR_mod.
Module PTS_ATR_mod is defined




Index
This page has been generated by coqdoc