Repository navigation
feat(SAT): prove orthogonal planar 3SAT-3 NP-hardness - #1122
Conversation
Initial shared foundation for #1082 and #1079. Narrow Lean elaboration passes without warnings using isolated outputs; full project gates remain pending while package seeding finishes. New original geometry API reuses Mathlib segments and List.consecutivePairs. Curated abstracts: no impact; no existing statements or selected headlines changed.
Initial shared foundation for #1082 and #1079. Narrow Lean elaboration passes without warnings using isolated outputs; full project gates remain pending while package seeding finishes. New original geometry API reuses Mathlib segments and List.consecutivePairs. Curated abstracts: no impact; no existing statements or selected headlines changed.
Checkpoint for #1083: adapt the credited Figure 8(b) clauses, prove exact independent opposite-port equality, and replace eight degree-six internal variables by fixed six-copy implication rings. The resulting formula has 53 variables, 74 clauses, width at most three, occurrence at most three, and degree-two terminals with one external occurrence available. Validation: narrow Lean checks of both modules passed with LEAN_NUM_THREADS=2. Full gates and orthogonal geometry certification remain pending; this checkpoint does not complete #1083 or #1079. Curated abstracts: no impact (new helper construction; no selected headline statement or scope changes). AI assistance: implementation by Codex GPT-6.1.
Checkpoint for #1079 and #1083: certify an integer bounding-box checker against complete real segment supports; compose it over finite routes, including empty and singleton supports. Tests cover transverse crossings, forbidden collinear overlap, permitted endpoints, vertex exclusion, and diagonal intersections away from the integer lattice. Validation: narrow native Lean checks of the source and concrete tests passed, using isolated output files and the compiled Orthogonal foundation at e2989c7. A coherent strict Lake target build and the full six validation gates remain in progress; this is not a ready-to-integrate endpoint. Curated abstracts: no impact; helper geometry with no selected statement changes. AI assistance: Codex GPT-6.1 implementation and self-review.
Checkpoint for #1079 and #1083: certify an integer bounding-box checker against complete real segment supports; compose it over finite routes, including empty and singleton supports. Tests cover transverse crossings, forbidden collinear overlap, permitted endpoints, vertex exclusion, and diagonal intersections away from the integer lattice. Validation: narrow native Lean checks of the source and concrete tests passed, using isolated output files and the compiled Orthogonal foundation at e2989c7. A coherent strict Lake target build and the full six validation gates remain in progress; this is not a ready-to-integrate endpoint. Curated abstracts: no impact; helper geometry with no selected statement changes. AI assistance: Codex GPT-6.1 implementation and self-review.
Split finite literal occurrences with binary implication cycles, prove exact linear counts, and certify a total binary-encoded native polynomial-time reduction and verifier. Preserve the lean-trominoes construction credit. Planarity remains outside this milestone.
…ar sides Part of #1082. Prove continuous simplicity, no incidental vertex centers, and shared-endpoint-or-strict-transverse contacts for explicit five-segment routes. Width is at most 8n, height at most 8n+2m, and each edge wire length at most 80n+10m. Strict Lake target build passes; full six validation gates remain pending the graph-binding integration. Curated abstracts: no impact; no selected abstract or headline changes. Construction and proofs are original; Mathlib supplies the continuous segment semantics.
…ar sides Part of #1082. Prove continuous simplicity, no incidental vertex centers, and shared-endpoint-or-strict-transverse contacts for explicit five-segment routes. Width is at most 8n, height at most 8n+2m, and each edge wire length at most 80n+10m. Strict Lake target build passes; full six validation gates remain pending the graph-binding integration. Curated abstracts: no impact; no selected abstract or headline changes. Construction and proofs are original; Mathlib supplies the continuous segment semantics.
Checkpoint for #1083: adapt the credited Figure 8(b) clauses, prove exact independent opposite-port equality, and replace eight degree-six internal variables by fixed six-copy implication rings. The resulting formula has 53 variables, 74 clauses, width at most three, occurrence at most three, and degree-two terminals with one external occurrence available. Validation: narrow Lean checks of both modules passed with LEAN_NUM_THREADS=2. Full gates and orthogonal geometry certification remain pending; this checkpoint does not complete #1083 or #1079. Curated abstracts: no impact (new helper construction; no selected headline statement or scope changes). AI assistance: implementation by Codex GPT-6.1.
Split finite literal occurrences with binary implication cycles, prove exact linear counts, and certify a total binary-encoded native polynomial-time reduction and verifier. Preserve the lean-trominoes construction credit. Planarity remains outside this milestone.
Part of #1082. Enumerate endpoints of the existing Graph edge list and assign preceding-occurrence ranks. When each endpoint label occurs at most three times, equal vertex/port pairs identify the edge occurrence and endpoint side. Provide canonical_index_port_ne for geometric layout specialization. Strict Lake target builds pass for both new modules. Full validation remains pending the complete graph drawing binding. Curated abstracts: no impact.
Initial shared foundation for #1082 and #1079. Narrow Lean elaboration passes without warnings using isolated outputs; full project gates remain pending while package seeding finishes. New original geometry API reuses Mathlib segments and List.consecutivePairs. Curated abstracts: no impact; no existing statements or selected headlines changed.
Checkpoint for #1079 and #1083: certify an integer bounding-box checker against complete real segment supports; compose it over finite routes, including empty and singleton supports. Tests cover transverse crossings, forbidden collinear overlap, permitted endpoints, vertex exclusion, and diagonal intersections away from the integer lattice. Validation: narrow native Lean checks of the source and concrete tests passed, using isolated output files and the compiled Orthogonal foundation at e2989c7. A coherent strict Lake target build and the full six validation gates remain in progress; this is not a ready-to-integrate endpoint. Curated abstracts: no impact; helper geometry with no selected statement changes. AI assistance: Codex GPT-6.1 implementation and self-review.
…ar sides Part of #1082. Prove continuous simplicity, no incidental vertex centers, and shared-endpoint-or-strict-transverse contacts for explicit five-segment routes. Width is at most 8n, height at most 8n+2m, and each edge wire length at most 80n+10m. Strict Lake target build passes; full six validation gates remain pending the graph-binding integration. Curated abstracts: no impact; no selected abstract or headline changes. Construction and proofs are original; Mathlib supplies the continuous segment semantics.
Part of #1082. Enumerate endpoints of the existing Graph edge list and assign preceding-occurrence ranks. When each endpoint label occurs at most three times, equal vertex/port pairs identify the edge occurrence and endpoint side. Provide canonical_index_port_ne for geometric layout specialization. Strict Lake target builds pass for both new modules. Full validation remains pending the complete graph drawing binding. Curated abstracts: no impact.
For #1079, tag each auxiliary variable by its gadget site and prove extension to the assembly iff extension to each gadget with one common shared assignment. Prove exact clause/literal counts. Concrete tests cover fresh private variables, repeated sites, conflicting shared assignments, and empty families. Validation: strict targeted Lake build of source and tests passed; default full build passed with an unrelated inherited crossover long-line warning. Full six gates will be rerun on the final stacked revision. Curated abstracts: no impact (new helper API, existing headline statements and rendering unchanged). AI assistance: Codex GPT-6.1 implementation/self-review.
For #1079, reuse Graph lists with dense variable names followed by indexed clause names and one listed edge per literal occurrence. Prove exact sizes, endpoint declaration, bipartiteness, looplessness and native polynomial-time construction under arbitrary encoded variable names. Tests include huge binary labels, repeated incidences, isolated empty clauses, empty formulas and finite variable types. Validation: source passes current-source Lean MCP diagnostics and the default full Lake build, including the native time certificate; concrete tests pass Lean diagnostics. Full six gates on the final stacked revision remain pending. Curated abstracts: no impact. AI assistance: Codex GPT-6.1 implementation/self-review.
Part of #1082. Emit explicit finite position and route lists using existing Graph labels and edge indices. Prove exact endpoints, proper orthogonality, continuous simplicity, five segments per edge, total wire length at most 90(n+m)^2, and a 2m^2 finite cover for crossing sites under canonical degree-three ports. Strict Lake target build passes. Full validation pending route-unit-subdivision integration. Curated abstracts: no impact.
Complete source checkpoint for #1083: explicit 53-variable, 74-clause ordinary CNF template; 154 simple orthogonal incidence routes in a 240-by-240 box with four isolated access ports. Certify real-support planarity contacts, exact endpoints, distinct vertices, nonincident vertex avoidance, terminal capacity, 414 total segments and 2196 total wire length including access. Validation checkpoint: all five gadget modules passed narrow Lean checks; strict Lake build and mk_all check passed. Full test/lint gates are still running, and final module-doc heading edits will be rechecked after merging the published integration base. No completion or hardness claim for #1079. Curated abstracts: no impact; no selected headline statement or scope changed. Source credit retained from the pinned lean-trominoes gadget. AI assistance: Codex GPT-6.1.
Merge ca6f5a4, retaining the core bridge_stem_crossing_point addition. Remove the route_segments_length simp tag reported by the first full lint run; its statement is unchanged. All first-run gates except this shared simpNF finding passed. Revalidate the merged final tree before PR handoff.
Remove the redundant simp attribute from route_segments_length; its statement, name and proof are unchanged. All six strict project gates pass on the resulting tree at ca6f5a4 plus this exact one-line diff (COMPLEXITYLIB_CACHE_AUTO=0 LEAN_NUM_THREADS=2 scripts/check.sh). Selected abstracts and rendering are unaffected.
Delegated subtask of #1079 after the #1082 crossing-layout core. Prove exact point count and wire length, endpoint preservation, unit adjacency, proper orthogonality, and equality of continuous real supports. Signed-coordinate and empty/singleton regression instances pass. Strict Lake module and test target builds pass; complete validation awaits final native-computation extension. Curated abstracts: no impact; no headline or renderer changes.
… time Add a binary-coordinate/unary-budget compiler using existing plain ComputableInPolyTime APIs. Bound output by budget times segment count plus one, and recover full subdivision whenever the budget bounds total wire length. Add cap-sufficient, cap-insufficient, zero-budget, and native-certificate regression examples. Strict module/test target builds pass with default heartbeats. Normalize new Lean file modes. Curated abstracts: no impact; full six-gate validation follows on the final stacked base.
Delegated subtask of #1079 after the #1082 crossing-layout core. Prove exact point count and wire length, endpoint preservation, unit adjacency, proper orthogonality, and equality of continuous real supports. Signed-coordinate and empty/singleton regression instances pass. Strict Lake module and test target builds pass; complete validation awaits final native-computation extension. Curated abstracts: no impact; no headline or renderer changes.
Add radius-parametric real grid cells and side-midpoint ports. Prove continuous support translation, orthogonality/simplicity/wire-length invariance, disjoint open/closed cells, and exact adjacency from equal ports. Bounds on listed vertices imply bounds on entire real route supports. Checked examples include fractional real points, negative cell indices, contact and noncontact. Checkpoint validation: MCP diagnostics are clean for the module and tests; LEAN_NUM_THREADS=2 lake build ComplexityTests.OrthogonalMacrocell --wfail --iofail passed. Full six-gate validation remains pending. Selected abstract catalogue: no impact; this geometry API changes no selected theorem, model, bound or scope. AI assistance: implementation by Codex worker t3-96187517-macrocell for #1079; independent review remains with the parent worker/coordinator.
For the global #1079 client, prove IsOrthogonal r and IsSimple r imply (subdivide r).Nodup, using original continuous endpoint-contact certificates. A sufficient-budget native enumeration inherits Nodup. Add a positive canonical-route regression and a distinct-listed-points/self-crossing negative example. Strict geometry/native/test target builds pass. Full six-gate validation follows on the frozen gadget #1108 base; curated abstracts remain unaffected.
…hogonal-planar-three-sat-reduction
Follow the core module move in unit-neighborhood and subdivision regression imports. Public declarations and proofs are unchanged. Final combined validation follows.
Cite Lichtenstein1982 Figs. 4–5 and the MIT–ULB CompGeom Group Tromino2025 Fig. 8(b) in all five modules. Add the original SIAM bibliography entry and complete the existing arXiv entry. Verified the pinned lean-trominoes paper narrative and caption (texlish lines 1244–1285, PDF page 19) against arXiv v1 §3.5 and SIAM DOI metadata; preserve original authors. Reuse CNF.eval_implicationCycle for eval_ring_iff without changing ring or theorem statements, remove unused Holds, and narrow tactic imports. Move only the fixed layout trio to Problems/SAT/Planar with coordinator agreement, preserving namespaces and all declaration/proof payloads. Update the aggregate and add regression clients. Nonblocking elaboration optimization is tracked in #1125. Focused strict Split and moved layout/test targets pass (6306 jobs); import aggregate check and scoped hygiene/bibliography checks pass. Full six gates intentionally await an ordinary merge of the coordinator’s updated core branch, then will run on the final PR head. Curated abstracts unaffected: no selected statement, definition or scope changes. AI-assisted implementation by t3-96187517-gadget. Addresses #1108 review; #1083 / #1079 scope unchanged.
…hogonal-planar-three-sat-reduction
…hogonal-planar-three-sat-reduction
Follow the reviewed reduction-geometry placement without changing emitted data or public statement meanings. Full final integration checks follow.
Regenerate sorted module imports after layout and encoding relocations, removing merge duplicates. Full six-gate validation is running on this unchanged source tree. Mathematical statement meanings, selected abstracts and catalogue are unchanged.
…hogonal-planar-three-sat-reduction
Integrate PR1111's final parent-restacked source. The complete tree remains identical to reviewed source1b83b0fe, treeaf3e4ebf1716d0de0dc0f912a5929167a6737ca6. All six required scripts/check.sh gates PASS on this exact source tree with LEAN_NUM_THREADS=2 and cache downloads disabled: strict library build, aggregate check, strict full tests and global axiom audit, lint, style, and Init imports. Hygiene and documentation configuration checks pass. Unit source99caeb46 also passes all six gates in its isolated checkout. All outside-fleet requests and practical optional nits are addressed across 1094/1107/1108/1111. Citation mapping/source credit is preserved, duplicate proof plumbing uses Batteries/CNF APIs, shared geometry facts serve actual clients, imports and module placement are updated, and mathematical endpoint statements, data definitions, encodings and bounds retain meaning. Checker acceleration is explicitly tracked as nonblocking followup1125. Independent non-author delta review planar-stack-reviewfix-delta-r1 found no blocking findings at source1b83b0fe/treeaf3e4ebf; unchanged mathematical reviews remain applicable. Current outside-fleet coordinator review and maintainer integration remain required. No author approval or merge to main performed. Selected abstracts/catalogue/rendering have no impact. The prior extra Windows guide linker limitation remains unchanged. AI-assisted implementation and delegated technical review by GPT-6.1-sol.
|
Independent technical delta review by The reviewer checked the source/scope citations, Batteries occurrence-rank reuse, shared tail lemmas, exact point/route encoding extraction, module moves, targeted tactic imports and updated regression clients. Affected prefix files match #1094 Limits: read-only source review, with no elaboration, builds, certified-machine execution or checkout changes. This records agent technical review, not outside-fleet coordinator approval or a merge verdict. Final validation and current revision are recorded in the PR description. |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Dvi6MU29zU9t8zYfeU51sB
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Dvi6MU29zU9t8zYfeU51sB
|
Coordinator restack ( |
|
Review claimed by reviewer-claude-c4b0c164-79 (agent review) at 5c7a18b. |
|
reviewer-claude-c4b0c164-79 — APPROVED at 5c7a18b (statement-level outside review; proof internals covered by the internal reviews Agent review, not human approval. No blocking findings.
|
This proves NP-hardness of planar 3SAT with clause width and literal-occurrence count at most three, both for formulas whose incidence graph admits an integer orthogonal drawing and for formulas with that drawing supplied. Binary clauses are allowed; repeated literals count separately. Every generated route is simple, avoids nonincident vertices, and meets other routes only at common graph endpoints on their full real supports. Parallel incidence occurrences retain distinct routes.
The total native polynomial-time compiler starts from ordinary binary-encoded 3SAT. For original size
S = clauses + literal occurrences + 1, it emits grid sides at most13440*S, at most29400*S²clauses and59290*S²literal occurrences/routes,1127000*S²segments, and Manhattan wire length at most14700000*S². These are bounds on the actual emitted formula and drawing, including empty and syntactically rejected inputs. Source labels and emitted coordinates use binary encodings. The supplied-drawing and existential-drawing languages are proved NP-hard; no membership theorem for these target languages is claimed.The implementation reuses CNF, listed Graph, the ordered incidence graph, first-occurrence selection, compaction, real segment support, and plain computability. The new drawing encoding combines existing binary point/route encodings; the syntax guard isolates the width/count tests from the assignment verifier. The global finite tiling and quantitative proof are original. Source credit for the occurrence splitter and fixed crossover adapted from lean-trominoes is preserved in their modules.
This completes the mathematical scope of #1079 and stacks on #1111. The earlier stack layers retain their own validation and reviews. Final wrapper/hardness delta review found no blocking findings in the unchanged endpoint semantics. Maintainer integration and outside-fleet coordinator approval remain required.
Validation: b971639d, tree
af3e4ebf: all six required gates pass, including the global axiom audit, plus focused regressions, hygiene and documentation configuration. Each updated parent PR also records all six gates at its final restacked head. The additional guide build retains the existing Windows Versolean_md4c_markdown_parselinker limitation before chapter elaboration; no dependency source was edited.Compiler/semantics/count/time/bounds review, actual geometry closure review, and the wrapper/hardness review above cover the mathematical development. The later citation, Batteries/CNF reuse, shared-tail and encoding APIs, module-placement and targeted-import fixes have a clean independent technical delta review. Final merge ancestry preserves that reviewed tree exactly. No statement meaning, emitted data, encoding or resource bound changed. All stale module imports are removed and the aggregate is regenerated. The nonblocking checker-speed suggestion is tracked in #1125. These records do not claim execution of the certified native machines. Fresh outside-fleet coordinator verdicts remain required for the updated stack.
Selected abstract catalogue/rendering: no impact. No new headline is selected; existing selected statements and scope are unchanged. ROADMAP.md has no existing direction changed by this result, and no upstream pin or coordination exception changes.
AI assistance: GPT-6.1-sol, including delegated implementation and technical review. Agent reviews do not imply human approval.