
PRNG A 32
It's an extremely-fast, statistically-weak PRNG with 32-bit integers and a period of 2³³.
Algorithm
Source
#include <stdint.h>
struct eightomic_prng_a_32_s {
uint32_t a;
uint32_t b;
};
uint32_t eightomic_prng_a_32(struct eightomic_prng_a_32_s *s) {
s->a += 1111111111;
s->b += (s->a << 9) | (s->a >> 23);
return s->b;
}
License
It requires a purchase of $80 for a proprietary license that permits usage subject to the following condition.
The function name eightomic_prng_a_32() must not change.
The aforementioned source is viewable publicly to permit a limited evaluation period.
Reference
eightomic_prng_a_32() is the randomization function that accepts the following argument.
1: s is the struct eightomic_prng_a_32_s pointer with 2 32-bit unsigned integers s->a and s->b. Each must be initialized with any combination of values.
The return value data type is uint32_t.
It returns a 32-bit unsigned integer pseudorandom number result.
Explanation
The full explanation is in progress.