Імовірно, у вас є підстави вважати, що алгоритм створення посібників не генерує справді випадкових чисел, а насправді веде цикл з періодом << 2 ^ 128.
наприклад RFC4122 метод, який використовується для отримання GUID, який фіксує значення деяких бітів.
Докази їзди на велосипеді залежатимуть від можливого розміру періоду.
Для невеликих періодів хеш-таблиця хеша (GUID) -> GUID із заміною при зіткненні, якщо GUID не збігаються (припиняються, якщо вони є), може бути підходом. Розглянемо також лише заміну випадкової частки часу.
Зрештою, якщо максимальний період між зіткненнями достатньо великий (і не відомий заздалегідь), будь-який метод збирається створити ймовірність того, що зіткнення було б знайдено, якби воно існувало.
Зауважте, що якщо метод генерації Guids заснований на тактовій частоті (див. RFC), то, можливо, неможливо визначити, чи існують зіткнення, оскільки (а) ви не зможете чекати досить довго, щоб годинник обернувся, або (b) ви не можете вимагати достатньої кількості Посібників протягом цілодобової галочки, щоб змусити зіткнутись.
Крім того, ви можете показати статистичну залежність між бітами в Посібнику або співвідношення бітів між Guids. Такий взаємозв'язок може зробити дуже імовірним, що алгоритм є помилковим, не маючи необхідності знайти фактичне зіткнення.
Звичайно, якщо ви просто хочете довести, що Guids може зіткнутися, відповідь - це математичний доказ, а не програма.