Circuit depth classes -- proof internals #
theorem
Complexity.mem_NC1_iff_internal
{f : BoolFunFamily}
:
f ∈ NC1 ↔ ∃ (F : CircuitFamily Basis.andOr2) (c : ℕ),
F.Computes f ∧ F.PolynomialSize ∧ F.DepthBoundedBy fun (n : ℕ) => c * Nat.log 2 n + c
theorem
Complexity.mem_AC0_iff_internal
{f : BoolFunFamily}
:
f ∈ AC0 ↔ ∃ (F : CircuitFamily Basis.unboundedAndOr) (c : ℕ),
F.Computes f ∧ F.PolynomialSize ∧ F.DepthBoundedBy fun (x : ℕ) => c
theorem
Complexity.mem_TC0_iff_internal
{f : BoolFunFamily}
:
f ∈ TC0 ↔ ∃ (F : CircuitFamily Basis.threshold) (c : ℕ), F.Computes f ∧ F.PolynomialSize ∧ F.DepthBoundedBy fun (x : ℕ) => c