carmichael_m-1_is_power_cached.pl 969 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/usr/bin/perl
  2. # Carmichael numbers n such that n-1 is a perfect power.
  3. # https://oeis.org/A265328
  4. use 5.020;
  5. use strict;
  6. use warnings;
  7. use Storable;
  8. use Math::GMPz;
  9. use ntheory qw(:all);
  10. #use Math::Sidef qw(is_fibonacci);
  11. #use Math::Prime::Util::GMP;
  12. use experimental qw(signatures);
  13. my $carmichael_file = "cache/factors-carmichael.storable";
  14. my $carmichael = retrieve($carmichael_file);
  15. my $t = Math::GMPz::Rmpz_init();
  16. while(my($key, $value) = each %$carmichael) {
  17. Math::GMPz::Rmpz_set_str($t, $key, 10);
  18. Math::GMPz::Rmpz_sub_ui($t, $t, 1);
  19. if (Math::GMPz::Rmpz_perfect_power_p($t)) {
  20. say $key;
  21. }
  22. }
  23. __END__
  24. 12062716067698821000001
  25. 20717489165917230086401
  26. 211215936967181638848001
  27. 411354705193473163968001
  28. 14295706553536348081491001
  29. 520417541686202544384000001
  30. 32490089562753934948660824001
  31. 782293837499544845175052968001
  32. 611009032634107957276386802479001
  33. 26079495962445633235872174137208001
  34. 2612444951766966131992650907329921024001