| r8 vs r9 | ||
|---|---|---|
| ... | ... | |
| 4 | 4 | |
| 5 | 5 | 입니다. 편의상 이를 [math(N)]이라고 하겠습니다. |
| 6 | 6 | |
| 7 | ||
| 7 | 하나의 작업에서 [math(x)]개의 식별자를 생성했을 때, 이중 '적어도 하나의 식별자 충돌이 발생할 확률'을 구하고자 합니다. 이 확률을 [math(p)]로 둡시다. 예를 들어 [math(p = 30\%)]라면 대략 [math(30\%)]의 확률로 충돌이 발생할 가능성이 있다는 뜻입니다. | |
| 8 | 8 | |
| 9 | 이어서 이 확률식을 역으로 계산하여 '식별자 충돌이 발생할 확률이 [math(p)] 이상이기 위해서는 적어도 [math(x)]개의 식별자를 생성해야 하는지'를 보이려고 합니다. namuid의 식별자 충돌이 거의 불가능함을 보이고 싶으므로 [math(p = 0.1\%)]로 두고 테일러 전개로 필요한 표본의 수 [math(x)]의 하한을 근사해 봅시다. 일단 자명하게 | |
| 10 | ||
| 9 | 11 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(p = 1 - \dfrac{_N\mathrm P_x}{N^x})]|| |
| 10 | 12 | |
| 11 | 13 | 이므로 어떤 함수 [math(f(x))]에 대해 [math(f(x) \leq 1 - p)] 를 성립시키는 가장 큰 [math(x)]를 근사하면 됩니다. 우선 위에 쓴 [math(p)]를 구하는 수식을 곱의 형태로 정리해 봅시다. |
| ... | ... |