add lemma power_less_imp_less_base
authorhuffman
Tue, 08 May 2007 00:50:55 +0200
changeset 22853 7f000a385606
parent 22852 2490d4b4671a
child 22854 51087b1cc77d
add lemma power_less_imp_less_base
src/HOL/Power.thy
--- a/src/HOL/Power.thy	Mon May 07 23:07:04 2007 +0200
+++ b/src/HOL/Power.thy	Tue May 08 00:50:55 2007 +0200
@@ -302,6 +302,18 @@
       by (simp add: linorder_not_less [symmetric])
  qed
 
+lemma power_less_imp_less_base:
+  fixes a b :: "'a::{ordered_semidom,recpower}"
+  assumes less: "a ^ n < b ^ n"
+  assumes nonneg: "0 \<le> b"
+  shows "a < b"
+proof (rule contrapos_pp [OF less])
+  assume "~ a < b"
+  hence "b \<le> a" by (simp only: linorder_not_less)
+  hence "b ^ n \<le> a ^ n" using nonneg by (rule power_mono)
+  thus "~ a ^ n < b ^ n" by (simp only: linorder_not_less)
+qed
+
 lemma power_inject_base:
      "[| a ^ Suc n = b ^ Suc n; 0 \<le> a; 0 \<le> b |]
       ==> a = (b::'a::{ordered_semidom,recpower})"