]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/syntax/lenv.ma
some improvements before setting up the exclusion binder
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / syntax / lenv.ma
index cfefa7fd876f9ac5f317cc08935474d666b389f2..7b6bc80eb76ef3c88841c21ba46e1884e450e672 100644 (file)
 (**************************************************************************)
 
 include "basic_2/notation/constructors/star_0.ma".
+include "basic_2/notation/constructors/dxitem_2.ma".
+include "basic_2/notation/constructors/dxbind1_2.ma".
 include "basic_2/notation/constructors/dxbind2_3.ma".
+include "basic_2/notation/constructors/dxvoid_1.ma".
 include "basic_2/notation/constructors/dxabbr_2.ma".
 include "basic_2/notation/constructors/dxabst_2.ma".
-include "basic_2/syntax/term.ma".
+include "basic_2/syntax/bind.ma".
 
 (* LOCAL ENVIRONMENTS *******************************************************)
 
@@ -28,10 +31,16 @@ inductive lenv: Type[0] ≝
 
 interpretation "sort (local environment)"
    'Star = LAtom.
-
+(*
+interpretation "local environment binding construction (unary)"
+   'DxBind1 L I = (LUnit L I).
+*)
 interpretation "local environment binding construction (binary)"
    'DxBind2 L I T = (LPair L I T).
-
+(*
+interpretation "void (local environment)"
+   'DxVoid L = (LPair L Void).
+*)
 interpretation "abbreviation (local environment)"
    'DxAbbr L T = (LPair L Abbr T).
 
@@ -56,6 +65,9 @@ lemma eq_lenv_dec: ∀L1,L2:lenv. Decidable (L1 = L2).
 ]
 qed-.
 
+lemma cfull_dec: ∀L,T1,T2. Decidable (cfull L T1 T2).
+/2 width=1 by or_introl/ qed-.
+
 (* Basic inversion lemmas ***************************************************)
 
 fact destruct_lpair_lpair_aux: ∀I1,I2,L1,L2,V1,V2. L1.ⓑ{I1}V1 = L2.ⓑ{I2}V2 →
@@ -71,5 +83,5 @@ lemma discr_lpair_x_xy: ∀I,V,L. L = L.ⓑ{I}V → ⊥.
 ]
 qed-.
 
-lemma discr_lpair_xy_x: ∀I,V,L. L.ⓑ{I}V = L→ ⊥.
+lemma discr_lpair_xy_x: ∀I,V,L. L.ⓑ{I}V = L → ⊥.
 /2 width=4 by discr_lpair_x_xy/ qed-.