org.deidentifier.arx.reliability

## Class IntervalArithmeticDouble

- java.lang.Object
- - org.deidentifier.arx.reliability.IntervalArithmeticDouble

    public class IntervalArithmeticDouble
    extends java.lang.Object

Interval arithmetic system

Author:
  Fabian Prasser, Raffael Bild

### Field Summary

Fields
`IntervalDouble` `MINUS_ONE` Interval representing minus one
`IntervalDouble` `ONE` Interval representing one
`IntervalDouble` `PI` Interval containing pi
`IntervalDouble` `ZERO` Interval representing zero

### Constructor Summary

Constructors
Constructor and Description
`IntervalArithmeticDouble()`

### Method Summary

All Methods Instance Methods Concrete Methods
`IntervalDouble` `abs(IntervalDouble operand)` Absolute value
`IntervalDouble` `add(IntervalDouble operand1, IntervalDouble operand2)` Addition
`IntervalDouble` `binomialProbability(int n, IntervalDouble p, int k)` Probability mass function of the binomial distribution based on the saddle point expansion described in the manuscript Catherine Loader.
`IntervalDouble` `ceil(IntervalDouble operand)` Ceil
`int` `ceilLowerBoundToInt(IntervalDouble value)` Returns ceil of the lower bound to int
`int` `ceilToInt(IntervalDouble value)` Returns ceil() to int, if clearly defined
`IntervalDouble` `createInterval(double value)` Creates a new interval
`IntervalDouble` `createInterval(double lower, double upper)` Creates a new interval
`IntervalDouble` `createInterval(int value)` Creates a new interval
`IntervalDouble` `div(IntervalDouble operand1, IntervalDouble operand2)` Division
`IntervalDouble` `exp(IntervalDouble operand)` Exp
`IntervalDouble` `floor(IntervalDouble operand)` Floor
`int` `floorLowerBoundToInt(IntervalDouble value)` Returns floor of the lower bound to int
`int` `floorToInt(IntervalDouble value)` Returns floor() to int, if clearly defined
`boolean` `greaterThan(IntervalDouble operand1, IntervalDouble operand2)` Greater than
`IntervalDouble` `inv(IntervalDouble operand)` 1/x
`boolean` `lessThan(IntervalDouble operand1, IntervalDouble operand2)` Less than
`boolean` `lessThanOrEqual(IntervalDouble operand1, IntervalDouble operand2)` Less than
`boolean` `lessThanOrOverlap(IntervalDouble operand1, IntervalDouble operand2)` Less than or overlap
`IntervalDouble` `log(IntervalDouble operand)` Log
`IntervalDouble` `logFactorial(int n)` Log of factorial of n.
`IntervalDouble` `max(IntervalDouble operand1, IntervalDouble operand2)` Max
`IntervalDouble` `min(IntervalDouble operand1, IntervalDouble operand2)` Min
`IntervalDouble` `mult(IntervalDouble operand1, IntervalDouble operand2)` Multiplication
`IntervalDouble` `pow(IntervalDouble operand, int exponent)` Pow
`IntervalDouble` `sqrt(IntervalDouble operand)` Square root
`IntervalDouble` `sub(IntervalDouble operand1, IntervalDouble operand2)` Subtraction

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### ZERO

    public IntervalDouble ZERO

Interval representing zero

#### ONE

    public IntervalDouble ONE

Interval representing one

#### MINUS_ONE

    public IntervalDouble MINUS_ONE

Interval representing minus one

#### PI

    public IntervalDouble PI

Interval containing pi

### Constructor Detail

#### IntervalArithmeticDouble

    public IntervalArithmeticDouble()

### Method Detail

#### abs

    public IntervalDouble abs(IntervalDouble operand)
                       throws IntervalArithmeticException

Absolute value

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### add

    public IntervalDouble add(IntervalDouble operand1,
                              IntervalDouble operand2)
                       throws IntervalArithmeticException

Addition

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### binomialProbability

    public IntervalDouble binomialProbability(int n,
                                              IntervalDouble p,
                                              int k)
                                       throws IntervalArithmeticException

Probability mass function of the binomial distribution based on the saddle point expansion described in the manuscript Catherine Loader. Fast and Accurate Computation of Binomial Probabilities. July 9, 2000.

Parameters:
  `n` -
  `p` -
  `k` -
Returns:
Throws:
  `IntervalArithmeticException`

#### ceil

    public IntervalDouble ceil(IntervalDouble operand)
                        throws IntervalArithmeticException

