El error de usar módulo para elegir al azar

When random is not actually random enough

El error de usar módulo para elegir al azar

Austin Seipp explica por qué usar random_u64() con módulo para elegir un elemento de un conjunto rompe la uniformidad: con 10 números y 3 opciones, la primera se elige el 40% de las veces. Propone random_choice() con pesos enteros relativos, que evita errores y hace explícita la distribución deseada. En Antithesis eliminaron todas las llamadas a random_u64() en favor de random_choice().

La próxima vez que veas código como el ejemplo original, pregúntate: ¿puedo representar directamente la distribución deseada? Si es así, ¡espero que encuentres una herramienta mucho más rica con la que jugar!

Más de este día

2026-10-06