Commit 059e8db
docs: merge doc.tex, pcs.tex and ring-switching.tex into one LaTeX project
`misc/` becomes `doc/`, a single project with one PDF output (39 pages):
`doc/main.tex` inputs `preamble/`, the nine spec sections from `body/`, then
ring switching and the PCS as annexes A and B. Section text is unchanged;
only notation, redundant definitions and structure moved.
Notation is now defined once, in `preamble/macros.tex`, and every named
object has one meaning across the whole document:
- multilinear extensions are `\widetilde` everywhere, freeing the hat for the
additive NTT's normalized subspace polynomials;
- annex B's symbols that collided with the spec are renamed through semantic
macros, so changing a glyph is a one-line edit. Annex B opens with a table
mapping all 31 renames back to the names WHIR/Ligerito/BCHKS25 and
`crates/pcs` use;
- genuine unifications rather than substitutions: `m_i` becomes the stack's
`M_i`, the batching challenge is `\lambda` on both sides, claim counts join
the pool's `J`, and a claim is `(W, c)` throughout;
- bound and index variables stay short and shared, which the annex says.
Redundant definitions collapsed: the fields were defined three times, `eq`
and the weighted claim twice. Phi, its 64-term soundness argument and the
weight-evaluation formula lived in both ring-switching.tex and doc.tex's
appendix; they now appear once in annex A, and the flock instantiation
(packing into q_pkd, the incoming claim, the coordinate transpose) is
section 3.3, keeping the `sec:ringswitch` label. The `sec:state` label
collided and annex B's copy is now `pcs:proof`; all other labels are
preserved, so the `thm:rbr` and `thm:mca-johnson` references in
`crates/pcs` still resolve.
Three bibliographies become `doc/refs.bib` with `alphaurl`, folding the
duplicate keys for Diamond-Posen, Ligerito and WHIR, and keeping the flock
paper and the flock implementation as separate entries.
CI: `pdf.yml`, `pcs.yml` and `ring-switching.yml` become one `doc.yml` that
publishes `leanVM-b.pdf` to the existing `spec-latest` tag and fails a PR on
any undefined reference. The `pcs-latest` and `ring-switching-latest` release
tags now have nothing rebuilding them.
Verified by a clean rebuild: no undefined references or citations, no
multiply-defined labels, no overfull boxes. `cargo check --release` passes on
the three crates whose comments moved from `misc/` to `doc/`.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 6d29dfa commit 059e8db
35 files changed
Lines changed: 1632 additions & 1611 deletions
File tree
- .github/workflows
- crates
- lean_compiler
- lean_vm/src
- cpu
- pcs/src
- rec_aggregation
- guests
- src
- doc
- annex
- body
- images
- preamble
- misc
Lines changed: 20 additions & 15 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
8 | | - | |
9 | | - | |
| 7 | + | |
| 8 | + | |
10 | 9 | | |
11 | 10 | | |
12 | | - | |
13 | | - | |
14 | | - | |
| 11 | + | |
| 12 | + | |
15 | 13 | | |
16 | 14 | | |
17 | 15 | | |
18 | | - | |
| 16 | + | |
19 | 17 | | |
20 | 18 | | |
21 | 19 | | |
| |||
29 | 27 | | |
30 | 28 | | |
31 | 29 | | |
32 | | - | |
33 | | - | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
| |||
42 | 43 | | |
43 | 44 | | |
44 | 45 | | |
45 | | - | |
46 | | - | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
47 | 50 | | |
48 | 51 | | |
49 | 52 | | |
50 | 53 | | |
51 | | - | |
52 | | - | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
53 | 58 | | |
54 | | - | |
| 59 | + | |
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
81 | | - | |
| 81 | + | |
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | | - | |
| 8 | + | |
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
| 53 | + | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
642 | 642 | | |
643 | 643 | | |
644 | 644 | | |
645 | | - | |
| 645 | + | |
646 | 646 | | |
647 | 647 | | |
648 | 648 | | |
| |||
818 | 818 | | |
819 | 819 | | |
820 | 820 | | |
821 | | - | |
| 821 | + | |
822 | 822 | | |
823 | 823 | | |
824 | 824 | | |
| |||
0 commit comments