(57)【要約】純粋に論理的なアプローチにより、演算回路の素子数および遅延時間を削減した演算装置を実現するため、符号化による演算方式を具体的且つ効率的に論理設計し、符号化演算装置を提供する。演算系の演算器を必要があれば拡張し、基数ｒの論理関数として扱い、またｒ＝２の時には写像の新たに表現である母関数を用い、符号化条件および論理式簡単化条件の下に新演算系を論理設計するか、または元演算系と新演算系の演算器の入出力関係のトポロジーを一致させることにより符号化演算方式の新演算系を設計する。符号化条件および論理式簡単化条件を満たす演算処理装置は、高速化・低消費電力を実現する。
2004068364.tif 000002
【特許請求の範囲】
【請求項１】
符号器と、上記符号器の出力を演算処理する演算処理手段と、上記演算処理手段の出力を復号する復号器とを有し、第１の表現データ上で定義された元の演算系の処理を、第２の表現データ上で定義された上記演算処理手段の新たな演算系の処理で代替する演算処理装置において、
2004068364.tif 000093
（ｓ＝１，２，…，Ｓ）が１つまたは複数個（Ｑ＋Ｐ＋Ｓ≧１）定義された元の演算系
2004068364.tif 000094
語長ｎの数表現の集合Ｂｒｎ（ｒ値の集合Ｂｒのｎ個の直積）を、元の演算系の第１の表現データの集合とし、前記の元の演算系の各演算の入力空間のデータ集合
2004068364.tif 000095
以外は、ｒｎ−｜Ω｜個分の定まっていない要素に対する対応関係を元の演算系の各演算に付加し、元の演算系のＱ種の単項演算型の演算Ｇｑは
ＧｑＯ：Ｂｒｎ→Ｂｒｎ（ｑ＝１，２，…，Ｑ）なる単項演算に拡張し、Ｐ種の二項演算型の演算ＦｐはＦｐＯ：Ｂｒｎ×Ｂｒｎ→Ｂｒｎ（ｐ＝１，２，…，Ｐ）なる２項演算に拡張し、Ｓ種のＴ項演算型の演算ＨｓはＨｓＯ：Ｂｒｎ×Ｂｒｎ×…×Ｂｒｎ→Ｂｒｎ（直積はＴ個、ｓ＝１，２，…，Ｓ）な
2004068364.tif 000096
としたときに、
上記符号器はΦ：Ｂｒｎ→Ｂｒｍなる単射の写像として動作し、
上記復号器はΨ：Ｂｒｍ→Ｂｒｎなる全射の写像として動作し、
上記演算処理手段は、さらにＧｑＯに対応する新たな演算系の単項演算である
ＧｑＮ：Ｂｒｍ→Ｂｒｍとして動作し、ＦｐＯに対応する新たな演算系の二項演算であるＦｐＮ：Ｂｒｍ×Ｂｒｍ→Ｂｒｍとして動作し、さらに、ＨｓＯに対応する新たな演算系のＴ項演算であるＨｓＮ：Ｂｒｍ×Ｂｒｍ×…×Ｂｒｍ→Ｂｒｍとして動作し、
もって、元の演算系の全ての演算と新たな演算系の全ての演算および符号器、復号器を全て多入力多出力のｒ値論理の写像に対応させ、
さらに、Ｂｒｎ上の任意Ｘに対応した符号［Ｘ］（［Ｘ］⊂Ｂｎｍ）に対し
（１）Φ（Ｘ）∈［Ｘ］⊂Ｂｒｍ（ｆｏｒ  ∀Ｘ∈Ｂｒｎ）
（２）Ψ（［Ｘ］）＝Ｘ（ｆｏｒ  ∀Ｘ∈Ｂｒｎ）
（３）Ｙ＝ＧｑＯ（Ｘ）⇔［Ｙ］⊃ＧｑＮ（［Ｘ］）（ｆｏｒ  ∀Ｘ，Ｙ∈Ｂｒｎ、∀ｑ）
（４）Ｚ＝ＦｐＯ（Ｘ，Ｙ）⇔［Ｚ］⊃ＦｐＮ（［Ｘ］，［Ｙ］）（ｆｏｒ  ∀Ｘ，Ｙ，Ｚ∈Ｂｒｎ、∀ｐ）
（５）Ｙ＝ＨｓＯ（Ｘｌ，…，ＸＴ）⇔［Ｙ］⊃ＨｓＮ（［Ｘｌ］，…，［ＸＴ］）（ｆｏｒ  ∀Ｘｌ，…，ＸＴ，Ｙ∈Ｂｒｎ、∀ｓ）
の条件を満たすようにしたことを特徴とする演算処理装置。
【請求項２】
符号器と、上記符号器の出力を演算処理する演算処理手段と、上記演算処理手段の出力を復号する復号器とを有し、第１の表現データ上で定義された元の演算系の処理を、第２の表現データ上で定義された上記演算処理手段の新たな演算系の処理で代替する演算処理装置において、
2004068364.tif 000097
（ｓ＝１，２，…，Ｓ）が１つまたは複数個（Ｑ＋Ｐ＋Ｓ≧１）定義された元の演算系
2004068364.tif 000098
語長ｎの数表現の集合Ｂｒｎ（ｒ値の集合Ｂｒのｎ個の直積）を、元の演算系の第１の表現データの集合とし、前記の元の演算系の各演算の入力空間のデータ集合
2004068364.tif 000099
以外は、ｒｎ−｜Ω｜個分の定まっていない要素に対する対応関係を元の演算系の各演算に付加し、元の演算系のＱ種の単項演算型の演算Ｇｑは
ＧｑＯ：Ｂｒｎ→Ｂｒｎ（ｑ＝１，２，…，Ｑ）なる単項演算に拡張し、Ｐ種の二項演算型の演算ＦｐはＦｐＯ：Ｂｒｎ×Ｂｒｎ→Ｂｒｎ（ｐ＝１，２，…，Ｐ）なる２項演算に拡張し、Ｓ種のＴ項演算型の演算ＨｓはＨｓＯ：Ｂｒｎ×Ｂｒｎ×…×Ｂｒｎ→Ｂｒｎ（直積はＴ個、ｓ＝１，２，…，Ｓ）な
2004068364.tif 000100
としたときに、
上記符号器はΦ：Ｂｒｎ→Ｂｒｍなる単射の写像として動作し、
上記復号器はΨ：Ｂｒｍ→Ｂｒｎなる全射の写像として動作し、
上記演算処理手段は、さらにＧｑＯに対応する新たな演算系の単項演算である
ＧｑＮ：Ｂｒｍ→Ｂｒｍとして動作し、ＦｐＯに対応する新たな演算系の二項演算であるＦｐＮ：Ｂｒｍ×Ｂｒｍ→Ｂｒｍとして動作し、さらに、ＨｓＯに対応する新たな演算系のＴ項演算であるＨｓＮ：Ｂｒｍ×Ｂｒｍ×…×Ｂｒｍ→Ｂｒｍとして動作し、
もって、元の演算系の全ての演算と新たな演算系の全ての演算および符号器、復号器を全て多入力多出力のｒ値論理の写像に対応させ、
さらに、Ｂｒｎ上の任意Ｘに対応した符号［Ｘ］（［Ｘ］⊂Ｂｎｍ）に対し
2004068364.tif 000101
の条件を満たすようにしたことを特徴とする演算処理装置。
【請求項３】
2004068364.tif 000102
たは２項演算型のＰ種の演算
2004068364.tif 000103
し
2004068364.tif 000104
語長ｎの数表現の集合Ｂｒｎ（ｒ値の集合Ｂｒのｎ個の直積）を元の演算系の第１の表現データの集合とし、前記の元の演算系の各演算の入力空間のデータ集合
2004068364.tif 000105
以外は、ｒｎ−｜Ω｜個分の定まっていない要素に対する対応関係をそれぞれの元演算毎に付加し、元の演算系のＱ種の単項演算型の演算ＧｑはＧｑＯ：Ｂｒｎ→Ｂｒｎ（ｑ＝１，２，…，Ｑ）なる単項演算に拡張し、元の演算系のＰ種の二項演算型の演算ＦｐはＦｐＯ：Ｂｒｎ×Ｂｒｎ→Ｂｒｎ（ｐ＝１，２，…，Ｐ）なる２項演算に拡張し、元の演算系のＳ種のＴ項演算型の元演算ＨｓはＨｓＯ：Ｂｒｎ×Ｂｒｎ×…×Ｂｒｎ→Ｂｒｎ（直積はＴ個、
2004068364.tif 000106
２の表現データとし、符号器はΦ：Ｂｒｎ→Ｂｒｍなる単射の写像として扱い、復号器はΨ：Ｂｒｍ→Ｂｒｎなる全射の写像として扱い、さらにＧｑＯに対応する新演算系の単項演算はＧｑＮ：Ｂｒｍ→Ｂｒｍなる単項演算として扱い、ＦｐＯに対応する新演算系の二項演算はＦｐＮ：Ｂｒｍ×Ｂｒｍ→Ｂｒｍなる二項演算として扱い、ＨｓＯに対応する新演算系のＴ項演算はＨｓＮ：Ｂｒｍ×Ｂｒｍ×…×Ｂｒｍ→ＢｒｍなるＴ項演算として扱うことで、旧演算系の全ての演算と新演算系の全ての演算および符号器、復号器を全て多入力多出力のｒ値論理の写像に対応させ、
Ｂｒｎ上の任意Ｘに対応して、
（１）Φ（Ｘ）∈［Ｘ］⊂Ｂｒｍ（ｆｏｒ  ∀Ｘ∈Ｂｒｎ）
（２）Ψ（［Ｘ］）＝Ｘ（ｆｏｒ  ∀Ｘ∈Ｂｒｎ）
なる条件を満たす符号［Ｘ］（［Ｘ］⊂Ｂｎｍ）を生成するステップと、
新演算系の演算を生成するステップと、
上記演算のうち、
（３）Ｙ＝ＧｑＯ（Ｘ）⇔［Ｙ］⊃ＧｑＮ（［Ｘ］）（ｆｏｒ  ∀Ｘ，Ｙ∈Ｂｒｎ、∀ｑ）
（４）Ｚ＝ＦｐＯ（Ｘ，Ｙ）⇔［Ｚ］⊃ＦｐＮ（［Ｘ］，［Ｙ］）（ｆｏｒ  ∀Ｘ，Ｙ，Ｚ∈Ｂｒｎ、∀ｐ）
（５）Ｙ＝ＨｓＯ（Ｘｌ，…，Ｘｒ）⇔［Ｙ］⊃ＨｓＮ（［Ｘｌ］，…，［ＸＴ］）（ｆｏｒ  ∀Ｘｌ，…，ＸＴ，Ｙ∈Ｂｒｎ、∀ｓ）
なる条件を満たすものを選択するステップとをコンピュータに実行させることを特徴とする演算処理装置設計方法。
【請求項４】
2004068364.tif 000107
（ｓ＝１，２，…，Ｓ）が１つまたは複数個（Ｑ＋Ｐ＋Ｓ≧１）定義された元の演算系
2004068364.tif 000108
語長ｎの数表現の集合Ｂｒｎ（ｒ値の集合Ｂｒのｎ個の直積）を元の演算系の第１の表現データの集合とし、前記の元の演算系の各演算の入力空間のデータ集合
2004068364.tif 000109
以外は、ｒｎ−｜Ω｜個分の定まっていない要素に対する対応関係をそれぞれの元演算毎に付加し、元の演算系のＱ種の単項演算型の演算Ｇｑは
ＧｑＯ：Ｂｒｎ→Ｂｒｎ（ｑ＝１，２，…，Ｑ）なる単項演算に拡張し、元の演算系のＰ種の二項演算型の演算ＦｐはＦｐＯ：Ｂｒｎ×Ｂｒｎ→Ｂｒｎ（ｐ＝１，２，…，Ｐ）なる２項演算に拡張し、元の演算系のＳ種のＴ項演算型の元演算ＨｓはＨｓＯ：Ｂｒｎ×Ｂｒｎ×…×Ｂｒｎ→Ｂｒｎ（直
2004068364.tif 000110
データを第２の表現データとし、符号器はΦ：Ｂｒｎ→Ｂｒｍなる単射の写像として扱い、復号器はΨ：Ｂｒｍ→Ｂｒｎなる全射の写像として扱い、さらにＧｑＯに対応する新演算系の単項演算はＧｑＮ：Ｂｒｍ→Ｂｒｍなる単項演算として扱い、ＦｐＯに対応する新演算系の二項演算はＦｐＮ：Ｂｒｍ×Ｂｒｍ→Ｂｒｍなる二項演算として扱い、ＨｓＯに対応する新演算系のＴ項演算はＨｓＮ：Ｂｒｍ×Ｂｒｍ×…×Ｂｒｍ→ＢｒｍなるＴ項演算として扱うことで、旧演算系の全ての演算と新演算系の全ての演算および符号器、復号器を全て多入力多出力のｒ値論理の写像に対応させ、
Ｂｒｎ上の任意Ｘに対応して、
2004068364.tif 000111
なる条件を満たす符号［Ｘ］（［Ｘ］⊂Ｂｎｍ）を生成するステップと、
新演算系の演算を生成するステップと、
上記演算のうち、
2004068364.tif 000112
なる条件を満たす演算を選択するステップとをコンピュータに実行させることを特徴とする演算処理装置設計方法。
【請求項５】
有限集合をＢｎ上の集合として扱い、
（６）Ｂｎの任意の部分集合Ｓの特徴関数χｓ（Ｘ）（Ｓ⊆Ｂｎ、Ｘ∈Ｂｎ）を１つのｎ変数ブール関数（特徴論理関数）とし、
（７）集合の各要素をＢｎを最小項に対応させ、
Ｂｎの部分集合Ｓ（Ｓ⊂Ｂｎ）の特徴論理関数をχｓ（Ｘ）（Ｘ∈Ｂｎ）と表し、またＢｍの部分集合Ｔ（Ｔ⊂Ｂｍ）の特徴論理関数をχ′Ｔ（Ｙ）（Ｙ∈Ｂｍ）と表し、Ｂｎの部分集合Ｓの写像Ｆ：Ｂｎ→Ｂｍによる像をＦ（Ｓ）と表す時、
2004068364.tif 000113
なる関係式が成り立ち、さらにＢｎの部分集合Ｓ，Ｔ⊂Ｂｎに対して
2004068364.tif 000114
なる関係式が成り立つことを利用し、
集合間の関係を入力するステップと、
入力された集合間の関係を関係式（８）〜（１４）を用いて特徴論理関数の式に変換するステップと、
変換された特徴論理関数の式が成立するかどうかを判別するステップとをコンピュータに実行させることを特徴とする論理関数設計方法。
【請求項６】
２値ブール代数Ｂ＝｛０，１｝上に定義されたｍ種類のｎ変数のブール関数ｆｊ（Ｘ）（ここに  Ｘ＝（χ１，χ２，……，χｎ），ｊ＝１，２，……，ｍ）からなる写像Ｆ：Ｂｎ→Ｂｍを
2004068364.tif 000115
として定義した母関数▲Ｆ▼（Ｘ，Ｙ）によって写像全体を一括して扱い、
Ｙ∈Ｂｎの任意の関数ｇ（Ｙ）に対して
2004068364.tif 000116
なる関係式が成り立つこと、また恒等変換Ｉ：Ｂｎ→Ｂｎに対して
2004068364.tif 000117
なる関係式が成り立つこと、また写像Ｆの成分関数ｆｊ（Ｘ）と母関数の関係
2004068364.tif 000118
なる関係式が成り立つこと、また写像Ｆ：Ｂｎ→Ｂｍと写像Ｇ：Ｂｍ→Ｂｌの合成写像をＲ：Ｂｎ→Ｂｌとすると、
2004068364.tif 000119
なる関係式が成り立つこと、またΩ＝Ｂｎと置くと前記第２項記載の特徴論理関数に対して
2004068364.tif 000120
なる関係式が成り立つこと、またΩ＝Ｂｎ上の同型写像Φ：Ω→Ωに対して、逆写像をΦ−１：Ω→Ωとすると前記母関数の定義（１６）に従い
2004068364.tif 000121
2004068364.tif 000122
なる関係式が成り立つことを、またＹ∈Ｂｎの任意の関数ｇ（Ｙ）に対して、
2004068364.tif 000123
なる関係式が成り立つことでｇ（Ｙ）が最小項であることを判定し、また
2004068364.tif 000124
なる関係式が成り立つことで▲Ｆ▼（Ｙ，Ｘ）がＢｎ→Ｂｍなる写像の母関数であることを判定できることなどを利用する論理関数設計方法であって、
各写像の各成分関数または／および母関数を入力するステップと、
（１６）式に基づき母関数を計算するステップまたは／および（２０）式に基づき成分関数を計算するステップと、
（１８）〜（２９）式を計算するステップとをコンピュータに実行させ、もって、写像に関した処理や判定を成分毎に行うのではなく一括して扱うことを特徴とする論理関数設計方法。
【請求項７】
論理関数ｆ（Ｘ）に対して
2004068364.tif 000125
なる関係式が成り立つかどうかを判定し、また写像Ｆ：Ｂｎ→Ｂｍの各成分関数ｆｊ（Ｘ）（ｊ＝１，２，…，ｍ）に対しては写像の母関数を用い、
2004068364.tif 000126
なる関係式が成り立つかどうかを判定し、さらに具体的には前記（３０）におけるΔ（Ｘ，Ｙ）がΔ（Ｘ，Ｙ）＝▲Ｉ▼（Ｘ，Ｙｉ）であることに相当する
2004068364.tif 000127
なる関係式、またはΔ（Ｘ，Ｙ）＝▲Ｉ▼（Ｘ，ＹＬ）（ｆｏｒ  ∀Ｌ⊂Θ）であることに相当する
2004068364.tif 000128
2004068364.tif 000129
なる関係式、また前記（３１）におけるΔｊ（Ａ，Ｂ）が
2004068364.tif 000130
なる関係式を満足するかどうかを判定することでｆ（Ｘ）の変数χ１，χ２，…，χｎとの依存関係を解析するでき、また母関数を用いることで各ｆｊ（Ｘ）の変数χ１，χ２，…，χｎとの依存関係を一括して解析することができることを利用する論理関数設計方法であって、
写像の各成分関数または／および写像の母関数を入力するステップと、
（３０）〜（３５）式に基づき変数依存度を解析するステップとをコンピュータに実行させることを特徴する論理関数設計方法。
【請求項８】
集合間の関係を入力するステップと、
入力された集合間の関係を関係式（８）〜（１４）を用いて特徴論理関数の式に変換するステップと、
変換された特徴論理関数の式が成立するかどうかを判別するステップと、各写像の各成分関数または／および母関数を入力するステップと、
（１６）式に基づき母関数を計算するステップまたは／および（２０）式に基づき成分関数を計算するステップと、
（１８）〜（２９）式を計算するステップと、
（３０）〜（３５）式に基づき変数依存度を解析するステップとコンピュータに実行させて計算および判定を包括的に行う請求項５乃至請求項７に記載の論理関数設計方法。
【請求項９】
前記基数ｒをｒ＝２とし、ｉ＝１，２，…，ｎ、Ｘ，Ｙ，Ｚ，Ｘ１，Ｘ２，…，ＸＴ∈Ｂｎ、ｊ＝１，２，…，ｍ、Ｘ′，Ｙ′，Ｚ′，Ｘ′１，Ｘ′２，…，Ｘ′Ｔ∈Ｂｍとした時、旧演算系の各演算および新演算系の各演算、符号器、復号器の成分関数を、
ＧｑＯ：ｇｉｑＯ（Ｘ）、ＦｐＯ：ｆｉｐＯ（Ｘ，Ｙ）、ＨｓＯ：ｈｉｓＯ（Ｘ１，Ｘ２，…，ＸＴ）およびＧｑＮ：ｇｊｑＮ（Ｘ′）、ＦｐＮ：ｆｊｐＮ（Ｘ′，Ｙ′）、ＨｓＮ：ｈｊｓＮ（Ｘ′１，Ｘ′２，…，Ｘ′Ｔ）、Φ：φｊ（Ｘ）、Ψ：Ψｉ（Ｘ′）
と表し、さらに符号領域Ｃの特徴論理関数χｃ（Ｘ′）をｃ（Ｘ′）と表す時、
2004068364.tif 000131
（１−ｂ）乃至（５−ｂ−２）を符号化条件として用いる請求項３または４記載の演算処理装置設計方法。
【請求項１０】
前記（１−ｂ）乃至（５−ｂ−２）に加え、新演算系の演算器に対する論理式の簡単化の条件を付加し、その下で符号器、復号器、新演算器を論理設計することで、新演算器の回路を簡単にする請求項９記載の演算処理装置設計方法。
【請求項１１】
単項演算に対しては
2004068364.tif 000132
なる条件を課し、二項演算に対しては
2004068364.tif 000133
なる条件を課し、Ｔ項演算に対しては
2004068364.tif 000134
なる変数依存条件を課し、新演算器の入力変数に対する変数依存度を旧演算系に比較し小さくなるようにλｑｊｌおよびθ１ｐｊｌ、θ２ｐｊｌおよびμ１ｓｊｌ乃至μＴｓｊｌの値を定め、符号器、復号器、新演算器を論理設計することで、新演算器の回路規模および演算遅延時間を小さくする第１０記載の演算処理装置設計方法。
【請求項１２】
新演算系の二項演算に対しては前記θ１ｐｊｌとθ２ｐｊｌに対してθ１ｐｊｌ＝θ２ｐｊｌなる条件を課し、また新演算系のＴ項演算に対しては前記μ１ｓｊｌ乃至μＴｓｊｌに対してμ１ｓｊｌ＝・・・＝μＴｓｊｌなる条件を課し、それぞれの演算を対称型で設計する請求項９記載の演算処理装置設計方法。
【請求項１３】
前記旧表現データの空間Ｂｒｎと新表現データの空間Ｂｒｍを同一の空間（Ｂｒｎ＝Ｂｒｍ，ｎ＝ｍ）にし、符号器ΦをΦ：Ｂｒｎ→Ｂｒｎなる同型写像とし、復号器ΨをΨ＝Φ−１（Φの逆写像）とする請求項３または４記載の演算処理装置設計方法。
【請求項１４】
2004068364.tif 000135
上記（５１）および（５５）乃至（５７）式を満足するように符号器Φを決定し、復号器ΨはΨ＝Φ−１として決定し、
2004068364.tif 000136
上記（５２）乃至（５４）より各新演算系に対する変数依存度λｑｊｌおよびθ１ｐｊｌ、θ２ｐｊｌ，およびμ１ｓｊｌ乃至μＴｓｊｌの下に新演算系の演算器を決定する請求項１３記載の演算処理装置設計方法。
【発明の詳細な説明】
【技術分野】  この発明は、演算処理技術に関し、更に詳しくは演算ＬＳＩ等の高速化や低消費電力化などを実現する符号化に基づいた演算処理方式とその符号化の設計方法および演算処理装置に関する。
【背景技術】  演算ＬＳＩは画像圧縮伸張、コンピュータグラフィック、画像認識、音声認識など、近年非常に多くの分野に使われている。例えば画像圧縮伸張のＭＰＥＧ２、ＭＰＥＧ４などでは、圧縮時も伸張時も多量の演算が必要であり、ＬＳＩに占める演算部の割合は極めて大きい。
画像処理に限らずコンピュータなどの数値演算においても要求される演算規模は増大の一途にあり、高速化に対するニーズは限りないものがある。また演算器内部では一般にトランジスタのスイッチングのオン・オフが頻繁に行われる為、消費電力の問題が無視できない重要な課題となる。
つまり演算に対して、（１）さらに高速化を図りたい、（２）消費電力を削減したいという、２つの強いニーズが存在する。
このようなニーズに対して、微細加工技術やデバイス特性の改善などのアプローチは着実に進められている。しかし、このようなデバイスによるアプローチではなしに演算器そのものを改善するアプローチが考えられる。
演算器そのものに対するアプローチの中で、純粋に論理的なアプローチで高速化などの高性能化を図る方式として、本出願の発明者達は、“高速演算方式”なる提案を行っている（国際公開ＷＯ９１／１０１８６すなわち特開平３−２０１１１４号公報。以下、関連特許文献という）。
この提案の概要を、関連特許文献の表記に従い以下に示す。
Ｐ個の二項演算Ａｐ：Ω×Ω→Ω（ｐ＝１，２，…，Ｐ）とＱ個の単項演算Ｂｑ：Ω→Ω（ｑ＝１，２，…，Ｑ）が定義され、これらの演算に関して閉じた有限集合Ωを考る。Ω，Ａｐ，Ｂｑを合わせ旧演算系（Ω，Ａｐ，Ｂｑ）と呼ぶ。旧演算系の演算Ａｐ，Ｂｑを実行する代わりに、集合Ω上のデータを一度符号器Φ：Ω→Ω′により
2004068364.tif 000003
演算Ａｐ，Ｂｑに対応したΩ′上の演算Ａ′ｐ：Ω′×Ω′→Ω′とＢ′ｑ：Ω′→Ω′を実行し、Ω′上のデータとして得られた演算結果を復号器Ψ：Ω′→Ωで変換することにより、本来計算しようとしたΩ上の演算結果を得る。この演算方式で、
Ω′，Ａ′ｐ，Ｂ′ｑ，Φ，Ψを合わせ新演算系（Ω′，Ａ′ｐ，Ｂ′ｑ，Φ，Ψ）と呼び、新演算系と旧演算系との間に以下の▲１▼▲２▼▲３▼▲４▼の４式を課すことで、符号化条件（旧演算系で計算する結果と新演算系で計算する結果が一致することを保証させる条件）を満足させる。
2004068364.tif 000004
ここに［Ｘ］はΩ上の任意の要素Ｘに対応したΩ′上の部分集合で、集合族
2004068364.tif 000005
集合である。
また▲１▼▲２▼より
2004068364.tif 000006
が成り立つものである。
以上のような▲１▼乃至▲４▼の符号化条件を満足し、新演算系の演算器が極力簡単になるように、符号器、復号器、新演算器をコンピュータを利用して決定し、そのことで高速化などを達成するというのが前記の関連特許文献における提案であった。
この先の提案は、加減乗除の四則演算に限らず、一般的な演算や、演算とみなせる写像一般に対して考案されたものであるが、以下のような大きく６つの問題があった。
ｉ）旧演算系、新演算系のデータの集合が一般的な有限集合Ω、Ω’となっている為、演算器、符号器、復号器を表す写像も一般的な写像で表され、論理式との対応が不明解である。
ｉｉ）旧演算系がΩに関して閉じた演算系だけを対象としている為、一般的な演算が対象外である。
ｉｉｉ）符号化の関係式が上記一般的写像と集合により示されている為、関係を満足することの論理的な意味が不明解であり、その為に関係式を満足する実際の論理式を導くことが困難な場合がある。
ｉｖ）回路の簡単化の要請を定式化できていない。
ｖ）符号化の具体例が非冗長符号の場合しか示されていない。
ｖｉ）符号化演算方式としてのシステム構成の具体化が不十分である。
９１／１０１８６（特開平３−２０１１１４号公報）
【発明の開示】
この発明は、以上の事情を考慮してなされたものであり、以上の関連特許文献における問題点を解決する為に、与えられた演算を必要があれば拡張することにより、旧演算系の全ての演算と新演算系の全ての演算および符号器、復号器を全て多入力多出力のｒ値論理表現で記述することで、ｒ値論理による具体的な論理設計を可能とし、また２値論理表現における新たな表現形式を用いて、論理式による方程式の形で定式化することで、これらの符号化の条件などを満足させた新演算系の効率的な論理設計を可能とし、回路規模や演算遅延時間を大幅に削減した符号化演算方式に基づく回路設計を実現し、ＬＳＩに実装が可能な符号化演算装置を提供することを目的としている。
この発明によれば、上述の目的を達成するために、特許請求の範囲に記載のとおりの構成を採用している。
以下本発明の各側面を順に説明する。
（１）発明の第１の側面
関連特許文献の問題ｉ）ｉｉ）を解決するために、この発明の第１の側面によれば、与えられた演算系（元演算系と呼ぶことにする。）の演算器を必要があれば拡張してｒ値論理の写像として扱い、演算的に閉じた旧演算系の演算器を構成し、且つ新演算系の符号器、復号器および演算器を全てｒ値論理の写像として扱い、関連特許文献に示された符号化条件式または特徴論理関数により表される方程式の形の符号化条件式または元演算系と演算器と新演算系の演算器の入出力のトポロジーが同じになることを符号化の条件として満足するようにして、新演算系のｒ値論理による論理設計を可能にする。
（２）発明の第２の側面
発明の第２の側面によれば、集合の特徴関数を２値の論理関数として扱い、特徴関数間の関係や写像の合成などを見通し良く且つ効率的に扱うための、新たに考案した母関数という写像の表現法を導入し、また各種の関係式を導き、論理回路設計を行う。
（３）発明の第３の側面
発明の第３の側面によれば、論理関数の簡単さを変数依存度に対応した方程式の形で扱うことで簡素の構成の論理関数を設計する。
発明の第２の側面および第３の側面を総合的に適用することもできる。
（４）発明の第４の側面
関連特許文献の問題ｉｉｉ）を解決するために、この発明の第４の側面によれば、旧演算系の演算器および新演算系の符号器、復号器および演算器の全てを２値論理の論理関数として扱い、これらを前記母関数により表現し、母関数で表現された符号化条件式を導き、新演算系の論理設計を見通し良く且つ効率的に行うことを可能にする。
（５）発明の第５の側面
関連特許文献の問題ｉｖ）を解決するために、この発明の第５の側面によれば、新演算系の簡単化の条件を方程式の形であたえ、前記第２の側面に従う符号化条件と合わせて論理設計を行うことで、簡単化の条件を満足する新演算系の論理設計を可能にする。
（６）発明の第６の側面
関連特許文献の問題ｉｉｉ）とｉｖ）を同時に解決するために、この発明の第６の側面によれば、符号器を同型写像に限定し、上述の第２から第４の側面に従って論理設計を行うことで、符号化条件と簡単化条件を満足する新演算系の効率的な論理設計を可能にする。
尚、上述の発明の第２の側面の手法は、符号化演算方式に限らず論理設計や論理解析などに広く用いることができる発明である。
また関連特許文献の問題ｖ）を解決するための本発明の具体的な構成は、上述の各側面の符号化演算方式および設計方法に基づき論理設計された実施例により示す。
［記号と記法］
以下に本発明を詳細に説明するが、その準備として説明に用いる記号、記法に就いて定めて置く。
ｒ値の集合はＢｒ、基数ｒ、語長ｎの数表現の集合はＢｒｎ（Ｂｒのｎ個の直積）で表し、２値の場合はＢ２＝Ｂ＝｛０．１｝としてＢを用いる。Ｂｒの要素はスカラーと考え、ｘ，ｙ，…∈Ｂｒのように小文字ｘ，ｙ，…で、Ｂｒｎの要素はｎ成分のベクトルと考え、Ｘ，Ｙ，…∈Ｂｒｎのように大文字で扱う。（例えばＸはＸ＝（ｘ１，ｘ２，…，ｘｎ））
ｎ変数の論理関数はスカラー関数と考えｆ（Ｘ）＝ｆ（ｘ１，ｘ２，…，ｘｎ）のｆのように小文字を用い、またこれをｆ：Ｂｒｎ→Ｂｒなる写像と考え同じ記号を用いる。
ｍ個のｎ変数ｒ値論理関数ｆｊ（Ｘ）（ｊ＝１，２，…，ｍ）をまとめてベクトル関数として扱うときにはＦ（Ｘ）＝（ｆ１（Ｘ），ｆ２（Ｘ），…，ｆｍ（Ｘ））のＦのように大文字を用い、またこれをＦ：Ｂｒｎ→Ｂｒｍなる写像と考え同じ記号を用いる。
２値の場合には変数（または定数）の否定はｘで表し、２つの変数（または定数）ｘ，ｙの論理積（ａｎｄ）はｘ・ｙまたはｘｙのように表し、ｘ，ｙの論理和（ｏｒ）
2004068364.tif 000007
ものとする。
2004068364.tif 000008
同様である。
２つの変数（または定数）ｘ，ｙのブール環の和（ｅｘｏｒ）はｘ＋ｙと表し、和の範囲は前記と同様に扱う。
2004068364.tif 000009
と定義する。この時ｎ変数ｘ１，ｘ２，…，ｘｎからなる最小項はＸＡ（Ｘ，Ａ∈Ｂｎ）なる
2004068364.tif 000010
またＡ＝（０，０，０），（０，０１），…，（１，１，１）に数字のＡ＝０，１，…，７を対応させ、最小項をＸ０，Ｘ１，…，Ｘ７のように略記することもある。
2004068364.tif 000011
表せる。
また２値論理関数ｆ（Ｘ）の変数ｘｉによるブール微分はｆ（Ｘ）のｘｉに０，１を代入した式のブール環の和、つまり
2004068364.tif 000012
尚、集合に対する和集合と共通部分についても混乱は無いと思われるので通常通り、∪，∩を用いる。
［発明の構成］
以下、この発明を詳細に説明する。
［発明の第１の側面］
発明の第１の側面は請求項１〜４の発明に対応する。
前記の関連特許文献のように閉じた演算系が定義された有限集合Ωに限定しない。つまり演算の入力データの集合Ωｉｎと演算の出力空間の集合ΩｏｕｔがΩｉｎ≠Ωｏｕｔの場合も対象にする。
2004068364.tif 000013
＋Ｐ＋Ｓ≧１）定義された演算系（元演算系）に対して符号化演算方式を考える。
2004068364.tif 000014
なる基数ｒ、語長ｎの数表現の集合Ｂｒｎを考え、これを旧演算系の旧表現データの集合として扱い、前記の元演算系の各演算（元演算）の入力空間のデータ集合
2004068364.tif 000015
る時以外は、ｒｎ−｜Ω｜個分の定まっていない要素に対する対応関係をそれぞれの元演算毎に付加し、元演算の全てをＢｒｎ上の演算になるように拡張する。
前記元演算系がＱ種の単項演算を含む場合には、これらを拡張しＧｑＯ：Ｂｒｎ→Ｂｒｎ（ｑ＝１，２，…，Ｑ）なる単項演算として扱い、またＰ種の２項演算を含む場合には、これらを拡張しＦＰＯ：Ｂｒｎ×Ｂｒｎ→Ｂｒｎ（ｐ＝１，２，…，Ｐ）なる２項演算として扱い、またＳ種のＴ項演算を含む場合には、これらを拡張しＨｓＯ：Ｂｒｎ×Ｂｒｎ×…×Ｂｒｎ→Ｂｒｎ（ＢｒｎのＴ個の直積、ｓ＝１，２，…，Ｓ）なるＴ項演算として扱う。以後Ｂｒｎ，ＧｑＯ，ＦｐＯ，ＨｓＯを合わせて旧演算系と呼ぶことにする。さらに集合Ｂｒｍ（ｍ＞ｎ）上のデータを新表現データとして扱い、符号器はΦ：Ｂｒｎ→Ｂｒｍなる単射の写像として扱い、復号器はΨ：Ｂｒｍ→Ｂｒｎなる全射の写像として扱い、さらにＧｑＯに対応する新演算系の演算はＧｑＮ：Ｂｒｍ→Ｂｒｍなる単項演算として扱い、ＦｐＯに対応する新演算系の演算はＦｐＮ：Ｂｒｍ×Ｂｒｍ→Ｂｒｍなる二項演算として扱い、ＨｓＯに対応する新演算系の演算は
ＨｓＮ：Ｂｒｍ×Ｂｒｍ×…×Ｂｒｍ→ＢｒｍなるＴ項演算として扱うことで、旧演算系の全ての演算と新演算系の全ての演算および符号器、復号器を全て多入力多出力のｒ値論理関数（ｒ値論理回路）に対応させることができる。そして関連特許文献に対応した
2004068364.tif 000016
なる符号化条件（符号化条件の意味は関連特許文献と同じ。）を課すことで新演算系を具体的なｒ論理関数（論理回路）として論理設計を可能とすることができる。
ここに［Ｘ］はＢｒｎ上の任意Ｘに対応したＢｒｍ上の部分集合で、集合族
2004068364.tif 000017
ＮＣ＝Ｂｒｍ−Ｃは非符号の集合である。図１は旧表現データの集合Ｂｒｎの要素Ｘは符号器Φ：Ｂｒｎ→Ｂｒｍにより新表現データの集合Ｂｒｍ上のデータΦ（Ｘ）に変換される。またＸに対応した符号［Ｘ］は復号器Ψ：Ｂｒｍ→Ｂｒｍにより旧表現データＸに変換されることを示す本発明の符号化概念図である。また図２は元演算系の入出力データの表現空間がＢｒｎと一致しない場合に入出力データの表現空間をＢｒｎに拡張した場合を一つの元演算系の単項演算Ｇを旧演算系のＧＯに拡張した場合で拡張の概念を示す本発明の元演算系の旧演算系への拡張概念図である。
また図３は元演算系から旧演算系に拡張後に、新演算系を決定する方法の１つで、本発明の旧演算系新演算系決定フロー例である。図３の処理は以下のとおりである。
［ステップＳ１］：符号を生成する。
［ステップＳ２］：符号化条件（１）および（２）を判別する。符号化条件（１）および（２）を満たさない場合にはステップＳ１に戻り処理を繰り返す。符号化条件（１）および（２）を満たす場合にはステップＳ３へ進む。
［ステップＳ３］：新演算器を生成する。
［ステップＳ４］：符号化条件（３）乃至（５）を判別する。符号化条件（３）乃至（５）を満たさない場合にはステップＳ３に戻り処理を繰り返す。符号化条件（３）乃至（５）を満たす場合にはステップＳ５へ進む。
［ステップＳ５］：新演算系を評価する。
［ステップＳ６］：新演算器の簡単化が十分か判別する。十分であれば処理が終了する。十分でなければステップＳ７へ進む。
［ステップＳ７］：符号ないのすべての新演算器を生成したかを判別する。すべては生成していない場合にはステップＳ３ｎｉ戻り、すべてせいせいした場合にはステップＳ１に戻って処理を繰り返す。
図３の処理の具体例については実施例で後に示す。
このフロー以外にも後の実施例で示すように幾つかの決定フローが存在することは言うまでもない。
以上のような決定フローにより符号および新演算器が決定され、これを実装して演算処理装置が図４に示すように構成される。図４では、演算処理装置１００が、演算処理手段１０１、符号器１０２、復号器１０３および伝送路１０４から構成される。演算処理手段１０１は上述の新演算器の構成を実装したものである。符号器１０２、復号器１０３は、上述の符号の符号化・復号を実現するように実装される。伝送路１０４は、演算処理手段１０１と符号器１０２との間のデータ転送、演算処理手段１０１と復号器１０３との間のデータ転送等を行うものであり、ＬＳＩの内部バス、外部バス、通信路等で構成することができる。
尚、前記ＦｐＯは関連特許文献のＡｐを、前記ＧｑＯは関連特許文献のＢｑをそれぞれ上記のように拡張したものに相当する。以後Ｂｒｍ，ＧｑＮ，ＦｐＮ，ＨｓＮ，Φ，Ψを合わせて新演算系と呼ぶことにする。
関連特許文献の新表現データの集合Ω′がＢｒｍの形でなく一般的な集合のままであると、新演算系は前記関連特許文献と同様に一般的な写像による表現で扱わざるを得ないが、本発明では新表現データの集合をＢｒｍの形に限定することで、旧演算系の演算器および新演算系を全てｒ値の論理回路に対応させることが可能になった。このことによりｒ値論理で表される写像としてコンピュータによる探索などの方法により新演算系の決定が可能となる。
一般に新演算系は莫大な種類存在するが、探索などで得られたものを評価し、目的に合致するかを判断し、合致しなければ他の新演算系を次々と探索で生成し、目的に合う新演算系を決定する。得られた新演算系はｒ値論理回路に対応しているので通常の論理設計の方法でｒ値論理回路の設計が可能になる。
尚、２値以外のｒ値論理については例えば、樋口龍雄、亀山充隆著“多値情報処理：ポストバイナリエレクトロニクス”昭晃社に詳しく述べられている。
ところで（１）乃至（５）は集合論的記述（⊃，⇔なる記号によって表される関係式）である。一般に集合の特徴関数χＡ（Ｘ）の定義から
χＡ（Ｘ）＝１（ｆｏｒ∀Ｘ∈Ｂ）⇔Ｂ⊂Ａである。このことから（１）乃至（５）を同値な特徴関数（特性関数）による方程式の形で表すことができる。（１）乃至（５）に同値な式を特徴関数（Ｃｈａｒａｃｔｅｒｉｓｔｉｃ  ｆｕｎｃｔｉｏｎ）による方程式であることを陽に示すために番号にｃを付し、それぞれ（１ｃ）乃至（５ｃ）とすると以下のようになる。
2004068364.tif 000018
ここにχＡ（Ｘ）はＢｒｎの部分集合Ａの特徴関数で、Ｘ∈Ｂｒｎ、χ′Ａ（Ｘ′）はＢｒｍの部分集合Ａ′の特徴関数で、Ｘ′∈Ｂｒｍ
この（１ｃ）乃至（５ｃ）を符号化条件として用いれば、与えられた旧演算系の演算器に対し、新演算系が符号化条件を満足するかどうかを特徴関数が１となるかどうかで判定すればよく、コンピュータによる判定において扱い易いメリットがある。
上記（１）乃至（５）または（１ｃ）乃至（５ｃ）を符号化条件の下で既知の元演算系の各演算（元演算）の情報から前記符号化条件を満足する新演算系をｒ値論理回路に対応した論理関数として設計することが可能になり、論理設計された新演算系を用いた演算結果が元演算系による演算結果と同じになることを保証できることを特徴とする符号化演算方式が実現できる。
さらにｒ＝２として設計する場合には、特徴関数の値が０，１の２値をとり、Ｘ∈Ｂｎであることから、特徴関数χＳ（Ｘ）を１つのｎ変数の２値論理関数のとみなして扱うことができる。この点に着目すると（１ｃ）乃至（５ｃ）を、後述の発明の第３の側面等に関連して示すような同値な２値論理関数による明解な方程式の形で表すことができる。
［発明の第２の側面］
発明の第２の側面は請求項５および６の発明に対応する。
（６）Ｂｎ上の集合の特徴関数を論理関数として扱う。
（７）Ｂｎ上の集合の１つの要素に１つの最小項を対応させる。
の２つを前提の手段とする。
以後特徴関数を２値論理関数で表したものを特徴論理関数と呼ぶことにする。
具体的にはＢｎの部分集合Ｓ（Ｓ⊂Ｂｎ）の特徴論理関数をχＳ（Ｘ）（Ｘ∈Ｂｎ）と表し、またＢｍの部分集合Ｔ（Ｔ⊂Ｂｍ）の特徴論理関数をχ′Ｔ（Ｙ）（Ｙ∈Ｂｍ）と表すことにし、Ｂｎの部分集合Ｓの写像Ｆ：Ｂｎ→Ｂｍによる像をＦ（Ｓ）と表すと、
2004068364.tif 000019
そこでＢｎ上の１つの要素Ｑ（＝（ｑ１，ｑ２，…，ｑｎ））に１つの最小項からなる１要素集合の特徴論理関数をχＱ（Ｘ）と表すと、これはＸ＝Ｑの場合のみ１となるから、明らかにχＱ（Ｘ）＝ＸＱが成り立つ。最小項間は分離的（ＸＱ１・ＸＱ２＝０（Ｑ１≠Ｑ２の時））なので、明らかに
2004068364.tif 000020
と表せる。同様にＢｍ上の１要素Ｐを考えると全く同様に、
2004068364.tif 000021
となる。
ＰがＦ（Ｓ）全体を動く場合と、Ｐ＝Ｆ（Ｑ）と置いてＱがＳ全体を動く場合のＰの動く範囲は全く同じであることに注意すると、（８−１）式は
2004068364.tif 000022
となる。
Ｓに制限された範囲で和をとることと、χＳ（Ｘ）を掛けて全体で和をとっても特徴関数の性質から明らかに同じである。従って
2004068364.tif 000023
が成り立つ。またＢｎの部分集合Ｓ，Ｔ⊂Ｂｎの特徴論理関数に対して
2004068364.tif 000024
なる関係式が明らかに成り立つ。
以上のような構成により、集合の特徴関数を論理的に扱うことを可能とし、（８）乃至（１４）はＢｎ上の一般的な集合の集合計算に用いることができる。
さらに、Ｆ：Ｂｎ→Ｂｍ、Ｇ：Ｂｍ→Ｂｌなる写像を考え、Ｆ，Ｇの合成写像をＲ：Ｂｎ→Ｂｌとすると、論理関数をベクトル型で示せばＲ（Ｘ）＝Ｇ（Ｆ（Ｘ））なる関係がある。Ｂｌの部分集合Ｕ（Ｕ⊂Ｂｌ）の特徴論理関数をχ′′Ｕ（Ｚ）（Ｚ∈Ｂｌ）と表すことにすると、上記（１０）と同様に
2004068364.tif 000025
が成り立つ。
ここでＴ＝Ｆ（Ｓ）とすると、Ｇ（Ｆ（Ｓ））＝Ｒ（Ｓ）だから（１０）、（１０−１）（１０−２）より
2004068364.tif 000026
が導け、これが任意の部分集合Ｓに対して成り立つことから
2004068364.tif 000027
が導かれる。
ところで写像Ｆ：Ｂｎ→Ｂｍに対するＹＦ（Ｘ）はＹ，Ｘの２値論理関数である。従ってＹＦ（Ｘ）は２ｍ種のＹを行変数（行番号）とし、２ｎ種のＸを列変数（列番号）とした２ｍ×２ｎのブール値行列（Ｂｏｏｌｅａｎ  Ｍａｔｒｉｘ）となる。
そして（１５）式は、写像Ｆに対応した行列ＹＦ（Ｘ）と写像Ｇに対応した行列ＺＧ（Ｙ）の行列として積計算で合成写像Ｒに対応した行列Ｒ（Ｘ）が求まることを示している。ＹＦ（Ｘ）を行列表現であることを陽に示す為に、これを写像と同じ大文字を用い▲Ｆ▼（Ｙ，Ｘ）（以後これを写像Ｆの母関数と呼ぶ）と置くと、
2004068364.tif 000028
となる。
そこで母関数の形で（１５）式を再記すると
2004068364.tif 000029
と表せる。
またＹの任意の関数ｇ（Ｙ）に関して論理関数の積和標準形と（１６）より
2004068364.tif 000030
が成り立つ。
また恒等変換Ｉ：Ｂｎ→Ｂｎに対して
2004068364.tif 000031
これから写像Ｆの成分関数と母関数の関係
2004068364.tif 000032
が導かれる。
またΩ＝Ｂｎと置くと
2004068364.tif 000033
となり、（２２）は写像Ｆの定義域の特徴論理関数（＝１）を、（２３）写像Ｆの値域の特徴論理関数を示している。（１７）乃至（２３）から解るように、母関数は写像の基本的な性質を簡単な演算により導くことができる基本的に重要な表現であることが解る。
さらに、Ω＝Ｂｎ上の同型写像Φ：Ω→Ωに対して、逆写像をΦ−１：Ω→Ωとすると
2004068364.tif 000034
が成り立つ。これと（２０）式を用いると
2004068364.tif 000035
が導かれる。これは逆写像の成分関数を同型写像の母関数から直接求める式になっている。
このことは同型写像は全単射で１対１対応であることから明らかである。
従って、Ω＝Ｂｎ上の恒等変換をＩ：Ω→Ωとする、Φ−１Φ＝ΦΦ−１＝Ｉに対応し、
2004068364.tif 000036
∀Ｘ，Ｙ，Ｚ∈Ω）が成り立つ。
また写像Ｆ：Ｂｎ→Ｂｍの母関数に対し
2004068364.tif 000037
が成り立つ。
これは（１６）より
2004068364.tif 000038
と導かれる。
ところでＸ∈Ｂｎ、Ｙ∈Ｂｍのある関数α（Ｙ，Ｘ）がある写像：Ｂｎ→Ｂｍの母関数である為の必要十分条件は明らかに“α（Ｙ，Ｘ）を各Ｘごとの列ベクトルが唯一のＹに対してα（Ｙ，Ｘ）＝１となる。”と言う命題になる。
“１つの関数ｇ（Ｙ）が唯一のＹに対してｇ（Ｙ）＝１となる。”という命題は
2004068364.tif 000039
が成り立つことと同値である。先ずこれを証明すると、
2004068364.tif 000040
でそれ以外１であるので（２８）が成り立つ。
2004068364.tif 000041
ａ），ｂ），ｃ）で全ての場合を尽くすことから（２８）が証明された。このような関数ｇ（Ｙ）は１つの最小項からなるので最小項関数と呼ぶことにする。
このことから前記のα（Ｙ，Ｘ）がある写像の母関数である為の必要十分条件は
2004068364.tif 000042
となる。
以上のように、多入力多出力の写像を成分関数毎に扱うのでは無く、母関数により一括して扱うことを可能にし、また各種の論理関数間の関係を見通しよく効率的に計算することが可能になる特徴を有している。
［発明の第３の側面」
発明の第３の側面は請求項７の発明に対応する。また、この第３の側面を、先の第２の側面と合わせたものは、請求項８の発明に対応する。
先ず論理関数ｆ（Ｘ）に対して
2004068364.tif 000043
が成り立つかどうかを各種のΔ（Ｘ，Ｙ）に対して判定することで、論理関数ｆ（Ｘ）の複雑さを判定することを可能にし、また写像Ｆ：Ｂｎ→Ｂｍの各成分関数ｆｊ（Ｘ）（ｊ＝１，２，…，ｍ）に対して写像の母関数を用い
2004068364.tif 000044
が成り立つかどうかをΔｊ（Ａ，Ｂ）に対して判定することで、各論理関数ｆｊ（Ｘ）の複雑さを一括して判定することを可能にすることである。
「記号と記法」の項で述べたように、関数ｆ（Ｘ）（Ｘ∈Ｂｎ）が変数ｘｉに依存し
2004068364.tif 000045
▲Ｉ▼（Ｘ，Ｙ）を用い
2004068364.tif 000046
トルである。
これは（３２）の左側＝０の式をＹで和をとると、（１９）から
2004068364.tif 000047
2004068364.tif 000048
におけるΔ（Ｘ，Ｙ）をΔ（Ｘ，Ｙ）＝▲Ｉ▼（Ｘ，Ｙｉ）とした場合に相当する。
さらにｆ（Ｘ）が変数ｘｉと変数ｘｊに依存していない時、
2004068364.tif 000049
換えたベクトル。
さらに一般にｎ変数の集合の部分集合をΘで表し、Θの部分集合をＬ（Ｌ⊂Θ）とし、ＸＬをベクトルＸの変数の内の集合Ｌに含まれる変数を否定に置き換えたベクトルとした時、集合Θの変数に依存しないことの必要十分条件は
2004068364.tif 000050
と表せる。ここでΘをｎ個のブール値θｌによりΘ＝｛ｌ；θｌ＝０｝と表すと、（３３）は
2004068364.tif 000051
と表すことができる。これは
2004068364.tif 000052
が成り立つことから導かれる。このθｌを関数ｆ（Ｘ）の変数依存度と呼ぶことにする。
尚、（３４）が成り立つ時、ｆ（Ｘ）はθｌ＝０なる変数ｘｌには依存していない。依存している変数の数はθｌ＝１なる変数の数以下である。（３４）は（３０）に
2004068364.tif 000053
さらに写像Ｆ：Ｂｎ→Ｂｍ各成分関数ｆｊ（Ｘ）（ｊ＝１，２，…，ｍ）の変数依存度をθｊｌとすると、（３４）に相当した式を母関数を用い写像全体を一括して
2004068364.tif 000054
と表すことができる。
2004068364.tif 000055
場合に相当する。このΔ（Ｘ，Ｙ）やΔｊ（Ａ，Ｂ）を今後変数依存度関数と呼ぶ。
以上の本発明の第３の側面によれば、論理関数の変数依存度を方程式を満足するかどうかで複数の変数に対して一度に判定でき、また上述のこの発明の第２の側面をさらに総合的に適用して論理関数設計を行える。
［発明の第４の側面］
発明の第４の側面は請求項９の発明に対応する。
ｒ＝２に限定すると、旧演算系の演算（写像）は、ＧｑＯ：Ｂｎ→Ｂｎ、
ＦｐＯ：Ｂｎ×Ｂｎ→Ｂｎ、ＨｓＯ：Ｂｎ×Ｂｎ×…×Ｂｎ→Ｂｎとなり、新演算系の符号器（写像）はΦ：Ｂｎ→Ｂｍ、復号器（写像）は、Ψ：Ｂｍ→Ｂｎ、新演算系の演算（写像）はＧｑＮ：Ｂｍ→Ｂｍ、ＦｐＮ：Ｂｍ×Ｂｍ→Ｂｍ、ＨｓＮ：Ｂｍ×Ｂｍ×…×Ｂｍ→Ｂｍとなる。
この時、旧演算系の各演算および新演算系の各演算、符号器、復号器の成分関数は、
ｉ＝１，２，…，ｎ、Ｘ，Ｙ，Ｚ，Ｘ１，Ｘ２，…，ＸＴ∈Ｂｎ、ｊ＝１，２，…，ｍ、Ｘ′，Ｙ′，Ｚ′，Ｘ′１，Ｘ′２，…，Ｘ′Ｔ∈Ｂｍとすると、
ＧｑＯ：ｇｉｑＯ（Ｘ）、ＦｐＯ：ｆｉｐｏ（Ｘ，Ｙ）、ＨｓＯ：ｈｉｓＯ（Ｘ１，Ｘ２，…，ＸＴ）およびＧｑＮ：ｇｊｑＮ（Ｘ′）、ＦｐＮ：ｆｊｐＮ（Ｘ′，Ｙ′）、ＨｓＮ：ｈｊｓＮ（Ｘ′１，Ｘ′２，…，Ｘ′Ｔ）、Φ：φｊ（Ｘ）、Ψ：Ψｉ（Ｘ′）
と表すことができる。これらの写像を上述の発明の第２の側面で定義した母関数を用い、さらに符号領域Ｃの特徴論理関数χｃ（Ｘ′）をｃ（Ｘ′）と表すと、ｒ＝２においては（１−ｃ）乃至（５−ｃ）と同値な以下の（１−ｂ）乃至（５−ｂ−２）が導かれる。この（１−ｂ）乃至（５−ｂ−２）は２値ブール関数（Ｂｏｏｌｅａｎ  ｆｕｎｃｔｉｏｎ）による方程式であることを陽に示すために番号にｂを付した。
2004068364.tif 000056
▲Φ▼（Ｘ′，Ｘ）は符号器の母関数、▲Ψ▼（Ｘ，Ｘ′）は復号器の母関数、▲Ｇ▼ｑＯ（Ｙ，Ｘ）は旧演算系の単項演算の母関数、▲Ｆ▼ｐＯ（Ｚ，Ｙ，Ｘ）は旧演算系の二項演算の母関数、▲Ｇ▼ｑＮ（Ｙ′，Ｘ′）は新演算系の単項演算の母関数、▲Ｆ▼ｐＮ（Ｚ′，Ｙ′，Ｘ′）は新演算系の二項演算の母関数、▲Ｈ▼ｓＯ（Ｙ，Ｘ１，…，ＸＴ）は旧演算系のＴ項演算の母関数、▲Ｈ▼ｓＮ（Ｙ′，Ｘ′１，…，Ｘ′Ｔ）は新演算系のＴ項演算の母関数である。
以下（１−ｃ）乃至（５−ｃ）から同値な変形により（１−ｂ）乃至（５−ｂ−２）を導く。
先ず各Ｘの符号を表す集合［Ｘ］の特徴関数χ′［Ｘ］（Ｘ′）は、復号器Ψの母関数を用いて明らかに以下のように表すことができる。
2004068364.tif 000057
この（３６）をＸ′の関数と考え母関数の性質（１８）を適用すると、（１ｃ）は
2004068364.tif 000058
と同値になる。また母関数の性質（２７）から
2004068364.tif 000059
が成り立つので、（３７）の両辺に▲Φ▼（Ｙ′，Ｘ）を掛け、恒等変換の母関数の性質（１９）を適用して和をとり、その後に変数Ｙ′をＸ′に変更することにより、前記（１−ｂ）式が導かれる。
次に特徴論理関数と母関数の性質（１０）および（１６）と（２−ｃ）から
2004068364.tif 000060
ところで（２）に戻ると分かるように（２ｃ）は
2004068364.tif 000061
と同値である。（３９）、（４０）と母関数の性質（２７）より、（２ｃ）は
2004068364.tif 000062
と同値になり、この両辺をＹで和をとると、母関数の性質（２２）より（２−ｂ）式が導かれる。
次に特徴関数の定義と性質（１４）より（３ｃ）は明らかに
2004068364.tif 000063
と同値になる。また（３６）より
2004068364.tif 000064
また（３６）と特徴関数と母関数の性質（１０）、（１６）より
2004068364.tif 000065
（４３）と（４４）を（４２）に代入し、＝０型のブール式は和を外せるので
2004068364.tif 000066
が得られる。この否定部分を分けると
2004068364.tif 000067
なる２つの方程式になる。（４６）に母関数の性質（１８）と（２９）を適用すると
（３−ｂ−１）が導かれ、（４７）をＸで和をとると母関数の性質（２２）より（３−ｂ−２）が導かれる。全く同じ論法で、（４−ｃ）から（４−ｂ−１）と（４−ｂ−２）が導け、（５−ｃ）から（５−ｂ−１）と（５−ｂ−２）が導かれる。
以上のように（１−ｂ）乃至（５−ｂ−２）が導かれ、旧演算系と新演算系の符号化条件式を２値論理の明解な方程式の形で表すことができた。このことにより、旧演算系の成分関数の情報から新演算系を２値の探索などにより効率よく決定することが可能になる。
［発明の第５の側面］
発明の第５の側面は請求項１０〜１２の発明に対応する。
前記（１−ｂ）乃至（５−ｂ−２）に加え、新演算系の演算器に対する論理式の簡単化の条件を付加し、その下で符号器、復号器、新演算器を論理設計することで、新演算器の回路規模および演算遅延時間を小さくすることを可能とする。さらに前記演算器の簡単化の条件として単項演算に対しては
2004068364.tif 000068
なる条件を課し、二項演算に対しては
2004068364.tif 000069
なる条件を課し、Ｔ項演算に対しては
2004068364.tif 000070
2004068364.tif 000071
なる条件を課し、新演算器の入力変数に対する変数依存度を旧演算系に比較し小さくなるようにλｑｊｌおよびθ１ｐｊｌ、θ２ｐｊｌおよびμ１ｓｊｌ乃至μＴｓｊｌの値を定め、符号器、復号器、新演算器を論理設計することで、新演算器の回路規模および演算遅延時間を小さくすることを可能とする。
さらに必要があれば前記簡単化の条件において前記θ１ｐｊｌとθ２ｐｊｌに対してθ１ｐｊｌ，＝θ２ｐｊｌなる条件を課し、新演算系の二項演算を対称型で論理設計する。また前記μ１ｓｊｌ乃至μＴｓｊｌに対してμ１ｓｊｌ＝・・・＝μＴｓｊｌなる条件を課し、新演算系のＴ項演算を対称型で設計することを可能とする。
［発明の第６の側面」
発明の第６の側面は請求項１３および１４の発明に対応する。
前記旧表現データの空間Ｂｒｎと新表現データの空間Ｂｒｍを同一の空間（Ｂｒｎ＝Ｂｒｍ，ｎ＝ｍ）とした時、符号器ΦをΦ：Ｂｒｎ→Ｂｒｎなる同型写像とし、復号器ΨをΨ＝Φ−１（Φの逆写像）とすることが考えられる。この場合、符号器が同型写像であれば、前記の（１）および（２）は自動的に満足されることは明らかである。
ここでｒ＝２の時には（１−ｂ）および（２−ｂ）の代わりにΦ（Ｙ，Ｘ）が同型写像の母関数である条件
2004068364.tif 000072
が成り立てばよいことになる。尚、（５１）は（２９）を入力出力を入れ替えて適用すれば導かれる。また単項演算の（３−ｂ−１）（３−ｂ−２）に相当する新旧演算系間の関係式は
2004068364.tif 000073
が成り立つことに置き換わる。同様に
2004068364.tif 000074
この時、若し新演算系に対して（４８）の変数依存度を要請するならば、（５２）を（４８）に適用し、Ｘ′，Ｙ′，Ａ′，Ｂ′に関して和をとると、
2004068364.tif 000075
なる式が導かれる。
同様に（４９）（５０）の変数依存度を要請すれば
2004068364.tif 000076
2004068364.tif 000077
が導かれる。（５５）、（５６）、（５７）は旧演算系の演算器の母関数と符号成分関数だけの方程式であることに注目すると、次のような決定手順が可能になる。
＜ステップ１＞与えられた変数依存度に対して、（５１）と（５５）乃至（５７）を満足する符号器Φ（の成分関数）を決定する。
＜ステップ２＞（５２）乃至（５４）より新演算系の演算器を決定する。
＜ステップ３＞複号器ΨはΨ＝Φ−１、母関数で言えば▲Ψ▼（Ｙ，Ｘ）＝▲Φ▼（Ｘ，Ｙ）として決定する。
（ステップ２、ステップ３は明らかに逆の順でも可能。）
この決定手順ではステップ１には新演算系の演算器の情報が含まれていないため、決定すべきファクターが少なく、効率的な符号決定が可能になる。
本発明では以上のような手法により論理設計を行うことで、冗長符号も含めた符号化演算方式の具体的な論理設計を可能とし、さらに上記のように符号化演算方式に基づき論理設計された論理式から具体的な回路設計を行い、符号化演算方式の流れに従い、計算結果を算出できるようにしたこと特徴とする符号化演算装置を実現する。
また１つまたは複数種の新演算器を有したこの符号化演算装置において、これらの新演算器を直接接続することで新表現データに対する複数の計算処理に対し、メモリー経由による遅延時間を無くし、高速な符号化演算装置を実現する。
さらにＣＰＵまたはデータ制御装置の制御の下に、１つまたは複数の新演算器による新表現データとして得られた演算結果を復号器により旧表現データに直ぐに変換するのでは無く、新表現データのままで一旦メモリに格納し、他の計算プロセスにおいて計算された新表現データを前記ＣＰＵまたはデータ制御装置により前記結果の新表現データとの新演算器による演算を可能にし、プログラムに従った柔軟な計算処理などを変更可能にした符号化演算装置を実現する。以上のような手段により本発明では前記の関連特許文献の問題点のｖｉ）を解決する。
なお、この発明は装置またはシステムとして実現できるのみでなく、方法としても実現可能である。また、そのような発明の一部をソフトウェアとして構成することができることはもちろんである。またそのようなソフトウェアをコンピュータに実行させるために用いるソフトウェア製品もこの発明の技術的な範囲に含まれることも当然である。
本発明を用いれば、関連特許文献の問題点を解決でき、符号化演算方式に基づく新演算系の具体的な論理設計が具体的且つ効率的に可能となり、元演算系をそのまま回路化した場合に比較し素子数や遅延時間を大幅に削減でき、高速化や低消費電力化を図った符号化演算装置を実現できる。
【図面の簡単な説明】  図１は、本発明の符号化概念図である。
図２は、本発明の元演算系の旧演算系への拡張概念図である。
図３は、本発明の旧演算系新演算系決定フローの例を示す図である。
図４は、本発明により構成されて演算処理装置の構成を示す図である。
図５は、本発明の旧演算計新演算系決定フローの詳細を示す図である。
図６は、本発明の旧演算計新演算系決定フローの他の例の詳細を示す図である。
図７は、本発明の具体例１に関連して元演算系の擬似乗算器Ｆ１の真理値表を説明する図である。
図８は、本発明の具体例１に関連して元演算系の擬似加算器Ｆ２の真理値表を示す図である。
図９は、本発明の具体例１に関連して元演算系の擬似乗算器Ｆ１の回路図を示す図である。
図１０は、本発明の具体例１に関連して元演算系の擬似加算器Ｆ２の回路図を示す図である。
図１１は、本発明の具体例１に関連して新演算系の決定フローを説明する図である。
図１２は、本発明の具体例１に関連して新演算系の擬似乗算器Ｆ１Ｎの真理値表を説明する図である。
図１３は、本発明の具体例１に関連して新演算系の擬似加算器Ｆ２Ｎの真理値表を示す図である。
図１４は、本発明の具体例１に関連して新演算系の符号器Φの真理値表を示す図である。
図１５は、本発明の具体例１に関連して新演算系の復号器Ψの真理値表を示す図である。
図１６は、本発明の具体例１に関連して新演算系の擬似乗算器Ｆ１Ｎの回路図を示す図である。
図１７は、本発明の具体例１に関連して新演算系の擬似加算器Ｆ２Ｎの回路図を示す図である。
図１８は、本発明の具体例１に関連して新演算系の符号器Φの回路図を示す図である。
図１９は、本発明の具体例１に関連して新演算系の復号器Ψの回路図を示す図である。
図２０は、本発明の具体例１に関連して素子数遅延表を示す図である。
図２１は、本発明の具体例１に関連して木構造積和演算器のブロック図を示す図である。
図２２は、本発明の具体例１に関連して擬似積和演算器を示す図である。
図２３は、本発明の具体例２に関連して元演算系の２つの単項演算Ｇ１、Ｇ２の真理値表を示す図である。
図２４は、本発明の具体例２に関連して元演算系の２つの単項演算Ｇ１、Ｇ２の母関数ブール値行列を示す図である。
図２５は、本発明の具体例２に関連して新演算系決定フローを示す図である。
図２６は、本発明の具体例２に関連して元演算系の単項演算Ｇ１、Ｇ２の入出力トポロジーを示す図である。
図２７は、本発明の具体例２に関連して新演算系の単項演算Ｇ１Ｎ、Ｇ２Ｎの入出力トポロジーを示す図である。
図２８は、本発明の具体例２に関連して新演算系の単項演算Ｇ１Ｎ、Ｇ２Ｎの束ねた入出力トポロジーを示す図である。
図２９は、本発明の具体例２に関連してトポロジー一致型新演算系決定フローである。
【発明を実施するための最良の形態】  以下、この発明の実施例について説明する。
ここでは、請求項３〜８の方法の発明について言及していくが、請求項１および２の装置の発明や請求項９〜１４の方法の発明についても適宜適用されることに留意されたい。
【実施例１】  請求項３の発明の実施例について説明する。
先ず図３のフローをｒ＝２でｎ＝２の旧演算として１つの単項演算ＧＯが、成分関数としてｇＯ０（Ａ）＝ａ１，ｇＯ１（Ａ）＝ａ１・ａ０と与えられ，ｍ＝３の新演算器を決定する請求項３と請求項４の符号化条件による実施例を示す。図５は請求項３の発明の実施例（請求項４の発明の実施例も同様）のプログラムのゼネラル・フローである。先ずこのプログラムに用いた変数と配列は以下のとおりである。
ｘ：旧符号非符号変数；Ｘのとる値０〜３と非符号（値は４）に対応させた変数
ｙ：新符号変数；Ｘ′のとる値０〜７に対応させた変数
ｒ：乱数変数；生成された８ビット乱数の０〜２５５を表す変数
ｉ，ｊ，ｋ；新演算器生成の更新変数
ｌ，ｔ，ｕ，ｖ：一般の変数
ｃ［４］：生成符号配列；４種の符号［Ｘ］に対応させた４個の配列で、生成した符号が属す新符号の値に対応したビットだけ１とし、属さないビットは０とする配列、新符号の値とビットの対応にはＬＳＢ側から順に対応させる。
ｇｏ［４］：旧演算器写像配列；ｇｏ［０］＝０，ｇｏ［１］＝０，ｇｏ［２］＝１，ｇｏ［３］＝３
ｇｎ［８］：新演算器写像配列；各ステップで生成された新演算器の写像入力値を配列アドレスに対応させ、その時の出力を値とした配列
ｇｎｅ［３］：新演算器成分関数；新演算器の３つの成分関数を表す配列で、各成分論理式を最小項Ｘ０，…，Ｘ７が含まれる場所の対応するビットを１にしてＬＳＢ側から対応させて表した配列
ｇｎｃ［４］：新演算器符号代入関数：
ｓ［６］：３ビット標準成分関数配列；３ビットの３種の１変数論理関数（非否定型）とその否定型１変数論理関数を、ｇｎｅ［３］と同様に表現した配列で表す。
具体的には１変数論理関数（非否定型）のビットパターンが０１０１０１０１，００１１００１１，００００１１１１の３種であることに対応し、ｓ［０］＝１７０，ｓ［１］＝２０４，ｓ［２］＝２４０としその否定を続く配列に入れる。つまり
ｓ［３］＝８５，ｓ［４］＝４１，ｓ［５］＝１５
ｂ０［８］：１ビット０パターン配列；ｂ［ｔ］はｔビット目が０その他１の配列
ｂ１［８］：１ビット１パターン配列；ｂ［ｔ］はｔビット目が１その他０の配列
以下図５のフローの請求項３の場合の具体的な処理を説明する。
［ステップＳ１１］：初期化。
ｇｏ［４］，ｓ［３］，ｓｎ［３］以外の配列と変数は０にする。
［ステップＳ１２］：符号生成。
乱数ｒを生成し、新符号ｙをｍｏｄ（ｒ，５）に対応した符号［Ｘ］（またはＮＣ）に属すと考え、ｃ［ｍｏｄ（ｒ，５）］のｙ番目のビットに１を立てる。
［ステップＳ１３、Ｓ１４］：ｙ＝ｙ＋１としｙ＝８ならステップ２、その他はステップＳ１５に進む。
［ステップＳ１５］：符号化条件（１）（２）式の判定。
符号化条件（１）満たすことは４つの［Ｘ］には少なくとも１つ新符号が属していることと等価である。これはｃ［０］〜ｃ［３］が全て０で無いことに対応する。１つでも０があればステップ１に戻る。無ければステップＳ１６に進む。
例えば［０］＝｛６’｝，［１］＝｛２’｝，［２］＝｛０’，４’｝，［３］＝｛１’，３’，５’，７’｝，ＮＣ＝空集合なる符号生成がなされた場合にはｃ［０］＝６４，ｃ［１］＝４，ｃ［２］＝１７，ｃ［３］＝８５なる値になり、ステップ５に進む。
［ステップＳ１６］：新演算器生成。
符号条件（１）を満足すれば符号器Φと復号器Ψは存在は保証されているのでここでは新演算器だけを生成する。この実施例では旧演算器がａｎｄゲート１個であることから簡単化は１変数依存の論理関数を生成することに限定する。従って新演算器の成分関数は非否定型標準成分関数と否定型標準成分関数の計６種の何れかである。従ってｇｎｅ［０］＝ｓ［ｉ］，ｇｎｅ［１］＝ｓ［ｊ］，ｇｎｅ［２］＝ｓ［ｋ］として新演算器を生成する。
［ステップＳ１７］：符号化条件（３）式の判定。
先ずｇｎｅ［３］からｇｎ［８］を計算する。これは次のように計算できる。
同様にｇｎｅ［０］，ｇｎ［１］，ｇｎ［２］の下からｔ番目のビットの値をｇｎ［ｔ］の０ビット目（ＬＳＢ），１ビット目、２ビット目のそれぞれに移し、３ビット目以上は０のままとする。この処理をｔ＝０からｔ＝７まで行うことでｇｎ［８］を決める。
次にｃ［ｕ］の１が立っているビットの位置の値ｔ（ＬＳＢは０で１ビット上に行く毎に１増える値）全てに対してｖのｇｎ［ｔ］ビット目を１にする。
そしてｃ［ｇｏ［ｕ］］のビットパターがｖのビットパターンを含んでいる時はｕ＝ｕ＋１とし上記処理をｕ＝３まで繰り返す、途中で含んでいない場合があれば
符号化条件（３）を満足していないことになるからステップＳ１８へ進む。最後まで行った場合には符号化条件（３）は満足されたことになりステップＳ２０８に進む。
［ステップＳ１８、Ｓ１９］：ｉ，ｊ，ｋの値を更新する。
上記更新後にステップ５に進む。但しｉ，ｊ，ｋが０〜５までの全ての値をとった時には、１変数依存の新演算器が存在しなかったことに相当するので変数などを初期化後にステップＳ１２に戻る。
「ステップＳ２０］：
符号化条件の（１）式に基づき［０］〜［３］の中の新符号を配列ｃ［４］のビットパターンの１なる部分から１つずつ選び、例えば０−＞１’，１−＞０’，２−＞４’，３−＞２’なる対応として決める。符合器は一般に幾通りも存在するので論理式が簡単になるものを選択すれする。符号化条件（２）を満足する復号器は存在することが保証されているのでこの実施例ではここで終了する。
尚、変数などは必要な所で初期化する。
以上が図５の処理の内容である。
この実施例において、ステップ４で例として示した符号が乱数により生成され、ｉ＝０，ｊ＝３，ｋ＝１の時に終了した。
この結果は符号が［０］＝｛６’｝，［１］＝｛２’｝，［２］＝｛０’，４’｝，［３］＝｛１’，３’，５’，７’｝，ＮＣ＝空集合の時に新演算器として論理式がｇＮ０（Ａ′）＝ａ′１，ｇＮ１（Ａ′）＝ａ′２，ｇＮ２（Ａ′）＝ａ′０なる解が得られたことを意味する。
尚、この実施例では旧演算器が１つの単項演算だけの場合で示したが、複数の２項演算やＴ項演算を含む場合にも符号化条件（３）に加え（４）（５）の判定が追加される点とステップ５の新演算器の生成の部分の処理が複雑化する点以外は基本的に同様のフローにより、コンピュータ処理で実現できる。
以上のように請求項３に基づく演算処理装置設計方法により少なくとも旧演算器よりも同等以下の簡単化を達成した新演算器を決定することができる。
【実施例２】  次に請求項４の発明の演算処理装置設計方法の実施例を説明する。この実施例においては、図５のフロー中、符号化条件の式（１）乃至（３）を（１ｃ）乃至（３ｃ）に置き換えた処理のよる決定になる。この部分の処理が請求項３の発明の実施例と異なる点はステップＳ１２で生成された符号から以下のように特徴論理関数を計算し判定するステップＳ１７と符号器の決定のステップＳ２０の部分だけである。
前記と同じ旧演算器の場合で［０］＝｛６’｝，［１］＝｛２’｝，［２］＝｛０’，４’｝，［３］＝｛１’，３’，５’，７’｝，ＮＣ＝空集合のように符号生成され、新演
2004068364.tif 000078
先ずステップ２で生成された符号からｃ［４］を求めたが実はこれはＢ３上の特徴論理関数である各Ｘ毎の論理関数χ′［Ｘ］（Ｘ′）にそのまま対応している。つまりｃ［ｕ］のｕはＸに相当し、各ｕ毎のｃ［ｕ］のビットパターンがｇｎｅ［３］と同様の表現によるＢ３上の論理関数になっている。
そこでステップ６の符号化条件（３）を（３ｃ）による判定に以下のように変更する。（請求項４の発明の実施例のステップＳ１７）
請求項３の場合と同様にｇｎｅ［３］からｇｎ［８］を計算し、ｖを同様に計算する。そしてｃ［ｇｏ［ｕ］］とｖのビットパターンの否定との論理和（ｏｒ）を計算し、計算結果が２５５かどうかを判定する。これは（３ｃ）式の左辺の特徴論理関数が１であると判定することに相当する。
ｕ＝ｕ＋１とし上記処理をｕ＝３まで繰り返す、途中で２５５でいない場合があれば
符号化条件（３ｃ）を満足していないことになるからステップＳ１８へ進む。最後まで行った場合には符号化条件（３ｃ）は満足されたことになりステップＳ２０に進む。
（請求項４の発明の実施例のステップＳ２０）
ｕの０〜３の値に対し、ｃ［ｕ］とｂ０［ｔ］との論理和が２５５になるかを判定し、符号器を決定する。これは符号化条件（１ｃ）による符号器を決定することに相当する。
復号器に対しては請求項３のステップＳ２０と同様である。
以上が請求項４の発明の実施例の異なる点で、２つのステップが手続的な処理から簡単な論理演算と等号判定に置き換わり、より簡潔なプログラム処理になる。
このように請求項４の発明の演算処理装置設計方法によれば効率的なプログラム処理が可能となり、設計に必要な処理時間の短縮に効果がある。
【実施例３】  次に請求項５の発明の実施例を２つ示す。
１つ目は上述の請求項４の実施例の２つのステップの中で論理和演算を行っている部分は請求項５の（１４）式（その否定）の実施例になっている。
２つ目また上述のステップ２の符号生成に請求項５の（８）を適用すれば新符号ｙをｍｏｄ（ｒ，５）に対応した符号［Ｘ］（またはＮＣ）に属すと考え、ｃ［ｍｏｄ（ｒ，５）］をｃ［ｍｏｄ（ｒ，５）］とｂ１［ｙ］との論理和に置き換える。
【実施例４】  次に請求項５の発明の実施例について説明する。請求項５の（９）乃至（１３）式も同様に集合の要素間の処理に利用できる。従って請求項５の論理関数設計方法によれば手続的な処理を簡単な論理演算に置き換えることができ、効率的な処理が可能となる。
【実施例５】  次に請求項６の発明の実施例を以下に示す。
請求項６の論理関数設計方法の主要な点は多入力多出力の論理関数間の計算が母関数に基づく式により明解に計算できる点である。
母関数の応用は非常に多岐に亘る為、ここでは母関数による方法の代表的な１実施例として２入力３出力の論理関数Ａと３入力２出力の論理関数のそれぞれの成分関数が与えられた時にＡをＢに代入して合成した２入力２出力の論理関数Ｃの成分論理関数をプログラムで求める例で示す。
この実施例では論理関数は入力を配列のアドレスに対応させ、出力は最小項に対応し、値０，１で表す場合で示す。
式に基づく計算のプログラム化は容易なので処理の流れだけを以下に示す。
このプログラムに用いた配列は
ａ［３］［４］：２入力３出力論理関数Ａ；３出力毎の成分論理関数の配列
ｂ［２］［８］：３入力２出力論理関数Ｂ；２出力毎の成分論理関数の配列
ｃ［２］［４］：２入力２出力論理関数Ｃ；２出力毎の成分論理関数の配列
ｍａ［８］［４］：Ａの母関数配列；
ｍｂ［４］［８］：Ｂの母関数配列；
ｍｃ［４］［４］：Ｃの母関数配列
ａ［３］［４］、ｂ［２］［８］には値０，１が既に入っている。
処理の流れは
（ステップ１）成分論理関数ａ［３］［４］、ｂ［２］［８］から母関数ｍａ［８］［４］，ｍｂ［４］［８］を計算
請求項６の母関数の定義式（１６）に従い計算する。
（ステップ２）母関数ｍａ［８］［４］，ｍｂ［４］［８］から母関数ｍｃ［４］［４］を計算
請求項６の（１７）式に従い計算する。
（ステップ３）母関数ｍｃ［４］［４］から成分論理関数ｃ［２］［４］を計算
請求項６の（２０）式に従い計算する。
以上のように大きく３ステップの簡潔なプログラムにより計算ができる。
このように請求項６の発明の論理関数設計方法によれば全て明解に定義された式に基づくプログラム化が可能で論理関数設計において簡潔で効率的な設計が可能となる。
【実施例６】  次に請求項７の発明の実施例を以下に示す。
請求項７の発明の論理関数設計方法の主要な点は変数依存度を明解な式に基づき効率的に計算できる点である。
ここでは与えられた１００個の４入力論理関数の中から指定された変数に依存しない論理関数を選別する問題につき、請求項７の（３４）式に基づく決定プログラムの処理の流れだけを示す。用いる定数と変数は以下で論理関数配列は最小項に対応しアドレスに１が入りその他０の表現である。
ｆ［１００］［１６］：１００個の４ビット論理関数；与えられた既知定数
ｆｎ［１００］［１６］：上記１００個の否定論理関数：０，１が上と逆転
ｅ［４］：指定変数依存；ｅ［ｕ］＝θｕなる値が入った定数配列
ｄｅｌｔａ［１６］［１６］：変数依存度関数；（３４）式のΔ（Ｘ，Ｙ）に対応するもの
ｄ［１００］：判定結果配列；
ｓ［４］［１６］：４標準成分論理関数配列；χ０〜χ３の４つの論理関数に対応した定数配列
2004068364.tif 000079
た定数配列
ｉ，ｊ，ｋ：一般の変数
（ステップ１）与えられたｅ［４］から変数依存度関数ｄｅｌｔａ［１６］［１６］を計算
請求項７に示されたΔ（Ｘ，Ｙ）の定義に基づきｄｅｌｔａ［１６］［１６］を計算
ｋ＝０とする。
（ステップ２）（３４）式の左辺の計算
ｆ［ｋ］［ｉ］＊ｆｎ［ｋ］［ｊ］＊ｄｅｌｔａ［ｉ］［ｊ］を全てのｉ，ｊにつき論理和計算を行う
計算結果が０ならｄ［ｋ］＝１，その他はｄ［ｋ］＝０
ｋ＝ｋ＋１としｋ＝１００ならステップ３、その他ステップ２
（ステップ３）論理関数選別
ｄ［ｋ］＝１なるｋの論理関数を選別する。
以上が請求項７の発明の実施例である。請求項７の発明の論理関数設計方法によれば明解に定義された式により予め指定された変数依存度関数を計算することや、母関数による一括解析などが可能となり、従来の個別の変数の独立性を逐次調べる方法や、成分単位に調べる方法に比べ格段に効率的な処理になる。
【実施例７】  請求項８の発明の主要な点は請求項５乃至請求項７における計算および判別を包括的に行うことでより多様な論理関数設計に用いることができる方法である。
図６は請求項８の発明のプログラム構成図で、以下のステップ１からステップ７までの７つの処理のステップと、ステップ間の処理の流れ制御するステップ８の大きくは８つのステップを有する。
［ステップＳ２１］：特徴論理関数変換ステップ。
入力された集合間の関係を関係式（８）〜（１４）を用いて特徴論理関数の式に、変換する。
［ステップＳ２２］：特徴論理関数関係判別ステップ。
変換された特徴論理関数の式が成立するかどうかを判別する。
［ステップＳ２３］：写像成分関数・母関数入力ステップ。
各写像の成分関数または／および母関数を入力する。
［ステップＳ２４］母関数計算ステップ。
（１６）式に基づき母関数を計算する。
［ステップＳ２５］：成分関数計算ステップ。
（２０）式に基づき成分関数を計算する。
［ステップＳ２６］：成分関数・母関数関係計算ステップ。
（１８）〜（１９）式を計算する。
［ステップＳ２７］：変数依存度解析ステップ。
（３０）〜（３５）式に基づき変数依存度を解析する。
［ステップＳ２８］：結果を出力する。
［ステップＳ２９］：データ制御ステップ。
ステップＳ２１〜ステップＳ２８の間のデータの受け渡しを目的の処理に応じ制御する。
この図６の構成図に基づき設計する場合の具体例を以下に説明する。
２ｍ人のユーザのＫ項目についての好き嫌いを２値で表した集合データ１があり、このＫ項目の好き嫌いのパター２Ｋ種の内、Ｌ種のパター（集合データ２）に該当する人をピックアップする論理回路、つまりｍビットのユーザ番号を入力した時に、該当者では１、非該当者は０を出力する回路の論理関数を図６の構成図に従い設計する場合で説明する。
全てステップ８の制御の下に処理は進み、先ず２ｍ人の集合データ１からステップ１によりｍ個の特徴論理関数に変換し、これを写像Ａのｍ個の成分関数としてステップ４により母関数Ａを計算する。同様にＬ要素の集合データ２からステップ１により１個のパターン選別を表す特徴論理関数に変換し、これを写像Ｂの１個の成分関数としてステップ４により母関数Ｂを計算する。次に母関数Ａと母関数Ｂをステップ６により合成写像ＢＡの母関数ＢＡを計算し、さらに同じステップ６により母関数ＢＡから１つの成分関数を計算する。
このようにして求める回路の論理関数が得られる。
この具体例はステップＳ２１、ステップＳ２４、ステップＳ２６、ステップＳ２８だけの処理で設計できる例を示したが、その他のステップの用いる例は多岐に亘り存在する。
以上のように請求項８の発明の論理関数設計方法を用いれば多岐に亘る応用において、請求項５乃至請求項７の発明における計算および判別を包括的に行うことでより多様な論理関数設計行うことができる。
次に本発明の符号化演算方式の効果を顕著に示す具体例を説明する。
［具体例１］
４要素からなる集合Ω１ｉｎ＝（ｓ，ｔ，ｕ，ｖ，）を入力、５要素からなる集合Ω１ＯＵＴ＝（ａ，ｃ，ｆ，ｇ，ｈ）を出力とする２項演算Ｆ１：Ω１ｉｎ×Ω１ｉｎ→Ω１ＯＵＴと、８要素からなる集合Ω２＝（ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ）を入出力とする２項演算Ｆ２：Ω２×Ω２→Ω２が定義された旧演算系を考える。本発明の効果を理解し易いように、擬似的にＦ１を乗算、Ｆ２を加算と見なした時の積和演算（擬似的な積和演算）を実行する元演算系の計算システムにつき元演算系と新演算系を後に比較する。
Ｆ１は擬似乗算で＊で表し、Ｆ２は擬似加算で＋で表し、複数の擬似加算を通常と同じようにΣで表すことにすると、擬似積和演算は
2004068364.tif 000080
最も一般的な２値で元演算系を論理設計を行うことにすると、Ω１ｉｎ＝Ｂ２とし
2004068364.tif 000081
て
2004068364.tif 000082
に対応させると、Ｆ１は４ビット入力３ビット出力の２項演算器で、Ｆ２は６ビット入力３ビット出力の２項演算器となる。この時のＦ１の真理値表を図７に、Ｆ２の真理値表を図８に示す。さらにこの図７と図８の真理値表から論理合成ソフトにより合成した回路の回路図を示したものが図９、図１０である。図９はＦ１の回路図、図１０はＦ２の回路図である。
この具体例１では、上述の発明の第１の側面に従う手法に基づき、元データ集合を全て旧表現データの集合Ｂ３に拡張し、元演算系のＦ１，Ｆ２に対応した旧演算Ｆ１Ｏ，Ｆ２ＯをＦ１Ｏ，Ｆ２Ｏ：Ｂ３×Ｂ３→Ｂ３なる２項演算と考え、また新表現データの集合を同じＢ３とする。この時符号化は同型写像による非冗長符号になる。つまりΦ：Ｂ３→Ｂ３、Ψ＝Φ−１：Ｂ３→Ｂ３となる。具体例１では図１１のフローに従い新演算系を決定を行った。
図１１の処理は次のようなものである。
［ステップＳ２１］：ｋ＝１、ｐ＝１に初期設定する。ｋは新演算器の入力数、ｐは新演算器のビット数である。
［ステップＳ２２］：ｐ番目の符号Φを生成する（置換Φを決める）。
［ステップＳ２３］：疑似加算器の真理値表をΦで置換し新演算器を生成する。
［ステップＳ２４］：ｋ変数依存以下の２項演算器を生成する。
［ステップＳ２５］：新疑似乗算器候補すべてにたいしてΦの逆置換を施し、元疑似乗算との対応点を比較する。
［ステップＳ２６］：一致する候補がある化判別する。あればステップＳ２７へ進み、なければステップＳ２８へ進む。
［ステップＳ２７］：新演算器は満足するものかを判別する。満足するものであれば終了し、そうでなければステップＳ２８へ進む。
［ステップＳ２８］：ｐ＝Ｐを判別し、ｐ＝Ｐでなければ、ステップＳ２９へ進む。
［ステップＳ２９］：ｐ＝ｐ＋１としてステップＳ２２に戻り処理を繰り返す。
［ステップＳ３０］：ｐ＝１とする。
［ステップＳ３１］：ｋ＝Ｋを判別し、ｋ＝ＫでなければステップＳ３２へ進む。ｋ＝Ｋであれば処理を終了する。
［ステップＳ３２］：ｋ＝ｋ＋１としてステップＳ２２へ戻り、処理を繰り返す。
図１１の処理の結果得られた元演算系のＦ１，Ｆ２に対応した一組（同等のものは複数個存在する）の新演算器をＦ１Ｎ，Ｆ２Ｎとすると、このＦ１Ｎ，Ｆ２ＮはＦ１Ｎ，Ｆ２Ｎ：Ｂ３×Ｂ３→Ｂ３なる演算（写像）となる。これらの真理値表を示したものが図１２と図１３である。また図１４と図１５はこの符号化における符号器と復号器の真理値表である。
これらの図１２、図１３、図１４、図１５の真理値表から論理合成ソフトにより合成した回路の回路図を示したものが図１６、図１７、図１８、図１９である。
ここで図１１の新演算系決定フローを説明する。この具体例１では符号化は非冗長符号化であり、符号器Φは同型写像となり、Ｂ３の８種の要素（データ）を置換することに対応する。この置換は８！種存在する。Ｐ＝８！とし、Ｐ種の置換を番号付けする。元擬似加算と旧演算系の擬似加算はどちらもＢ３上の２項演算なので、同じものとして扱い、真理値表に対して入力と出力の３ビットの値に対し置換施し入力を順に並べ替えたものが図１３で、これは符号化（置換）により生成された擬似加算の新演算器の真理値表になる。また元擬似乗算は旧演算系への拡張を直接的に行わずに、先ず新演算系の擬似乗算器の候補を出し、各符号化に対応して逆の置換Φ−１を施し、候補に対応する旧演算系の擬似乗算を生成し、対応する部分が元擬似乗算の真理値表と一致するかどうかを判定する。つまり一致した新演算系の擬似乗算の候補が、元擬似乗算を拡張した旧演算系の擬似乗算を符号化しものに相当する。
以上の具体例１において擬似乗算に関しては図９と図１６、擬似加算に関しては図１０と図１７を比較すれば解るように新演算系の演算器の回路が格段に簡単になっていることが解る。さらに具体的な効果を観る意味で、ＮＯＴ（インバータ）の素子数を□、遅延時間を△とし、演算器単体の素子数とクリティカルパスの遅延時間をＦ１，Ｆ２，Ｆ１Ｎ，Ｆ２Ｎの順にそれぞれ□１、□２、□１Ｎ、□２Ｎ、と△１、△２、△１Ｎ、△２Ｎとし、さらにΦ，Ψの素子数とクリティカルパスの遅延時間を□Φ□Ψと△Φ△Ψとすると、図２０の具体例１の素子数遅延表のようになる。ここに各ゲートの素子数と遅延時間は一般的なものである２入力ａｎｄゲートと２入力ｏｒゲートの素子数、遅延時間は２□、２△とし、２入力ｅｘｏｒゲートの素子数、遅延時間は４□、３△とした。
ここでさらに（５８）の擬似積和演算を専用のハードウエアで実現した場合で示す。
図２１の木構造積和演算器ブロック図に示された木構造に配列された専用積和演算回路を、＊が付された乗算器のところに擬似乗算器を、＋が付された加算器のところに擬似加算器を配列した元演算系と新演算系の擬似積和演算器を構成し評価してみる。
図２１は（５８）のＫ＝８＝２３に相当するブロック図であるが、Ｋ＝２Ｌ（Ｌは自然数）なる場合には記号＊の乗算器はＫ個並列に並び、これらの乗算器の出力に続く記号＋の加算器は格段毎に２Ｌ−１個、２Ｌ−２個、・・・、２、１個が接続された木構造を成す。従って記号＊の乗算器の素子数を□＊、遅延時間を△＊、記号＋の加算器の素子数を□＋、遅延時間を△＋と表すと
（５９）積和演算器素子数＝２Ｌ・□＊＋（２Ｌ−１）・□＋
（６０）積和演算器遅延時間＝△＊＋Ｌ・△＋
となる。Ｋ＝８＝２３の場合には素子数は元演算系が２３２５□、新演算系が１００□、遅延時間は元演算系が１００△、新演算系が２１△であり、擬似積和演算器だけで比較すると新演算系は元演算系の素子数で約１／２３、遅延時間は約１／５になっている。
実際には新演算系に対しては符号器と復号器が追加して評価すべきである。符号器、復号器の数などは各種考えられるが、ここでは図２２に示す回路で比較する。
図２２は２Ｋ＝１６個の入力データＸ１，Ｙ１，…，Ｘ８，Ｙ８毎に１つの符号器Φを配し、それぞれをＸ′１，Ｙ′１，…，Ｘ′８，Ｙ′８なる新表現データに変換し、図２１の構造を有した新演算系擬似積和演算器で新表現データとしての積和演算結果Ｚ′計算し、復号器Ψで元演算系の擬似積和演算結果Ｚを出力する本発明の符号化演算方式の１つの実施回路である。この回路Ａは、内部をブラックボックスとしてみると前記の図２１の構造を有したＸ１，Ｙ１，…，Ｘ８，Ｙ８からＺを算出する元演算系の擬似積和演算器と機能としては全く同じであるが、素子数が
４６７□，遅延時間が３６△に大幅に削減される。
以上のように本発明の符号化演算方式によれば閉じた演算系に限らず、一般的な演算系（元演算系）に対し、大幅に素子数や遅延時間を削減した演算装置を実現することができる。またこの具体例では基数ｒ＝２の場合で示したが、多値論理の場合も基本的に同じ流れで符号化演算方式を実現できることは言うまでも無い。
尚、図１１のフローは本発明に基づく論理設計のあくまでも１つのアルゴリズムであり、幾つもの変形したアルゴリズムが考えられる。
また図２１に示した具体例１の木構造積和演算ブロック図の構成は、擬似積和演算に限らず例えば浮動小数点演算のような演算器に対しても同様な構成が可能であり、図２２は符号器、復号器および演算器からなる演算処理装置全体を示している。
またＣＰＵまたはデータ制御装置とを具備し、１つまたは複数の新演算器による演算結果を復号器により旧表現データに変換すること無く、新表現データのままで一旦メモリに格納し、他の計算プロセスにおいて計算された新表現データを前記ＣＰＵまたはデータ制御装置により前記結果の新表現データとの計算を必要な計算手順で計算可能にする演算処理装置も実現可能である。
［具体例２］
次に母関数を利用した論理関数設計方式を分かり易い例としてＢ２で定義された２つの単項演算Ｇ１とＧ２だけからなる元演算系の場合の具体例で示す。図２３はＧ１とＧ２の真理値表である。この単項演算Ｇ１とＧ２はＧ１，Ｇ２：Ｂ２→Ｂ２なる写像であり、その成分関数をｇ１０（Ｘ）、ｇ１１（Ｘ）およびｇ２０（Ｘ）、ｇ２１（Ｘ）とすると、真
2004068364.tif 000083
ｇ２１（Ｘ）＝χ１・χ０であり、（素子数、遅延時間）はＧ１は（２□、２□）とＧ２は（５□、３△）となる。またＧ１とＧ２の母関数▲Ｇ▼１（Ｙ，Ｘ）と▲Ｇ▼２（Ｙ，Ｘ）は母関数の定義式（１６）より
2004068364.tif 000084
同様に
2004068364.tif 000085
となる。これらの母関数をブール値行列として図示したものが図２４である。
この元演算系はＢ２上の同型写像の範囲の符号化ではこれ以上簡単にならない。そこでこの具体例２では非符号無しの３ビットの冗長符号化まで考え新演算系を設計した。非符号無しの時には符号領域の特徴論理関数ｃ（Ｘ′）（Ｘ′∈Ｂ３）はｃ（Ｘ′）＝１であるから、先ず符号器、復号器の関係式（１−ｂ）は以下のような同値な変形が成り立つ。
2004068364.tif 000086
この（６３）と（２−ｂ）より、この非符号無しの符号設計問題は４種の各Ｘに対応する▲Ψ▼（Ｘ，Ｘ′）をＢ３上の８種類の最小項を入れる箱として考え、これらの４つの箱に重複が無く且つ空の箱が生じないように８種の最小項を箱詰めする問題と等価になる。そしてこの箱詰めの仕方が１つ決まれば▲Ψ▼（Ｘ，Ｘ′）が１つ決まることに対応する。
また（３−ｂ−１）の相当する式は、以下のように同値な変形が成り立つ。
2004068364.tif 000087
また（３−ｂ−２）はｃ（Ｘ′）＝１では常に成り立つ。そこでこの具体例２では図２５にフローに従い新演算系の２つの単項演算を簡単なものから順に生成し、（６４）の最後の式を満足するかを判定しながら新演算系の決定を行った。
図２５の処理は以下のようなものである。
［ステップＳ４１］：簡単な新演算器候補を生成する。
［ステップＳ４２］：新演算器の母関数を構成する。
［ステップＳ４３］：箱詰めにより符号を生成する。
［ステップＳ４４］：（６４）式を満たすかどうかを判別し、満たせば処理を終了し、満たさなければステップＳ４５へ進む。
［ステップＳ４５］：すべての符号を生成したかを判別し、生成した場合にはステップＳ４６へ進み、そうでない場合にはステップＳ４３へ戻り、処理を繰り返す。
［ステップＳ４６］：次の新演算器候補を生成してステップＳ４２へ戻り、処理を繰り返す。
図２５の処理の結果は、
2004068364.tif 000088
つまり、箱▲Ψ▼（０，Ｘ′）には１つの最小項Ｘ′６を、箱▲Ψ▼（１，Ｘ′）には１つの最小項Ｘ′２を、▲Ψ▼（２，Ｘ′）には２つの最小項Ｘ′０とＸ′４を、箱▲Ψ▼（３，Ｘ′）には４つの最小項Ｘ′１，Ｘ′３，Ｘ′５，Ｘ′７を箱詰めした場合に相当する符号化に対して、（６４）の最下段を満足する新演算系の単項演算Ｇ１ＮとＧ２Ｎの成分関数ｇ１Ｎ０（Ｘ′）＝χ′０、
2004068364.tif 000089
遅延時間）はＧ１Ｎは（□、△）、Ｇ２Ｎは（２□、△）となり、元演算系のＧ１に比較し大幅に簡単になっている。尚、この場合（６３）式を満足する母関数▲Φ▼（Ｘ′，Ｙ）は全て符号器の母関数となる。例えば
2004068364.tif 000090
はこの具体例の符号器の母関数の例である。
ここで前記ΨおよびＧ１Ｎが（６４）式を満足することを確認すると、（６４）の左辺は
2004068364.tif 000091
であり、一方（６４）の右辺は（６１）と（６５）より
2004068364.tif 000092
となることから（６４）式は明らかに成り立つ。
ここで具体例２における演算器のデータの入出力の関係をトポロジーとして表してみる。図２６は元演算器Ｇ１とＧ２の入出力トポロジーを表したもので、Ｇ１につき説明すると、図２３よろＧ１は０＝（０，０）の入力は出力０＝（０，０）を出し、３＝（１，１）の入力は出力３＝（１，１）を出し、０＝（０，０）と３＝（１，１）は入出力の関係はトポロジーとして観た時に自己ループしている。また入力１＝（０，１）は０＝（０，０）を出力し、入力２＝（１，０）は１＝（０，１）を出力していることを図２６は表している。この入出力関係のトポロジーと真理値表は完全に対応が付く。Ｇ２についても同様である。また図２７は新演算器Ｇ１ＮとＧ２Ｎにつき同様に入出力トポロジーを表したものである。図２６と図２７とはトポロジーとして全く異なっているが、符号化により、Ｂ３上で０＝（０，０，０）と４＝（１，０，０）は同じ符号［２］に属し、また１＝（０，０，１）、３＝（０，１，１）、５＝（１，０，１）、７＝（１，１，１）は同じ符号［３］に属すことから、これらを図中の楕円で囲んだように束ね一つのグループと見なすとグループ間の入出力関係は図２８のようになる。そして図２６と図２８はトポロジーとして同型であることが分かる。このように冗長符号化の本質は前記のように同じ符号を束ねた時の新演算器のトポロジーが元演算系の演算器のトポロジーと同型になることであると言うことができる。そのことから、トポロジーを同型にするように新演算器を設計することが可能である。このトポロジーを利用した新演算系の決定のフローの具体例を示したものが図２９（トポロジー一致型新演算系決定フロー）で、これはｒ＝２に限定されず、多値論理式として設計する場合にも有効な方法である。
図２９の処理は以下のようになる。
［ステップＳ５１］：元演算器の入出力関係のトポロジーを作成する。
［ステップＳ５２］：簡単な新演算器後方を生成する。
［ステップＳ５３］：新演算器の入出力関係のトポロジーを作成する。
［ステップＳ５４］：箱詰めにより符号を生成する。
［ステップＳ５５］：符号に降り束ねた新演算器の入出力関係のトポロジーを生成する。
［ステップＳ５６］：元演算系と新演算系がトポロジーとして同型かどうかを判別する。同型であれば処理を終了する。同型でなければステップＳ５７へ進む。
［ステップＳ５７］：すべての符号を生成したかを判別する。すべての符号を生成したいないと判別したときにはステップＳ５４へ戻り処理を繰り返す。すべての符号を生成したと判別した場合にはステップＳ５８へ進む。
［ステップＳ５８］：次の新演算器候補を生成してステップＳ５３へ戻り処理を繰り返す。
以上のように具体例２では母関数に対して成り立つ（１−ｂ）、（２−ｂ）、（３−ｂ−１）、（３−ｂ−２）と同値な式または関係を用い元演算系の情報から非冗長符号化による新演算系を論理設計を行うことができた。全く同様に（１−ｂ）乃至（３−ｂ−２）またはこれらと同値な式に基づき２項演算やＴ項演算を含む元演算系から新演算系を論理設計することができる。
以上で実施例およびその具体例の説明を終了する。
なお、この発明は上述の実施例に限定されるものではなくその趣旨を逸脱しない範囲で種々変更が可能である。
【図１】
2004068364.tif 000137
【図２】
2004068364.tif 000138
【図３】
2004068364.tif 000139
【図４】
2004068364.tif 000140
【図５】
2004068364.tif 000141
【図６】
2004068364.tif 000142
【図７】
2004068364.tif 000143
【図８】
2004068364.tif 000144
【図９】
2004068364.tif 000145
【図１０】
2004068364.tif 000146
【図１１】
2004068364.tif 000147
【図１２】
2004068364.tif 000148
【図１３】
2004068364.tif 000149
【図１４】
2004068364.tif 000150
【図１５】
2004068364.tif 000151
【図１６】
2004068364.tif 000152
【図１７】
2004068364.tif 000153
【図１８】
2004068364.tif 000154
【図１９】
2004068364.tif 000155
【図２０】
2004068364.tif 000156
【図２１】
2004068364.tif 000157
【図２２】
2004068364.tif 000158
【図２３】
2004068364.tif 000159
【図２４】
2004068364.tif 000160
【図２５】
2004068364.tif 000161
【図２６】
2004068364.tif 000162
【図２７】
2004068364.tif 000163
【図２８】
2004068364.tif 000164
【図２９】
2004068364.tif 000165
【国際調査報告】
2004068364.tif 000166
2004068364.tif 000167
2004068364.tif 000168
2004068364.tif 000169