SplitMix64.Mix Method

Applies the SplitMix64 mixing function to a 64-bit value.

Definition

Namespace: Numerics.NET.Random
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.3.0
C#
public static ulong Mix(
	ulong x
)

Parameters

x  UInt64
The input value to mix.

Return Value

UInt64
The mixed 64-bit value.

Remarks

This is the SplitMix64 finalizer/mixer function used for entropy expansion. It provides excellent avalanche properties and is used by:

  • Xoshiro/Xoroshiro seeding (Vigna reference)
  • Java's SplittableRandom
  • General-purpose high-entropy state fill

Reference: Guy L. Steele Jr., Doug Lea, and Christine H. Flood. "Fast splittable pseudorandom number generators." OOPSLA 2014.

See Also