edu.jas.arith
Class PrimeList

java.lang.Object
  extended by edu.jas.arith.PrimeList
All Implemented Interfaces:
java.lang.Iterable<java.math.BigInteger>

public final class PrimeList
extends java.lang.Object
implements java.lang.Iterable<java.math.BigInteger>

List of big primes. Provides an Iterator for generating prime numbers. Similar to ALDES/SAC2 SACPOL.PRIME list.

Author:
Heinz Kredel See Knuth vol 2,page 390, for list of known primes. See ALDES/SAC2 SACPOL.PRIME

Nested Class Summary
static class PrimeList.Range
          Range of probable primes.
 
Field Summary
protected  java.math.BigInteger last
          The last prime in the list.
protected  java.util.List<java.math.BigInteger> val
          The list of probable primes in requested range.
 
Constructor Summary
PrimeList()
          Constructor for PrimeList.
PrimeList(PrimeList.Range r)
          Constructor for PrimeList.
 
Method Summary
protected  boolean checkPrimes()
          Check if the list contains really prime numbers.
protected  boolean checkPrimes(int n)
          Check if the list contains really prime numbers.
 java.math.BigInteger get(int i)
          get prime at index i.
static java.math.BigInteger getLongPrime(int n, int m)
          Method to compute a prime as 2**n - m.
static java.math.BigInteger getMersennePrime(int n)
          Method to compute a Mersenne prime as 2**n - 1.
 java.util.Iterator<java.math.BigInteger> iterator()
          Iterator.
 int size()
          size of current list.
 java.lang.String toString()
          toString.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

val

protected final java.util.List<java.math.BigInteger> val
The list of probable primes in requested range.


last

protected java.math.BigInteger last
The last prime in the list.

Constructor Detail

PrimeList

public PrimeList()
Constructor for PrimeList.


PrimeList

public PrimeList(PrimeList.Range r)
Constructor for PrimeList.

Parameters:
r - size range for primes.
Method Detail

getLongPrime

public static java.math.BigInteger getLongPrime(int n,
                                                int m)
Method to compute a prime as 2**n - m.

Parameters:
n - power for 2.
m - for 2**n - m.
Returns:
2**n - m

getMersennePrime

public static java.math.BigInteger getMersennePrime(int n)
Method to compute a Mersenne prime as 2**n - 1.

Parameters:
n - power for 2.
Returns:
2**n - 1

checkPrimes

protected boolean checkPrimes()
Check if the list contains really prime numbers.


checkPrimes

protected boolean checkPrimes(int n)
Check if the list contains really prime numbers.


toString

public java.lang.String toString()
toString.

Overrides:
toString in class java.lang.Object

size

public int size()
size of current list.


get

public java.math.BigInteger get(int i)
get prime at index i.


iterator

public java.util.Iterator<java.math.BigInteger> iterator()
Iterator.

Specified by:
iterator in interface java.lang.Iterable<java.math.BigInteger>