equal
deleted
inserted
replaced
348 |
348 |
349 lemma power_dvd_imp_le: "[|i^m dvd i^n; (1::nat) < i|] ==> m \<le> n" |
349 lemma power_dvd_imp_le: "[|i^m dvd i^n; (1::nat) < i|] ==> m \<le> n" |
350 apply (rule power_le_imp_le_exp, assumption) |
350 apply (rule power_le_imp_le_exp, assumption) |
351 apply (erule dvd_imp_le, simp) |
351 apply (erule dvd_imp_le, simp) |
352 done |
352 done |
|
353 |
|
354 lemma power_diff: |
|
355 assumes nz: "a ~= 0" |
|
356 shows "n <= m ==> (a::'a::{recpower, field}) ^ (m-n) = (a^m) / (a^n)" |
|
357 by (induct m n rule: diff_induct) |
|
358 (simp_all add: power_Suc nonzero_mult_divide_cancel_left nz) |
|
359 |
353 |
360 |
354 text{*ML bindings for the general exponentiation theorems*} |
361 text{*ML bindings for the general exponentiation theorems*} |
355 ML |
362 ML |
356 {* |
363 {* |
357 val power_0 = thm"power_0"; |
364 val power_0 = thm"power_0"; |