問題の用語に問題があります。コードワードは、メッセージデータとパリティ(冗長性)データ(質問がコードワードを呼び出すもの)で構成されます。さらに、符号語という用語は、通常、エラーのないもの(メッセージ部分またはパリティ部分のいずれか)、生成多項式の正確な倍数(有限体係数乗算を伴う多項式)のものを意味します。
メッセージデータまたはパリティデータにエラーがあるかどうかは関係ありません。誤りのあるシンボルの総数がパリティシンボルの数の1/2以下である限り、誤りは訂正可能である。
リードソロモン補正の典型的な実装では、ロケータ(または逆ロケータ(1 /ロケータ))多項式が生成されます。ロケータは、右の位置の累乗に比例した有限体の「プリミティブ」ですほとんどのシンボルは位置ゼロを表します(右隣には位置1などがあります)。ロケータ多項式は、多項式係数の順序を逆にすることによって逆ロケータ多項式に変換することができ、逆も可能である。
wikiの記事が理解を深めるのに役立つかもしれません。 ReedとSolomonのオリジナルの見解についてのセクションは無視することをお勧めします。これは、最も簡単な場合を除いて修正を実行するのは実用的ではなかったため、記事で説明した実用的なデコーダは、同じ期間(1960)ウィキの記事のこのセクションで
https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction
:
https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction#Systematic_encoding_procedure
メッセージをTパリティシンボルのためのスペースを作るために、X^Tを乗じた多項式P(X)として扱われ、残りのsr(x)= p(x)x^t mod g(x)ここで、g(x)は生成元ポリミアルである。コードワードはs(x)= p(x)x^t mod g(x)-sr(x)である。 Reed Solomonのバイナリベースのフィールドを使用する場合は、加算と減算の両方が排他的であるか、または減算されます。
リードソロモンに関する他の記事では、通常、tは訂正できるシンボルの数を表し、パリティシンボルの数は2t(または奇数パリティシンボル2t + 1の場合)になります。 wikiの記事では、ロケータ多項式の係数にlambda:Λを使用していますが、他の記事では同じものに対してσ:σを使用しています。
これを自分で調べるために何をしましたか? – Marichyasana
@Marichyasana私はPythonでライブラリreedsolo 0.3で遊んでいて、コードワードを変更しようと変更しました。だから私はそれを変更するときに私はメッセージを取得することができませんでした。 – Praveenupadrasta