"下三角行列を含み、かつ、1以上の巡回行列または零行列からなるランク落ちの検査行列のうち前記下三角行列と同一行を除いた部分検査行列に対応する生成行列を用いて準組織符号化を行う符号化器において、前記生成行列は、1以上の巡回行列を含む巡回行列部分と、前記部分検査行列のランク落ち数と同じ行数の非巡回行列部分とを含む、符号化器。前記非巡回行列部分に含まれる行ベクトルの0個以上を用いた少なくとも2つの行基本変形の中に前記巡回行列部分に含まれる任意の一行に適用すると非零要素の数を増大させるものが存在する、請求項1の符号化器。1以上の巡回行列または零行列からなるランク落ちの検査行列に対応する生成行列を用いて準組織符号化を行う符号化器において、前記生成行列は、1以上の巡回行列を含む巡回行列部分と、前記検査行列のランク落ち数と同じ行数の非巡回行列部分とを含み、前記非巡回行列部分に含まれる行ベクトルの0個以上を用いた少なくとも2つの行基本変形の中に前記巡回行列部分に含まれる任意の一行に適用すると非零要素の数を増大させるものが存在する、符号化器。前記非巡回行列部分に含まれる行ベクトルの0個以上を用いた少なくとも2つの行基本変形の中に前記巡回行列部分に含まれる任意の一行に適用すると非零要素の数を減少させるものが存在しない、請求項2または請求項3記載の符号化器。半導体メモリ部と、前記生成行列を用いて符号語を生成する請求項1または請求項3記載の符号化器と、前記符号語を前記半導体メモリ部に送る書き込み部とを備えるコントローラとを具備する、記憶装置。実施形態は、ランク落ちの検査行列に対応し、かつ、巡回行列部分を含む生成行列を用いて符号化を実行することを目的とする。実施形態によれば、符号化器は、下三角行列を含み、かつ、1以上の巡回行列または零行列からなるランク落ちの検査行列のうち前記下三角行列と同一行を除いた部分検査行列に対応する生成行列を用いて準組織符号化を行う。生成行列は、1以上の巡回行列を含む巡回行列部分と、部分検査行列のランク落ち数と同じ行数の非巡回行列部分とを含む。以下、図面を参照しながら実施形態についての説明が述べられる。尚、各実施形態の説明において、簡単化のために、シンボルは2元体上で定義される2元符号であるとする。即ち、以降の説明において、シンボルの取り得る非零要素は1のみであるとする。但し、各実施形態は、シンボルが多元体上で定義される多元符号にも適用可能である。実施形態に係る符号化器は、例えば記憶装置などの記録再生系に組み込まれたり、送信装置などの通信系に組み込まれたりする。一般に、実施形態に係る符号化器は、誤り訂正符号化を必要とする任意の構成の機器に組み込まれてよい。例えば、実施形態に係る符号化器101は、図1に示される記憶装置103に組み込まれてもよい。記憶装置103は、フラッシュメモリなどの不揮発性メモリである少なくとも1つの半導体メモリ部105と、半導体メモリ部105を制御するメモリコントローラ102とを含む。記憶装置103は、ホスト104例えば、パーソナルコンピュータ、デジタルカメラなどと接続し、ホスト104との間でデータを送受信する。例えば、ホスト104は、記憶装置103からデータを読み出したり、記憶装置103にデータを書き込んだりすることができる。メモリコントローラ102は、ROMReadOnlyMemory107、CPUCentralProcessingUnitコア108、RAMRandomAccessMemory109、ホストI/Fインタフェース110、誤り訂正部111及びメモリI/F112を含む。メモリコントローラ102の各要素は、バス106によって互いに接続されている。CPUコア108は、ホストI/F110を介してホスト104との間でデータを送受信したり、メモリI/F112を介して半導体メモリ部105との間でデータを送受信したりする。即ち、CPUコア108は、半導体メモリ部105からデータを受ける読み出し部として機能したり、半導体メモリ部105にデータを送る書き込み部として機能したりする。また、CPUコア108上で実行されるFWFirmWareは、書き換え回数の制限を含む半導体メモリ部105のアドレス管理を実現する。更に、FWは、ホスト104からのコマンド入力に応じた記憶装置103全体の制御も実現する。ROM107には、記憶装置103の制御プログラムなどが記憶されている。RAM109には、アドレス管理において必要となるアドレス変換テーブル、異常回路の情報などが記憶される。誤り訂正部111は、符号化器101及び復号器113を含む。符号化器101には、実施形態に係る符号化器が組み込まれる。符号化器101は、半導体メモリ部105に書き込まれるデータに誤り訂正符号を付加する。具体的には、後述されるように、符号化器101は、ランク落ちの検査行列に対応し、かつ、巡回行列部分を含む生成行列を用いて符号化を実行する。また、典型的には、この巡回行列部分は、非零要素の数が疎となるように少なくとも、最も密とならないように導出される。従って、符号化器101は、簡易なハードウェア実装を採用できると共に、符号化の計算複雑性が小さい。一方、復号器113は、上記検査行列を用いて、半導体メモリ部105からの読み出しデータに対する誤り訂正復号を行う。この検査行列は疑似巡回行列であるので、復号器113は簡易なハードウェア実装を採用できる。第1の実施形態以下、第1の実施形態に係る符号化器が用いる生成行列と、その導出手法とが述べられる。第1の実施形態に係る符号化器が用いる生成行列は、フルランクでない疑似巡回行列または巡回行列である検査行列に基づいて導出される。即ち、検査行列は、1以上の巡回行列からなり、ランク落ちrankdeficientである。この生成行列は、1以上の巡回行列を含む巡回行列部分と、検査行列のランク落ち数と同じ行数の非巡回行列部分とを含む。疑似巡回行列とは、b行×b列の巡回行列または零行列を複数配列したものを意味する。巡回行列とは、全ての行ベクトルが夫々1つ上の行ベクトルの要素を1つだけ右方向に巡回シフトさせたものである行列を意味する。零行列とは、全ての要素が零の行列を意味する。このb行×b列の巡回行列または零行列は、ブロックとも称される。一般に、疑似巡回行列である検査行列Hqcは、例えば下記の数式1で表すことができる。数式1において、Ai,jは1ブロックを表すiは1以上c以下の整数、jは1以上t以下の整数。検査行列Hqcによって定義される符号語の全長はt×bシンボルであり、その情報長はt-c×bシンボルであり、そのパリティ長はc×bシンボルである。また、符号語の全長、情報長及びパリティ長は、ブロックサイズbによって換算されてもよい。即ち、符号語の全長はtブロックであり、その情報長はt-cブロックであり、そのパリティ長はcブロックである。仮に、検査行列Hqcがフルランクであるならば、行基本変形を用いて当該検査行列Hqcの右側部分行列具体的には、第t-c1列から第t列までを完全に対角化することによって、下記の数式2が得られる。フルランクとは、行列の階数rankがその行列の行数と同じであることを意味する。即ち、フルランクとは、行列に含まれる1次独立な行ベクトルの最大個数が行数と同じであることを意味する。フルランクな行列は対角化可能である。以降の説明において、Iは単位行列を表し、0は零行列を表す。尚、右側部分行列の対角化のための行基本変形は数式1における左側部分行列に含まれる各ブロックAi,jにも影響するので、これら各ブロックAi,jは数式2に示されるようにA’i,jへと変形される。変形された各ブロックA’i,jもまた、巡回行列または零行列である。数式2のうち左側部分行列具体的には、第1列から第t-c列を下記の数式3で表すと、検査行列Hqcに基づく生成行列Gは下記の数式4で表すことができる。尚、以降の説明において、Tは転置を表す。行列Aは前述の通り疑似巡回行列であるので、この転置行列ATもまた疑似巡回行列である。即ち、検査行列Hqcがフルランクの疑似巡回行列であるならば、当該検査行列Hqcの右側部分行列の対角化によって得られる疑似巡回行列Aの転置行列ATを単位行列Iの右端に結合することによって、巡回行列部分ATを含む生成行列Gを導出することができる。巡回行列部分を含む生成行列を用いた符号化は、例えばシフトレジスタを用いて簡易に実装することができる。情報シンボルを配列した情報ベクトルを生成行列に乗じると、符号語ベクトルが得られる。数式4の生成行列Gによって得られる符号語において、情報ベクトルに含まれる情報シンボルは全て維持されており、これらに後続してパリティシンボルが配列される。即ち、数式4の生成行列Gは組織符号化を実現する。一方、検査行列Hqcがフルランクでない即ち、ランク落ちの疑似巡回行列であるならば、当該検査行列Hqcの右側部分行列を完全に対角化することはできない。ランク落ちとは、行列の階数がその行列の行数未満であることを意味する。即ち、ランク落ちとは、行列に含まれる1次独立な行ベクトルの最大個数が行数未満であることを意味する。尚、行列の行数とその行列の階数との間の差がXである場合に、その行列はXランク落ちの行列と称される。図2に示される検査行列Hqcは、1ランク落ちの疑似巡回行列の一例である。図2の検査行列Hqcは、6行×6列の巡回行列を行方向に2個、列方向に4個配列したものである。即ち、図2の検査行列Hqcによって定義される符号語の全長は4ブロック即ち、24=4×6シンボル、その情報長は2=4-2ブロック即ち、12=2×6シンボル、そのパリティ長は2ブロック即ち、12=2×6シンボルと見積もることができる。但し、検査行列Hqcのランク落ちの数だけ符号語の真のパリティ長は削られる。従って、図2の検査行列Hqcによって定義される符号語の真のパリティ長は11=12-1シンボルであり、その真の情報長は13=24-11シンボルである。前述のように、図2の検査行列Hqcの右側部分行列を完全に対角化することはできない。しかしながら、図3に示されるように、行基本変形を用いて図2の検査行列Hqcにおける右側部分行列の一部を対角化することは可能である。図3の行列において、図2の検査行列Hqcのランク落ちに対応する行ベクトル20が含まれる。ランク落ちに対応する行ベクトル20のうち、図3の行列の右側部分行列即ち、第13列から第24列までの対角成分即ち、第1行第13列の要素に一致する要素は0である。以降の説明において、係る要素は便宜的に対象要素と称される。対象要素は、ランク落ちに対応する行ベクトルの各々に1つだけ含まれる。前述のフルランクな検査行列Hqcの右側部分行列の対角化を通じた生成行列の導出手法によれば、対角化された行列の残部である左側部分行列即ち、前述の数式3の行列Aが抜き出される。同様に、図3の例についても、左側部分行列10便宜的に、行列Bと称されるが抜き出される。更に、ランク落ちに対応する行ベクトル20に対して対象要素において交差する列ベクトル30が抜き出される。この列ベクトル30の対象要素が1に置換され、ベクトルQが形成される。行列Bの右端にベクトルQが結合され、12行×13列の行列[BQ]が作成される。尚、ランク落ちに対応する行ベクトルの総数は、検査行列Hqcのランク落ち数と一致する。即ち、行ベクトルに対して対象要素において交差する列ベクトルの総数もまた、検査行列Hqcのランク落ち数と一致する。従って、検査行列Hqcのランク落ち数が2以上であるならば、後述のように、係る列ベクトルの対象要素を1に置換したものを列方向に結合して行列Qが形成される。行列[BQ]は転置され、数式3と同様に、行列Bの列数と同じサイズの単位行列の右端に結合される。但し、単位行列と行列[BQ]Tの行数を揃えるために、単位行列の下端には零ベクトル或いは、零行列が結合される。係る一連の操作によって、下記の数式5に示される行列Gを導出できる。図3の行列に係る操作を適用すると、図4に示される行列が導出される。図4において、行列40は行列[BQ]Tに対応し、行列50は行列BTに対応する。以降の説明では、図2の疑似巡回行列の構造に対応する2×2個のブロック51,52,53,54を巡回行列に変形するための手法が述べられる。尚、図4から明らかなように、ブロック51,52,53,54はいずれも巡回行列ではない。具体的には、数式5のベクトルQ’或いは、行列Q’に含まれる行ベクトルの0個以上を用いた行基本変形によって行列G’に含まれる各ブロックを巡回行列に変形することができる。行列G’において、同じ行に配列される1以上のブロックを纏めたブロックグループが形成される。図4の例であれば、ブロック51,52からなるブロックグループとブロック53,54からなるブロックグループとが形成される。ブロックグループ内の任意の一行を対象行として行基本変形が適用される。そして、ブロックグループ内の各ブロックが行基本変形された対象行の部分ベクトルを含む巡回行列となるように、ブロックグループ内の他の全ての行に行基本変形が適用される。図4の例であれば、第5行を対象行として第13行を加算する行基本変形を適用できる。そして、ブロック51,52が、行基本変形された第5行の部分ベクトル[100000],[001100]を含む巡回行列となるように、ブロックグループ内の他の全ての行に行基本変形が適用される。具体的には、第1,2,3,4,6行は無変形となる即ち、0個の行ベクトルを用いた行基本変形が適用される。係る操作によれば、数式6に示されるように、行列G’の右側部分行列を疑似巡回行列に変形することができる。数式6において、G1,1,G1,2,G2,1,G2,2は、いずれも巡回行列である。数式5及び数式6に基づいて、数式7に示される生成行列G’qcを導出できる。図4の行列に基づく生成行列G’qcの一例が図5に示されている。図5において、行列60は巡回行列部分を表し、行列70は非巡回行列部分を表す。巡回行列部分60は、前述のブロック51,52,53,54を巡回行列に変形したブロック61,62,63,64を含む。また行列80は、単位行列部分を含むものの、その最終列即ち、第13列を巡回行列部分60及び非巡回行列部分70と共有している。従って、係る生成行列によって得られる符号語において、第1番目から第12番目までの情報シンボルは維持されるものの、第13番目の情報シンボルは第1番目のパリティシンボルと混合される。即ち、数式7の生成行列G’qcは準組織符号化を実現する。数式7の生成行列G’qcによる準組織符号化において、検査行列のランク落ち数と同数の情報シンボルにパリティシンボルが混合される。本実施形態に係る符号化器は、数式7の生成行列G’qcを用いて符号化を実行する。ここで、ブロック51,52,53,54を巡回行列に変形するための行基本変形には任意性が存在する。例えば、第5行を対象行として、これを無変形とすることもできる。そして、ブロック51,52が行基本変形された第5行の部分ベクトル[011111],[110011]を含む巡回行列となるように、ブロックグループ内の他の行に基本変形が行われる。具体的には、第1,2,3,4,6行に第13行が加算される。係る操作によっても、ブロック51,52を巡回行列に変形できる。非巡回行列部分Q’に含まれる行ベクトルの0個以上を用いて対象行に適用可能な行基本変形の組み合わせは、係る行ベクトルの総数に応じて増大する。係る行ベクトルの総数がnであるならば、2n通りの行基本変形即ち、非巡回行列部分Q’に含まれるn個の行ベクトルの各々を対象行に加算する/しないが存在する。そこで、本実施形態に係る符号化器が用いる生成行列G’qcは、巡回行列部分に含まれる非零要素の数が疎となる少なくなるように導出されるものとする。具体的には、対象行に適用可能な少なくとも2つの行基本変形のうち、行基本変形された対象行に含まれる非零要素の数が最大とならないものが適用される。換言すれば、導出された生成行列G’qcにおいて、非巡回行列部分に含まれる行ベクトルの0個以上を用いた少なくとも2つの行基本変形の中に巡回行列部分に含まれる任意の1行に適用すると非零要素の数を増大させるものが少なくとも1つ存在する。例えば、A対象行に含まれる非零要素の数が最も少なくなる即ち、最も疎になる行基本変形を探索し、探索した行基本変形を対象行に適用してもよい。方針Aによって導出された生成行列G’qcにおいて、非巡回行列部分に含まれる行ベクトルの0個以上を用いた少なくとも2つの行基本変形の中に巡回行列部分に含まれる任意の1行に適用すると非零要素の数を減少させるものが存在しない。或いは、B対象行について少なくも2つの行基本変形を試行し、非零の数が最大とならない例えば、最小となる行基本変形を選択し、選択した行基本変形を対象行に適用してもよい。或いは、C対象行とブロックグループ内の1または複数の他の行との中で非零要素の数を比較し、非零要素の数が最大でない例えば、最小の一行対象行であってもよいを選択する。更に、ブロックグループ内の各ブロックが選択された一行の部分ベクトルを含む巡回行列となるように、対象行に適用される行基本変形が探索されてよい。係る種々の方針のいずれかによって巡回行列部分を導出すれば、本実施形態に係る符号化器が実行する符号化の計算複雑性を低減できる。以上説明したように、第1の実施形態に係る符号化器は、ランク落ちの検査行列に対応し、かつ、巡回行列部分を含む生成行列を用いて準組織符号化を実行する。従って、本実施形態に係る符号化器によれば、簡易なハードウェア実装を採用できる。更に、第1の実施形態に係る符号化器は、巡回行列部分に含まれる非零要素の数が最大とならないように導出された生成行列を用いて準組織符号化を実行する。従って本実施形態に係る符号化器によれば、符号化の計算複雑性を低減できる。尚、図2乃至図5を用いた説明では、簡単化のために、1ランク落ちの検査行列Hqcが例示された。しかしながら、以下に説明されるように、2以上ランク落ちの検査行列Hqcから巡回行列部分を含み、かつ、当該巡回行列部分に含まれる非零要素の数が最大とならないように生成行列を導出することができる。ここで、検査行列Hqcは、10行×10列の巡回行列を行方向に4個、列方向に5個配列した3ランク落ちの疑似巡回行列であると仮定される。即ち、検査行列Hqcによって定義される符号語の全長は5ブロック即ち、50=5×10シンボル、その情報長は1=5-4ブロック即ち、10==1×10シンボル、そのパリティ長は4ブロック即ち、40=4×10シンボルと見積もることができる。但し、検査行列Hqcのランク落ちの数だけ符号語の真のパリティ長は削られる。従って、検査行列Hqcによって定義される符号語の真のパリティ長は37=40-3シンボルであり、その真の情報長は13=50-37シンボルである。前述のように、検査行列Hqcの右側部分行列を完全に対角化することはできない。しかしながら、図6に示されるように、行基本変形を用いて検査行列Hqcにおける右側部分行列の一部を対角化することが可能である。図6の行列において、検査行列Hqcのランク落ちに対応する行ベクトル221,222,223が含まれる。前述のように、これら行ベクトル221,222,223は、1つの対象要素を夫々含んでいる。図6の例についても、左側部分行列210が前述の行列Bとして抜き出される。更に、ランク落ちに対応する行ベクトル221,222,223に対して対象要素において交差する列ベクトル231,232,233が抜き出される。これら列ベクトル231,232,233の対象要素が1に置換され、列方向に結合されて前述の行列Qが形成される。行列Bの右端に行列Qが結合され、40行13列の行列[BQ]が作成される。行列[BQ]は転置され、数式3と同様に、行列Bの列数と同じサイズの単位行列の右端に結合される。但し、単位行列と行列[BQ]Tの行数を揃えるために、単位行列の下端に零行列が結合される。係る一連の操作によって、上記の数式6に示される行列Gを導出できる。図6の行列に係る操作を適用すると、図7に示される行列が導出される。図7において、行列240は行列[BQ]Tに対応し、行列250は行列BTに対応する。1×4個のブロック251,252,253,254は、巡回行列に夫々変形される。具体的には、前述のように、数式5の行列Q’に含まれる行ベクトルの0個以上を用いた行基本変形によって行列G’に含まれる各ブロックを巡回行列に変形することができる。行列G’において、同じ行に配列される1以上のブロックを纏めたブロックグループが形成される。図7の例であれば、ブロック251,252,253,254からなるブロックグループが形成される。ブロックグループ内の任意の一行を対象行として行基本変形が適用される。そして、ブロックグループ内の各ブロックが行基本変形された対象行の部分ベクトルを含む巡回行列となるように、ブロックグループ内の他の全ての行に行基本変形が適用される。図7の例であれば、第1行を対象行として第12行及び第13行を加算する行基本変形を適用できる。そして、ブロック251,252,253,254が、行基本変形された第1行の部分ベクトル[0100010000],[1100010000],[1000001010],[0011001000]を含む巡回行列となるように、ブロックグループ内の他の全ての行に行基本変形が適用される。結果的に、図8に示される生成行列G’qcが導出される。図8において、行列260は巡回行列部分を表し、行列270は非巡回行列部分を表す。行列260は、前述のブロック251,252,253,254を巡回行列に変形したブロック261,262,263,264を含む。図8に示される生成行列G’qcもまた準組織符号化を実現する。即ち、図8の生成行列G’qcによって得られる符号語において、第1番目から第10番目までのシンボルは維持されるものの、第11番目のシンボルは第1番目のパリティシンボルと混合され、第12番目のシンボルは第11番目のパリティシンボルと混合され、第13番目のシンボルは第21番目のパリティシンボルと混合される。尚、図7の行列から導出可能な生成行列G’qcは図8に示されるものに限られないが、前述の通り巡回行列部分に含まれる非零要素が最大とならないように生成行列が導出されるものとする。第2の実施形態前述の第1の実施形態に係る符号化器は、ランク落ちの疑似巡回行列である検査行列に対応する生成行列を用いて符号化を実行する。第2の実施形態において、検査行列はRURichardsonandUrbanke方式などの下三角行列部分を含むものである。尚、本実施形態の説明は具体化のためにRU方式を中心に展開されるものの、本実施形態は下三角行列部分を含む検査行列に広く適用可能である。RU方式の検査行列Hqcは、下記の数式8で表すことができる。数式8において、6つの部分行列A,B,T,C,D,Eは1つまたは複数のb行×b列の巡回行列または零行列即ち、ブロックからなる。Aはc2ブロック行×tブロック列の巡回行列または零行列からなる行列を表し、Bはc2ブロック行×c1ブロック列の巡回行列または零行列からなる行列を表し、Tはc2ブロック行×c2ブロック列の巡回行列または零行列からなる下三角行列である。下三角行列とは、対角要素よりも右側或いは上側の全ての要素が零の行列を意味する。また、数式8において、Cはc1ブロック行×tブロック列の行列を表し、Dはc1ブロック行×c1ブロック列の行列を表し、Eはc1ブロック行×c2ブロック列の行列を表す。即ち、数式8の検査行列Hqcによって定義される符号語の全長はbtc1c2シンボルであり、その情報長はbtシンボルであり、そのパリティ長はbc1c2シンボルである。部分行列Tは下三角行列なので、逆行列T-1が存在する。従って、下記の数式9に示されるように、適切な行列を検査行列Hqcの左側から乗算することによって、部分行列Eを零行列に変換できる。尚、以降の説明において、行列の右上に-1を付したものは、当該行列の逆行列を表す。数式9の検査行列H’qcによって定義される符号語ベクトルwに関して、H’qcwT=0が成立する。この符号語ベクトルwのうち、bt個の情報シンボルからなる部分ベクトルをmで表し、後続するbc1個のパリティシンボルからなる部分ベクトルをp1で表し、後続するbc2個のパリティシンボルからなる部分ベクトルをp2で表すと、w=[mp1p2]である。数式9及び符号語ベクトルwの定義によれば、部分ベクトルp1に関して下記の数式10が成立する。また、部分ベクトルp2に関して下記の数式11が成立する。尚、数式10のφは、下記の数式12によって定義される。数式10には、行列φの逆行列φ-1が含まれている。しかしながら、本実施形態において検査行列Hqcはランク落ちなので、行列φの逆行列φ-1は存在しない。そこで、数式9を参照し、部分ベクトルp1に関する部分検査行列Hqcp1を下記の数式13によって定義することとする。数式13の部分検査行列Hqcp1は、ランク落ちの疑似巡回行列であるという点で前述の数式1の検査行列Hqcと共通している。従って、部分検査行列Hqcp1を数式1の検査行列Hqcとみなして前述の第1の実施形態と同様の手法を適用すれば、この部分検査行列Hqcp1に対応する部分生成行列を導出できる。この部分生成行列は、第1の実施形態に係る符号化器が用いる生成行列と同じく、巡回行列部分を含み、かつ、この巡回行列部分に含まれる非零の数が最大とならないように導出される。一方、部分ベクトルp2は、上記数式11によれば、部分ベクトルm及び部分ベクトルp1から導出できる。尚、検査行列HqcがLDPC符号などを定義するものである場合には、部分行列A,Bは非常に疎であるため、部分ベクトルp2を導出する演算量が小さく、符号化器の計算複雑性を低減できる。また、下三角行列である部分行列Tの逆行列T-1が存在することは前述の通りである。以上説明したように、第2の実施形態に係る符号化器は、ランク落ちのRU方式の検査行列のうち一部のパリティに関する部分検査行列に対応し、かつ、巡回行列部分を含む部分生成行列を用いて準組織符号化を実行する。従って、本実施形態に係る符号化器によれば、簡易なハードウェア実装を採用できる。更に、第2の実施形態に係る符号化器は、巡回行列部分に含まれる非零要素の数が最大とならないように導出された部分生成行列を用いて準組織符号化を実行する。従って、本実施形態に係る符号化器によれば、符号化の計算複雑性を低減できる。上記各実施形態の処理は、汎用のコンピュータを基本ハードウェアとして用いることで実現可能である。上記各実施形態の処理を実現するプログラムは、コンピュータで読み取り可能な記憶媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記憶媒体に記憶される。記憶媒体としては、磁気ディスク、光ディスクCD-ROM、CD-R、DVD等、光磁気ディスクMO等、半導体メモリなど、プログラムを記憶でき、かつ、コンピュータが読み取り可能な記憶媒体であれば、何れであってもよい。また、上記各実施形態の処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータサーバ上に格納し、ネットワーク経由でコンピュータクライアントにダウンロードさせてもよい。本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。"