JP2008541540A - 群環におけるゼロ因子および単位を使用することにより、誤り訂正符号および誤り検出符号を生成するための方法および装置 - Google Patents

群環におけるゼロ因子および単位を使用することにより、誤り訂正符号および誤り検出符号を生成するための方法および装置 Download PDF

Info

Publication number
JP2008541540A
JP2008541540A JP2008509569A JP2008509569A JP2008541540A JP 2008541540 A JP2008541540 A JP 2008541540A JP 2008509569 A JP2008509569 A JP 2008509569A JP 2008509569 A JP2008509569 A JP 2008509569A JP 2008541540 A JP2008541540 A JP 2008541540A
Authority
JP
Japan
Prior art keywords
code
group
selecting
generated
ring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008509569A
Other languages
English (en)
Inventor
ハーリー、テッド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Ireland Galway NUI
Original Assignee
National University of Ireland Galway NUI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Ireland Galway NUI filed Critical National University of Ireland Galway NUI
Publication of JP2008541540A publication Critical patent/JP2008541540A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

意図する用途に固有の特性を有する符号を生成するための方法および装置であって、この方法は、群の集合から1つの群を選択するステップと、環の集合から1つの群を選択するステップと、選択した群および選択した環から群環を形成するステップと、生成すべき符号の所望する特性に基づき、群環から生成子要素uを選択するステップと、選択した生成子要素uを符号生成プロセスに入力し、対応するチェック要素を得るステップとを備える。

Description

本発明は符号に関し、特に誤り訂正符号および誤り検出符号を含む符号の生成に関するものである。
符号化理論、特に誤り訂正符号および誤り検出符号を使用することは、ソース符号化変調および暗号化と共に最近の通信システムのうちの核心的要素の1つであり、誤り訂正符号および誤り検出符号を使用することは、通信システムにおける基本的ツールとなっている。
時間および空間を通した通信中にデータを保護するために誤り訂正符号が使用される。これら符号は、ノイズのあるチャンネル、例えば無線通信チャンネル、光ファイバーまたはイーサネット(登録商標)リンク、デジタルケーブルまたはデジタル加入者回線(DSL)、衛星通信チャンネルまたはディープ宇宙通信チャンネルを通して空間を横断するようにデータを安全に送信するのに使用できる。チャンネルにノイズがあることは、送信中にデータが破壊される可能性があることを意味する。例えば記憶媒体、例えば標準ハードドライブ、ディスク、CD、DVDおよびコンピュータメモリにあるデータを時間経過しても劣化しないことを保証することにより、時間に対しデータ通信を保護するのに誤り検出符号も使用される。
誤り制御のための最も基本的な形式の符号化の1つは、二進データのストリングにパリティチェックビットを加えることである。このことによって、1つの誤りが生じたことを検出できる。しかしながら、2つの誤りが生じた場合、受信者は誤りが起こったことを知ることはできない。一般に、符号によって提供される、誤り制御ビットをより多くする結果、誤り検出/訂正能力はより良好となるが、送信ごとの情報のコンテントはより少なくなる。従って、誤り取り扱い能力と情報コンテントとをバランスできる符号を生成することが望ましい。
現在使用されるほとんどの符号は周期的符号である。多項式符号と時々称されるこれら周期的符号は、周期的群のうちのゼロ因子群環符号である。群環は一般に代数的構造であり、所定の群Gおよび所定の環Rに対し、群環RGは次の式
Figure 2008541540

で示されるフォームのすべての要素から成り、有限数のα(g)だけがゼロでない。G={g,g,...,g}が有限である場合、RGは、すべての
Figure 2008541540

