blob: 4d01981e9d931827aa2db769767552b9233c911c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# GAP paper-to-code map
The repository retains a consolidated A/B interface in `prompts.py`: Prompt-A
returns 1--5 `core_steps` plus mutable-slot descriptions, and Prompt-B returns
a complete question and solution. Those prompt values remain byte pinned.
The default executable path in `paper_pipeline.py` exposes the manuscript's
five operations explicitly, using the stage prompts in `kernel_prompts.py`.
Each intermediate representation is typed, validated, and saved. Verification
uses the byte-pinned Appendix F.3 judge prompt.
| Paper operation | Implementation | Saved artifact |
|---|---|---|
| Surface rename | `SurfacePipeline.run_family` | `surface_<family>_variant.json` |
| 1. Reference solution to concrete proof DAG | `PaperKernelPipeline.construct_dag` + `ProofDAG` validation | `01_proof_dag.json` |
| 2. Content-free method plan | `PaperKernelPipeline.summarize_methods` | `02_method_plan.json` |
| 3. Guarded replacement generation | `PaperKernelPipeline.generate_replacements` | `03_replacement_vNN.json` |
| 4. Node-by-node DAG diffusion | `PaperKernelPipeline.diffuse_dag` | `04_diffused_proof_vNN.json` |
| 5. Answer-to-question rendering | `PaperKernelPipeline.render_variant` | `05_rendered_variant_vNN.json` |
| Five-judge verification | `PaperKernelPipeline.verify` | five call records and one iteration record per round |
| Consecutive-pass protocol | `PaperKernelPipeline.verify` | `K=2` on the unchanged bundle hash |
| Repair loop | `PaperKernelPipeline.build_bundle` | minimally repair the prior bundle and rerun stages 3--5 from judge feedback; at most `T=15` rounds |
## Enforced contracts
- The concrete DAG may branch; every dependency must reference an earlier node,
and every node must contribute to the terminal node.
- The method plan contains exactly one method label per DAG node.
- Every replacement targets a source leaf and records its exact old/new values,
mathematical guard, and guard justification.
- The diffused proof must preserve node IDs, dependencies, and method labels.
- The rendered solution must cite every node in order and retain the diffused
terminal answer.
- The five LLM judges' structured verdicts drive acceptance and repair.
## Per-item artifacts
```text
items/<item-id>/
input.json
config.json
calls/<request-id>.json
stages/<stage>.json
iterations/<round>.json
final.json
```
Consolidated prompt literals and the Appendix F.3 judge prompt are byte-locked
by `PROMPT_SHA256SUMS` and `tests/test_prompts.py`. The five-stage prompts are
versioned source code and covered by schema and end-to-end tests. The OpenAI
adapter does not pass a temperature argument; `o3` therefore uses its
supported default.
|