is_prime

Crates.iois_prime
lib.rsis_prime
version2.0.9
sourcesrc
created_at2017-03-05 02:14:55.944501
updated_at2022-07-16 07:37:26.109705
descriptionFast arbitrary length prime number checker using the Miller-Rabin primality test algorithm
homepagehttps://crates.io/crates/is_prime
repositoryhttps://github.com/alfiedotwtf/is_prime
max_upload_size
id8819
size95,625
gatekeepers (github:rust-vmm:gatekeepers)

documentation

https://docs.rs/is_prime/

README

is_prime

Fast arbitrary length prime number checker using the Miller-Rabin primality test algorithm

This module implements the Miller-Rabin primality test algoritm. Given an arbitrary length integer specified within a string, apply the probabilistic algorithm to check if the integer may be prime.

The documentation for this crate can be found here.

Note: This crate now uses num-bigint rather than ramp, allowing it to work with Stable rather than only Nightly

Examples

extern crate is_prime;
use is_prime::*;

fn main() {
  // The first RSA Prime
  assert!(is_prime("37975227936943673922808872755445627854565536638199") == true);

  // The first RSA Prime + 1
  assert!(is_prime("37975227936943673922808872755445627854565536638200") == false);
}

Support

Please report any bugs or feature requests at:

Feel free to fork the repository and submit pull requests :)

Author

Alfie John <alfie@alfie.wtf>

Warranty

IT COMES WITHOUT WARRANTY OF ANY KIND.

Copyright and License

Copyright (C) 2021 by Alfie John

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License and GNU Free Documentation License as published by the Free Software Foundation, either version 3 of the GPL or 1.3 of the GFDL, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Commit count: 20

cargo fmt