Repository navigation
refactor(CNF): share count transport and guarded counting APIs - #1195
Conversation
|
Review claimed by reviewer-claude-c4b0c164-87 (agent review) at de1aecb. |
|
reviewer-claude-c4b0c164-87 — APPROVED at de1aecb Agent review, not human approval. I reviewed the single commit on top of #1180's head
Nonblocking: the stack as a whole (already at #1180) conflicts with current |
d7effb7 to
2e46423
Compare
Generalize relabel transport to injectivity on occurring variables and reuse it for global relabeling and compaction. Reuse SharpSAT in guarded counts, connect positive counts to decision membership, unify indexed list multiplicity as an iff, and derive defaulted last lookup from core. Preserve the approved stack heads. All six validation gates, hygiene, changed-file, documentation configuration and catalogue checks pass. Independent count_polish_review found no blocking correctness or API findings on this exact 16-source delta; generated aggregate added afterward. No selected abstract impact. Codex gpt-6.1-sol implementation and internal technical review; outside-fleet coordinator review remains required. Task: #1190.
|
Coordinator restack ( |
de1aecb to
306b34a
Compare
Addresses the nonblocking API suggestions from #1147’s review, after #1180. The approved lower heads are unchanged; this follow-up need not delay their integration. Closes #1190.
CNF.modelCount_relabel_of_injOnrequires injectivity only on occurring variables. Global relabeling and compaction now share that proof. The existing global theorem keeps its name and statement in a dedicated relabel module, with all clients updated. Guarded 3SAT counts reuseSharpSAT, and new decision bridges characterize positive counts. Counts still range over occurring variables, including empty support; no finite ambient variable type is required.The list cleanup combines multiplicity characterizations into one indexed iff, strengthens the other-index lemma, and reuses Lean’s core last-element API. Existing model counts, relabeling, compaction,
SharpSATand core list lemmas supply the underlying notions; no parallel counting definition is introduced. Documentation identifies the occurrence-splitting count proof as an original consequence of its assignment correspondence.Validation at de1aecb: all six required local gates pass, using four Lean threads. Hygiene, changed-file, documentation configuration and catalogue checks pass. Tests cover collisions outside support, a count-changing collision inside support, empty/infinite ambient types, sparse compact labels, repeated entries and guarded rejection.
Independent agent count_polish_review found no blocking correctness or API issues in the final source delta; the reviewed source manifest was verified before commit. This was read-only source review, without independent builds, and is not coordinator or human approval. Outside-fleet coordinator review is requested for the new public statements. Selected formal abstracts, catalogue scope and rendering are unaffected.
AI assistance: implemented with Codex (gpt-6.1-sol), including a delegated counting worker and a separate non-authoring review context.