4 ms·
I once had a need for permutation hashing as part of a 2D sampling algorithm. My approach was to compose the hash using only reversible steps (to ensure that i
by a_e_k 4y ago
I once had a need for permutation hashing as part of a 2D sampling algorithm. My approach was to compose the hash using only reversible steps (to ensure that it's a permutation), and then use cycle walking to reduce the domain size from a power-of-two down to an arbitrary non-power-of-two size if needed.
I published my implementation in the Pseudorandom Permutations section of my "Correlated Multi-Jittered Sampling" tech report: https://graphics.pixar.com/library/MultiJitteredSampling/paper.pdf https://graphics.pixar.com/library/MultiJitteredSampling/pap...
- Piezoid 4y agoOther works on reversible / permutation based / mixing hash functions : https://papa.bretmulvey.com/post/124027987928/hash-functions https://papa.bretmulvey.com/post/124027987928/hash-functions https://nullprogram.com/blog/2018/07/31/ https://nullprogram.com/blog/2018/07/31/ https://gist.github.com/lh3/59882d6b96166dfc3d8d https://gist.github.com/lh3/59882d6b96166dfc3d8d