(* GENERIC ENTRYWISE EXTENSION OF CONTEXT-SENSITIVE REALTIONS FOR TERMS *****)
definition s_rs_transitive_isid: relation (relation3 lenv bind bind) ≝ λRN,RP.
- â\88\80f. ð\9d\90\88â¦\83fâ¦\84 → s_rs_transitive … RP (λ_.sex RN RP f).
+ â\88\80f. ð\9d\90\88â\9dªfâ\9d« → s_rs_transitive … RP (λ_.sex RN RP f).
(* Properties with transitive closure ***************************************)
lemma sex_tc_next_sn: ∀RN,RP. c_reflexive … RN →
∀f,I2,L1,L2. TC … (sex RN RP f) L1 L2 → ∀I1. RN L1 I1 I2 →
- TC … (sex RN RP (↑f)) (L1.ⓘ{I1}) (L2.ⓘ{I2}).
+ TC … (sex RN RP (↑f)) (L1.ⓘ[I1]) (L2.ⓘ[I2]).
#RN #RP #HRN #f #I2 #L1 #L2 #H @(TC_ind_dx ??????? H) -L1
/3 width=3 by sex_next, TC_strap, inj/
qed.
lemma sex_tc_next_dx: ∀RN,RP. c_reflexive … RN → c_reflexive … RP →
∀f,I1,I2,L1. (CTC … RN) L1 I1 I2 → ∀L2. L1 ⪤[RN,RP,f] L2 →
- TC … (sex RN RP (↑f)) (L1.ⓘ{I1}) (L2.ⓘ{I2}).
+ TC … (sex RN RP (↑f)) (L1.ⓘ[I1]) (L2.ⓘ[I2]).
#RN #RP #HRN #HRP #f #I1 #I2 #L1 #H elim H -I2
/4 width=5 by sex_refl, sex_next, step, inj/
qed.
lemma sex_tc_push_sn: ∀RN,RP. c_reflexive … RP →
∀f,I2,L1,L2. TC … (sex RN RP f) L1 L2 → ∀I1. RP L1 I1 I2 →
- TC … (sex RN RP (⫯f)) (L1.ⓘ{I1}) (L2.ⓘ{I2}).
+ TC … (sex RN RP (⫯f)) (L1.ⓘ[I1]) (L2.ⓘ[I2]).
#RN #RP #HRP #f #I2 #L1 #L2 #H @(TC_ind_dx ??????? H) -L1
/3 width=3 by sex_push, TC_strap, inj/
qed.
lemma sex_tc_push_dx: ∀RN,RP. c_reflexive … RN → c_reflexive … RP →
∀f,I1,I2,L1. (CTC … RP) L1 I1 I2 → ∀L2. L1 ⪤[RN,RP,f] L2 →
- TC … (sex RN RP (⫯f)) (L1.ⓘ{I1}) (L2.ⓘ{I2}).
+ TC … (sex RN RP (⫯f)) (L1.ⓘ[I1]) (L2.ⓘ[I2]).
#RN #RP #HRN #HRP #f #I1 #I2 #L1 #H elim H -I2
/4 width=5 by sex_refl, sex_push, step, inj/
qed.
theorem sex_tc_next: ∀RN,RP. c_reflexive … RN → c_reflexive … RP →
∀f,I1,I2,L1. (CTC … RN) L1 I1 I2 → ∀L2. TC … (sex RN RP f) L1 L2 →
- TC … (sex RN RP (↑f)) (L1.ⓘ{I1}) (L2.ⓘ{I2}).
+ TC … (sex RN RP (↑f)) (L1.ⓘ[I1]) (L2.ⓘ[I2]).
#RN #RP #HRN #HRP #f #I1 #I2 #L1 #H elim H -I2
/4 width=5 by sex_tc_next_sn, sex_tc_refl, trans_TC/
qed.
theorem sex_tc_push: ∀RN,RP. c_reflexive … RN → c_reflexive … RP →
∀f,I1,I2,L1. (CTC … RP) L1 I1 I2 → ∀L2. TC … (sex RN RP f) L1 L2 →
- TC … (sex RN RP (⫯f)) (L1.ⓘ{I1}) (L2.ⓘ{I2}).
+ TC … (sex RN RP (⫯f)) (L1.ⓘ[I1]) (L2.ⓘ[I2]).
#RN #RP #HRN #HRP #f #I1 #I2 #L1 #H elim H -I2
/4 width=5 by sex_tc_push_sn, sex_tc_refl, trans_TC/
qed.
(* Basic_2A1: uses: TC_lpx_sn_ind *)
theorem sex_tc_step_dx: ∀RN,RP. s_rs_transitive_isid RN RP →
- â\88\80f,L1,L. L1 ⪤[RN,RP,f] L â\86\92 ð\9d\90\88â¦\83fâ¦\84 →
+ â\88\80f,L1,L. L1 ⪤[RN,RP,f] L â\86\92 ð\9d\90\88â\9dªfâ\9d« →
∀L2. L ⪤[RN,CTC … RP,f] L2 → L1⪤ [RN,CTC … RP,f] L2.
#RN #RP #HRP #f #L1 #L #H elim H -f -L1 -L
[ #f #_ #Y #H -HRP >(sex_inv_atom1 … H) -Y // ]
(* Advanced properties ******************************************************)
lemma sex_tc_dx: ∀RN,RP. s_rs_transitive_isid RN RP →
- â\88\80f. ð\9d\90\88â¦\83fâ¦\84 → ∀L1,L2. TC … (sex RN RP f) L1 L2 → L1 ⪤[RN,CTC … RP,f] L2.
+ â\88\80f. ð\9d\90\88â\9dªfâ\9d« → ∀L1,L2. TC … (sex RN RP f) L1 L2 → L1 ⪤[RN,CTC … RP,f] L2.
#RN #RP #HRP #f #Hf #L1 #L2 #H @(TC_ind_dx ??????? H) -L1
/3 width=3 by sex_tc_step_dx, sex_tc_inj_dx/
qed.