This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-statistics.git

commit 1fb42314d59c2533f4021afabea6b0475afd760a
Author: Alex Herbert <aherb...@apache.org>
AuthorDate: Mon Aug 2 21:53:51 2021 +0100

    Move default probability(x0, x1) method to interface
---
 .../distribution/AbstractDiscreteDistribution.java        | 15 ---------------
 .../statistics/distribution/DiscreteDistribution.java     | 12 ++++++++++--
 2 files changed, 10 insertions(+), 17 deletions(-)

diff --git 
a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
 
b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
index 8779a34..ff76dc7 100644
--- 
a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
+++ 
b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/AbstractDiscreteDistribution.java
@@ -26,21 +26,6 @@ import 
org.apache.commons.rng.sampling.distribution.InverseTransformDiscreteSamp
  */
 abstract class AbstractDiscreteDistribution
     implements DiscreteDistribution {
-    /**
-     * {@inheritDoc}
-     *
-     * The default implementation uses the identity
-     * {@code P(x0 < X <= x1) = P(X <= x1) - P(X <= x0)}
-     */
-    @Override
-    public double probability(int x0,
-                              int x1) {
-        if (x0 > x1) {
-            throw new 
DistributionException(DistributionException.INVALID_RANGE_LOW_GT_HIGH,
-                                            x0, x1);
-        }
-        return cumulativeProbability(x1) - cumulativeProbability(x0);
-    }
 
     /**
      * {@inheritDoc}
diff --git 
a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/DiscreteDistribution.java
 
b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/DiscreteDistribution.java
index 4c22b8a..1fbc666 100644
--- 
a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/DiscreteDistribution.java
+++ 
b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/DiscreteDistribution.java
@@ -37,15 +37,23 @@ public interface DiscreteDistribution {
     /**
      * For a random variable {@code X} whose values are distributed according
      * to this distribution, this method returns {@code P(x0 < X <= x1)}.
+     * The default implementation uses the identity
+     * {@code P(x0 < X <= x1) = P(X <= x1) - P(X <= x0)}
      *
      * @param x0 Lower bound (exclusive).
      * @param x1 Upper bound (inclusive).
      * @return the probability that a random variable with this distribution
-     * will take a value between {@code x0} and {@code x1}, excluding the lower
+     * takes a value between {@code x0} and {@code x1},  excluding the lower
      * and including the upper endpoint.
      * @throws IllegalArgumentException if {@code x0 > x1}.
      */
-    double probability(int x0, int x1);
+    default double probability(int x0,
+                               int x1) {
+        if (x0 > x1) {
+            throw new 
DistributionException(DistributionException.INVALID_RANGE_LOW_GT_HIGH, x0, x1);
+        }
+        return cumulativeProbability(x1) - cumulativeProbability(x0);
+    }
 
     /**
      * For a random variable {@code X} whose values are distributed according

Reply via email to