|
Dedekind 0.0.0
A structuralist C++23 Module Library
|
A random number as an arrow out of the counts, a sequence on a chain: the hash of a position and a seed (SplitMix64, Steele, Lea and Flood 2014). constexpr, with no state: any position is at hand, a sequence of any length is never stored, and two seeds are two streams. So a law can be asked of random inputs in a static_assert, and a million events cost nothing to spin up. For exercising code: no cryptography, and no claim on sampling.
More...
Public Types | |
| using | Domain = std::size_t |
| using | Codomain = std::uint64_t |
Public Member Functions | |
| constexpr std::uint64_t | operator() (std::size_t i) const |
Public Attributes | |
| std::uint64_t | seed {0} |
A random number as an arrow out of the counts, a sequence on a chain: the hash of a position and a seed (SplitMix64, Steele, Lea and Flood 2014). constexpr, with no state: any position is at hand, a sequence of any length is never stored, and two seeds are two streams. So a law can be asked of random inputs in a static_assert, and a million events cost nothing to spin up. For exercising code: no cryptography, and no claim on sampling.