から成る。
従って、群環RGはGの要素から成る基底および分散法則と共にGの要素のたたみ込みタイプの乗算によって決定される乗算により、Rを通したモジュールと見なすことができる。任意のモジュールのサブモジュールは、それ自身が1つのモジュールであるモジュールの非空部分集合である。Rが体であるとき、RGは群代数と称されることが多い。
群環はマトリックスの環として見なすことができることが知られている。
環Rを通した群Gの群環RGは、Rに対するRGマトリックスと称される所定のマトリックスの環である。
代数的に、かつより正確には、Gが次数nの群であり、Rが環である場合、Rを通したn×nのマトリックスの環の部分環に対し群環RGを写像する単写φ:RG→Rn×nが存在する。Rn×nの部分環は、RGマトリックスの集合である。u∈RGである場合、Uによりφ(u)を示す。すなわち対応する大文字によりφの下のuの像を示す。また、UがRGマトリックスである場合、φの下の逆像をu、すなわち対応するより低いケースの文字で表す。RG−マトリックスの最初の行(または列)が一旦既知であれば、マトリックス全体も既知であることに注目することが重要である。従って、群環のうちの要素Uおよび群の乗算を仮定した場合、対応するマトリックスUを決定できる。
周期的符号として、かかる重要な符号、例えばBCH符号、リードソロモン符号、ゴーレー符号およびハミング符号を挙げることができる。現在の多くの符号は一般に周期的群環のゼロ因子から得られるマトリックスから生成される。
現在の符号は、累積符号でもあり、本発明の目的は非累積符号を提供することにある。
特に符号をランダムに生成した場合の現在の方法は、チェックマトリックスによって符号を生成することが多く、生成マトリックスを提供することは計算上不可能となり得る。本発明の別の目的は、代数的かつ同時にチェックマトリックスと生成マトリックスを提供することにある。
本発明の別の目的は、低密度パリティチェック(LDPC)符号、セルフデュアルタイプの符号および直交符号を含む多くの、より新規で有効な興味ある符号を生成するための方法を提供することにある。
本発明は、
a)群の集合から1つの群を選択するステップと、
b)環の集合から1つの群を選択するステップと、
c)前記選択した群および前記選択した環から群環を形成するステップと、
d)生成すべき符号の所望する特性に基づき、前記群環から生成子要素uを選択するステップと、
e)前記選択した生成子要素uを符号生成プロセスに入力し、対応するチェック要素を得るステップとを備えた、意図する用途に固有の特性を有する符号を生成するための方法を提供するものである。
生成すべき前記符号は、非周期的群のゼロ因子符号でよく、前記生成子要素を得る前記ステップは、ゼロ因子要素を選択することを含む。
生成すべき前記符号は、単位符号でよく、前記生成子要素を得る前記ステップは、単位要素を選択することを含む。
生成すべき前記符号は、低密度パリティチェック(LDPC)符号でよく、前記生成子要素uを得る前記ステップは、前記群のサイズと比較して少数の非ゼロ係数を有する要素を選択することを含む。
前記符号の特性は、符号の距離および/または符号の長さおよび/または符号のレートを含むことができる。
本方法は、
f)前記生成子要素および前記チェック要素を対応するペアの符号化マトリックスおよび復号化マトリックスに写像するステップを更に含むことができる。
好ましくは、この方法は、
g)前記生成された符号の評価を実行するために符号化マトリックスおよび復号化マトリックスを使用することを含むことができる。
前記評価は、符号レートを計算することの外に、符号距離および/または符号ガースを計算することを含むことができる。
この方法は、ステップa)およびb)を実行するときに、前記評価の結果をフィードバックとして使用して、前記ステップa)〜e)を繰り返すステップを更に含むことができる。
前記ステップa)およびb)は、上記ステップに加え、またはその代わりに、前記選択プロセスにおいて前記生成した符号を使用するようになっている前記システムの特性を使用することを含むことができる。前記ステップa)およびb)は、上記ステップに加え、またはその代わりに、前記選択プロセスにおいて、予め定めた選択基準を使用することを含むことができる。
前記ステップd)は、
前記選択された生成子要素uがゼロ因子要素であるかどうかを判断するステップを更に含むことができる。
前記ステップd)は、
前記選択された生成子要素uが前記因子要素である場合に、uv=0となるように群環の整合要素vを決定するステップ、または
前記生成子要素uが単位要素である場合に、uv=1となるように群環の整合要素vを決定するステップを更に含むことができる。
前記ステップe)は、前記整合要素vを前記生成プロセス内に入力するステップを更に含むことができる。
本発明は、
群の集合から1つの群を選択するための手段と、
環の集合から1つの環を選択するための手段と、
前記選択した群および前記選択した環から群環を形成するための手段と、
生成すべき符号の所望する特性に基づき、前記群環から生成子要素uを選択するための手段と、
前記選択された生成子要素uを受け取り、対応するチェック要素を生成するよう適合された符号生成子とを備えた、意図する用途に固有の特性を有する符号を生成するための装置を更に提供する。
本発明の1つの特徴によれば、生成すべき前記符号は、非周期的群のゼロ因子符号から得られ、生成子要素uを選択するための前記手段は、ゼロ因子要素を選択するようできる。
本発明の別の特徴によれば、生成すべき前記符号は、単位符号から得られ、前記生成子要素を選択するための前記手段は、単位要素を選択するようできる。
本発明の更に別の特徴によれば、生成すべき前記符号は、低密度パリティチェック(LDPC)符号とすることができ、生成子要素uを選択するための前記手段は、前記群のサイズと比較して少数の非ゼロ係数を有する要素を選択するようにできる。
前記符号の特性は、符号距離および/または符号長さおよび/または符号レートを含むことができる。
本装置は、前記生成子要素および前記チェック要素を対応するペアの符号化マトリックスおよび復号化マトリックスに写像する手段を更に含むことができる。
好ましくは、本装置は、符号化マトリックスおよび復号化マトリックスを使用して前記生成された符号を評価するための生成符号アナライザを更に含むことができる。
前記生成された符号のアナライザは、符号レートを計算するようにでき、前記生成された符号のアナライザは、符号レートを計算することに加え、またはその代わりに、符号のガースおよび/または符号距離を計算するようにできる。
1つの特徴によれば、群を選択するための前記手段および環を選択するための前記手段は、前記生成された符号のアナライザの結果をフィードバックとして使用するようにできる。
群を選択するための前記手段および環を選択するための前記手段は、前記生成した符号を使用するようになっている前記システムの特性を使用するようにできる。
群を選択するための前記手段および環を選択するための前記手段は、前記選択プロセスにおいて、ユーザの入力を使用するようにできる。
群を選択するための前記手段および環を選択するための前記手段は、前記選択された生成子要素uがゼロ因子要素であるかどうかを判断する手段を含む。
前記群環から生成子要素を選択するための前記手段は、更に
前記選択された生成子要素uが前記因子要素である場合に、uv=0となるように群環の整合要素vを決定するかまたは
前記生成子要素uが単位要素である場合に、uv=1となるように群環の整合要素vを決定するようになっている。
前記符号生成子は、前記整合要素vを受信し、前記整合要素を前記符号生成プロセス内に入力するようになっていることが好ましい。
本発明の方法によって生成される符号は、通信システムにおいて、通信チャンネルを通して送信するためのデータを符号化するために使用できることが理解できよう。
本発明の方法によって生成される符号は、さらに、データ記憶媒体に記憶するためのデータを符号化するために使用できることが理解できよう。
かかる使用法では、前記データは、デジタルデータである。
本発明の方法によって生成された符号は、暗号化されたメッセージを符号化するために使用でき、前記生成された要素uは公開鍵として働き、前記チェック要素は秘密鍵として働く、公開鍵暗号化方法を使って暗号化されたメッセージを符号化されている。
本発明の方法により、生成された新しい符号に対し、生成マトリックスおよびチェックマトリックスを容易に得ることが可能となることが理解できよう。群環符号の多くは群環と所定のマトリックスとの間の誘導された関係を使って、マトリックスに関連して示すことができるので、このことを行うことができる。
本発明の態様で群環符号を使用することにより、新規なセルフデュアル符号および新規な低密度パリティチェック(LDPC)符号を誘導することも可能となる。これによって、本発明以前に存在しなかったこれらタイプの新規な符号を本方法によって代数的に構築することが可能となる。
「所定の次数」までの符号を発生できるというこれら利点は、制限がない。例えば本発明によれば、前記群環から生成子要素を選択し、例えば生成された符号を調査により良好な距離を有すると証明された符号にすることを保証できる。かかる符号は、短い群環要素を使って誘導されたLDPC符号とすることができる。別の例では、前記群環から生成子要素を選択し、例えばスピードを改善するために、大きなレートが必要な場合に、生成される符号が必要なレートを有することを保証することもできる。同様に符号距離に関し、符号誤り時間を最小にするように、符号が長い距離を有することが好ましい場合もある。
本発明の方法は、群環マトリックスから符号を生成することだけに限定されていないことが理解できよう。本方法は任意の可逆的マトリックスと共に使用できる。
従って、本発明は、
i)生成すべき符号の所望する特性に基づき、非特異的マトリックスから生成子要素を選択するステップと、
ii)前記選択した生成子要素を符号生成プロセスに入力し、対応するチェック要素を得るステップとを備えた、意図する用途に固有の特性を有する符号を生成する方法を更に提供する。
当業者であれば理解できるように、本発明は、方法、データ処理システムまたはコンピュータプログラム製品として具現化できる。従って、本発明は全体がハードウェアの実施例、全体がソフトウェアの実施例またはソフトウェアの特徴とハードウェアの特徴を組み合わせた実施例の形態をとり得る。更に、本発明はメディア内で具現化された、コンピュータで読み取り可能なプログラム符号手段を有する、コンピュータで読み取り可能な記憶メディア上の、コンピュータプログラム製品の形態をとり得る。
本発明の実施例を例として示す添付図面を参照し、以下、本発明について説明する。しかしながら、本発明は多くの異なる形態で実施でき、本明細書に記載した実施例だけに限定されるとみなしてはならない。むしろこれら実施例は、発明の開示を完全にするように記載したものであり、これら実施例は本発明の範囲を当業者に完全に説明するためのものである。
本発明は、符号を生成し、使用するための新規な方法およびシステムを提供する。生成すべき符号の1つの可能性のある用途を、デジタル通信および記憶システムにおける誤り訂正または誤り検出とすることができる。
本発明の方法によって生成される新しいタイプの符号は、群環と称される代数構造におけるゼロ因子および単位である。
これら群環における単位およびゼロ因子は、マトリックスを得るために使用される。これらマトリックスは、符号化プロセスにおいて使用される生成マトリックスおよび復号化プロセスで使用されるパリティチェックマトリックスである。
(群環符号)
RGを、環Rを通した群Gの群環であるとする。Rは体となることがかなり多いが、このように限定されているわけではない。Rが体である場合、RGを群の代数と称すことが多い。群環はRを通したモジュールと称される。1つの部分モジュールはそれ自身が1つのモジュールである非空部分集合である。
G={g,g,...,g}とする。この集合は、環Rを通したモジュールRGの基底となる。u∈RGとする。
図1は、本発明の1つの特徴に従った符号生成方法のステップを示す。
この方法は、群選択プロセス120と、群環形成ステップ127に対して群と環の適当な組み合わせを決定できるようにする環選択プロセス124とを含む。双方の選択プロセスは、符号生成のための適当な群と環との組み合わせを決定するのを助けるための、ユーザ入力110、111で予め定められた選択基準112、113またはフィードバック基準114、115を含むことができる。
群と環との適当な組み合わせを一旦決定すると、これら群と環とを群環形成プロセス127に入力する。一旦群環を形成すると、次は所定の基準に従って前記群環128から特定の要素を選択しなければならない。
次に、生成要素として知られる選択された要素を符号生成プロセス130に入力し、対応するチェック要素を生じさせる。次に本発明に従い、符号化マトリックス132のように、対応するペアの符号化マトリックス132および復号化マトリックス136に、前記生成要素およびチェック要素を写像することができる。この符号生成ステップ130は、本明細書に説明する本発明を示す。
所定のケースでは、符号アナライザ140により、前記符号化マトリックス132および復号化マトリックス136を使用し、符号レート、ガースおよび距離のような特性の計算を含む、生成された符号の検査および経験的な評価が可能となる。これらデータは、フィードバック基準114を介して符号生成の次のサイクルに提供され、よって所定の実施例における符号生成プロセスの選択的な精緻化を可能にする。
別の実施例では、符号に基づく誤り訂正および/または暗号化を使用し、アクティブな通信リンクまたはデータインターフェースからフィードバックを誘導できる。かかる実施例では、フィードバック基準114、115は前記通信リンクまたはデータインターフェースの特性に応じて変えることもできる。従って、本明細書に開示する発明はリンク/インターフェースの条件の変化に応答して符号をダイナミックに生成できる。
満足できる特性を有する符号の最終集合を一旦決定すると、これら符号は従来の通信および暗号化システムでは使用のために出力できる。
図2を参照し、以下、要素選択ステップ128および符号生成ステップ130について詳細に説明する。まず、群環を形成するステップ127は、群環の要素も決定することに注目する。後に数学的な詳細について説明する。複素群環構造を使用する本発明の所定の実施例では、主要な要素選択プロセス128の前に、所定の要素を除くためのステップ127の後で別のプロセスのステップが必要となる場合がある。しかしながら、本発明の最も有効な実施例では、群環が既知のアプリケーションにより、ステップ120および124のもとで入力として使用された群および環から決定される、特定の特性を有する比較的小さい集合の要素を通常生成する。
図2は、群環が群代数であるケースにおける要素選択プロセスおよび符号生成プロセスを示す。このプロセスは、デジタルデータを使用する最新の通信システムまたはデジタル情報処理システムに対して特に有効である。使用される環は一般に、最も広い適用性を有する
Figure 2008541540

