ISBNコードのヒミツ

皆さんISBNコードって知ってますか。知らない人はISBNをクリックして、はてなキーワードで勉強しませう。
ISBNコードは、10桁の数字(と末尾につくことのあるX)で構成されている図書の識別こーどなんですが、実は最後の1桁は図書のidentityとしての意味はありませぬ。
どういうことかというと、最後の1桁はエラーチェック用の桁なのです。前の9桁の数字が間違いなく入力されているかどうか、この1桁によって(完全ではないにしろ)チェックすることが可能となります。
具体的にはどうなるんでせうか。まず、ISBNコードの数字を左から順にN_1,N_2,\cdots,N_{10}とします。そして、10N_1+9N_2+8N_3+7N_4+6N_5+5N_6+4N_7+3N_8+2N_9+N_{10}を11で割った余りが0となるように、N_{10}を0〜10の間で決めます。こうすることで、完璧ではないにしろ、入力ミスがあるとわかるようになっているのです。
このチェックにより、以下の2点のミスが防がれます。

  • 1桁の数字の間違い
  • 異なる数字の交換(12と21、159と951など)

1点目はあからさまに明らかなので、2点目について簡単に証明を付けておきます。

(proof)
Form1:\alpha a + \beta b \equiv r \quad (\mathrm{mod}11)
Form2:\alpha b + \beta a \equiv r^{\prime} \quad (\mathrm{mod}11)
としたとき、a\neq b,\alpha\neq\beta(0\leq a\leq 9,0\leq b \leq 9,2\leq 10 \alpha,2\leq\beta \leq 10)なる条件の下でr\neq r^{\prime}を示せばよい。
Form1-Form2より
\alpha(a-b)-\beta(a-b)\equiv r-r^{\prime} \quad (\mathrm{mod}11)
(\alpha-\beta)(a-b)\equiv r-r^{\prime} \quad (\mathrm{mod}11)
ここで1 \leq |\alpha-\beta| \leq 7,1\leq |a - b| \leq 9であるから、(\alpha-\beta)(a-b)\equiv r-r^{\prime} \not\equiv 0 \quad (\mathrm{mod}11)
よってr\neq r^{\prime}が示された。
Q.E.D.

簡単な初等整数論の問題っぽいです。ちなみに、実際に最後の1桁の値を求めるときは、これも初等整数論の議論により、N_{10}は、N_1+2N_2+3N_3+\cdots+9N_9を11で割った余り(10になるときはX)とすればよいです。暇な人はこの結果を定義から導いてみてはいかが。