x.pl 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/usr/bin/perl
  2. func hello(n) {
  3. sum(1..n, {|k|
  4. #moebius(k)
  5. liouville(k)
  6. })
  7. }
  8. func foo(n) {
  9. sum(1..n, {|k|
  10. #hello(floor(n/k))
  11. # k.divisors.sum{|d|
  12. #moebius(d)
  13. liouville(k)
  14. # }
  15. })
  16. }
  17. func bar(n) {
  18. sum(1..n, {|k|
  19. k.divisors.sum{|d|
  20. #(-1)**omega(d)
  21. moebius(d.rad)
  22. }
  23. })
  24. }
  25. func hi(n) {
  26. (-1)**(n+1) * n.divisors.sum{|d|
  27. (-1)**omega(d)
  28. }
  29. }
  30. func baz(n) {
  31. sum(1..n, {|k|
  32. #(-1)**bigomega(k) * faulhaber(floor(n/k), 0)
  33. k.divisors.sum{|d|
  34. liouville(k/d) * d
  35. }
  36. })
  37. }
  38. #Sum_{n=1..30000} a(n)/n = 1.31897
  39. # 1.31896
  40. say sum(1..3000, {|k|
  41. hi(k)/k
  42. })
  43. # 0.530710843791156208843791156208843791156208843791
  44. # 0.53071182047204479497294377247 - https://oeis.org/A065469 (-1)^omega(k)
  45. # 0.813663587902956288339028461627423933983881428108
  46. # 0.65797362673929 - https://oeis.org/A182448 (-1)^bigomega(k)
  47. #
  48. #say 30.of(bar)
  49. #say 30.of(baz)
  50. #~ say prod(1..1000, {|k|
  51. #~ (1 - 1/(prime(k)**3 - 1))
  52. #~ })
  53. __END__
  54. #say 20.of(baz)
  55. #say 80.of(hi) #.map_kv{|k,v| (-1)**(k+1) * v }
  56. for n in (1..2500) {
  57. say (n, " ", hi(n))
  58. }
  59. __END__
  60. for n in (1..7) {
  61. var t = baz(10**n)
  62. say (n, ' -> ', t, ' -> ', t / faulhaber(10**n, 1))
  63. }
  64. __END__
  65. for k in (1..5) {
  66. say ("L(10^#{k}) = ", foo(10**k))
  67. }
  68. __END__
  69. #say 100.of(foo).accumulate
  70. for n in (1..1e4) {
  71. say foo(n)
  72. }