となるが、所定の特別な通信システムまたは情報処理システムに対しては、他の体も適す。
要素選択プロセス128は、ステップ127に形成された群環の要素の集合から生成要素128−2を選択する別のサブステップを含む。この要素uがゼロ因子要素128−4であるかどうかを判断するために、この要素uを検査しなければならない。この要素が、ゼロ因子要素である場合、uv=0となるように群環の整合要素vを定めることが可能である(128−6)。次に、符号生成の次のステップ130に、要素uがゼロ因子である事実およびこれら要素を入力する。
選択された要素がゼロ因子要素でなければ、群環を群代数に限定する実施例を説明することを条件に、選択された要素を単位要素としなければならない。この場合、uv=1となるように群環の整合要素を決定する。ステップ128−8において、上記とは異なり、これら要素を符号生成ステップ130へ入力する。
所定の実施例ではアプリケーションによっては、要素をゼロ因子または単位のいずれかに限定することが望ましいことがあることに注目する。多くのケースではこのことは、ステップ120と124との間で選択された群および環に基づいて自然に行われる。
次に、符号生成ステップ130について説明する。このステップは、主に単写φ:RG→Rn×nによる対応する群環マトリックスへの群環要素uおよびvの写像130−2に主に依存する。後に、いくつかの実際の実行例について説明する。実際には、ステップ120で選択された群の特性により、この単写または写像のフォームについて決定するが、ステップ130−1の下で計算により実現しなければならない。本発明の実施例が、例えば次数nの正2面体群のような群の単一ファミリーに限定されている場合、この単写は単一入力パラメータnを有する単一のコンピュータスクリプトとして実現できる。しかしながら、より複雑な実施例では、当業者に知られているMATEMATICA(登録商標)、MAPLE(登録商標)またはGAPのようなシンボリックな処理プログラム、またはスタンドアローンコンピュータプログラム、またはこれら双方の組み合わせを使って、この単写を実施しなければならないことがある。
ステップ130−2の後で、符号生成子は群環要素uに対応するマトリックスを符号化マトリックス130−4として、更に群環要素vに対応するマトリックスを復号要素130−5として、出力しなければならない。これら出力132および136、並びに生成された符号(ゼロ因子または単位)の形式は、符号生成プロセス130の出力を形成する。
本発明の方法を実施する例
次数8の正2面体群を使用したゼロ因子符号の例
次数8の正2面体群Dは、非累積的であり、その要素は{1,y,y,y;x,xb,xb,xb}であり、ここでy=1;x=1,yx=xy−1である。この群GのRGマトリックスは、次の式で示されるフォームを有する。
Figure 2008541540

ここで、A、Bは次のフォームを有する(Aは巡回的であり、Bはハンケルタイプである)。
Figure 2008541540

係数に対する選択は多く、例えば要素u=b+a+ab+abおよびv=1+b+b+abを選択すると仮定する。次に、
Figure 2008541540

に対してuv=0となる。このことは、Aにおいてp=0=q=s,r=1とし、Bにおいてa=1=b=c,d=0とすることに対応する。
これによって、次のようにuに対応するRGマトリックスが得られる。
Figure 2008541540
Pは、ゼロ因子であり、明らかに階数4も有する。
Figure 2008541540
従って、
Figure 2008541540

とすることにより、符号化R→Rを行うことができる。Cはcv=0の場合およびその場合に限り、コードワードである。マトリックスのフォームでは、Pの頂部部分Wを生成マトリックスと見なすことができ、Q、Uの第2部分の転置マトリックスは、チェックマトリックスとなる。このコードは距離d=3、長さ8および次元4を有する。
より一般的には、次の例で説明するようなコンピュータ代数パッケージを使用して正2面体群の群環の構造を実現することもできる。
双周期的単位を使ったLDPC符号の正2面体群の例
次数2nの正2面体群:D2n=<a,b:a,b=1,ab=b−1a>とみなす。ここでnを任意に大きくできることに留意されたい。上記のように、a、bをとることにより、次の双周期的単位
Figure 2008541540

を得る。この場合、関係から、この単位はu=1−b+bn−1+ab−abn−1である。この単位では、5つの要素しかなく、その逆数はu−1=1+b−bn−1−ab+abn−1である。
次のように、コンピュータ代数パッケージGAPにおいて、この群の群環を構築できる。
#このGAPプログラムは次数nの正2面体群の群環を構築する。
#nを最初に選択するが、偶数としなければならない。素数pに対しn=2p
#のフォームを有するようにこのnを選択するが、このことは一般に必要では
#ない。
#本例では体は、Fであり、まず最初にこれを定めなければならない。そこで
#2つの要素の二進の体であるF=GF(2)をとるが、その他の可能性も存
#在する。
#要素fは双周期的単位であるとき、その逆数が存在することが分かっている
#ので、この要素fを選択する。
F:=GF(2);
#nを定義したことを確認する。
n;
DN:=DihedralGroup(n);
RDM:=FreeMagmaRing(F,DN);
emb:=Embedding(DN,RDM);;
gens:=List(GeneratorsOfGroup(DN),x−>x^emb);;
x:=gens[1];
y:=gens[2];
one:=Identity(RDM);
u:=one−y+y^(n/2−1)+x*y−x*y^(n/2−1);
#理論から、uの逆数は次のフォームを有することが分かっている。
uinverse:=one+y−y^(n/2−1)−x*y+x*y^(n/2−1);
#uinverseはuの逆数であることをチェックする。
u×uinverse;#答えは1でなければならない。
#uが次のコマンドにより逆数を有するか有しないかが分からない場合に、
#uの逆数を求めることもできる。
uinverse:=Inverse(u);
#uと、この逆数を求めれば、単位符号生成マトリックスを構築し、次のよう
#にチェックに進むことができる。
[1]における結果を適用することにより、次のようにu、Uのマトリックスが示される。
Figure 2008541540
前に説明したように、この単位から誘導された(2n,n)符号
Figure 2008541540

を検討する。この符号の生成マトリックスは、Uの頂部部分である(A,B)であり、n×2nマトリックスである。このマトリックスは自動的に階数nを有する。
−1のマトリックスは次のとおりである。
Figure 2008541540
符号
Figure 2008541540

のチェックマトリックスは上記垂直線の右側までのマトリックスの転置マトリックスである(D,C)である。
これらマトリックスは疎マトリックスである。
上記のことは全ての任意の環Rに対して成立する。特に二進の体である
Figure 2008541540

を検討する。ここで、u−1=uであり、A=Cであり、B=Dであることに注目されたい。これを符号化R→R2nと見なす場合、(2n,n)符号を有し、この場合、生成マトリックスは、(A,B)であり、チェックマトリックスは、(B,A)の転置マトリックスである。この符号は、セルフチェックマトリックスでもあるLDPC符号である。
(群環構造を使った単位誘導周期符号の構築の例)
次のMAPLEプログラムは、周期的LDPC単位で誘導された符号を構築する。Aから生成マトリックスが得られ、Bからチェックマトリックスが得られる。
#nを入力する;n>12であることを確認する。nが>12でなければ、f
#hに対する式を変えなければならない。逆数を得ることを確認し、素数pに
#対し、n=2pとする。
n;#nを既に入力したことをチェックする。
m:=trunc((n)/2);
f:=g^n−1;

fh:=1+g^2+g^5+g^(m)+g^(m+4);

j:=Gcdex(fh,f,g,’s’,’t’)mod 2;

fhinverse:=s;

