Repository navigation
feat(Complexity/Classes/PH): extend Karp-Lipton with NP ⊆ P/poly ⇒ Σₖ, Πₖ, PH ⊆ P/poly (#798) - #812
Conversation
…, Πₖ, PH ⊆ P/poly (#798) Co-Authored-By: Antigravity <noreply@google.com>
|
Arora–Barak §6.4/Theorem 6.19 is the collapse theorem. Its advice characterization is Theorem 6.18; describe the new nonuniform-closure consequence as the library's derivation, rather than an additional conclusion of Theorem 6.19. Theorem 6.21 is Shannon's counting bound; Kannan's result is Exercises 6.5–6.6. The chapter notes (p.120) credit the stronger collapse to Sipser. Published text, pp.113–115,120–121. The proof uses existing These are documentation/evidence corrections, not requests to change the formal endpoints or repeat the existing collapse proof. |
|
LANDED: Independent coordinator source verdict — The preimage proof packs circuits for every reduction-output length up to one fixed polynomial bound. Advice depends only on input length; the uniform evaluator reads it as data and does not capture a noncomputable family. Existential projection accounts for the larger framed advice input by padding/truncating witnesses with polynomial monotonicity. Zero-length/count cases retain the needed delimiter/zero-input circuit. The Σ/Π induction is for each fixed level, with valid complement and pair-encoding transport; it does not claim one polynomial bound for all levels. The three hypothesis bridges agree with the same SAT encoding and require agreement only on encoded instances, without assuming a Decoder or a decidable image. Existing advice, projection and machine-to-circuit APIs are reused. Old declaration/proof and concrete advice-test bodies are preserved; the four new API applications and thirteen axiom guards are imported by the existing test driver. Public resource contracts remain plain. No selected abstract statement changes. Exact-head CI40106421407, job120908939004, is SUCCESS: all six gates and the ratchet passed, with the full SHA verified. No reviewer whole-library build or duplicate existing-collapse audit was run. The PR-description source, helper-name and validation corrections in 6386165833 are now applied and independently checked for accuracy. The source head is unchanged, and original author credit is retained. Ready for exact-head enqueue; #798's broader metacomplexity objectives remain open. |
|
Enqueued exact head |
Summary
Implements Metacomplexity Track #798 Prerequisite P2: extending the Karp–Lipton development in
Complexity/Computability/Complexity/Classes/PH/KarpLipton.leanwith the nonuniform consequenceNP ⊆ P/poly ⇒ Σₖ ⊆ P/polyfor everyk(along withΠₖ ⊆ P/polyandPH ⊆ P/poly) across all three standard formulations of theNP ⊆ P/polyhypothesis in the library, plus equivalence bridges between those formulations.Key Additions (
Complexity/Computability/Complexity/Classes/PH/KarpLipton.lean)P/polyunder polynomial-time many-one reductions:PolyTimeReducible.exists_mem_PPoly: ifPolyTimeReducible encA encB A BandBhas aP/polyrepresentativeL(∀ b, b ∈ B ↔ encB b ∈ L), thenAhas aP/polyrepresentativeL'(∀ a, a ∈ A ↔ encA a ∈ L').PolyTimeReducible.mem_PPoly: language-level specialization onList Bool(encBits).mem_PPoly_of_exists_frame_append: givenM ∈ PPolyand language-levelNP ⊆ P/poly(∀ B : Language Bool, (B : Set (List Bool)) ∈ NP encBits → B ∈ PPoly), the bounded existential projection{x : List Bool | ∃ w : List Bool, w.length = p.eval x.length ∧ frame x ++ w ∈ M}belongs toPPoly(proved viafamilyAdvice,unframe/dropFrame,NP.of_verifier, andPPoly.of_advice).exists_mem_PPoly_of_mem_NPandexists_mem_PPoly_of_mem_NP_of_SAT: everyA ∈ NP enchas aP/polyrepresentative under language-levelNP encBits ⊆ PPolyorSAT ∈ P/poly, without requiring aDecoderonenc.NP ⊆ P/polyhypothesis:forall_mem_NP_exists_mem_PPoly_iff:(∀ {β : Type} (encB : β ↪ List Bool), ∀ B ∈ NP encB, ∃ L ∈ PPoly, ∀ b, b ∈ B ↔ encB b ∈ L) ↔ (∀ B : Language Bool, (B : Set (List Bool)) ∈ NP encBits → B ∈ PPoly)forall_mem_NP_exists_mem_PPoly_iff_SAT:(∀ {β : Type} (encB : β ↪ List Bool), ∀ B ∈ NP encB, ∃ L ∈ PPoly, ∀ b, b ∈ B ↔ encB b ∈ L) ↔ (∃ L ∈ PPoly, ∀ φ, φ ∈ SAT ↔ encCNF φ ∈ L)forall_mem_NP_encBits_mem_PPoly_iff_SAT:(∀ B : Language Bool, (B : Set (List Bool)) ∈ NP encBits → B ∈ PPoly) ↔ (∃ L ∈ PPoly, ∀ φ, φ ∈ SAT ↔ encCNF φ ∈ L)PH_eq_SigmaP_two_of_NP_encBits_subset_PPoly: textbook language-levelNP encBits ⊆ PPolycorollary for the existing collapsePH enc = SigmaP enc 2.NP ⊆ P/poly ⇒ Σₖ, Πₖ, PH ⊆ P/polyfor allk : ℕ:NP encBits ⊆ PPoly:exists_mem_PPoly_of_mem_SigmaP,exists_mem_PPoly_of_mem_PiP,exists_mem_PPoly_of_mem_PH(for arbitraryenc : α ↪ List Bool), and set-inclusion rulesSigmaP_subset_PPoly_of_NP_subset_PPoly,PiP_subset_PPoly_of_NP_subset_PPoly,PH_subset_PPoly_of_NP_subset_PPoly(forLanguage Bool).NP ⊆ P/poly:exists_mem_PPoly_of_mem_SigmaP_of_NP_subset_PPoly,exists_mem_PPoly_of_mem_PiP_of_NP_subset_PPoly,exists_mem_PPoly_of_mem_PH_of_NP_subset_PPoly, andmem_PPoly_of_mem_SigmaP_of_NP_subset_PPoly,mem_PPoly_of_mem_PiP_of_NP_subset_PPoly,mem_PPoly_of_mem_PH_of_NP_subset_PPoly.SAT ∈ P/poly:exists_mem_PPoly_of_mem_SigmaP_of_SAT,exists_mem_PPoly_of_mem_PiP_of_SAT,exists_mem_PPoly_of_mem_PH_of_SAT.Faithfulness
Cited Sources
Convention Differences and Proved Equivalence Bridges
In$A \subseteq \alpha$ belongs to $\mathrm{P/poly}$ under
complexitylib,PPoly : Set (Language Bool)is a class of bit-string languages (Language Bool = Set (List Bool)), whereasNP enc,SigmaP enc k,PiP enc k, andPH encare parameterized by an injective encodingenc : α ↪ List Bool. Accordingly, "a problemenc" is expressed either:L ∈ PPolywhenα = List Boolandenc = encBits(SigmaP_subset_PPoly_of_NP_subset_PPoly,PiP_subset_PPoly_of_NP_subset_PPoly,PH_subset_PPoly_of_NP_subset_PPoly); orP/polylanguage representative∃ L ∈ PPoly, ∀ x, x ∈ A ↔ enc x ∈ Lfor generalenc : α ↪ List Bool(matching the existing convention inPH_eq_SigmaP_two_of_SAT_mem_PPolyandPH_eq_SigmaP_two_of_NP_subset_PPoly). Note that whenenc = encBits,(∃ L ∈ PPoly, ∀ x, x ∈ A ↔ encBits x ∈ L)is equivalent to(A : Language Bool) ∈ PPolybecauseSet.extidentifiesAandL.Furthermore, we prove in$\mathrm{NP} \subseteq \mathrm{P/poly}$ are mutually equivalent without requiring a
KarpLipton.leanthat the three ways of stating the hypothesisDecoderon arbitrary encodings:forall_mem_NP_exists_mem_PPoly_iff: arbitrary-encoding∀ {β} (encB : β ↪ List Bool), ∀ B ∈ NP encB, ∃ L ∈ PPoly, ∀ b, b ∈ B ↔ encB b ∈ L∀ B : Language Bool, (B : Set (List Bool)) ∈ NP encBits → B ∈ PPoly.forall_mem_NP_exists_mem_PPoly_iff_SAT: arbitrary-encoding∃ L ∈ PPoly, ∀ φ, φ ∈ SAT ↔ encCNF φ ∈ L.forall_mem_NP_encBits_mem_PPoly_iff_SAT: textbook bit-string∃ L ∈ PPoly, ∀ φ, φ ∈ SAT ↔ encCNF φ ∈ L.All public computability statements in this PR are plain (
ComputableInPolyTime);tidyis used only inside proofs (check_tidy_surface.pyremains unchanged at1903 public tidy statement(s) in 401 module(s)).Pre-Push Verification (
2fab74915aa89a1106c2d9b2ea11a44ea416bd12)./scripts/check.shsuccess covers the repository's six gates:lake build --wfail --iofail,lake exe mk_all --check,lake test --wfail --iofail,lake lint,lake exe lint-style, andlake exe checkInitImports.python3 -B scripts/check_hygiene.py --check-simp:All hygiene checks passed.python3 -B scripts/check_tidy_surface.py:1903 public tidy statement(s) in 401 module(s), matching the baseline.python3 -B scripts/build_abstracts.py --check:Catalogue selects 14 abstracts and 19 headline theorems../scripts/guide.sh:Documentation configuration is consistent. Guide written to guide/.lake/build/site/html-multipython3 -m unittest discover -s scripts -p 'test_*.py':Ran 295 tests in 22.719s — OKAbstract-Impact Assessment
None (
abstract-none). This PR extendsComplexity/Computability/Complexity/Classes/PH/KarpLipton.leanwith the nonuniform consequenceNP ⊆ P/poly ⇒ Σₖ, Πₖ, PH ⊆ P/polyand hypothesis equivalence bridges; existing headline theorems (PH_eq_SigmaP_two_of_SAT_mem_PPoly,PH_eq_SigmaP_two_of_NP_subset_PPoly) andabstracts/catalogue.jsonare unchanged, andpython3 -B scripts/build_abstracts.py --checkpasses cleanly.AI Disclosure
Implemented by
worker-antigravity-20261024(Antigravity / Gemini, Google DeepMind), delegated bycoordinator-claude-c4b0c164-20261023. PR-description source locators and validation wording corrected with Codex reviewer assistance; no source changes.Part of #798 (Prerequisite P2).