prog.sf 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #!/usr/bin/ruby
  2. # Smallest prime divisor of A000058(n) = A007018(n) + 1 (Sylvester's sequence).
  3. # https://oeis.org/A323605
  4. # See also:
  5. # https://en.wikipedia.org/wiki/Sylvester%27s_sequence#Divisibility_and_factorizations
  6. # a(13) <= 2589377038614498251653
  7. # a(13) <= 2872413602289671035947763837
  8. # Are all the terms in Sylvester's sequence squarefree?
  9. func f((0)) { 1 }
  10. func f(n) is cached {
  11. f(n-1)**2 + f(n-1)
  12. #a(n) = a(n-1)^2 + a(n-1), a(0)=1.
  13. }
  14. #say (f(12)+1 % 2589377038614498251653)
  15. var t = 0
  16. for k in (0..30) {
  17. var n = f(k)+1
  18. say (++t, '-> ', n.trial_factor(1e8).first(-1))
  19. }
  20. __END__
  21. 1-> []
  22. 2-> []
  23. 3-> []
  24. 4-> []
  25. 5-> [13]
  26. 6-> []
  27. 7-> [547, 607, 1033]
  28. 8-> [29881, 67003, 9119521]
  29. 9-> []
  30. 10-> [181, 1987]
  31. 11-> [2287, 2271427]
  32. 12-> [73]
  33. 13-> []
  34. 14-> [52387, 5020387]
  35. 15-> [13999, 74203, 9638659, 57218683]
  36. 16-> [17881]
  37. 17-> [128551]
  38. 18-> [635263, 1286773, 21269959]
  39. 19-> []
  40. 20-> []
  41. 21-> [352867]
  42. 22-> []
  43. 23-> []
  44. 24-> [74587]
  45. 25-> []
  46. 26-> []
  47. 27-> [27061]
  48. 28-> [164299, 3229081]
  49. 29-> [20929]
  50. 30-> [1171, 298483, 97562299]