src/HOL/Integ/IntDef.thy
changeset 15251 bb6f072c8d10
parent 15169 2b5da07a0b89
child 15300 7dd5853a4812
equal deleted inserted replaced
15250:217bececa2bd 15251:bb6f072c8d10
   342 
   342 
   343 
   343 
   344 subsection{*Strict Monotonicity of Multiplication*}
   344 subsection{*Strict Monotonicity of Multiplication*}
   345 
   345 
   346 text{*strict, in 1st argument; proof is by induction on k>0*}
   346 text{*strict, in 1st argument; proof is by induction on k>0*}
   347 lemma zmult_zless_mono2_lemma [rule_format]:
   347 lemma zmult_zless_mono2_lemma:
   348      "i<j ==> 0<k --> int k * i < int k * j"
   348      "i<j ==> 0<k ==> int k * i < int k * j"
   349 apply (induct_tac "k", simp)
   349 apply (induct "k", simp)
   350 apply (simp add: int_Suc)
   350 apply (simp add: int_Suc)
   351 apply (case_tac "n=0")
   351 apply (case_tac "k=0")
   352 apply (simp_all add: zadd_zmult_distrib int_Suc0_eq_1 order_le_less)
   352 apply (simp_all add: zadd_zmult_distrib int_Suc0_eq_1 order_le_less)
   353 apply (simp add: zadd_zless_mono int_Suc0_eq_1 order_le_less)
   353 apply (simp add: zadd_zless_mono int_Suc0_eq_1 order_le_less)
   354 done
   354 done
   355 
   355 
   356 lemma zero_le_imp_eq_int: "0 \<le> k ==> \<exists>n. k = int n"
   356 lemma zero_le_imp_eq_int: "0 \<le> k ==> \<exists>n. k = int n"