I know that to use Xoshiro256++ is better to randomize the seed with a fast rng as splitmix. This enables us to generate the 4 states of xoshiro256++.
Is this done by default?

Although I figured out a way to majorly simplify the splitmix algorithm so that it doesnâ€™t require arithmetic in a prime modulus, all explained in that massive comment.

If youâ€™re asking about the initial seeding rather than the task splitting, then we do way better and use SHA256 to go from user-provided seeds to create the actual RNG state.

It does, right?! But task forks are inherently binaryâ€”each task only forks one child at a timeâ€”so it really felt like there had to be some way to make the task coordinates binary. The tricky bit is that you have a choice of somewhat unintuitive ways of thinking about binary â€śpedigreeâ€ť coordinates:

The parent taskâ€™s coordinates changing every time it spawns a childâ€”weird since shouldnâ€™t a tasks have a fixed coordinate?

Upon fork, parent task is actually replaced by two childrenâ€”the actual child, and a replacement of itself that is in practice the same object, but is theoretically different with a longer coordinate tuple. This is also weird.

Or each task has infinite coordinates, that are all zeros beyond some point. Thatâ€™s how I formalize it in my proof in the other thread.

Despite the infinite part, I think the last option is the best: each task has a single, fixed (albeit infinite) coordinate tuple.