equal
deleted
inserted
replaced
420 (insert assms, auto simp add: prime_power_iff intro!: prime_aprimedivisor') |
420 (insert assms, auto simp add: prime_power_iff intro!: prime_aprimedivisor') |
421 |
421 |
422 |
422 |
423 definition mangoldt :: "nat \<Rightarrow> 'a :: real_algebra_1" where |
423 definition mangoldt :: "nat \<Rightarrow> 'a :: real_algebra_1" where |
424 "mangoldt n = (if primepow n then of_real (ln (real (aprimedivisor n))) else 0)" |
424 "mangoldt n = (if primepow n then of_real (ln (real (aprimedivisor n))) else 0)" |
425 |
425 |
|
426 lemma mangoldt_0 [simp]: "mangoldt 0 = 0" |
|
427 by (simp add: mangoldt_def) |
|
428 |
|
429 lemma mangoldt_Suc_0 [simp]: "mangoldt (Suc 0) = 0" |
|
430 by (simp add: mangoldt_def) |
|
431 |
426 lemma of_real_mangoldt [simp]: "of_real (mangoldt n) = mangoldt n" |
432 lemma of_real_mangoldt [simp]: "of_real (mangoldt n) = mangoldt n" |
427 by (simp add: mangoldt_def) |
433 by (simp add: mangoldt_def) |
428 |
434 |
429 lemma mangoldt_sum: |
435 lemma mangoldt_sum: |
430 assumes "n \<noteq> 0" |
436 assumes "n \<noteq> 0" |
479 (auto simp: primepow_def prime_gt_0_nat) |
485 (auto simp: primepow_def prime_gt_0_nat) |
480 hence "aprimedivisor n > 1" by (simp add: prime_gt_Suc_0_nat) |
486 hence "aprimedivisor n > 1" by (simp add: prime_gt_Suc_0_nat) |
481 with True show ?thesis by (auto simp: mangoldt_def abs_if) |
487 with True show ?thesis by (auto simp: mangoldt_def abs_if) |
482 qed (auto simp: mangoldt_def) |
488 qed (auto simp: mangoldt_def) |
483 |
489 |
|
490 lemma Re_mangoldt [simp]: "Re (mangoldt n) = mangoldt n" |
|
491 and Im_mangoldt [simp]: "Im (mangoldt n) = 0" |
|
492 by (simp_all add: mangoldt_def) |
|
493 |
484 lemma abs_mangoldt [simp]: "abs (mangoldt n :: real) = mangoldt n" |
494 lemma abs_mangoldt [simp]: "abs (mangoldt n :: real) = mangoldt n" |
485 using norm_mangoldt[of n, where ?'a = real, unfolded real_norm_def] . |
495 using norm_mangoldt[of n, where ?'a = real, unfolded real_norm_def] . |
486 |
496 |
487 lemma mangoldt_le: |
497 lemma mangoldt_le: |
488 assumes "n > 0" |
498 assumes "n > 0" |