From d4eb26780a8a8c70ca75812af0c3c6a295c0797c Mon Sep 17 00:00:00 2001 From: Anonymous Authors Date: Fri, 24 Jul 2026 13:52:11 -0500 Subject: Restore original GAP prompts and lock prompt bytes --- STAGE_MAP.md | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) (limited to 'STAGE_MAP.md') diff --git a/STAGE_MAP.md b/STAGE_MAP.md index 1cf0691..26077a3 100644 --- a/STAGE_MAP.md +++ b/STAGE_MAP.md @@ -1,17 +1,22 @@ # GAP paper-to-code map -| Paper operation | Implementation | Validated output | +The original implementation batches adjacent conceptual stages into two model +calls. Prompt-A returns the ordered proof-plan nodes and mutable slots; Prompt-B +re-instantiates that plan and returns the regenerated proof and question. +The package writes each conceptual output separately so every paper stage is +visible in an end-to-end run without changing either prompt. + +| Paper operation | Implementation | Saved artifact | |---|---|---| -| Surface rename | `surface.py` | `SurfaceVariant` with a collision-free one-to-one identifier map | -| 1. Reference solution to proof DAG | `KernelPipeline.construct_dag` | Acyclic `ProofDAG` connected to the terminal claim | -| 2. Content-free method plan | `KernelPipeline.summarize_methods` | `MethodPlan` with the DAG's node IDs and topological order | -| 3. Guarded leaf replacement | `KernelPipeline.generate_replacement` | `ReplacementSpec` with explicit guards and evidence | -| 4. Diffusion through the DAG | `KernelPipeline.diffuse_dag` | `DiffusedProof` preserving node order, dependencies, and method labels | -| 5. Problem rendering | `KernelPipeline.render_question` | Self-contained `KernelCandidate` aligned with the regenerated proof | -| Five-judge verification | `KernelPipeline.verify_candidate` | Five `JudgeVerdict` objects per round | -| Consecutive-pass protocol | `KernelPipeline.verify_candidate` | `K=2`; rejection resets the streak | -| Repair loop | `KernelPipeline._repair` | Corrected candidate with a distinct content hash; maximum `T=15` rounds | -| Audit sampling flag | `KernelPipeline._audit_selected` | Deterministic 10% post-hoc audit selection | +| Surface rename | `SurfacePipeline.run_family` | `surface__variant.json` | +| 1. Reference solution to proof structure | `KernelPipeline.extract_plan` | `01_proof_dag.json` | +| 2. Content-free method plan | `KernelPipeline.extract_plan` | `02_method_plan.json` | +| 3. Mutable-slot identification | `KernelPipeline.extract_plan` | `03_mutable_slots.json` | +| 4. Proof regeneration | `KernelPipeline.generate_candidate` | `04_regenerated_proof.json` | +| 5. Problem rendering | `KernelPipeline.generate_candidate` | `05_variant_question.json` | +| Five-judge verification | `KernelPipeline.verify_candidate` | five call records and one iteration record per round | +| Consecutive-pass protocol | `KernelPipeline.verify_candidate` | `K=2`; any rejection resets the streak | +| Repair loop | `KernelPipeline._repair` | complete corrected question and solution; at most `T=15` rounds | ## Per-item artifacts @@ -25,11 +30,6 @@ items// final.json ``` -Each JSON artifact includes a SHA-256 digest of its canonical payload. Judge -calls remain separate rather than being collapsed into a vote count. - -## Claim boundary - -The verifier is a filtering protocol, not a formal proof of mathematical -correctness. Accepted variants should additionally be inspected in the -post-hoc human audit described in the accompanying paper. +Prompt literals are byte-locked by `PROMPT_SHA256SUMS` and +`tests/test_prompts.py`. The OpenAI adapter does not pass a temperature +argument; `o3` therefore uses its supported default. -- cgit v1.2.3