id:=rem(fh*fhinverse,f,g);

with(LinearAlgebra);
#「circ_poly.map」を読み出す;この関数は次のように示される。
circ_poly:=proc(f,g,n)
description“form a circulant matrix from the polynomial in z2”;
local i,j,M,term;

M:=Matrix(n+1,n+1);

for i from 0 to n do
for j from 0 to n do
M[j+1,1+((i+j)mod(n+1))]:=coeff(f,g,i);
od;
od;
return M;
end proc;

A:=circ_poly(fh,g,n−1);
B:=circ_poly(fhinverse,g,n−1);
#Aから生成マトリックスを取り出し、Bからチェックマトリックスを取り出
#す。符号レートは、使用するAの部分によって決定する。
#単位群符号の説明を参照されたい。
#以下、nが偶数のとき、1/2であり、nが奇数のとき、1/2−1/2n
#であるrate(レート)=m/nを使用する。
#これらマトリックスを使用するとき、これらをmod2のマトリックスに変
#換しなければならない。
GenCode:=A[1..m,1..n];
CheckCodel:=B[1..n,(m+1)..n];
CheckCode:=Transpose(CheckCode1);
(LDPC符号を得るための交番タイプの単位の使用)
周期的群環内の交番単位から良好なLDPC符号の別のソースを得ることができる。交番単位の完全な説明については、[3]を参照されたい。
これら単位は、次数nの周期的群における次のようなフォーム
Figure 2008541540

であり、ここで、nが奇数である場合、2<c<nであり、(cも奇数とするように)(c,2n)=1である。
ここでcが小さいとき、g(x)はn−と比較して少数の非ゼロ係数しか有しなく、g(x)−1は、より多くの係数を有する。
次に、g(x)に対応するマトリックスは、各行および列に少数の要素しか有しなく、g(x)−1に対応するマトリックスは、一般に各行および列にn/2の要素の次数しか有しない。
従って、単位g(c)−1から適当な我々の生成マトリックスを取り出し、g(x)から我々のチェックマトリックスを取り出す。
ユークリドアルゴリズムを使って交番単位の逆数を得ることができるので、(少ない重みから選択できる)所定の交番単位に対し、逆数を極めて迅速に構築できる。
次のプログラムは単位交番要素を生成し、これら要素から単位符号を誘導する。
#このプログラムは周期群環の交番単位を構築し、その逆数を探し、生成マト
#リックスおよびチェックマトリックスを生成する対応するRGマトリックス
#を解く。nは周期的群の次数であり、cは2<c<n(ここで(c,2n)
#=1である)となるような数である。体に対する制限はなく、この体を整数
#に対する1つの符号と見なすことができる。このアルゴリズムは極めて高速
#であり、大きな数字を使用できる。
n;#nを入力したことを確認する。
c;#cを入力したことを確認する。

g:=sum((−x)^i,i=0...c−1);

f:=x^n−1;

j:=gcdex(g,f,x,’s’,’t’);

ginverse:=s;

id:=rem(g*ginverse,f,x);

A:=circ_poly(g,x,n−1);
B:=circ_poly(ginverse,x,n−1);
#Aはこのケースにおけるチェックマトリックスを示し、Bは生成マトリック
#スを示す。
#cがnと比較して小さい場合、LDPC符号を得る。
例えばn=17、c=3である場合、
Figure 2008541540

となる。チェックマトリックスは、各行および列において3つの要素しか有しない。
(その他のLDPC符号の例)
その他の単位およびゼロ因子を検討することにより、別のLDPC符号を同じように構築できる。次の方法が興味ある方法である。
LDPC符号が少なくとも6以上の大きなガースを有することが有効である。次に、xによって生成された次数mの周期的群Cを検討し、直積G=C×C(ここで、Cはyによって生成されたものである)を形成する。3つの要素の体に対するGのうちの群環GF(3)Gを形成する。要素f(x)=1+x−x*y+x*yはこの群環において逆数を有する。対応するマトリックスの次元が大きくなるように、この要素を構築する。f(x)に対応するマトリックスは疎となるが、その逆数は疎とならない。すなわち逆数は各行および列においてm/2よりも多い要素を有する。生成マトリックスを得るために逆数を使用し、チェックマトリックスを得るためにf(x)を使用する単位群環符号を形成するために、上記のように次元mの符号を形成する。
次のプログラムは、群環、対応する単位およびその逆数を生成する。
#このプログラムは次数n、C_nの周期的群および次数2、C_2の周期
#的群の直積の群環を構築するためのGAPプログラムである。この場合、F
#をGF(2)と見なす。すなわち2つの要素上の二進の体と見なす。必要と
#されるサイズnをまず入力し、記憶しなければならない。群環内の要素fを
#選択し、その要素が1つの単位であるかどうかを見るためにテストする。
#これは、「finverse:=Inverse(f);」であるコマンドである。 #逆数が存在する場合、これを見つけ、次に他の場所で説明したように、
#単位群環符号を探すように進む。他の検討事項から、
#下記のように構築したfの逆数が常に存在する。
F:=DF(3);
n;
C_n:=CyclicGroup(n);
C_2:=CyclicGroup(2);
DP:=DirectProduct(C_n,C_2);
RM:=FreeMagmaRing(F,DP);
emb:=Embedding(DP,RM);
gens:=List(GeneratorsOfGroup(DP),x−>x^emb);
s:=Size(gens);
x:=gens[1];
y:=gens[s];
one:=Identity(RM);
f:=one+x^2−x*y+x^4*y;
finverse:=Inverse(f);
この群環に対するRGマトリックスは、次のフォームを有する。
Figure 2008541540

ここで、A、Bは巡回マトリックスであり、(RGマトリックスは周期的群環に対応する。)fに対する群環のフォームを見ると、Aは最初の行(1,0,1,0,...,0)を有する巡回マトリックスであり、Bは最初の行(0,1,0,−1,0,...,0)を有する巡回マトリックスである。
fは疎であるので、チェックマトリックスを得るようfを取り出し、(2n,n)符号の生成マトリックス、例えばCを得るために、その逆数を取り出す。このケースにおけるfの逆数は疎でないので、n個の非ゼロの係数の次数を有する。従って、符号Cのチェックマトリックスは(B|A)となる。このチェックマトリックスは各行および列において、多くて4つの非ゼロエントリーを有し、符号はLDPC符号となる。
証明された次元
本明細書では好ましい実施例を開示したが、本発明の概念、範囲および要旨に入る多くの変形が可能であり、本願を検討すれば、当業者にはこれら変形例は明らかであろう。
(数学的記述)
(群環符号の定義)
Wを群環RGのサブモジュールとする。Wの群環符号化は、WからRGへの写像であり、この場合、
Figure 2008541540

であり、RGでは固定されたuとなる。
Figure 2008541540

である場合、これは左側の群環符号化であるが、
Figure 2008541540

である場合、右側の群環符号化となる。群環符号は群環符号化の像である。
したがって、群環符号は{ux:∀x∈W,u(固定)∈RG}または{xu:∀x∈W,u{固定}∈RG].となる。
一般に、
Figure 2008541540

は異なる。すべてのxに対してxu=uxであれば、この符号{xu}(または{ux})は累積的であり、そうでない場合、この符号は非累積的と称すことができる。
uがゼロ因子であるとき、符号はゼロ因子(RG)符号であり、uが1つの単位であるとき、符号は単位(RG)符号となる。非周期的群のうちの群環のゼロ因子符号および単位符号について検討する。Rが群環ごとの体であるとき、RG内の群環符号はゼロ因子符号または単位符号となる。
Wがn未満の次元を有するケースについて検討する。多くのケースでは、Wはあるr<nに対し、g,g,...,gによって生成されたモジュールとなる。しかしながら、Wが1≦t<nかつ{i,i,...,i}の場合のgi1,gi2,...,gitによって生成されるモジュールである場合、{1,2,...,n}の部分集合も有効となる。Wはサブモジュールであり、イデアルではないことに留意されたい。
(前の既知の符号との接続。)これら新しい符号は、表面に生じ、前の既知の符号よりも実施にかかる時間がより長くかかるが、このようなケースはない。既に注目したように、RGマトリックスが既知であれば、マトリックスの第1行も既知であり、このことは、この符号を実施する時間を大幅に短縮するように働く。前の符号は、写像β:R→R(ここでr<n)を使用する。群環符号のマトリックスフォームでは、
Figure 2008541540

