AC⁰ is the logarithmic-time hierarchy
Lax895169.ACZeroIsLogTime · concepts/Lax895169/ACZeroIsLogTime.lean · lax-895169
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Theorem
A decision problem is AC⁰ definable if and only if it is decidable in logarithmic time with constantly many alternations, and if and only if it is bit-definable. A sentence of the bit-level logic is compiled into a machine atom by atom, the order and the addition being decided by sweeps. Conversely, a sweep carries a constant number of state bits past each of the positions, so its whole history is a constant number of bit vectors over the positions, each of which is an element of the universe: the sentence guesses those elements and checks the transitions.
Concept map
Evidence
Lean source view on GitHub
| 1 | import Lax904597.Problems |
| 2 | import Lax904597.Classes |
| 3 | import Lax485149.Complement |
| 4 | import Lax485149.FirstOrderDefinability |
| 5 | import Lax485149.DeterministicTransitiveClosure |
| 6 | import Lax485149.ClassNL |
| 7 | import Lax485149.ClassL |
| 8 | import Lax535992.LeastFixedPoint |
| 9 | import Lax535992.InflationaryFixedPoint |
| 10 | import Lax535992.ClassPTIME |
| 11 | import Lax895169.BitPredicate |
| 12 | import Lax895169.ArithmeticLogic |
| 13 | import Lax895169.BitLogic |
| 14 | import Lax895169.LogTimeMachines |
| 15 | |
| 16 | /-! |
| 17 | --- |
| 18 | title: AC⁰ is the logarithmic-time hierarchy |
| 19 | type: theorem |
| 20 | --- |
| 21 | A decision problem is AC⁰ definable if and only if it is decidable in |
| 22 | logarithmic time with constantly many alternations, and if and only if it |
| 23 | is bit-definable. A sentence of the bit-level logic is compiled into a |
| 24 | machine atom by atom, the order and the addition being decided by sweeps. |
| 25 | Conversely, a sweep carries a constant number of state bits past each of |
| 26 | the positions, so its whole history is a constant number of bit |
| 27 | vectors over the positions, each of which is an element of the universe: |
| 28 | the sentence guesses those elements and checks the transitions. |
| 29 | -/ |
| 30 | |
| 31 | namespace Lax895169.ACZeroIsLogTime |
| 32 | |
| 33 | open FirstOrder FirstOrder.Language |
| 34 | open Lax904597.Problems Lax904597.Classes |
| 35 | open Lax485149.Complement Lax485149.FirstOrderDefinability Lax485149.DeterministicTransitiveClosure |
| 36 | open Lax485149.ClassNL Lax485149.ClassL |
| 37 | open Lax535992.LeastFixedPoint Lax535992.InflationaryFixedPoint Lax535992.ClassPTIME |
| 38 | open Lax895169.BitPredicate Lax895169.ArithmeticLogic Lax895169.BitLogic Lax895169.LogTimeMachines |
| 39 | |
| 40 | /-- Every problem decidable in logarithmic time is bit-definable. -/ |
| 41 | axiom ltDecidable_bitDefinable : ∀ {L : Language.{0, 0}} [L.IsRelational] {P : DecisionProblem L}, |
| 42 | LTDecidable P → BitDefinable P |
| 43 | |
| 44 | /-- Every bit-definable problem is decidable in logarithmic time. -/ |
| 45 | axiom bitDefinable_ltDecidable : ∀ {L : Language.{0, 0}} [L.IsRelational] {P : DecisionProblem L}, |
| 46 | BitDefinable P → LTDecidable P |
| 47 | |
| 48 | /-- AC⁰ definability is decidability in logarithmic time. -/ |
| 49 | axiom ac0Definable_iff_ltDecidable : |
| 50 | ∀ {L : Language.{0, 0}} [L.IsRelational] {P : DecisionProblem L}, |
| 51 | AC0Definable P ↔ LTDecidable P |
| 52 | |
| 53 | end Lax895169.ACZeroIsLogTime |
| 54 |
Builds on
Lax485149.ClassLLax485149.ClassNLLax485149.ComplementLax485149.DeterministicTransitiveClosureLax485149.FirstOrderDefinabilityLax535992.ClassPTIMELax535992.InflationaryFixedPointLax535992.LeastFixedPointLax895169.ArithmeticLogicLax895169.BitLogicLax895169.BitPredicateLax895169.LogTimeMachinesLax904597.ClassesLax904597.Problems
Used by
none
From Mathlib
none
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments