## Class Probability

• java.lang.Object
• java.lang.Number
• net.sf.tweety.math.probability.Probability
• All Implemented Interfaces:
`java.io.Serializable`

```public class Probability
extends java.lang.Number```
This class represents a probability, i.e. a double in the interval [0,1].
Author:
Matthias Thimm
Serialized Form
• ### Field Summary

Fields
Modifier and Type Field Description
`static Probability` `ONE`
Constant for probability 1
`static double` `PRECISION`
The precision for probabilities.
`static Probability` `ZERO`
Constant for probability 0
• ### Constructor Summary

Constructors
Constructor Description
`Probability​(java.lang.Double value)`
Creates a new probability with the given value
`Probability​(Probability other)`
Creates a new probability from the given probability
• ### Method Summary

Modifier and Type Method Description
`Probability` `add​(Probability other)`
Computes the sum of this and the given probability.
`Probability` `complement()`
Returns the complement of this probability, i.e.
`Probability` `divide​(java.lang.Double other)`
Divides this probability by given value returns the result.
`Probability` `divide​(Probability other)`
Divides this probability by other and returns the result.
`double` `doubleValue()`
`boolean` `equals​(java.lang.Object obj)`
`float` `floatValue()`
`java.lang.Double` `getValue()`
Returns the value of this probability.
`int` `hashCode()`
`int` `intValue()`
`boolean` `isWithinTolerance​(Probability other)`
Checks whether the given probability is "nearly" the same as this probability (given the actual precision).
`long` `longValue()`
`Probability` `mult​(java.lang.Double other)`
Computes the product of this probability and the given number.
`Probability` `mult​(java.lang.Integer other)`
Computes the product of this probability and the given number.
`Probability` `mult​(Probability other)`
Computes the product of this probability and the given probability.
`boolean` `sample()`
Returns a sample wrt.
`java.lang.String` `toString()`
• ### Methods inherited from class java.lang.Number

`byteValue, shortValue`
• ### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`
• ### Field Detail

• #### ONE

`public static final Probability ONE`
Constant for probability 1
• #### ZERO

`public static final Probability ZERO`
Constant for probability 0
• #### PRECISION

`public static final double PRECISION`
The precision for probabilities. TODO: that should go somewhere else.
Constant Field Values
• ### Constructor Detail

• #### Probability

`public Probability​(java.lang.Double value)`
Creates a new probability with the given value
Parameters:
`value` - a double in the interval [0,1]
• #### Probability

`public Probability​(Probability other)`
Creates a new probability from the given probability
Parameters:
`other` - another probability
• ### Method Detail

• #### complement

`public Probability complement()`
Returns the complement of this probability, i.e. a probability of one minus the value of this probability.
Returns:
the complement of this probability.

`public Probability add​(Probability other)`
Computes the sum of this and the given probability.
Parameters:
`other` - a probability.
Returns:
a probability.
• #### mult

`public Probability mult​(java.lang.Double other)`
Computes the product of this probability and the given number.
Parameters:
`other` - a number.
Returns:
a probability.
• #### mult

`public Probability mult​(java.lang.Integer other)`
Computes the product of this probability and the given number.
Parameters:
`other` - a number.
Returns:
a probability.
• #### mult

`public Probability mult​(Probability other)`
Computes the product of this probability and the given probability.
Parameters:
`other` - a probability.
Returns:
a probability.
• #### divide

`public Probability divide​(Probability other)`
Divides this probability by other and returns the result.
Parameters:
`other` - a probability.
Returns:
a probability.
• #### divide

`public Probability divide​(java.lang.Double other)`
Divides this probability by given value returns the result.
Parameters:
`other` - a double value.
Returns:
a probability.
• #### isWithinTolerance

`public boolean isWithinTolerance​(Probability other)`
Checks whether the given probability is "nearly" the same as this probability (given the actual precision).
Parameters:
`other` - some probability
Returns:
"true" if the given probability is "nearly" the same as this one.
• #### sample

`public boolean sample()`
Returns a sample wrt. this probability, i.e. with this probability the value returned is "true", otherwise "false"
Returns:
"true" with this probability.
• #### getValue

`public java.lang.Double getValue()`
Returns the value of this probability.
Returns:
the value of this probability.
• #### doubleValue

`public double doubleValue()`
Specified by:
`doubleValue` in class `java.lang.Number`
• #### floatValue

`public float floatValue()`
Specified by:
`floatValue` in class `java.lang.Number`
• #### intValue

`public int intValue()`
Specified by:
`intValue` in class `java.lang.Number`
• #### longValue

`public long longValue()`
Specified by:
`longValue` in class `java.lang.Number`
• #### toString

`public java.lang.String toString()`
Overrides:
`toString` in class `java.lang.Object`
• #### hashCode

`public int hashCode()`
Overrides:
`hashCode` in class `java.lang.Object`
• #### equals

`public boolean equals​(java.lang.Object obj)`
Overrides:
`equals` in class `java.lang.Object`