new laws mult_le_cancel1, mult_le_cancel2
authorpaulson
Thu, 01 Jul 1999 10:32:57 +0200
changeset 6864 32b5d68196d2
parent 6863 6c8bf18f9da9
child 6865 5577ffe4c2f1
new laws mult_le_cancel1, mult_le_cancel2
src/HOL/Arith.ML
--- a/src/HOL/Arith.ML	Wed Jun 30 16:00:06 1999 +0200
+++ b/src/HOL/Arith.ML	Thu Jul 01 10:32:57 1999 +0200
@@ -566,6 +566,15 @@
 qed "mult_less_cancel1";
 Addsimps [mult_less_cancel1, mult_less_cancel2];
 
+Goal "0<k ==> (m*k <= n*k) = (m<=n)";
+by (asm_full_simp_tac (simpset() addsimps [linorder_not_less RS sym]) 1);
+qed "mult_le_cancel2";
+
+Goal "0<k ==> (k*m <= k*n) = (m<=n)";
+by (asm_full_simp_tac (simpset() addsimps [linorder_not_less RS sym]) 1);
+qed "mult_le_cancel1";
+Addsimps [mult_le_cancel1, mult_le_cancel2];
+
 Goal "(Suc k * m < Suc k * n) = (m < n)";
 by (rtac mult_less_cancel1 1);
 by (Simp_tac 1);