見出し画像

小学5年生が理解する「誤り訂正符号」(デジタル社会を支えるテクノロジー:誤り訂正符号って何?その32)

息子:「ねー。他の『誤り訂正符号』を紹介してくれる前にさー『リード・ソロモン符号』って良く出てくるけど、『BCH符号』と何か違うの?』

私:「そういえば、きちんと紹介したなかったね。『リード・ソロモン符号』も『BCH符号』と同じで『巡回符号』の1種なんだけど、『BCH符号』が『生成多項式』に連続した『零点』を持つのと同時に、『零点』に『共役』な『零点』を持つのに対して、『リード・ソロモン符号』は『生成多項式』に連続した『零点』しか持たないんだ。」

息子:「どういうこと?」

私:「うん。『BCH符号』では『生成多項式』の『零点』としてαを持つと同時に『共役』な(α ^2)、(α ^4)、(α ^8)を持ち、『生成多項式』はg(X)=(X-α)(X-(α ^2))(X-(α^4)(X-(α^8))=(X^4)+X +1となって、連続にならない(α ^4)、(α ^8)を持つ。でも、『リード・ソロモン符号』の『生成多項式』はg(X)=(X-α)(X-(α^2))、つまり連続な『零点』だけ持つんだ。」

息子:「何か、その方が無駄が無い感じがするね。実は『BCH符号』を作る時に、何で連続にならない無駄な『零点』まで持つ必要があるのか不思議だった。」

私:「おーそうか!昔、お父さんも同じこと考えたんだ。おそらく、昔の人もそう考えて『リード・ソロモン符号』を思いついたんだろうね。ある意味で自然な考え方なんだろうけど、人はなかなかそれまでの考え方から離れられないし、それだから新しいことを思いつく人はごく僅かなんだろうね。もう少し、見ていこうか。」


この記事が気に入ったらサポートをしてみませんか?