]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/dama/valued_lattice.ma
for csc
[helm.git] / helm / software / matita / dama / valued_lattice.ma
index 53855975d1f277ef24ef8fa973ee006febd6a2d7..610bf7d359b65650cb84a838a4f3149bbcb973ca 100644 (file)
@@ -52,7 +52,7 @@ intros (R L x y z H H1);
 apply (plus_cancr ??? (μ(z∧x)));
 apply (eq_trans ?? (μz + μx) ? (modular_mjp ????));
 apply (eq_trans ?? (μz + μy) ? H); clear H;
-apply (eq_trans ?? (μ(z∨y) + μ(z∧y))); [1: apply eq_sym; apply modular_mjp]
+apply (eq_trans ?? (μ(z∨y) + μ(z∧y)) ? (modular_mjp ??z y));
 apply (plus_cancl ??? (- μ (z ∨ y)));
 apply (eq_trans ?? ? ? (plus_assoc ????));
 apply (eq_trans ?? (0+ μ(z∧y)) ? (opp_inverse ??));
@@ -68,20 +68,22 @@ lapply (modular_mjp ?? y z) as H1;
 apply (plus_cancr ??? (μ(y ∧ z)));
 apply (eq_trans ?? ? ? H1); clear H1;
 apply (eq_trans ?? ? ?? (plus_assoc ????));   
-apply (eq_trans ?? (μy+ μz + 0)); [2: apply feq_plusl; apply eq_sym; apply opp_inverse]   
+apply (eq_trans ?? (μy+ μz + 0) ?? (opp_inverse ??));   
 apply (eq_trans ?? ? ?? (plus_comm ???));
 apply (eq_trans ?? (μy + μz) ?? (eq_sym ??? (zero_neutral ??)));
 apply eq_reflexive.
 qed.
 
 lemma modularm: ∀R.∀L:vlattice R.∀y,z:L. μ(y∧z) ≈ μy + μz + -μ (y ∨ z).
+(* CSC: questa è la causa per cui la hint per cercare i duplicati ci sta 1 mese *)
+(* exact modularj; *)
 intros (R L y z);
 lapply (modular_mjp ?? y z) as H1;
 apply (plus_cancl ??? (μ(y ∨ z)));
 apply (eq_trans ?? ? ? H1); clear H1;
 apply (eq_trans ????? (plus_comm ???));
-apply (eq_trans ?? ? ?? (plus_assoc ????));   
-apply (eq_trans ?? (μy+ μz + 0)); [2: apply feq_plusl; apply eq_sym; apply opp_inverse]   
+apply (eq_trans ?? ? ?? (plus_assoc ????));    
+apply (eq_trans ?? (μy+ μz + 0) ?? (opp_inverse ??));   
 apply (eq_trans ?? ? ?? (plus_comm ???));
 apply (eq_trans ?? (μy + μz) ?? (eq_sym ??? (zero_neutral ??)));
 apply eq_reflexive.
@@ -90,14 +92,12 @@ qed.
 lemma modularmj: ∀R.∀L:vlattice R.∀x,y,z:L.μ(x∧(y∨z))≈(μx + μ(y ∨ z) + - μ(x∨(y∨z))).
 intros (R L x y z);
 lapply (modular_mjp ?? x (y ∨ z)) as H1;
-apply (eq_trans ?? (μ(x∨(y∨z))+ μ(x∧(y∨z)) +-μ(x∨(y∨z)))); [2: apply feq_plusr; apply H1;] clear H1;
+apply (eq_trans ?? (μ(x∨(y∨z))+ μ(x∧(y∨z)) +-μ(x∨(y∨z))) ?? (feq_plusr ???? H1)); clear H1;
 apply (eq_trans ?? ? ?? (plus_comm ???));
-(* apply (eq_trans ?? (0+μ(x∧(y∧z))) ?? (opp_inverse ??)); ASSERT FALSE *)
-apply (eq_trans ?? (- μ(x∨(y∨z))+ μ(x∨(y∨z))+ μ(x∧(y∨z)))); [2: apply eq_sym; apply plus_assoc;]
-apply (eq_trans ?? (0+μ(x∧(y∨z)))); [2: apply feq_plusr; apply eq_sym; apply opp_inverse;]
-(* apply (eq_trans ?? ? ? (eq_refl ??) (zero_neutral ??)); ASSERT FALSE *)
-apply (eq_trans ?? (μ(x∧(y∨z)))); [apply eq_reflexive]
-apply eq_sym; apply zero_neutral.
+apply (eq_trans ?? (- μ(x∨(y∨z))+ μ(x∨(y∨z))+ μ(x∧(y∨z))) ?? (plus_assoc ????));
+apply (eq_trans ?? (0+μ(x∧(y∨z))) ?? (opp_inverse ??));
+apply (eq_trans ?? (μ(x∧(y∨z))) ?? (zero_neutral ??));
+apply eq_reflexive.
 qed.
 
 lemma modularjm: ∀R.∀L:vlattice R.∀x,y,z:L.μ(x∨(y∧z))≈(μx + μ(y ∧ z) + - μ(x∧(y∧z))).
@@ -105,8 +105,8 @@ intros (R L x y z);
 lapply (modular_mjp ?? x (y ∧ z)) as H1;
 apply (eq_trans ?? (μ(x∧(y∧z))+ μ(x∨(y∧z)) +-μ(x∧(y∧z)))); [2: apply feq_plusr; apply (eq_trans ???? (plus_comm ???)); apply H1] clear H1;
 apply (eq_trans ?? ? ?? (plus_comm ???));
-apply (eq_trans ?? (- μ(x∧(y∧z))+ μ(x∧(y∧z))+ μ(x∨y∧z))); [2: apply eq_sym; apply plus_assoc]
-apply (eq_trans ?? (0+ μ(x∨y∧z))); [2: apply feq_plusr; apply eq_sym; apply opp_inverse]
+apply (eq_trans ?? (- μ(x∧(y∧z))+ μ(x∧(y∧z))+ μ(x∨y∧z)) ?? (plus_assoc ????));
+apply (eq_trans ?? (0+ μ(x∨y∧z)) ?? (opp_inverse ??));
 apply eq_sym; apply zero_neutral;
 qed.