365 apply simp |
365 apply simp |
366 done |
366 done |
367 |
367 |
368 (* Simplify, when the exponent is a numeral *) |
368 (* Simplify, when the exponent is a numeral *) |
369 |
369 |
370 declare power_0_left [of "number_of w", standard, simp] |
370 lemmas power_0_left_number_of = power_0_left [of "number_of w", standard] |
371 declare zero_le_power_eq [of _ "number_of w", standard, simp] |
371 declare power_0_left_number_of [simp] |
372 declare zero_less_power_eq [of _ "number_of w", standard, simp] |
372 |
373 declare power_le_zero_eq [of _ "number_of w", standard, simp] |
373 lemmas zero_le_power_eq_number_of = |
374 declare power_less_zero_eq [of _ "number_of w", standard, simp] |
374 zero_le_power_eq [of _ "number_of w", standard] |
375 declare zero_less_power_nat_eq [of _ "number_of w", standard, simp] |
375 declare zero_le_power_eq_number_of [simp] |
376 declare power_eq_0_iff [of _ "number_of w", standard, simp] |
376 |
377 declare power_even_abs [of "number_of w" _, standard, simp] |
377 lemmas zero_less_power_eq_number_of = |
|
378 zero_less_power_eq [of _ "number_of w", standard] |
|
379 declare zero_less_power_eq_number_of [simp] |
|
380 |
|
381 lemmas power_le_zero_eq_number_of = |
|
382 power_le_zero_eq [of _ "number_of w", standard] |
|
383 declare power_le_zero_eq_number_of [simp] |
|
384 |
|
385 lemmas power_less_zero_eq_number_of = |
|
386 power_less_zero_eq [of _ "number_of w", standard] |
|
387 declare power_less_zero_eq_number_of [simp] |
|
388 |
|
389 lemmas zero_less_power_nat_eq_number_of = |
|
390 zero_less_power_nat_eq [of _ "number_of w", standard] |
|
391 declare zero_less_power_nat_eq_number_of [simp] |
|
392 |
|
393 lemmas power_eq_0_iff_number_of = power_eq_0_iff [of _ "number_of w", standard] |
|
394 declare power_eq_0_iff_number_of [simp] |
|
395 |
|
396 lemmas power_even_abs_number_of = power_even_abs [of "number_of w" _, standard] |
|
397 declare power_even_abs_number_of [simp] |
|
398 |
378 |
399 |
379 subsection {* An Equivalence for @{term "0 \<le> a^n"} *} |
400 subsection {* An Equivalence for @{term "0 \<le> a^n"} *} |
380 |
401 |
381 lemma even_power_le_0_imp_0: |
402 lemma even_power_le_0_imp_0: |
382 "a ^ (2*k) \<le> (0::'a::{ordered_idom,recpower}) ==> a=0" |
403 "a ^ (2*k) \<le> (0::'a::{ordered_idom,recpower}) ==> a=0" |