Ceil

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### ceilLowerBoundToInt

    public int ceilLowerBoundToInt(IntervalDouble value)
                            throws IntervalArithmeticException

Returns ceil of the lower bound to int

Parameters:
  `value` -
Returns:
Throws:
  `IntervalArithmeticException`

#### ceilToInt

    public int ceilToInt(IntervalDouble value)
                  throws IntervalArithmeticException

Returns ceil() to int, if clearly defined

Parameters:
  `value` -
Returns:
Throws:
  `IntervalArithmeticException`

#### createInterval

    public IntervalDouble createInterval(double value)
                                  throws IntervalArithmeticException

Creates a new interval

Parameters:
  `value` -
Returns:
Throws:
  `IntervalArithmeticException`

#### createInterval

    public IntervalDouble createInterval(double lower,
                                         double upper)
                                  throws IntervalArithmeticException

Creates a new interval

Parameters:
  `lower` -
  `upper` -
Returns:
Throws:
  `IntervalArithmeticException`

#### createInterval

    public IntervalDouble createInterval(int value)

Creates a new interval

Parameters:
  `value` -
Returns:
Throws:
  `IntervalArithmeticException`

#### div

    public IntervalDouble div(IntervalDouble operand1,
                              IntervalDouble operand2)
                       throws IntervalArithmeticException

Division

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### exp

    public IntervalDouble exp(IntervalDouble operand)
                       throws IntervalArithmeticException

Exp

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### floor

    public IntervalDouble floor(IntervalDouble operand)
                         throws IntervalArithmeticException

Floor

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### floorLowerBoundToInt

    public int floorLowerBoundToInt(IntervalDouble value)
                             throws IntervalArithmeticException

Returns floor of the lower bound to int

Parameters:
  `value` -
Returns:
Throws:
  `IntervalArithmeticException`

#### floorToInt

    public int floorToInt(IntervalDouble value)
                   throws IntervalArithmeticException

Returns floor() to int, if clearly defined

Parameters:
  `value` -
Returns:
Throws:
  `IntervalArithmeticException`

#### greaterThan

    public boolean greaterThan(IntervalDouble operand1,
                               IntervalDouble operand2)
                        throws IntervalArithmeticException

Greater than

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### inv

    public IntervalDouble inv(IntervalDouble operand)
                       throws IntervalArithmeticException

1/x

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### lessThan

    public boolean lessThan(IntervalDouble operand1,
                            IntervalDouble operand2)
                     throws IntervalArithmeticException

Less than

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### lessThanOrEqual

    public boolean lessThanOrEqual(IntervalDouble operand1,
                                   IntervalDouble operand2)
                            throws IntervalArithmeticException

Less than

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### lessThanOrOverlap

    public boolean lessThanOrOverlap(IntervalDouble operand1,
                                     IntervalDouble operand2)

Less than or overlap

Parameters:
  `operand1` -
  `operand2` -
Returns:

#### log

    public IntervalDouble log(IntervalDouble operand)
                       throws IntervalArithmeticException

Log

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### logFactorial

    public IntervalDouble logFactorial(int n)
                                throws IntervalArithmeticException

Log of factorial of n. Derived from class BinomialDistribution in SMILE

Throws:
  `IntervalArithmeticException`

#### max

    public IntervalDouble max(IntervalDouble operand1,
                              IntervalDouble operand2)
                       throws IntervalArithmeticException

Max

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### min

    public IntervalDouble min(IntervalDouble operand1,
                              IntervalDouble operand2)
                       throws IntervalArithmeticException

Min

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### mult

    public IntervalDouble mult(IntervalDouble operand1,
                               IntervalDouble operand2)
                        throws IntervalArithmeticException

Multiplication

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`

#### pow

    public IntervalDouble pow(IntervalDouble operand,
                              int exponent)
                       throws IntervalArithmeticException

Pow

Parameters:
  `operand` -
  `exponent` -
Returns:
Throws:
  `IntervalArithmeticException`

#### sqrt

    public IntervalDouble sqrt(IntervalDouble operand)
                        throws IntervalArithmeticException

Square root

Parameters:
  `operand` -
Returns:
Throws:
  `IntervalArithmeticException`

#### sub

    public IntervalDouble sub(IntervalDouble operand1,
                              IntervalDouble operand2)
                       throws IntervalArithmeticException

Subtraction

Parameters:
  `operand1` -
  `operand2` -
Returns:
Throws:
  `IntervalArithmeticException`