Accelerating the pace of engineering and science

# Documentation Center

• Trial Software

# isprime

Primality test

### Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.

## Syntax

```isprime(n)
```

## Description

isprime(n) checks whether n is a prime number.

isprime is a fast probabilistic prime number test (Miller-Rabin test). The function returns TRUE when the positive integern is either a prime number or a strong pseudo-prime for 10 independently and randomly chosen bases. Otherwise, isprime returns FALSE.

If n is positive and isprime returns FALSE, then n is guaranteed to be composite. If n is positive and isprime returns TRUE, then n is prime with a very high probability.

Use numlib::proveprime for a prime number test that always returns the correct answer. Note, however, that it is usually much slower than isprime.

isprime() and isprime(1) return FALSE. isprime returns always FALSE if n is a negative integer.

isprime returns an error message if its argument is a number but not an integer. isprime returns a symbolic isprime call if the argument is not a number.

## Examples

### Example 1

The number 989999 is prime:

`isprime(989999)`

`ifactor(989999)`

In contrast to ifactor, isprime can handle large numbers:

`isprime(2^(2^11) + 1)`

isprime() and isprime(1) return FALSE:

`isprime(0), isprime(1)`

Negative numbers yield FALSE as well:

`isprime(-13)`

For non-numeric arguments, a symbolic isprime call is returned:

`delete n: isprime(n)`

## Parameters

 n An arithmetical expression representing an integer

## Return Values

Either TRUE or FALSE, or a symbolic isprime call.

## References

Reference: Michael O. Rabin, Probabilistic algorithms, in J. F. Traub, ed., Algorithms and Complexity, Academic Press, New York, 1976, pp. 21–39.