]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/library/logic/equality.ma
all initialization code is now in the new matitaInit.ml module.
[helm.git] / helm / matita / library / logic / equality.ma
index 0be69f9b7e3054e93cc5fc72270739a46ebcd06d..a5d2f0d1e461cd5c02e95aa5f2eb1ec04f96d5fd 100644 (file)
@@ -19,11 +19,14 @@ include "higher_order_defs/relations.ma".
 inductive eq (A:Type) (x:A) : A \to Prop \def
     refl_eq : eq A x x.
 
+(*CSC: the URI must disappear: there is a bug now *)
 interpretation "leibnitz's equality"
    'eq x y = (cic:/matita/logic/equality/eq.ind#xpointer(1/1) _ x y).
-alias symbol "eq" (instance 0) = "leibnitz's equality".
+(*CSC: the URI must disappear: there is a bug now *)
+interpretation "leibnitz's non-equality"
+  'neq x y = (cic:/matita/logic/connectives/Not.con
+    (cic:/matita/logic/equality/eq.ind#xpointer(1/1) _ x y)).
 
-    
 theorem reflexive_eq : \forall A:Type. reflexive A (eq A).
 simplify.intros.apply refl_eq.
 qed.
@@ -56,12 +59,12 @@ default "equality"
  cic:/matita/logic/equality/eq_elim_r.con. 
  
 theorem eq_f: \forall  A,B:Type.\forall f:A\to B.
-\forall x,y:A. x=y \to (f x)=(f y).
+\forall x,y:A. x=y \to f x = f y.
 intros.elim H.reflexivity.
 qed.
 
 theorem eq_f2: \forall  A,B,C:Type.\forall f:A\to B \to C.
 \forall x1,x2:A. \forall y1,y2:B.
-x1=x2 \to y1=y2 \to (f x1 y1)=(f x2 y2).
+x1=x2 \to y1=y2 \to f x1 y1 = f x2 y2.
 intros.elim H1.elim H.reflexivity.
 qed.