によって示される写像Fn×n→Fn×nを有する。次に、Xは第1行のうちの最後のn−rエントリーのうちの各々に対し、エントリー0を有するRGマトリックスであり、Xはその第1行によって決定される。XUはRGマトリックスでもあるので、これは第1行によって決定される。したがって、写像βおよびαは実施するのに同じ回数の計算および同じ時間が必要となる。
・新しい低密度パリティチェック(LDPC)チェック符号の生成にはこの群環方法によっても容易となる。
・セルフデュアル符号は、群環内の要素として解釈が容易であるので、この方法による生成が容易である。
これら特定の符号は重要なアプリケーションを有し、現在まで生成が困難であった。
(群環ゼロ因子符号)
RGにおいて、uv=0(ここでu≠0かつv≠0)を仮定する。Gの要素を{g,g,...,g}と仮定し、Wをg,g,...,gが生成したモジュールであるとする。Wがgi1,gi2,...,girによって生成されたモジュールであるケースも同様であり、以下、同じように取り扱う。次に、ゼロ因子群環符号を次のように示す。
Figure 2008541540
次の要素のベクトル
Figure 2008541540

を仮定し、
Figure 2008541540

とすることにより、このベクトルを符号化し、
Figure 2008541540

によって符号化を示す。cがコードワードであれば、明らかにcv=0である。したがって、vはチェック要素であり、Vはチェックマトリックスである。
r≦階数Uと仮定できる。r=階数Uであるケースは、特別に重要であり、このケースによってフル階数生成子およびチェックマトリックスが得られる。
次に、Uは階数rを有し、Vは階数n−rを有すると仮定する。次に、V=0である場合、かつその場合に限り、yはコードワードとなる。Vがn−r未満の階数を有する場合、RGマトリックスV=V,V,V,...,V(ここでt<n−r)が存在するので、i=0,1,...,tに対し、Vy=0の場合およびこの場合に限り、yはコードワードとなる。多くのケースでは、t=0の場合の階数n−rのVを探すことができる。マトリックスの既知の特性およびこれらRGマトリックスU、Vの構造からこのようになる。
(ゼロ因子符号の一般的な例としての正2面体符号)
次数8の正2面体群を使ったゼロ因子符号の一例を例に関する章に示す。
長さ2nおよび次元nの一般的な正2面体符号の構造は次のとおりである。
次数2nの正2面体群G=D2nの要素を{1,b,b,...,bn−1,a,...,abn−1}とリストすることができる。次に、u=1+a+ab+...+abn−2およびv=b+b+...+bn−1+abn−1を設定すると、uv=0であることが証明される。
次数2nの正2面体群、D2nは、RG行列
Figure 2008541540

(ここで、Aは巡回マトリックスであり、Bはハンケルタイプの行列である)を有する。A=Iとし、Bを次のように見なす。
Figure 2008541540
階数Pをnと見ることは容易である。マトリックスPは群環要素uに対応するRGマトリックスである。
Pを
Figure 2008541540

を通したマトリックスと見なす。マトリックスQはvから発見するので、PQ=0である。この場合、Qを得るためにP内の各0を1に置換し、P内の各1を0に置換することに留意されたい。
これによって、次の式が得られる。
Figure 2008541540
Qは、群環要素vに対応するマトリックスである。
次にPQ=0であり、Qは、チェックマトリックスを与える。Qも階数nを有するので、可能なフルの階数を有する。
次に、Pによって示される符号化
Figure 2008541540

を検討する。生成マトリックス(A,B)はn×nであり、チェックマトリックスであるEもn×nである。この符号は長さ2nおよび次元nを有し、レートはn/(2n)=1/2である。
セルフデュアル正2面体符号を検討する次の章も参照されたい。
セルフデュアルタイプの符号
Figure 2008541540

を群環内の1つの要素と見なし、Uを対応するRGマトリックスと見なす。
Figure 2008541540

(ここで、α’は、U、Uの転置マトリックスの第1行の、順の要素である)を定義する。Uが対称的である場合、明らかにu=uであり、この場合、uも対称的であると称す。gの係数が群Gのうちのすべての要素gに対し、u内の係数g−1に等しい場合およびその場合に限り、uは対称的であると容易に見なす。このことは容易な条件であるが、大きな限定ではない。
セルフデュアル群環符号は次の符号化
Figure 2008541540

(ここで、uはuu=0を満足する)によって示される符号である。uが対称的である場合、セルフデュアル群環符号に対する条件はu=0であることである。
例えばu=0である場合、およびこの場合に限り、uによって示される群環符号はセルフチェックである。
次に新しいセルフデュアル符号を生成することは容易である。
フォーム
Figure 2008541540

(ここで、A、Bはn×nマトリックスである)のRGマトリックスを有する群環要素を検討する。この要素は、A、Bの双方が巡回マトリックスである次数nの周期的群の直積のケースに対するものとするか、またはAが巡回マトリックスであり、Bがハンケルタイプのマトリックスである次数2nの正2面体群のケースに対するものであるとすることができる。
A=Iとし、BがB=Iを満たす場合、
Figure 2008541540

となる。次に、符号を次元nのうちの1つおよび生成マトリックス(A,B)を有する長さ2nと見なすことができ、P=0であるので、チェックマトリックス(A,B)も有する。Bも対称的であれば、この符号はセルフデュアル符号となる。
nが偶数であり、B=Iである場合に、
Figure 2008541540

を通したn×nの巡回対称マトリックスBの一例は、次のフォーム
Figure 2008541540

のうちの1つである。
n=4のとき、これによってハミング符号が得られる。
nが偶数であり、B=Iである場合の、ハンケルタイプのマトリックスの一例は、次のフォーム
Figure 2008541540

のうちの1つである。
ハンケルタイプのマトリックスは自動的に対称的である。
=0である場合、
Figure 2008541540

を通して(P+I)(P+I)=Iである。これにより、Pに対する式内でBをP+Iに置換し、Aをアイデンティティ2n×2nマトリックスに置換することにより、更にセルフデュアル符号を構築することが可能となる。こうして、例えば1からスタートするかかる符号の無限シーケンスを作成し続けることができる。
第1の行として、0で終了するシーケンス1,0,1,1,0,0,1,1,1,0,0,0,...を有するマトリックスとしてBを検討する。Bを巡回マトリックスとして見なすか、ハンケルタイプのマトリックスとして見なす。Bのサイズを2n=m(m−1)と仮定し、
Figure 2008541540

を通して作業する。次にB2n=Iとし、次のマトリックス
Figure 2008541540

(ここで、A=I2nでありC=Bである)はP=0を満足する。これによって写像
Figure 2008541540

とみなすとき、セルフチェック符号が得られる。例えばm=3のとき、(12,6,4)符号が得られる。他の値のmに対して良好な距離特性を有する新しい符号が得られる。
(群環単位の符号)
群環における単位を見ることによって、新規で、かつ有効な符号も得られる。
この方法は、符号を構築するための新規な完全な方法である。前の方法はほとんどのケースではゼロ因子周期的符号が得られた。
このタイプの符号化は暗号化と符号化が共に必要とされるときに特に有効である。
uを群環RGにおける単位と仮定する。ここで、|G|=nであり、G={g,g,...,g}である。まず、W内の要素が次のフォーム
Figure 2008541540

となるようにg,g,...,g(ここでr<n)によって生成されたモジュールであると見なす。W={gi1,gi2,...,git}が同様である状況について、更に以下のように取り扱う。
Figure 2008541540

により符号化を行うと、WからRGへの写像が得られるので、この写像はRからRへの写像となる。
符号化が
Figure 2008541540

によって示されると仮定する。このケースの
Figure 2008541540

も同様である。cは
Figure 2008541540

の場合、およびその場合に限り、コードワードとなる。すなわちcu−1内のgr+1,...gがゼロの場合、およびその場合に限り、コードワードとなる。
これら単位群環を符号と称す。次に、生成マトリックスおよびチェックマトリックスをどのように得るかについて説明する。
w、u−1をRGマトリックス(wij)および(uij)とそれぞれ見なす場合、gr+1,...gの係数を見ると、次の条件を有する。
Figure 2008541540
これは、チェックマトリックスの条件となる。n−r個の条件が存在し、マトリックスを下に進み、0を選び出すような、より多くのチェック条件が存在するように見えるが、これらは上記のような結果である。
これら符号は逆数で乗算すると、最初のr回のエントリーとして下のデータが得られ、他の(n−r)回のエントリーがチェックマトリックスを与えるという利点も有することに注目されたい。
群環単位符号を次のようなマトリックスフォームで検討することもできる。群環におけるuv=1を仮定し、U、Vを、例えばn×nである対応するRGマトリックスとする。
Figure 2008541540

