X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fcontribs%2FLAMBDA-TYPES%2FLevel-1%2FBase%2Fext%2Fpreamble.ma;h=b4c69f299f366435e7fbad576a9d2c8437580691;hb=94873bb61a663b4fca3dc6d07b7bb9f42122003e;hp=0e68a2b7983705d150e0562bb191e502021bd1fc;hpb=824b55e90d08dac757eca02bd46a6effab1e0302;p=helm.git diff --git a/matita/contribs/LAMBDA-TYPES/Level-1/Base/ext/preamble.ma b/matita/contribs/LAMBDA-TYPES/Level-1/Base/ext/preamble.ma index 0e68a2b79..b4c69f299 100644 --- a/matita/contribs/LAMBDA-TYPES/Level-1/Base/ext/preamble.ma +++ b/matita/contribs/LAMBDA-TYPES/Level-1/Base/ext/preamble.ma @@ -123,6 +123,7 @@ alias id "plus_Snm_nSm" = "cic:/Coq/Arith/Plus/plus_Snm_nSm.con". alias id "plus_lt_le_compat" = "cic:/Coq/Arith/Plus/plus_lt_le_compat.con". alias id "plus_lt_compat" = "cic:/Coq/Arith/Plus/plus_lt_compat.con". alias id "lt_S_n" = "cic:/Coq/Arith/Lt/lt_S_n.con". +alias id "minus_n_n" = "cic:/Coq/Arith/Minus/minus_n_n.con". theorem f_equal: \forall A,B:Type. \forall f:A \to B. \forall x,y:A. x = y \to f x = f y. @@ -137,6 +138,12 @@ theorem sym_not_eq: \forall A:Type. \forall x,y:A. x \neq y \to y \neq x. unfold not. intros. apply H. symmetry. assumption. qed. +theorem trans_eq : ∀A:Type.∀x,y,z:A.x=y→y=z→x=z. + intros; + transitivity y; + assumption. +qed. + theorem plus_reg_l: \forall (n,m,p:nat). n + m = n + p \to m = p. intros. apply plus_reg_l; auto. qed. @@ -145,12 +152,10 @@ theorem plus_le_reg_l: \forall p,n,m. p + n <= p + m \to n <= m. intros. apply plus_le_reg_l; auto. qed. -definition sym_equal \def sym_eq. - default "equality" cic:/Coq/Init/Logic/eq.ind cic:/matita/LAMBDA-TYPES/Level-1/Base/ext/preamble/sym_eq.con - cic:/Coq/Init/Logic/trans_eq.con + cic:/matita/LAMBDA-TYPES/Level-1/Base/ext/preamble/trans_eq.con cic:/Coq/Init/Logic/eq_ind.con cic:/Coq/Init/Logic/eq_ind_r.con cic:/matita/LAMBDA-TYPES/Level-1/Base/ext/preamble/f_equal.con