Documentation

Complexity.Computability.Circuit.Boolean.Iteration.AffineController

Autonomous controllers and affine-payload iteration bounds #

When a state splits into an autonomous controller and a payload (controlledMap), the controller evolves independently of the payload and each step applies a controller-selected transformation to the payload. Iterating for T steps therefore applies g^[T] to the controller and the composite payload map controlledPayload g a T u to the payload (controlledMap_iterate, controlledBits_iterate). Whenever the payload maps belong to a composition-closed family containing the identity, every iterate's payload map remains in that family (controlledPayload_mem).

On q controller bits and p payload bits (controlledBits), if every payload transformation in a composition-closed family has a Boolean circuit of size at most K, then every fixed iterate (controlledBits g a)^[T] has a circuit of size at most 2 + 2 ^ q * (K + 6 * q + 4 * p + 1) (controlled_family_power), and an m-bit input time costs at most m * (2 + 2 ^ q * (K + 6 * q + 4 * p + 1) + 4 * (q + p)) (controlled_family_variable_time). No circuit for the controller transition g is assumed or needed: the circuit enumerates all 2 ^ q controller states, hardwires g^[T] u, runs the circuit for controlledPayload g a T u, and selects the active record.

In particular, affine maps BitString p →ᵃ[Bool] BitString p over Bool are closed under composition and are computed by circuits of size at most p * (5 * (p + 1) + 1) via their affine-hash representation (affineHash_circuit, affineHash_affineMapSeed, affine_payload_circuit). Every fixed iterate of an autonomous q-bit controller with a p-bit affine payload therefore has a circuit of size at most affineControllerBudget q p ≤ 32 * 2 ^ q * (q + p ^ 2 + 1) (affine_controller_power, affineControllerBudget_le), which is polynomial in the total width whenever 2 ^ q is (affine_controller_polynomial).

Main definitions #

Main results #

References #

Autonomous controllers and composite payloads #

def Cslib.Circuits.Boolean.Iteration.controlledMap {α : Type u} {β : Type v} (g : α → α) (a : α → β → β) (x : α × β) :
α × β

An autonomous controller chooses the transformation of a payload.

Instances For
    def Cslib.Circuits.Boolean.Iteration.controlledPayload {α : Type u} {β : Type v} (g : α → α) (a : α → β → β) :
    ℕ → α → β → β

    The composite payload map selected by an initial controller and fixed time.

    Instances For
      theorem Cslib.Circuits.Boolean.Iteration.controlledMap_iterate {α : Type u} {β : Type v} (g : α → α) (a : α → β → β) (T : ℕ) (u : α) (v : β) :

      Iterating a controlled map advances the autonomous controller and applies the composite payload map.

      theorem Cslib.Circuits.Boolean.Iteration.controlledPayload_mem {α : Type u} {β : Type v} (g : α → α) (a : α → β → β) (family : Set (β → β)) (hid : id ∈ family) (hcomp : ∀ f ∈ family, ∀ h ∈ family, f ∘ h ∈ family) (ha : ∀ (u : α), a u ∈ family) (T : ℕ) (u : α) :
      controlledPayload g a T u ∈ family

      Composition closure suffices semantically, without any finite-state hypothesis.

      Flat Boolean encoding of a q-bit controller followed by a p-bit payload.

      Instances For
        @[simp]

        Iterating controlledBits is controlledBits with the iterated controller and composite payload map.

        Selecting and powering bounded-cost payload families #

        theorem Cslib.Circuits.Boolean.Iteration.controlled_circuit {q p : ℕ} (g : BitString q → BitString q) (a : BitString q → BitString p → BitString p) (K : ℕ) (ha : ∀ (u : BitString q), ∃ (c : Circuit signature p p), c.Computes interpretation (a u) ∧ c.size ≤ K) :
        ∃ (c : Circuit signature (q + p) (q + p)), c.Computes interpretation (controlledBits g a) ∧ c.size ≤ 2 + 2 ^ q * (K + 6 * q + 4 * p + 1)

        Selecting among small payload circuits has overhead linear in controller and output width per controller value. No circuit for g is assumed or needed.

        theorem Cslib.Circuits.Boolean.Iteration.controlled_family_power {q p : ℕ} (g : BitString q → BitString q) (a : BitString q → BitString p → BitString p) (family : Set (BitString p → BitString p)) (hid : id ∈ family) (hcomp : ∀ f ∈ family, ∀ h ∈ family, f ∘ h ∈ family) (ha : ∀ (u : BitString q), a u ∈ family) (K : ℕ) (hK : ∀ f ∈ family, ∃ (c : Circuit signature p p), c.Computes interpretation f ∧ c.size ≤ K) (T : ℕ) :
        ∃ (c : Circuit signature (q + p) (q + p)), c.Computes interpretation (controlledBits g a)^[T] ∧ c.size ≤ 2 + 2 ^ q * (K + 6 * q + 4 * p + 1)

        A composition-closed payload family with a uniform gate bound can be powered at a cost exponential only in the controller width.

        theorem Cslib.Circuits.Boolean.Iteration.controlled_family_variable_time {q p : ℕ} (g : BitString q → BitString q) (a : BitString q → BitString p → BitString p) (family : Set (BitString p → BitString p)) (hid : id ∈ family) (hcomp : ∀ f ∈ family, ∀ h ∈ family, f ∘ h ∈ family) (ha : ∀ (u : BitString q), a u ∈ family) (K : ℕ) (hK : ∀ f ∈ family, ∃ (c : Circuit signature p p), c.Computes interpretation f ∧ c.size ≤ K) (m : ℕ) :
        ∃ (c : Circuit signature (q + p + m) (q + p)), c.Computes interpretation (inputTimeIterate (controlledBits g a) m) ∧ c.size ≤ m * (2 + 2 ^ q * (K + 6 * q + 4 * p + 1) + 4 * (q + p))

        The same closed family supports an input exponent by conditional binary powers.

        Affine payloads and affine-controller bounds #

        Every affine hash x ↦ A x + b from n bits to k bits has a De Morgan circuit of size at most k * (5 * (n + 1) + 1).

        The matrix and offset seed of a Boolean affine map.

        Instances For

          Evaluating the affine hash at affineMapSeed a recovers the affine map a.

          Every affine Boolean payload has a De Morgan circuit of size at most p * (5 * (p + 1) + 1).

          Exact gate budget from affine payload evaluation and autonomous controller selection.

          Instances For

            Every fixed power has size exponential only in the autonomous controller width.

            The exact budget is O(2 ^ q * (q + p ^ 2 + 1)), including zero-width cases.

            theorem Cslib.Circuits.Boolean.Iteration.affine_controller_polynomial {q p : ℕ} (g : BitString q → BitString q) (a : BitString q → BitString p →ᵃ[Bool] BitString p) (K d : ℕ) (hcontroller : 2 ^ q ≤ K * (q + p + 1) ^ d) (T : ℕ) :
            ∃ (c : Circuit signature (q + p) (q + p)), c.Computes interpretation (controlledBits g fun (u : BitString q) => ⇑(a u))^[T] ∧ c.size ≤ 32 * K * (q + p + 1) ^ (d + 2)

            Polynomially many controller states give a polynomial gate bound in the total width, uniformly over all fixed exponents.

            An input time uses the same fixed-power bound at each conditional binary stage.