を仮定する。
次にUV=IはAD=0であることを意味する。上記記載に正確に対応する群環単位符号に対し、Aは生成マトリックスであり、Dはチェックマトリックスであると理解する。Dがチェックマトリックスであることを理解するために、まずx=uAである場合、明らかにxD=0であることに注目する。他方、xD=0であると仮定し、次のように一部の1×rベクトルuに対し、x=uAであることを示す。
Figure 2008541540
次に、必要とされるように、xC=uは1×rであり、x=xVU=uAである。従って、Dは通常説明されるようなチェックマトリックスであり、D=0である場合およびその場合に限り、xD=0である場合およびその場合に限り、xはコードワードである。
この単位群環から生成されるチェックマトリックスDがフルの許容可能な階数を有することは、生成マトリックスであるAが階数rを有すれば、D(およびD)が階数n−rを有することを意味することに注目されたい。
群環内の1つの単位に対応する特異でない行列から、符号および生成マトリックスおよびチェックマトリックスを構築するこの方法は、RGマトリックスではなく、任意の非特異的(可逆的)マトリックスに対して働くことが理解できよう。この方法は、非特異的マトリックスから符号を生成するための新規な発明である。
このように、次のように群環単位符号を構築できる。RGを環R(通常、Rは体であるが、体でなくてもよい)を通した群Gの群環であるとする。uv=1となるような、RGの単位uおよびを要素vを探す。整数rを選択し、W={g,g,...,g}(またはW={gi1,gi2,...,gir}−以下参照)と見なす。次に、単位符号は上記のものであり、UおよびVから生成マトリックスおよびチェックマトリックスを得ることができる。
RG内のどの要素もゼロ因子または単位のいずれかであり、特定の要素が単位またはゼロ因子であるかどうかを決定するためのアルゴリズムが存在することは、フィールドを通して既知となっている。
このように、有効でもある整数
Figure 2008541540

を通して符号を構築できることにも注目されたい。望んでいることは、
Figure 2008541540

における単位であり、これらを構築するための方法は既知となっている。
(他のサブモジュール)
Wが全ての
Figure 2008541540

の集合となるように、要素gk1,gk2,...,gkt(ここで1≦k<k<...<k≦n)によって生成されるモジュールであると仮定する。次に、写像
Figure 2008541540

により符号を定義する。
(uが1つの単位であるケース)
次に、uを1つの単位と仮定し、uv=1およびUV=Iであると仮定する。
Figure 2008541540

によって示される符号を検討する。次のように生成マトリックスおよびチェックマトリックスを得る。
AをUのk,k,...,kから成るr×nマトリックスであるとする。DをVのk,k,...,k列が削除された(n−r)×nマトリックスであるとする。
この場合、Aは生成マトリックスであり、Dはチェックマトリックスである。符号
Figure 2008541540

に対し、同じようにVおよびUから生成マトリックスおよびチェックマトリックスを得る。
各iに対し、k=iであれば、最初のr行およびUを有す。ここで、UはUのうちの最初のr行であり、DはVのうちの最後のn−r列であり、これは上記の最初のケースに対応する。
符号および生成マトリックス並びにチェックマトリックスを生成するこの方法は、単位群環要素に対応する非特異マトリックスに対して働き、単位群環要素に対応する非特異マトリックスではなく、任意の非特異マトリックスに対して働くことが理解できよう。
(uがゼロ因子である)
次に、uをゼロ因子であると仮定する。ここで、uv=0およびUV=0を有する。この場合、Uが階数rを有し、Vが階数n−rを有すると見なす。符号化は
Figure 2008541540

であり、ケース
Figure 2008541540

も同様であると仮定する。
Uのr個の行が存在し、これら行は線形的に独立していることは既知である。次に、Uのうちのk,k,...,k行がs≦rの場合に線形的に独立していると仮定する。行R’={k,k,...,k,w,...,wr−s}を線形的に独立するように選択できる。Rが、R’内の行をUから取り出した順に置いたマトリックスであるとする。(wの行は必ずしもk行の後に続くものではない。)これらを正しい順にはめ込む。Uを行が順に配列されたRから形成されたマトリックスであるとする。この場合、Uは階数rおよびサイズr×nを有する。UC=Iとなるようなn×rのマトリックスCが存在する。
Uのうちの行k,...,kからマトリックスを形成し、これをUksと称す。この場合、我々の生成マトリックスAはUksとなる。
チェックマトリックスを得るためにCのうちのk,k,...,k列を削除し、我々がCr−sと称すn×(r−s)マトリックスを得る。次に、このCn−rマトリックスをVに加え、Dと称すマトリックスを得る。このDはn×(n−s)マトリックスであり、このマトリックスは階数n−sも有し、UD=0を満たす。実際にD=0の場合およびその場合に限り、yはコードワードとなる。
従って、我々のチェックマトリックスはDである。
よって、生成マトリックスはUksであり、チェックマトリックスはDであり、このマトリックスはCからの所定のr−s列をマトリックスVn−rに加えることによって得られる。
(利点)
本例における利点は、uv=1およびUV=Iを仮定した場合、必要なタイプの符号または必要な距離を有する符号を我々に与えるような、Uの行を選択できることである。一旦、これら行を選択すると、生成マトリックスおよびチェックマトリックスが即座に得られる。
(符号のタイプ)
本発明の範囲を限定するものではないが、本明細書を読めば、次のタイプの符号が理論的かつ実用上重要な符号であることが理解できよう。
・低密度パリティチェック(LDPC)符号
・セルフデュアルタイプの符号
・直交符号
群環方法を検討すると、新規で有効なセルフデュアル符号を見つけることは容易であり、これらセルフデュアル符号は群環符号として容易に解釈できる。
LDPC符号は自らの重要性を有し、特別なタイプの群環符号を見ることにより、新規で、かつ有効なLDPC符号を探すことが比較的容易である。
(暗号化と組み合わされた符号化)
1つのシステムにおいて、群環公開鍵暗号化方法と符号とを組み合わせるために、特に単位群環符号が有効となる。例えばアリスしかuの逆数u−1を知っていないように、uをアリスの公開鍵である単位と仮定する。uによって決定された符号により、暗号化メッセージmを送る。メッセージは暗号化されているだけでなく、u−1から得られた復号化マトリックスをアリスしか知らないように、このマップにより暗号化もされている。
1つの演算で誤り訂正と暗号化とを組み合わせることができる。このことは、安価で安全な(および信頼性のある)通信から利点が得られるアプリケーションの数は言うまでもなく、複雑さを低減する点に関して膨大な潜在力を有し、チップの設計に関してコストを節約できる。
(直交単位符号)
UU=Iとなるように
Figure 2008541540

を直交マトリックスであると仮定する。U=(A|B)であるので、上記記載からこのブロックフォームでこの単位によって生成される符号は生成マトリックスA(Uの頂部部分)およびチェックマトリックスB(Uの底部部分)を有することが理解できる。この符号を直交単位符号と称す。このことは、uu=1となるような群環における単位uを探すことに対応する。uにおいて、gおよびg−1の係数が全ての
Figure 2008541540

に対して同一である場合、u=uである場合、条件はu=1である。U内のAのサイズには制限はない。
(低密度パリティチェック符号)
群環符号から新規な低密度パリティチェック(LDPC)符号が容易に得られる。チェック要素が短く、すなわち等価的にはマトリックスのサイズと比較して、各行および列にほとんど非ゼロ要素を有しないゼロ因子符号または単位符号を探すことが必要である。
uまたはu−1のいずれかが、群のサイズと比較して少数の非ゼロ係数しか有しないように、単位要素u∈RGを探すことによって、疎またはLDPC群環符号が得られる。
群環からのかかる符号のシリーズ全体を示すことは容易である。
優れた特性を有し、構築が比較的容易な、双周期的単位と称される非累積的群環単位が存在し、これら単位はほとんどの非累積的群環内に存在する。
aが群内に次数mを有すると仮定し、
Figure 2008541540

