You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ah...@apache.org on 2019/06/11 21:05:10 UTC
[commons-rng] 01/03: RNG-98: Added
LongJumpableUniformRandomProvider interface.
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-rng.git
commit a18d3fca15b4604c8a51e1850962426223ea8d87
Author: Alex Herbert <ah...@apache.org>
AuthorDate: Mon Jun 10 21:17:13 2019 +0100
RNG-98: Added LongJumpableUniformRandomProvider interface.
---
.../commons/rng/JumpableUniformRandomProvider.java | 2 +-
...vider.java => LongJumpableUniformRandomProvider.java} | 16 ++++++++++------
2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java b/commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java
index 0d9bfa7..2733b16 100644
--- a/commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java
+++ b/commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java
@@ -17,7 +17,7 @@
package org.apache.commons.rng;
/**
- * Applies to generators that can be advanced a large number of
+ * Applies to generators that can be advanced a large number of
* steps of the output sequence in a single operation.
*
* @since 1.3
diff --git a/commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java b/commons-rng-client-api/src/main/java/org/apache/commons/rng/LongJumpableUniformRandomProvider.java
similarity index 67%
copy from commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java
copy to commons-rng-client-api/src/main/java/org/apache/commons/rng/LongJumpableUniformRandomProvider.java
index 0d9bfa7..fb08a17 100644
--- a/commons-rng-client-api/src/main/java/org/apache/commons/rng/JumpableUniformRandomProvider.java
+++ b/commons-rng-client-api/src/main/java/org/apache/commons/rng/LongJumpableUniformRandomProvider.java
@@ -17,25 +17,29 @@
package org.apache.commons.rng;
/**
- * Applies to generators that can be advanced a large number of
+ * Applies to generators that can be advanced a very large number of
* steps of the output sequence in a single operation.
*
* @since 1.3
*/
-public interface JumpableUniformRandomProvider extends UniformRandomProvider {
+public interface LongJumpableUniformRandomProvider extends JumpableUniformRandomProvider {
/**
- * Creates a copy of the UniformRandomProvider and then advances the
+ * Creates a copy of the JumpableUniformRandomProvider and then advances the
* state of the current instance. The copy is returned.
*
* <p>The current state will be advanced in a single operation by the equivalent of a
* number of sequential calls to a method that updates the state of the provider. The
- * size of the jump is implementation dependent.</p>
+ * size of the long jump is implementation dependent.</p>
*
* <p>Repeat invocations of this method will create a series of generators
* that are uniformly spaced at intervals of the output sequence. Each generator provides
- * non-overlapping output for the length of the jump for use in parallel computations.</p>
+ * non-overlapping output for the length of the long jump for use in parallel computations.</p>
+ *
+ * <p>The returned copy may be jumped {@code m / n} times before overlap with the current
+ * instance where {@code m} is the long jump length and {@code n}
+ * is the jump length of the {@link #jump()} method.
*
* @return A copy of the current state.
*/
- UniformRandomProvider jump();
+ JumpableUniformRandomProvider longJump();
}