AC⁰ ⊆ PTIME, by fixed points

Lax895169.ACZeroInPTIME · concepts/Lax895169/ACZeroInPTIME.lean · lax-895169

proven

Loading review…

Sign in with ORCID

Community review

Flags

Each flag is tied to a public ORCID identity and explains why this concept may be incorrect.

No flags have been submitted.

    Community review

    Flag this concept

    State precisely what appears incorrect. This explanation will be public under your ORCID name.

    No source line selected.

    Natural Language Statement

    Theorem

    Every AC⁰ definable problem is FO(≤\le, IFP) definable and FO(LFP) definable, hence in PTIME. The numeric predicates are themselves an induction: one simultaneous induction on two ternary relation variables defines addition by walking two arguments down the order in lockstep and multiplication by repeated addition, and the AC⁰ sentence is its output sentence. This gives the inclusion directly, without going through logarithmic space.

    Concept map
    22 concepts
    100%
    Proven claimDefinitionThis conceptRelated conceptA → B: B builds on A
    Evidence

    This concept declares 3 statements. Each proof establishes one of them relative to its assumptions.

    1 ac0Definable_ifpDefinable proven

    2 ac0Definable_lfpDefinable proven

    3 ac0Definable_mem_PTIME proven

    Lean source view on GitHub

    1import Lax904597.Problems
    2import Lax904597.Classes
    3import Lax485149.Complement
    4import Lax485149.FirstOrderDefinability
    5import Lax485149.DeterministicTransitiveClosure
    6import Lax485149.ClassNL
    7import Lax485149.ClassL
    8import Lax535992.LeastFixedPoint
    9import Lax535992.InflationaryFixedPoint
    10import Lax535992.ClassPTIME
    11import Lax895169.BitPredicate
    12import Lax895169.ArithmeticLogic
    13import Lax895169.BitLogic
    14import Lax895169.LogTimeMachines
    15
    16/-!
    17---
    18title: AC⁰ ⊆ PTIME, by fixed points
    19type: theorem
    20---
    21Every AC⁰ definable problem is FO(≤\le, IFP) definable and FO(LFP)
    22definable, hence in PTIME. The numeric predicates are themselves an
    23induction: one simultaneous induction on two ternary relation variables
    24defines addition by walking two arguments down the order in lockstep and
    25multiplication by repeated addition, and the AC⁰ sentence is its output
    26sentence. This gives the inclusion directly, without going through
    27logarithmic space.
    28-/
    29
    30namespace Lax895169.ACZeroInPTIME
    31
    32open FirstOrder FirstOrder.Language
    33open Lax904597.Problems Lax904597.Classes
    34open Lax485149.Complement Lax485149.FirstOrderDefinability Lax485149.DeterministicTransitiveClosure
    35open Lax485149.ClassNL Lax485149.ClassL
    36open Lax535992.LeastFixedPoint Lax535992.InflationaryFixedPoint Lax535992.ClassPTIME
    37open Lax895169.BitPredicate Lax895169.ArithmeticLogic Lax895169.BitLogic Lax895169.LogTimeMachines
    38
    39/-- Every AC⁰ definable problem is FO(≤, IFP) definable. -/
    40axiom ac0Definable_ifpDefinable : ∀ {L : Language.{0, 0}} [L.IsRelational] {P : DecisionProblem L},
    41 AC0Definable P → IFPDefinable P
    42
    43/-- Every AC⁰ definable problem is FO(LFP) definable. -/
    44axiom ac0Definable_lfpDefinable : ∀ {L : Language.{0, 0}} [L.IsRelational] {P : DecisionProblem L},
    45 AC0Definable P → LFPDefinable P
    46
    47/-- Every AC⁰ definable problem is in PTIME. -/
    48axiom ac0Definable_mem_PTIME : ∀ {L : Language.{0, 0}} [L.IsRelational] {P : DecisionProblem L},
    49 AC0Definable P → PTIME.Mem P
    50
    51end Lax895169.ACZeroInPTIME
    52
    Show ProofShow ProofShow Proof

    Discussion

    Ask a question or add context. Endorsements and structured flags are kept in the review panel above.

    Loading discussion…