]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/apps_2/models/li.ma
update in ground_2, static_2, basic_2, apps_2, alpha_1
[helm.git] / matita / matita / contribs / lambdadelta / apps_2 / models / li.ma
index f0f2c0f6366c6fa57b13a1c958dca0db05365811..441b8b37733804ba376bb3641898e273300a68f2 100644 (file)
@@ -20,9 +20,9 @@ include "apps_2/notation/models/inwbrackets_4.ma".
 
 inductive li (M) (gv): relation2 lenv (evaluation M) ≝
 | li_atom: ∀lv. li M gv (⋆) lv
-| li_abbr: ∀lv,d,L,V. li M gv L lv → ⟦V⟧[gv, lv] = d → li M gv (L.ⓓV) (⫯[0←d]lv)
+| li_abbr: ∀lv,d,L,V. li M gv L lv → ⟦V⟧[gv,lv] = d → li M gv (L.ⓓV) (⫯[0←d]lv)
 | li_abst: ∀lv,d,L,W. li M gv L lv → li M gv (L.ⓛW) (⫯[0←d]lv)
-| li_unit: ∀lv,d,I,L. li M gv L lv → li M gv (L.ⓤ{I}) (⫯[0←d]lv)
+| li_unit: ∀lv,d,I,L. li M gv L lv → li M gv (L.ⓤ[I]) (⫯[0←d]lv)
 | li_veq : ∀lv1,lv2,L. li M gv L lv1 → lv1 ≗ lv2 → li M gv L lv2
 .
 
@@ -31,7 +31,7 @@ interpretation "local environment interpretation (model)"
 
 (* Basic inversion lemmas ***************************************************)
 
-fact li_inv_abbr_aux (M) (gv): is_model M → 
+fact li_inv_abbr_aux (M) (gv): is_model M →
                                ∀v,Y. v ϵ ⟦Y⟧{M}[gv] → ∀L,V. Y = L.ⓓV →
                                ∃∃lv. lv ϵ ⟦L⟧[gv] & ⫯[0←⟦V⟧[gv,lv]]lv ≗ v.
 #M #gv #HM #v #Y #H elim H -v -Y
@@ -72,7 +72,7 @@ lemma li_inv_abst (M) (gv): is_model M →
 /2 width=4 by li_inv_abst_aux/ qed-.
 
 fact li_inv_unit_aux (M) (gv): is_model M →
-                               ∀v,Y. v ϵ ⟦Y⟧{M}[gv] → ∀I,L. Y = L.ⓤ{I} →
+                               ∀v,Y. v ϵ ⟦Y⟧{M}[gv] → ∀I,L. Y = L.ⓤ[I] →
                                ∃∃lv,d. lv ϵ ⟦L⟧[gv] & ⫯[0←d]lv ≗ v.
 #M #gv #HM #v #Y #H elim H -v -Y
 [ #lv #J #K #H destruct
@@ -87,14 +87,14 @@ fact li_inv_unit_aux (M) (gv): is_model M →
 qed-.
 
 lemma li_inv_unit (M) (gv): is_model M →
-                            ∀v,I,L. v ϵ ⟦L.ⓤ{I}⟧{M}[gv] →
+                            ∀v,I,L. v ϵ ⟦L.ⓤ[I]⟧{M}[gv] →
                             ∃∃lv,d. lv ϵ ⟦L⟧[gv] & ⫯[0←d]lv ≗ v.
 /2 width=4 by li_inv_unit_aux/ qed-.
 
 (* Advanced forward lemmas **************************************************)
 
 lemma li_fwd_bind (M) (gv): is_model M →
-                            ∀v,I,L. v ϵ ⟦L.ⓘ{I}⟧{M}[gv] →
+                            ∀v,I,L. v ϵ ⟦L.ⓘ[I]⟧{M}[gv] →
                             ∃∃lv,d. lv ϵ ⟦L⟧[gv] & ⫯[0←d]lv ≗ v.
 #M #gv #HM #v * [ #I | * #V ] #L #H
 [ /2 width=2 by li_inv_unit/
@@ -113,7 +113,7 @@ lemma li_repl (M) (L): is_model M ->
 | #lv1 #d #K #V #_ #Hd #IH #gv2 #Hgv #lv2 #Hlv destruct
   @li_veq [2: /4 width=4 by li_abbr, veq_refl/ | skip ] -IH
   @(veq_canc_sn … Hlv) -Hlv //
-  /4 width=1 by ti_comp, vlift_comp, (* 2x *) veq_refl/
+  /4 width=1 by ti_comp, vpush_comp, (* 2x *) veq_refl/
 | #lv1 #d #K #W #_ #IH #gv2 #Hgv #lv2 #Hlv
   @li_veq /4 width=3 by li_abst, veq_refl/
 | #lv1 #d #I #K #_ #IH #gv2 #Hgv #lv2 #Hlv