lemma jsx_fwd_drops_atom_sn (h) (b) (G):
∀L1,L2. G ⊢ L1 ⊒[h] L2 →
- â\88\80f. ð\9d\90\94â¦\83fâ¦\84 → ⇩*[b,f]L1 ≘ ⋆ → ⇩*[b,f]L2 ≘ ⋆.
+ â\88\80f. ð\9d\90\94â\9dªfâ\9d« → ⇩*[b,f]L1 ≘ ⋆ → ⇩*[b,f]L2 ≘ ⋆.
#h #b #G #L1 #L2 #H elim H -L1 -L2
[ #f #_ #H //
| #I #K1 #K2 #_ #IH #f #Hf #H
lemma jsx_fwd_drops_unit_sn (h) (b) (G):
∀L1,L2. G ⊢ L1 ⊒[h] L2 →
- â\88\80f. ð\9d\90\94â¦\83fâ¦\84 â\86\92 â\88\80I,K1. â\87©*[b,f]L1 â\89\98 K1.â\93¤{I} →
- ∃∃K2. G ⊢ K1 ⊒[h] K2 & ⇩*[b,f]L2 ≘ K2.ⓤ{I}.
+ â\88\80f. ð\9d\90\94â\9dªfâ\9d« â\86\92 â\88\80I,K1. â\87©*[b,f]L1 â\89\98 K1.â\93¤[I] →
+ ∃∃K2. G ⊢ K1 ⊒[h] K2 & ⇩*[b,f]L2 ≘ K2.ⓤ[I].
#h #b #G #L1 #L2 #H elim H -L1 -L2
[ #f #_ #J #Y1 #H
lapply (drops_inv_atom1 … H) -H * #H #_ destruct
lemma jsx_fwd_drops_pair_sn (h) (b) (G):
∀L1,L2. G ⊢ L1 ⊒[h] L2 →
- â\88\80f. ð\9d\90\94â¦\83fâ¦\84 â\86\92 â\88\80I,K1,V. â\87©*[b,f]L1 â\89\98 K1.â\93\91{I}V →
- ∨∨ ∃∃K2. G ⊢ K1 ⊒[h] K2 & ⇩*[b,f]L2 ≘ K2.ⓑ{I}V
- | â\88\83â\88\83K2. G â\8a¢ K1 â\8a\92[h] K2 & â\87©*[b,f]L2 â\89\98 K2.â\93§ & G â\8a¢ â¬\88*[h,V] ð\9d\90\92â¦\83K2â¦\84.
+ â\88\80f. ð\9d\90\94â\9dªfâ\9d« â\86\92 â\88\80I,K1,V. â\87©*[b,f]L1 â\89\98 K1.â\93\91[I]V →
+ ∨∨ ∃∃K2. G ⊢ K1 ⊒[h] K2 & ⇩*[b,f]L2 ≘ K2.ⓑ[I]V
+ | â\88\83â\88\83K2. G â\8a¢ K1 â\8a\92[h] K2 & â\87©*[b,f]L2 â\89\98 K2.â\93§ & G â\8a¢ â¬\88*[h,V] ð\9d\90\92â\9dªK2â\9d«.
#h #b #G #L1 #L2 #H elim H -L1 -L2
[ #f #_ #J #Y1 #X1 #H
lapply (drops_inv_atom1 … H) -H * #H #_ destruct