(* Properties with unbound parallel rt-transition on all entries ************)
lemma csx_lpx_conf (h) (G):
- â\88\80L1,T. â¦\83G,L1â¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Tâ¦\84 →
- â\88\80L2. â¦\83G,L1â¦\84 â\8a¢ â¬\88[h] L2 â\86\92 â¦\83G,L2â¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Tâ¦\84.
+ â\88\80L1,T. â\9dªG,L1â\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªTâ\9d« →
+ â\88\80L2. â\9dªG,L1â\9d« â\8a¢ â¬\88[h] L2 â\86\92 â\9dªG,L2â\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªTâ\9d«.
#h #G #L1 #T #H @(csx_ind_cpxs … H) -T
/4 width=3 by csx_intro, lpx_cpx_trans/
qed-.
(* Advanced properties ******************************************************)
lemma csx_abst (h) (G):
- â\88\80p,L,W. â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Wâ¦\84 →
- â\88\80T. â¦\83G,L.â\93\9bWâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Tâ¦\84 â\86\92 â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83â\93\9b{p}W.Tâ¦\84.
+ â\88\80p,L,W. â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªWâ\9d« →
+ â\88\80T. â\9dªG,L.â\93\9bWâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªTâ\9d« â\86\92 â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªâ\93\9b[p]W.Tâ\9d«.
#h #G #p #L #W #HW
@(csx_ind … HW) -W #W #_ #IHW #T #HT
@(csx_ind … HT) -T #T #HT #IHT
qed.
lemma csx_abbr (h) (G):
- â\88\80p,L,V. â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Vâ¦\84 →
- â\88\80T. â¦\83G,L.â\93\93Vâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Tâ¦\84 â\86\92 â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83â\93\93{p}V.Tâ¦\84.
+ â\88\80p,L,V. â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªVâ\9d« →
+ â\88\80T. â\9dªG,L.â\93\93Vâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªTâ\9d« â\86\92 â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªâ\93\93[p]V.Tâ\9d«.
#h #G #p #L #V #HV
@(csx_ind … HV) -V #V #_ #IHV #T #HT
@(csx_ind_cpxs … HT) -T #T #HT #IHT
qed.
lemma csx_bind (h) (G):
- â\88\80p,I,L,V. â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Vâ¦\84 →
- â\88\80T. â¦\83G,L.â\93\91{I}Vâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Tâ¦\84 â\86\92 â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83â\93\91{p,I}V.Tâ¦\84.
+ â\88\80p,I,L,V. â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªVâ\9d« →
+ â\88\80T. â\9dªG,L.â\93\91[I]Vâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªTâ\9d« â\86\92 â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªâ\93\91[p,I]V.Tâ\9d«.
#h #G #p * #L #V #HV #T #HT
/2 width=1 by csx_abbr, csx_abst/
qed.
fact csx_appl_theta_aux (h) (G):
- â\88\80p,L,U. â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83Uâ¦\84 → ∀V1,V2. ⇧*[1] V1 ≘ V2 →
- ∀V,T. U = ⓓ{p}V.ⓐV2.T → ⦃G,L⦄ ⊢ ⬈*[h] 𝐒⦃ⓐV1.ⓓ{p}V.T⦄.
+ â\88\80p,L,U. â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªUâ\9d« → ∀V1,V2. ⇧*[1] V1 ≘ V2 →
+ ∀V,T. U = ⓓ[p]V.ⓐV2.T → ❪G,L❫ ⊢ ⬈*[h] 𝐒❪ⓐV1.ⓓ[p]V.T❫.
#h #G #p #L #X #H
@(csx_ind_cpxs … H) -X #X #HVT #IHVT #V1 #V2 #HV12 #V #T #H destruct
lapply (csx_fwd_pair_sn … HVT) #HV
elim (cpx_inv_abbr1 … HL) -HL *
[ #V3 #T3 #HV3 #HLT3 #H0 destruct
elim (cpx_lifts_sn … HLV10 (Ⓣ) … (L.ⓓV) … HV12) -HLV10 /3 width=1 by drops_refl, drops_drop/ #V4 #HV04 #HV24
- elim (teqx_dec (ⓓ{p}V.ⓐV2.T) (ⓓ{p}V3.ⓐV4.T3)) #H0
+ elim (teqx_dec (ⓓ[p]V.ⓐV2.T) (ⓓ[p]V3.ⓐV4.T3)) #H0
[ -IHVT -HV3 -HV24 -HLT3
elim (teqx_inv_pair … H0) -H0 #_ #HV3 #H0
elim (teqx_inv_pair … H0) -H0 #_ #HV24 #HT3
qed-.
lemma csx_appl_theta (h) (G):
- â\88\80p,L,V,V2,T. â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83â\93\93{p}V.â\93\90V2.Tâ¦\84 →
- â\88\80V1. â\87§*[1] V1 â\89\98 V2 â\86\92 â¦\83G,Lâ¦\84 â\8a¢ â¬\88*[h] ð\9d\90\92â¦\83â\93\90V1.â\93\93{p}V.Tâ¦\84.
+ â\88\80p,L,V,V2,T. â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªâ\93\93[p]V.â\93\90V2.Tâ\9d« →
+ â\88\80V1. â\87§*[1] V1 â\89\98 V2 â\86\92 â\9dªG,Lâ\9d« â\8a¢ â¬\88*[h] ð\9d\90\92â\9dªâ\93\90V1.â\93\93[p]V.Tâ\9d«.
/2 width=5 by csx_appl_theta_aux/ qed.