public static bool IsPrime(this BigInteger number) { if (number < 2) { return(false); } if (number % 2 == 0) { return(number == 2); } //var root = Sqrt(number); //for (var i = 3; i <= root; i += 2) //{ // if (number % i == 0) // { // Console.WriteLine("Possible divider: {0} for root: {1}", i, root); // return false; // } //} //return true; var primes = new BigIntegerPrimality(); return(primes.IsPrimeMillerRabin(number)); }
public static bool IsPrime(this BigInteger number) { if (number < 2) return false; if (number % 2 == 0) return (number == 2); //var root = Sqrt(number); //for (var i = 3; i <= root; i += 2) //{ // if (number % i == 0) // { // Console.WriteLine("Possible divider: {0} for root: {1}", i, root); // return false; // } //} //return true; var primes = new BigIntegerPrimality(); return primes.IsPrimeMillerRabin(number); }