org.apache.commons.math.distribution

## Interface IntegerDistribution

All Superinterfaces:
  DiscreteDistribution, Distribution

All Known Subinterfaces:
  BinomialDistribution, HypergeometricDistribution, PascalDistribution, PoissonDistribution, ZipfDistribution

All Known Implementing Classes:
  AbstractIntegerDistribution, BinomialDistributionImpl, HypergeometricDistributionImpl, PascalDistributionImpl, PoissonDistributionImpl, ZipfDistributionImpl

    public interface IntegerDistribution
    extends DiscreteDistribution

Interface for discrete distributions of integer-valued random variables.

Version:
  $Revision: 949535 $ $Date: 2010-05-30 19:00:15 +0200 (dim. 30 mai 2010) $

### Method Summary

Methods
`double` `cumulativeProbability(int x)` For a random variable X whose values are distributed according to this distribution, this method returns P(X ≤ x).
`double` `cumulativeProbability(int x0, int x1)` For this distribution, X, this method returns P(x0 ≤ X ≤ x1).
`int` `inverseCumulativeProbability(double p)` For this distribution, X, this method returns the largest x such that P(X ≤ x) <= p.
`double` `probability(int x)` For a random variable X whose values are distributed according to this distribution, this method returns P(X = x).

### Methods inherited from interface org.apache.commons.math.distribution.DiscreteDistribution

`probability`

### Methods inherited from interface org.apache.commons.math.distribution.Distribution

`cumulativeProbability, cumulativeProbability`

### Method Detail

#### probability

    double probability(int x)

For a random variable X whose values are distributed according to this distribution, this method returns P(X = x). In other words, this method represents the probability mass function for the distribution.

Parameters:
  `x` - the value at which the probability density function is evaluated.
Returns:
  the value of the probability density function at x

#### cumulativeProbability

    double cumulativeProbability(int x)
                                 throws MathException

For a random variable X whose values are distributed according to this distribution, this method returns P(X ≤ x). In other words, this method represents the probability distribution function, or PDF for the distribution.

Parameters:
  `x` - the value at which the PDF is evaluated.
Returns:
  PDF for this distribution.
Throws:
  `MathException` - if the cumulative probability can not be computed due to convergence or other numerical errors.

#### cumulativeProbability

    double cumulativeProbability(int x0,
                               int x1)
                                 throws MathException

For this distribution, X, this method returns P(x0 ≤ X ≤ x1).

Parameters:
  `x0` - the inclusive, lower bound
  `x1` - the inclusive, upper bound
Returns:
  the cumulative probability.
Throws:
  `MathException` - if the cumulative probability can not be computed due to convergence or other numerical errors.
  `java.lang.IllegalArgumentException` - if x0 > x1

#### inverseCumulativeProbability

    int inverseCumulativeProbability(double p)
                                     throws MathException

For this distribution, X, this method returns the largest x such that P(X ≤ x) <= p.

Note that this definition implies:

- If there is a minimum value, `m`, with positive probability under (the density of) X, then `m - 1` is returned by `inverseCumulativeProbability(0).` If there is no such value `m, Integer.MIN_VALUE` is returned.
- If there is a maximum value, `M`, such that P(X ≤ M) =1, then `M` is returned by `inverseCumulativeProbability(1).` If there is no such value, `M, Integer.MAX_VALUE` is returned.

Parameters:
  `p` - the cumulative probability.
Returns:
  the largest x such that P(X ≤ x) <= p
Throws:
  `MathException` - if the inverse cumulative probability can not be computed due to convergence or other numerical errors.
  `java.lang.IllegalArgumentException` - if p is not between 0 and 1 (inclusive)