例 2.2 (誤り検出符号の例)
3ビットの情報に対して, 1の個数が偶数なら0, 奇数なら1を4ビット目に加えて, 4ビットの信号をつくると, この符号は1ビットの誤りを検出できる.
情報 |
符号語 |
情報 |
符号語 |
000 |
0000 |
100 |
1001 |
001 |
0011 |
101 |
1010 |
010 |
0101 |
110 |
1100 |
011 |
0110 |
111 |
1111 |
例えば, 符号語の0101を送信して, 1ビット目にエラーが起きた場合,
受信語は1101となり, 左の3ビットに含まれる1は偶数個なのに, 4ビット目が
1であるからおかしい, ということからエラーを検出する仕組みだ.
ただし, どの個所にエラーが起きたかまでは受信側には分からない.
例 2.3 (原始的な誤り訂正符号)
2元対称通信路において, 1ビットの情報を3回ずつ繰り返して送ることを考える. これは以下のような符号化を考えていることに等しい.
この符号は1ビットの誤りを訂正できる. もし, 000に誤りが生じて010とでもなったとしよう. このとき, 010を受け取った受信側は, 正しい符号は000であると考えるのがもっともらしいと思うだろう. なぜなら, たとえば1ビットの誤り確率が
p=10
-2であるとするとき, 111から010に誤る確率は(1-
p)
p2で約10
-4だが, 000から010に誤る確率は(1-
p)
2pで約10
-2で, こちらの方がはるかに起こりやすいからである.