(* Inductive premises for the preservation results **************************)
definition IH_cnv_cpm_trans_lpr (h) (a): relation3 genv lenv term ≝
- λG,L1,T1. â\9dªG,L1â\9d« ⊢ T1 ![h,a] →
- â\88\80n,T2. â\9dªG,L1â\9d« ⊢ T1 ➡[h,n] T2 →
- â\88\80L2. â\9dªG,L1â\9d« â\8a¢ â\9e¡[h,0] L2 â\86\92 â\9dªG,L2â\9d« ⊢ T2 ![h,a].
+ λG,L1,T1. â\9d¨G,L1â\9d© ⊢ T1 ![h,a] →
+ â\88\80n,T2. â\9d¨G,L1â\9d© ⊢ T1 ➡[h,n] T2 →
+ â\88\80L2. â\9d¨G,L1â\9d© â\8a¢ â\9e¡[h,0] L2 â\86\92 â\9d¨G,L2â\9d© ⊢ T2 ![h,a].
definition IH_cnv_cpms_trans_lpr (h) (a): relation3 genv lenv term ≝
- λG,L1,T1. â\9dªG,L1â\9d« ⊢ T1 ![h,a] →
- â\88\80n,T2. â\9dªG,L1â\9d« ⊢ T1 ➡*[h,n] T2 →
- â\88\80L2. â\9dªG,L1â\9d« â\8a¢ â\9e¡[h,0] L2 â\86\92 â\9dªG,L2â\9d« ⊢ T2 ![h,a].
+ λG,L1,T1. â\9d¨G,L1â\9d© ⊢ T1 ![h,a] →
+ â\88\80n,T2. â\9d¨G,L1â\9d© ⊢ T1 ➡*[h,n] T2 →
+ â\88\80L2. â\9d¨G,L1â\9d© â\8a¢ â\9e¡[h,0] L2 â\86\92 â\9d¨G,L2â\9d© ⊢ T2 ![h,a].
definition IH_cnv_cpm_conf_lpr (h) (a): relation3 genv lenv term ≝
- λG,L0,T0. â\9dªG,L0â\9d« ⊢ T0 ![h,a] →
- â\88\80n1,T1. â\9dªG,L0â\9d« â\8a¢ T0 â\9e¡[h,n1] T1 â\86\92 â\88\80n2,T2. â\9dªG,L0â\9d« ⊢ T0 ➡[h,n2] T2 →
- â\88\80L1. â\9dªG,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG,L0â\9d« ⊢ ➡[h,0] L2 →
- â\88\83â\88\83T. â\9dªG,L1â\9d« â\8a¢ T1 â\9e¡*[h,n2-n1] T & â\9dªG,L2â\9d« ⊢ T2 ➡*[h,n1-n2] T.
+ λG,L0,T0. â\9d¨G,L0â\9d© ⊢ T0 ![h,a] →
+ â\88\80n1,T1. â\9d¨G,L0â\9d© â\8a¢ T0 â\9e¡[h,n1] T1 â\86\92 â\88\80n2,T2. â\9d¨G,L0â\9d© ⊢ T0 ➡[h,n2] T2 →
+ â\88\80L1. â\9d¨G,L0â\9d© â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9d¨G,L0â\9d© ⊢ ➡[h,0] L2 →
+ â\88\83â\88\83T. â\9d¨G,L1â\9d© â\8a¢ T1 â\9e¡*[h,n2-n1] T & â\9d¨G,L2â\9d© ⊢ T2 ➡*[h,n1-n2] T.
definition IH_cnv_cpms_strip_lpr (h) (a): relation3 genv lenv term ≝
- λG,L0,T0. â\9dªG,L0â\9d« ⊢ T0 ![h,a] →
- â\88\80n1,T1. â\9dªG,L0â\9d« â\8a¢ T0 â\9e¡*[h,n1] T1 â\86\92 â\88\80n2,T2. â\9dªG,L0â\9d« ⊢ T0 ➡[h,n2] T2 →
- â\88\80L1. â\9dªG,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG,L0â\9d« ⊢ ➡[h,0] L2 →
- â\88\83â\88\83T. â\9dªG,L1â\9d« â\8a¢ T1 â\9e¡*[h,n2-n1] T & â\9dªG,L2â\9d« ⊢ T2 ➡*[h,n1-n2] T.
+ λG,L0,T0. â\9d¨G,L0â\9d© ⊢ T0 ![h,a] →
+ â\88\80n1,T1. â\9d¨G,L0â\9d© â\8a¢ T0 â\9e¡*[h,n1] T1 â\86\92 â\88\80n2,T2. â\9d¨G,L0â\9d© ⊢ T0 ➡[h,n2] T2 →
+ â\88\80L1. â\9d¨G,L0â\9d© â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9d¨G,L0â\9d© ⊢ ➡[h,0] L2 →
+ â\88\83â\88\83T. â\9d¨G,L1â\9d© â\8a¢ T1 â\9e¡*[h,n2-n1] T & â\9d¨G,L2â\9d© ⊢ T2 ➡*[h,n1-n2] T.
definition IH_cnv_cpms_conf_lpr (h) (a): relation3 genv lenv term ≝
- λG,L0,T0. â\9dªG,L0â\9d« ⊢ T0 ![h,a] →
- â\88\80n1,T1. â\9dªG,L0â\9d« â\8a¢ T0 â\9e¡*[h,n1] T1 â\86\92 â\88\80n2,T2. â\9dªG,L0â\9d« ⊢ T0 ➡*[h,n2] T2 →
- â\88\80L1. â\9dªG,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG,L0â\9d« ⊢ ➡[h,0] L2 →
- â\88\83â\88\83T. â\9dªG,L1â\9d« â\8a¢ T1 â\9e¡*[h,n2-n1] T & â\9dªG,L2â\9d« ⊢ T2 ➡*[h,n1-n2] T.
+ λG,L0,T0. â\9d¨G,L0â\9d© ⊢ T0 ![h,a] →
+ â\88\80n1,T1. â\9d¨G,L0â\9d© â\8a¢ T0 â\9e¡*[h,n1] T1 â\86\92 â\88\80n2,T2. â\9d¨G,L0â\9d© ⊢ T0 ➡*[h,n2] T2 →
+ â\88\80L1. â\9d¨G,L0â\9d© â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9d¨G,L0â\9d© ⊢ ➡[h,0] L2 →
+ â\88\83â\88\83T. â\9d¨G,L1â\9d© â\8a¢ T1 â\9e¡*[h,n2-n1] T & â\9d¨G,L2â\9d© ⊢ T2 ➡*[h,n1-n2] T.
(* Auxiliary properties for preservation ************************************)
fact cnv_cpms_trans_lpr_sub (h) (a):
∀G0,L0,T0.
- (â\88\80G1,L1,T1. â\9dªG0,L0,T0â\9d« > â\9dªG1,L1,T1â\9d« → IH_cnv_cpm_trans_lpr h a G1 L1 T1) →
- â\88\80G1,L1,T1. â\9dªG0,L0,T0â\9d« > â\9dªG1,L1,T1â\9d« → IH_cnv_cpms_trans_lpr h a G1 L1 T1.
+ (â\88\80G1,L1,T1. â\9d¨G0,L0,T0â\9d© > â\9d¨G1,L1,T1â\9d© → IH_cnv_cpm_trans_lpr h a G1 L1 T1) →
+ â\88\80G1,L1,T1. â\9d¨G0,L0,T0â\9d© > â\9d¨G1,L1,T1â\9d© → IH_cnv_cpms_trans_lpr h a G1 L1 T1.
#h #a #G0 #L0 #T0 #IH #G1 #L1 #T1 #H01 #HT1 #n #T2 #H
@(cpms_ind_dx … H) -n -T2
/3 width=7 by fpbg_cpms_trans/
fact cnv_cpm_conf_lpr_sub (h) (a):
∀G0,L0,T0.
- (â\88\80G1,L1,T1. â\9dªG0,L0,T0â\9d« > â\9dªG1,L1,T1â\9d« → IH_cnv_cpms_conf_lpr h a G1 L1 T1) →
- â\88\80G1,L1,T1. â\9dªG0,L0,T0â\9d« > â\9dªG1,L1,T1â\9d« → IH_cnv_cpm_conf_lpr h a G1 L1 T1.
+ (â\88\80G1,L1,T1. â\9d¨G0,L0,T0â\9d© > â\9d¨G1,L1,T1â\9d© → IH_cnv_cpms_conf_lpr h a G1 L1 T1) →
+ â\88\80G1,L1,T1. â\9d¨G0,L0,T0â\9d© > â\9d¨G1,L1,T1â\9d© → IH_cnv_cpm_conf_lpr h a G1 L1 T1.
/3 width=8 by cpm_cpms/ qed-.
fact cnv_cpms_strip_lpr_sub (h) (a):
∀G0,L0,T0.
- (â\88\80G1,L1,T1. â\9dªG0,L0,T0â\9d« > â\9dªG1,L1,T1â\9d« → IH_cnv_cpms_conf_lpr h a G1 L1 T1) →
- â\88\80G1,L1,T1. â\9dªG0,L0,T0â\9d« > â\9dªG1,L1,T1â\9d« → IH_cnv_cpms_strip_lpr h a G1 L1 T1.
+ (â\88\80G1,L1,T1. â\9d¨G0,L0,T0â\9d© > â\9d¨G1,L1,T1â\9d© → IH_cnv_cpms_conf_lpr h a G1 L1 T1) →
+ â\88\80G1,L1,T1. â\9d¨G0,L0,T0â\9d© > â\9d¨G1,L1,T1â\9d© → IH_cnv_cpms_strip_lpr h a G1 L1 T1.
/3 width=8 by cpm_cpms/ qed-.