を定める。この場合、
Figure 2008541540

となる。bをaと交換しない群内の任意の要素であるとする。この場合、
Figure 2008541540

はα=0を満たすので、u=1+αは1つの単位となる。bがaと交換しないとき、u≠1である。また、u−1=1−αであり、これらは双周期的単位である。
aの次数であるmはa、bによって生成された群の次数と比較して大きくなくてもよいので、その結果生じるチェックマトリックス(および生成マトリックス)は、u−1およびuが短いので、疎となる。
正2面体群における双周期的単位を使用するLDPC符号の「実施例」にて、これまで説明した例を参照されたい。
これら例では、優れた距離特性を有する2つの周期的群の直積から形成された単位群環を使ったLDPC符号も構築される。このように、新しいLDPC符号を生成するために、他の多くの群も使用できる。
復号のためにLDPC符号のガースが重要であり、良好なガースを用いて新しい符号を構築できる。
本発明を説明する際に、本明細書で用いた[含む」なる用語および「有する/備える」なる用語は、説明した特徴、整数、ステップまたはコンポーネントが存在することを指定するために用いたものであり、1つ以上のその他の特徴、整数、ステップ、コンポーネントまたはそれらの群の存在または追加を排除するものではない。
明瞭にするために、別々の実施例に関連して説明した本発明の所定の特徴は、単一の実施例と組み合わせて得ることもできることが理解できよう。逆に、簡潔にするために、単一の実施例に関連して説明した本発明の種々の特徴は別々または適当なサブ組み合わせで得ることもできる。
本発明の特徴にかかわる符号生成方法を示すフローチャートである。 図1に示された方法の要素選択プロセスおよび符号生成プロセスを示す。

Claims (46)

  1. a)群の集合から1つの群を選択するステップと、
    b)環の集合から1つの環を選択するステップと、
    c)前記選択した群および前記選択した環から群環を形成するステップと、
    d)生成すべき符号の所望する特性に基づき、前記群環から生成子要素uを選択するステップと、
    e)前記選択した生成子要素uを符号生成プロセスに入力し、対応するチェック要素を得るステップとを備えた、意図する用途に固有の特性を有する符号を生成するための方法。
  2. 生成すべき前記符号は、非周期的群のゼロ因子符号であり、前記生成子要素を選択する前記ステップは、ゼロ因子要素を選択することを含む、請求項1に記載の方法。
  3. 生成すべき前記符号は、単位符号であり、前記生成子要素を選択する前記ステップは、単位要素を選択することを含む、請求項1に記載の方法。
  4. 生成すべき前記符号は、低密度パリティチェック(LDPC)符号であり、生成子要素uを選択する前記ステップは、前記群のサイズと比較して少数の非ゼロ係数を有する要素を選択することを含む、請求項1に記載の方法。
  5. 前記符号の特性は、符号距離を含む、請求項1から4のいずれかに記載の方法。
  6. 前記符号の特性は、符号長さを含む、請求項1から5のいずれかに記載の方法。
  7. 前記符号の特性は、符号レートを含む、請求項1から6のいずれかに記載の方法。
  8. f)前記生成子要素uおよび前記チェック要素を対応するペアの符号化マトリックスおよび復号化マトリックスに写像するステップを更に含む、請求項1から7のいずれかに記載の方法。
  9. g)前記生成された符号の評価を実行するために符号化マトリックスおよび復号化マトリックスを使用することを含む、請求項8に記載の方法。
  10. 前記評価は、符号レートを計算することを含む、請求項9に記載の方法。
  11. 前記評価は、符号ガースを計算することを含む、請求項9または10記載の方法。
  12. 前記評価は、符号距離を計算することを含む、請求項9から11のいずれかに記載の方法。
  13. ステップa)およびb)を実行するときに、前記評価の結果をフィードバックとして使用して、前記ステップa)からe)を繰り返すステップh)を更に含む、請求項9から12のいずれかに記載の方法。
  14. 前記ステップa)およびb)は、前記選択プロセスにおいて前記生成した符号を使用するようになっている前記システムの特性を使用することを含む、請求項9から12のいずれかに記載の方法。
  15. 前記ステップa)およびb)は、前記選択プロセスにおいて、ユーザの入力を使用することを含む、請求項9から12のいずれかに記載の方法。
  16. 前記ステップa)およびb)は、前記選択プロセスにおいて、予め定められた選択基準を使用することを含む、請求項9から12のいずれかに記載の方法。
  17. 前記ステップd)は、前記選択された生成子要素uがゼロ因子要素であるかどうかを判断するステップi)を更に含む、請求項1から16のいずれかに記載の方法。
  18. 前記ステップd)は、
    ii)前記選択された生成子要素uが前記ゼロ因子要素である場合に、uv=0となるように群環の整合要素vを決定するステップ、または
    iii)前記生成子要素uが単位要素である場合に、uv=1となるように群環の整合要素vを決定するステップを更に含む、請求項17に記載の方法。
  19. 前記ステップe)は、前記整合要素vを前記符号生成プロセス内に入力するステップを更に含む、請求項18に記載の方法。
  20. a)群の集合から1つの群を選択するための手段と、
    b)環の集合から1つの環を選択するための手段と、
    c)前記選択した群および前記選択した環から群環を形成するための手段と、
    d)生成すべき符号の所望する特性に基づき、前記群環から生成子要素uを選択するための手段と、
    e)前記選択された生成子要素uを受け取り、対応するチェック要素を生成するよう適合された符号生成子とを備えた、意図する用途に固有の特性を有する符号を生成するための装置。
  21. 生成すべき前記符号は、非周期的群のゼロ因子符号であり、生成子要素uを選択するための前記手段は、ゼロ因子要素を選択するよう適合されている、請求項20に記載の装置。
  22. 生成すべき前記符号は、単位符号であり、生成子要素を選択するための前記手段は、単位要素を選択するよう適合されている、請求項20に記載の装置。
  23. 生成すべき前記符号は、低密度パリティチェック(LDPC)符号であり、生成子要素uを選択するための前記手段は、前記群のサイズと比較して少数の非ゼロ係数を有する要素を選択するよう適合されている、請求項20に記載の装置。
  24. 前記符号の特性は、符号距離を含む、請求項1から23のいずれかに記載の装置。
  25. 前記符号の特性は、符号長さを含む、請求項1から24のいずれかに記載の装置。
  26. 前記符号の特性は、符号レートを含む、請求項1から25のいずれかに記載の装置。
  27. f)前記生成子要素uおよび前記チェック要素を対応するペアの符号化マトリックスおよび復号化マトリックスに写像する手段を更に含む、請求項1から26のいずれかに記載の装置。
  28. g)符号化マトリックスおよび復号化マトリックスを使用して前記生成された符号を評価するための生成符号アナライザを更に含む、請求項27に記載の装置。
  29. 前記生成された符号のアナライザは、符号レートを計算するよう適合されている、請求項28に記載の装置。
  30. 前記生成された符号のアナライザは、符号ガースを計算するよう適合されている、請求項28または29に記載の装置。
  31. 前記生成された符号のアナライザは、符号距離を計算するよう適合されている、請求項28から30のいずれかに記載の装置。
  32. 群を選択するための前記手段および環を選択するための前記手段は、前記生成された符号のアナライザの結果をフィードバックとして使用するよう適合されている28から31のいずれかに記載の装置。
  33. 群を選択するための前記手段および環を選択するための前記手段は、前記生成された符号が使用するために意図されている前記システムの特性を使用するようになっている、請求項28から31のいずれかに記載の装置。
  34. 群を選択するための前記手段および環を選択するための前記手段は、前記選択プロセスにおいて、ユーザの入力を使用するよう適合されている、請求項28から31のいずれかに記載の装置。
  35. 群を選択するための前記手段および環を選択するための前記手段は、前記選択プロセスにおいて、予め定められた選択基準を使用するよう適合されている、請求項28から31のいずれかに記載の装置。
  36. 前記群環から生成子要素を選択するための前記手段は、前記選択された生成子要素uがゼロ因子要素であるかどうかを判断する手段を含む、請求項1から35のいずれかに記載の装置。
  37. 前記群環から生成子要素を選択するための前記手段は、
    前記選択された生成子要素が前記ゼロ因子要素である場合に、uv=0となるように群環の整合要素vを決定するよう適合され、かつ、
    前記選択された生成子要素uが単位要素である場合に、uv=1となるように群環の整合要素vを決定するよう適合されている、請求項36に記載の装置。
  38. 前記符号生成子は、前記整合要素vを受け取り、前記符号生成プロセス内の前記整合要素を使用するように適合されている、請求項37に記載の装置。
  39. 通信システムにおいて、通信チャンネルを通して送信するためのデータを符号化するための、請求項1から14のいずれかに記載の方法によって生成される符号の使用方法。
  40. データ記憶媒体に記憶するためにデータを符号化するための、請求項1から14のいずれかに記載の方法によって生成される符号の使用方法。
  41. 前記データは、デジタルデータである、請求項29または30に記載の使用方法。
  42. 前記生成された要素uが公開鍵として働き、前記チェック要素が秘密鍵として働く、公開鍵暗号化方法を使って暗号化されているメッセージを符号化するための、請求項1から14のいずれかに記載の方法によって生成される符号の使用方法。
  43. a)生成すべき符号の所望する特性に基づき、非特異的マトリックスから生成子要素を選択するステップと、
    b)前記選択された生成子要素を符号生成プロセスに入力し、対応するチェック要素を得るステップとを備えた、意図する用途に固有の特性を有する符号を生成する方法。
  44. c)前記生成子要素および前記チェック要素を対応するペアの符号化マトリックスおよび復号化マトリックスに写像するステップを更に含む、請求項43に記載の方法。
  45. 本明細書に実質的に説明し、添付図面に示したように符号を生成する方法。
  46. 実質的に本明細書に説明したような、請求項29から31のいずれかに記載の使用方法。
