equal
deleted
inserted
replaced
2493 |
2493 |
2494 lemma powr_ge_pzero [simp]: "0 \<le> x powr y" |
2494 lemma powr_ge_pzero [simp]: "0 \<le> x powr y" |
2495 for x y :: real |
2495 for x y :: real |
2496 by (simp add: powr_def) |
2496 by (simp add: powr_def) |
2497 |
2497 |
|
2498 lemma powr_non_neg[simp]: "\<not>a powr x < 0" for a x::real |
|
2499 using powr_ge_pzero[of a x] by arith |
|
2500 |
2498 lemma powr_divide: "0 < x \<Longrightarrow> 0 < y \<Longrightarrow> (x / y) powr a = (x powr a) / (y powr a)" |
2501 lemma powr_divide: "0 < x \<Longrightarrow> 0 < y \<Longrightarrow> (x / y) powr a = (x powr a) / (y powr a)" |
2499 for a b x :: real |
2502 for a b x :: real |
2500 apply (simp add: divide_inverse positive_imp_inverse_positive powr_mult) |
2503 apply (simp add: divide_inverse positive_imp_inverse_positive powr_mult) |
2501 apply (simp add: powr_def exp_minus [symmetric] exp_add [symmetric] ln_inverse) |
2504 apply (simp add: powr_def exp_minus [symmetric] exp_add [symmetric] ln_inverse) |
2502 done |
2505 done |
2603 by (simp add: log_mult divide_inverse log_inverse) |
2606 by (simp add: log_mult divide_inverse log_inverse) |
2604 |
2607 |
2605 lemma powr_gt_zero [simp]: "0 < x powr a \<longleftrightarrow> x \<noteq> 0" |
2608 lemma powr_gt_zero [simp]: "0 < x powr a \<longleftrightarrow> x \<noteq> 0" |
2606 for a x :: real |
2609 for a x :: real |
2607 by (simp add: powr_def) |
2610 by (simp add: powr_def) |
|
2611 |
|
2612 lemma powr_nonneg_iff[simp]: "a powr x \<le> 0 \<longleftrightarrow> a = 0" |
|
2613 for a x::real |
|
2614 by (meson not_less powr_gt_zero) |
2608 |
2615 |
2609 lemma log_add_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> log b x + y = log b (x * b powr y)" |
2616 lemma log_add_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> log b x + y = log b (x * b powr y)" |
2610 and add_log_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> y + log b x = log b (b powr y * x)" |
2617 and add_log_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> y + log b x = log b (b powr y * x)" |
2611 and log_minus_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> log b x - y = log b (x * b powr -y)" |
2618 and log_minus_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> log b x - y = log b (x * b powr -y)" |
2612 and minus_log_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> y - log b x = log b (b powr y / x)" |
2619 and minus_log_eq_powr: "0 < b \<Longrightarrow> b \<noteq> 1 \<Longrightarrow> 0 < x \<Longrightarrow> y - log b x = log b (b powr y / x)" |