私の知る限り、3種類の階層回路が研究されています。これらすべての定義では、アークは2つの隣接するレイヤー間でのみ許可されます。
回路が呼び出される同期(ハーパー1977すべてのゲートが層に配置されている場合)、入力が層0でなければならない(同等の定義:いずれかのゲートのためのgへの入力からすべてのパスg同じ長さを有します。)
回路はローカルに同期しています(Belaga 1984各入力が1回だけ任意のレイヤーで発生する場合、)。
ゲートと入力がレイヤーに配置されている場合、回路はレイヤー化されます(Gál、Jang 2010)。入力は異なるレイヤーで複数回発生する可能性があります。(同等の定義:任意のゲートgおよび出力ゲートo、gからoへのすべての有向パスの長さは同じです。)
3つのクラスが最も弱いものから最も強いものの順にリストされていることは簡単にわかります(無制限の回路のクラスはさらに強力です)。
サイズs無制限の回路を計算する階層化された回路のサイズに関して、次のことを知っています。
サイズs任意の回路は、サイズs2同期/ローカル同期/階層化回路によって計算できます(Wegener 1987、Section 12.1)。
サイズω(slogs)同期/局所同期/層状回路を必要とする明示的な関数を見つけるのは難しいはずです。実際、サイズsおよび深さdのすべての回路は、サイズのO(sd)同期回路によって計算できます(Wegener 1987、Section 12.1)。したがって、我々は、明示的な機能があってもfサイズの同期回路が必要ω(nlogn)、次いで(関係なく無制限回路のクラスにおけるその複雑さ)、f深さO(logn)およびサイズO(n)回路では計算できません。これは、回路の複雑性における長年の未解決の問題に答えます(Valiant 1977)。
明示的な関数が存在します
3.1。同期回路ではΩ(nlogn)下限、局所同期回路ではO (n )の上限(Turán1989O(n))。
3.2. with Ω(nlogn) lower bound for locally synchronous circuits but O(n) upper bound for layered circuits (Turán 1989).
It is important to note that these two separation results by Turán are proven for functions with one output. It is often much easier to find a function with n outputs which separates two such classes.
As an example, consider the function f:{0,1}n→{0,1}n where the ith output bit is an XOR of all inputs except for the ith one. This function can easily be computed by a layered circuit of size O(n): First compute an XOR of all inputs in logn layers of total size n, then compute all outputs in one layer of size n. On the other hand, f requires synchronous circuits of size Ω(nlogn). Indeed, in order to compute a parity of length n−1, the circuit depth must be at least Ω(logn). On the other hand, each layer must transmit n bits of information, thus its size must be at least n.