回答:
マルコフがあることが判明任意の機能入力のみを用いて計算することができる⌈ ログ(N + 1 )⌉否定。効率的で建設的なバージョンは、フィッシャーによって説明されました。GLLブログの結果の説明もご覧ください。
より正確に:
定理:と仮定回路によって計算されたCとGのゲートは、それはまた、回路によって計算されるC *と2 G + O (N 2 ログ2 N )ゲートと⌈ ログ(N + 1 )⌉否定。
主なアイデアは、Cの各ワイヤに、C ∗のパラレルワイヤw ′を追加し、常にwの補数を運ぶことです。ベースケースは、入力線のためのものである:フィッシャーは反転回路を構築する方法について説明I (X )= ¯ XとO (N 2 ログ2 N )ゲートのみ ⌈ ログ(N + 1 )⌉否定。回路のANDゲートの場合はC、我々は拡張できますと ' = B ' ∨ C 」、及び同様のためのORゲート。Cの NOTゲートの費用はかかりません。NOTゲートの下流で wと w の役割を入れ替えるだけです。このように、インバーターのサブ回路以外の回路全体は単調です。
AAマルコフ。関数系の反転の複雑さについて。J. ACM、5(4):331–334、1958。
MJフィッシャー。否定制限ネットワークの複雑さ-簡単な調査。では オートマトン理論と形式言語、71-82、1975
してみましょうビットすなわち、降順にソートすることが 私<jは意味のx I ≥ X jは。これは、Ajtai–Komlós–Szemerédiソーティングネットワークのようなモノトーンソーティングネットワークによって実現できます。
我々は、のために反転回路を定義するビットのI N(→ X)誘導:我々は、ベースケースの場合、N = 1とI 1 0(→ X):= ¬ X 0。ましょmは= 2 N - 1。我々は減らすIは、N(のための2 M + 1 1ビット)I N - 1つのためのゲート(Mビット)とおよび∨ゲートを使用した1つの否定ゲート。私たちは、計算するために否定を使用¬ X メートルを。以下のために私< mはせY I:= (X I ∧ ¬ X M)∨ X M + I。I n − 1を使用して→ yを反転します。これで、次のようにI nを定義できます。
x nの可能な値を考慮し、→ xが減少しているという事実を使用することにより、この反転簡単に検証できます。
Michael J. Fischer著、否定制限ネットワークの複雑さ-簡単な調査、1975年。