(* *)
(**************************************************************************)
-set "baseuri" "cic:/matita/LAMBDA-TYPES/Base-1/preamble".
-
-include' "../../../legacy/coq.ma".
+include "coq.ma".
alias symbol "eq" = "Coq's leibnitz's equality".
alias symbol "leq" = "Coq's natural 'less or equal to'".
alias id "I" = "cic:/Coq/Init/Logic/True.ind#xpointer(1/1/1)".
alias id "land" = "cic:/Coq/Init/Logic/and.ind#xpointer(1/1)".
alias id "le" = "cic:/Coq/Init/Peano/le.ind#xpointer(1/1)".
+alias id "le_ind" = "cic:/Coq/Init/Peano/le_ind.con".
alias id "le_lt_n_Sm" = "cic:/Coq/Arith/Lt/le_lt_n_Sm.con".
alias id "le_lt_or_eq" = "cic:/Coq/Arith/Lt/le_lt_or_eq.con".
alias id "le_n" = "cic:/Coq/Init/Peano/le.ind#xpointer(1/1/1)".
alias id "le_plus_minus" = "cic:/Coq/Arith/Minus/le_plus_minus.con".
alias id "le_plus_minus_r" = "cic:/Coq/Arith/Minus/le_plus_minus_r.con".
alias id "le_plus_r" = "cic:/Coq/Arith/Plus/le_plus_r.con".
+alias id "le_pred_n" = "cic:/Coq/Arith/Le/le_pred_n.con".
alias id "le_S" = "cic:/Coq/Init/Peano/le.ind#xpointer(1/1/2)".
alias id "le_S_n" = "cic:/Coq/Arith/Le/le_S_n.con".
alias id "le_Sn_n" = "cic:/Coq/Arith/Le/le_Sn_n.con".
unfold not. intros. apply H. symmetry. assumption.
qed.
+theorem trans_eq : \forall A:Type. \forall x,y,z:A. x=y \to y=z \to x=z.
+ intros. transitivity y; assumption.
+qed.
+
theorem plus_reg_l: \forall n,m,p. n + m = n + p \to m = p.
- intros. apply plus_reg_l; auto.
+ intros. apply plus_reg_l; autobatch.
qed.
theorem plus_le_reg_l: \forall p,n,m. p + n <= p + m \to n <= m.
- intros. apply plus_le_reg_l; auto.
+ intros. apply plus_le_reg_l; autobatch.
qed.