Documentation

Complexitylib.Algebraic.Basis.AC0

The unbounded-fan-in AC0 basis #

This module models the source convention used by Hastad's small-depth lower bound. AND and OR gates have arbitrary finite fan-in. NOT is explicit in the generic circuit syntax, but the source-facing cost charges only AND/OR gates and the source-facing logical depth gives NOT zero delay. The checked class presentation requires every NOT to read an original input. A stronger Circuit.NormalForm predicate additionally records alternation of adjacent AND/OR gates.

Operations in the arbitrary-fan-in AND/OR/NOT basis. Zero-ary AND and OR serve as the Boolean constants true and false.

Instances For
    @[reducible, inline]

    Signature of the arbitrary-fan-in Boolean basis.

    Equations
    Instances For

      Standard Boolean semantics. Empty conjunction is true and empty disjunction is false.

      Equations
      Instances For
        @[simp]
        theorem Algebraic.AC0.interpretation_not (input : Fin 1 → Bool) :
        interpretation Op.not input = !input 0
        @[simp]
        theorem Algebraic.AC0.interpretation_and_eq_true {n : ℕ} (input : Fin n → Bool) :
        interpretation (Op.and n) input = true ↔ ∀ (k : Fin n), input k = true
        @[simp]
        theorem Algebraic.AC0.interpretation_or_eq_true {n : ℕ} (input : Fin n → Bool) :
        interpretation (Op.or n) input = true ↔ ∃ (k : Fin n), input k = true

        Hastad's size convention: count AND and OR gates, not input negations.

        Equations
        Instances For

          The two connectives whose adjacent levels are merged in normal form.

          Instances For
            @[instance_reducible]
            Equations

            A NOT line is a source literal precisely when it reads an original input.

            Equations
            Instances For
              def Algebraic.AC0.Line.AlternatesAfter {n g : ℕ} (program : Program signature n g) (line : Line signature n g) :

              Every direct AND/OR predecessor has the opposite connective. NOT lines are treated as input literals and impose no connective condition.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For

                No AND gate directly reads an AND gate and no OR gate directly reads an OR gate.

                Equations
                Instances For

                  Arrival-time semantics for source gate levels. Input negations are literal annotations and therefore have zero delay; AND and OR add one level.

                  Equations
                  Instances For

                    Every NOT gate in the circuit is an input literal.

                    Equations
                    Instances For

                      Logical depth of each designated output in Hastad's convention.

                      Equations
                      Instances For

                        Maximum number of AND/OR levels on a designated input-output path.

                        Equations
                        Instances For

                          A one-output circuit's logical depth is the depth of its unique output.

                          Source-facing normal form: negations are input literals and consecutive AND/OR gates alternate.

                          Equations
                          Instances For
                            theorem Algebraic.AC0.Circuit.NormalForm.negationsAtInputs {n m : ℕ} {circuit : Circuit signature n m} (normal : NormalForm circuit) :

                            Strong normal form in particular places every negation at an input.

                            Logical depth as a resource function of a nonuniform family.

                            Equations
                            Instances For

                              Every member of the family is in the source-facing normal form.

                              Equations
                              Instances For

                                Every family member has only input-level negations.

                                Equations
                                Instances For

                                  Strong family normal form implies the input-negation invariant used by the switching-lemma development.

                                  An unrestricted small-depth family has polynomial AND/OR cost and constant logical depth. Internal NOT gates are allowed in this raw presentation.

                                  Equations
                                  Instances For

                                    A checked AC0 family has polynomial AND/OR cost, constant logical depth, and only input-level negations. Alternation is available separately through Family.NormalForm but is not needed for the class definition.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For

                                      Forgetting the input-negation invariant yields a raw small-depth family.

                                      Nonuniform AC0 computability of a one-output Boolean target family.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For

                                        Raw nonuniform AC0 computability, allowing NOT gates at arbitrary internal wires. Dual-rail normalization proves this presentation equivalent to Computable.

                                        Equations
                                        • One or more equations did not get rendered due to their size.
                                        Instances For