JP2008509569A 2005-05-04 2006-05-04 群環におけるゼロ因子および単位を使用することにより、誤り訂正符号および誤り検出符号を生成するための方法および装置 Pending JP2008541540A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IE20050277A IE20050277A1 (en) 2005-05-04 2005-05-04 Method and apparatus for generating error-correcting and error-detecting codes using zero-divisors and units in group rings
PCT/IE2006/000046 WO2006117769A2 (en) 2005-05-04 2006-05-04 Method and apparatus for generating error-correcting and error-detecting codes using zero-divisors and units in group rings

Publications (1)

Publication Number Publication Date
JP2008541540A true JP2008541540A (ja) 2008-11-20

Family

ID=36888814

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008509569A Pending JP2008541540A (ja) 2005-05-04 2006-05-04 群環におけるゼロ因子および単位を使用することにより、誤り訂正符号および誤り検出符号を生成するための方法および装置

Country Status (6)

Country Link
US (1) US20090089744A1 (ja)
EP (1) EP1878117A2 (ja)
JP (1) JP2008541540A (ja)
CN (1) CN101194427A (ja)
IE (1) IE20050277A1 (ja)
WO (1) WO2006117769A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017533458A (ja) * 2014-09-30 2017-11-09 コーニンクレッカ フィリップス エヌ ヴェKonink 難読化された算術を実行するための電子計算装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090019333A1 (en) 2007-07-02 2009-01-15 Mcevoy Paul Generation of parity-check matrices
FR2982446A1 (fr) 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2982447A1 (fr) 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
BR112017012092A2 (pt) 2014-12-12 2018-01-16 Koninklijke Philips Nv dispositivo e método de geração eletrônicos, e programa de computador
CN109660317B (zh) * 2018-12-20 2021-08-06 青岛理工大学 基于自对偶量子低密度奇偶校验纠错的量子网络传输方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5725047A (en) * 1980-07-23 1982-02-09 Sony Corp Error correcting method
JPS61283226A (ja) * 1985-06-10 1986-12-13 Hitachi Ltd エラ−訂正方式
JP2000516733A (ja) * 1996-08-19 2000-12-12 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
WO2004077733A2 (en) * 2003-02-26 2004-09-10 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation
JP2004531965A (ja) * 2001-05-22 2004-10-14 モートン ファイナンス エス.エイ. ディジタルメッセージを伝送する方法及びそれを実施するシステム
US20050002532A1 (en) * 2002-01-30 2005-01-06 Yongxin Zhou System and method of hiding cryptographic private keys

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4713816A (en) * 1986-02-25 1987-12-15 U.S. Philips Corporation Three module memory system constructed with symbol-wide memory chips and having an error protection feature, each symbol consisting of 2I+1 bits
GB2194850B (en) * 1986-09-05 1990-10-31 Philips Nv Data processing device
JP2005196926A (ja) * 2004-01-09 2005-07-21 Toshiba Corp 記録媒体、記録媒体書込装置、記録媒体読取装置、記録媒体書込方法、および記録媒体読取方法
US7240236B2 (en) * 2004-03-23 2007-07-03 Archivas, Inc. Fixed content distributed data storage using permutation ring encoding
US7599560B2 (en) * 2005-04-22 2009-10-06 Microsoft Corporation Embedded interaction code recognition

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5725047A (en) * 1980-07-23 1982-02-09 Sony Corp Error correcting method
JPS61283226A (ja) * 1985-06-10 1986-12-13 Hitachi Ltd エラ−訂正方式
JP2000516733A (ja) * 1996-08-19 2000-12-12 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
JP2004531965A (ja) * 2001-05-22 2004-10-14 モートン ファイナンス エス.エイ. ディジタルメッセージを伝送する方法及びそれを実施するシステム
US20050002532A1 (en) * 2002-01-30 2005-01-06 Yongxin Zhou System and method of hiding cryptographic private keys
WO2004077733A2 (en) * 2003-02-26 2004-09-10 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017533458A (ja) * 2014-09-30 2017-11-09 コーニンクレッカ フィリップス エヌ ヴェKonink 難読化された算術を実行するための電子計算装置

Also Published As

Publication number Publication date
US20090089744A1 (en) 2009-04-02
WO2006117769A2 (en) 2006-11-09
IE20050277A1 (en) 2006-11-29
EP1878117A2 (en) 2008-01-16
CN101194427A (zh) 2008-06-04
WO2006117769A3 (en) 2007-03-29

Similar Documents

Publication Publication Date Title
Amini et al. Deterministic construction of binary, bipolar, and ternary compressed sensing matrices
JP3923617B2 (ja) 誤り訂正符号を有する情報ビットの変換方法およびこの方法を実行する符号化器と復号化器
EP2773061B1 (en) A method and an apparatus for deriving secret information from a series of response values and a method and an apparatus for providing helper data allowing to derive a secret information
GB2549981A (en) A public key cryptosystem based on the partitioning of elements of vectors
CN109274485B (zh) 一种数据加密方法、数据认证方法及相关设备和系统
JPWO2004001701A1 (ja) 符号演算装置
JP2008541540A (ja) 群環におけるゼロ因子および単位を使用することにより、誤り訂正符号および誤り検出符号を生成するための方法および装置
JP6817414B2 (ja) 2のべき乗でない長さに拡張されたポーラ符号の符号化および復号化
JPWO2006106841A1 (ja) 誤り訂正符号化装置
KR100550101B1 (ko) 저밀도 패리티 검사 부호의 부호화와 복호 장치 및 그방법
JP4756489B2 (ja) 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム
RU2480923C1 (ru) Способ формирования ключа шифрования/дешифрования
Chen et al. Efficient, XOR-based, ideal threshold schemes
Hooshmand et al. Secret key cryptosystem based on polar codes over binary erasure channel
US7865807B2 (en) Multi-valued check symbol calculation in error detection and correction
KR102211648B1 (ko) 신드롬을 기반으로 한 전자 서명을 통해 데이터 통신이 가능한 전자 장치 및 그 동작 방법
Lee et al. Ciphertext-only attack on linear feedback shift register-based Esmaeili-Gulliver cryptosystem
Lau et al. Polynomial-time plaintext recovery attacks on the IKKR code-based cryptosystems
Adams Introduction to algebraic coding theory
RU2613845C1 (ru) Способ формирования ключа шифрования/дешифрования
Diouf et al. Minimizing embedding impact in steganography using polar codes
JP2006133380A (ja) 復号装置と復号プログラム及び暗号通信システム
Preetha et al. Adaptive image steganography based on Syndrome-Trellis codes
RU2713694C1 (ru) Способ формирования ключа шифрования/дешифрования
Jäämeri Code-based Cryptography

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110422

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110722

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110804

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111125