# gmp_prob_prime

(PHP 4 >= 4.0.4, PHP 5, PHP 7)

gmp_prob_primeCheck if number is "probably prime"

### Description

int gmp_prob_prime ( GMP `\$a` [, int `\$reps` = 10 ] )

The function uses Miller-Rabin's probabilistic test to check if a number is a prime.

### Parameters

`a`

The number being checked as a prime.

Either a GMP number resource in PHP 5.5 and earlier, a GMP object in PHP 5.6 and later, or a numeric string provided that it is possible to convert the latter to a number.

`reps`

Reasonable values of `reps` vary from 5 to 10 (default being 10); a higher value lowers the probability for a non-prime to pass as a "probable" prime.

Either a GMP number resource in PHP 5.5 and earlier, a GMP object in PHP 5.6 and later, or a numeric string provided that it is possible to convert the latter to a number.

### Return Values

If this function returns 0, `a` is definitely not prime. If it returns 1, then `a` is "probably" prime. If it returns 2, then `a` is surely prime.

### Examples

Example #1 gmp_prob_prime() example

``` <?php// definitely not a primeecho gmp_prob_prime("6") . "\n";// probably a primeecho gmp_prob_prime("1111111111111111111") . "\n";// definitely a primeecho gmp_prob_prime("11") . "\n";?> ```

The above example will output:

```0
1
2
```

``` GMP module should be installed first for this to work. ```
``` <?php    \$max = 2147483647;        \$primesFound = 0;    \$probablePrimes = 0;    for (\$x = 1; \$x <= \$max; \$x++) {        \$primeStatus = gmp_prob_prime(\$x);        if (\$primeStatus == 1) {            \$probablePrimes++;        } else if (\$primeStatus == 2) {            \$primesFound++;        }    }    echo "Total primes found: " . \$primesFound . " between 1 and " . \$max . ". Probable primes in this interval: " . \$probablePrimes;?>Based on that the following results were obtained:1 - 100000      - certain primes found: 9592,     probable: 01 - 1000000     - certain primes found: 78498,    probable: 01 - 10000000    - certain primes found: 78498,    probable: 5860811 - 100000000   - certain primes found: 78498,    probable: 56829571 - 1000000000  - certain primes found: 78498,    probable: 507690361 - 2147483647  - certain primes found: 78498,    probable: 105019067 ```