## SYNOPSIS

**matho-primes**[start [stop] or "all"] ["twin"] ["pal" [base]]

**matho-primes**[-htuv] [-c count] [-m number] [-p base] [start [stop]]

## DESCRIPTION

This command-line utility is optionally part of the**mathomatic**(1) package. It quickly computes any number of consecutive prime numbers using a windowing, memory efficient sieve of Eratosthenes algorithm, dumping them to standard output. They are displayed one prime per line in ascending order, unless the "twin" option is specified, which displays only twin primes, two primes per line.

Generates up to 18 decimal digit primes,
or whatever is the number of digits of precision for a floating point
**long double**
in the C compiler used to compile this utility.
Note that this utility might be compiled to use only double precision floating point,
if long double precision is not fully supported by the C compiler or hardware,
allowing at most 15 decimal digit primes in that case.

Ways to verify that this utility is working are to pipe the output into the Unix "factor" utility,
or compare the output with the BSD Games "primes" utility, using the supplied shell script:
**examples/testprimes.**

All numbers displayed by this utility are decimal (base 10) prime numbers. A prime number is an integer that cannot be factored.

A range may be
specified on the command line, otherwise the starting number and
the number of primes to output is prompted for.
The range is
**start**
to
**stop**
inclusive, and
**stop**
must
be greater than or equal to
**start.**

If the
**-c**
option is specified, the number of lines of primes displayed is limited to the
decimal count that follows this option.

If the
**-t**
or "twin" option is specified on the command line,
only
**twin primes**
will be displayed.
Twin primes are two primes that differ in value by 2.
Each twin pair is displayed together on the same line separated by a space character.

If the
**-p**
or "pal" option is specified on the command line,
only
**palindromic primes**
are displayed.
Palindromes are symmetrical, they read exactly the same forward and backward.
The palindromic number
**base**
may be specified, the default is base 10.
The
**base**
can be any integer greater than 1.
Primes are always displayed in decimal (base 10).

The version number and
short help on the allowed command-line parameters and usage information
are displayed when given the
**-h**
option.

With the
**-u**
option, all output (standard output and standard error output)
is set to be unbuffered, making all output happen immediately,
instead of when the output buffer is full or when the program terminates
or waits for input.

The
**-m**
option changes the memory size of the prime number sieve window.
It is followed by a decimal, floating point number which is a multiplier
of the default window size (2 megabytes).
It is possible that changing the memory size may speed up the total run time a bit;
otherwise there is no reason to use this option, and its use is not recommended.

The
**-v**
option simply displays the program name and version number, and then exits successfully.

## REPORTING BUGS

If you find a bug, please report it to the author or at "https://launchpad.net/mathomatic".