Vanilla multiagent · /solve-maths rounds=1 verifier=off
Vanilla multiagent: N independent agents, one root
\(N\) agents work in one round, \(R\) writes the verdict, and nothing checks a proof.
Philosophy
| principle | in the architecture | literature |
|---|---|---|
| Portfolio. Run different methods in parallel, not one method many times. | one approach family per agent | On heavy-tailed searches a portfolio lowers expected time and its variance [Gomes–Selman]. |
| Independence. Agreement is evidence only between agents that did not see each other. | round 1 alone; no favoured approach disclosed (I1) | Majority over independent samples beats one sample [Wang et al. 2023]; discussion propagates wrong answers [Wang et al. 2024]. |
| Separate contexts. Each agent holds one approach, not the whole search. | a brief: setting, target, approach, files, rules | Orchestrator–workers with parallel subagents [Anthropic]; the cost is lost shared decisions [Cognition]. |
| One synthesizer. A single agent merges the returns. | \(R\) writes registry and verdict; its steps are claims | Orchestrator–workers [Anthropic]; the Polymath moderator [Gowers–Nielsen]. |
Nothing in the vanilla architecture checks mathematics: a model does not reliably correct itself without outside feedback [Huang et al.]. Multiagent with verifier adds that check.
Architecture
(vanilla run with \(N\) agents)
$$\text{run}(N,1):\qquad 1\le N\le 9,\qquad \text{Fix}\ \to\ \text{Round 1: } A_1,\dots,A_N\ \to\ \text{Verdict}\ \to\ \text{Record}.$$Each \(A_i\) gets one approach and works alone. \(\text{run}(1,1)\) is the single-agent baseline: \(R\) and one agent.

Timeline
Prompts: \(R\) and the six agents
\(R\) on receiving the problem · Fix, portfolio, briefs
Input (round 1 of the worked example as a vanilla run; the run itself used agents=8 rounds=2)
/solve-maths agents=6 rounds=1 verifier=off <problem> <references>
Question. Among the symmetric spaces \(X=G/G^\theta\) of the spherical-generation pages (Table 1), is there one where sheaves generate but functions do not, or the reverse?
$$\text{sheaves:}\quad \mathcal C_K^{\mathrm{Sat}}:=\operatorname{Thick}_{\mathcal C_K}\{V_\lambda\ast\mathrm{IC}_0:\lambda\in\Lambda_T^+\}\overset{?}{=}\mathcal C_K:=\operatorname{Shv}_{\mathrm{cons}}(L^+G\backslash LX),$$ $$\text{functions:}\quad \text{(SG)}\qquad \mathcal H_K\ast\varphi_0\overset{?}{=}C_K:=C_c^\infty(X(F))^K,\qquad \varphi_0=\mathbf 1_{X(\mathcal O)}.$$A divergence is a variety \(X\) for which exactly one of the two equalities holds.
What \(R\) is told to do (SKILL.md › Fix, Portfolio)
- Write the problem as one quantified statement with every object defined; write the completion criterion and the list of what does not count.
- Resolve the references: file paths, result numbers, the exact version. Record the setting so that two agents cannot silently work in different settings.
- Derive the problem's own adversarial checklist: the ways a wrong proof of this statement typically fails.
- Design the portfolio before launching anyone: \(N\) agents, each with one approach family named by its mathematical idea.
- Brief every agent from the template; do not tell them the favoured approach or another agent's direction. Launch them in parallel.
\(A_{6}\) brief · E₆/F₄ restriction · returned after 38 min
You are agent A6 in a bounded team attacking one mathematical question. Work independently; you will not see the other agents.
SETTING the shared definitions, the same text for every agent
QUESTION the team-level statement (see \(R\) · Fix)
YOUR APPROACH Compute \(r:\mathbb C[A^*]^W\to\mathbb C[\delta(X)^{1/2}A_X^*]^{W_X}\) for \(E_6/F_4\) and for \(\mathrm{Spin}_{2n}/\mathrm{Spin}_{2n-1}\), where the pages say r is not computed. (1) Fix the shift \(\delta(X)^{1/2}\) as a point of \(A^*\), calibrated on Proposition F's two GL cases; (2) identify \(\mathbb C[A^*]^W\) for the dual of simply connected \(E_6\); (3) compute r on generators in Python (weights of the 27, 78, …, restricted to \(A_X^*\) with the shift); (4) decide surjectivity by an exact argument (explicit generation or invariant theory: closed immersion of \(\delta^{1/2}A_X^*/W_X\to A^*/W\)); (5) state what of (A1)–(A5) remains to be verified. Shared setting and rules: the problem card of the hub.
FILES local pages, LaTeX sources, PDFs
RULES label every claim proved · heuristic · gap; no web search for the answer; timestamp every node; 5–14 nodes; return one JSON object
Its steps: A6.
\(A_{2}\) brief · SL₂/SO₂ · returned after 49 min
You are agent A2 in a bounded team attacking one mathematical question. Work independently; you will not see the other agents.
SETTING the shared definitions, the same text for every agent
QUESTION the team-level statement (see \(R\) · Fix)
YOUR APPROACH Target: \(X=\mathrm{SL}_2/\mathrm{SO}_2\), \(G=\mathrm{SL}_2\), where the pages leave the sheaf statement undecided (both conditions of Proposition III fail) and (SG) fails for \(q\) odd by square classes. Decide \(\mathcal C^{\mathrm{Sat}}=\mathcal C\) or \(\ne\) with a proof. Starting points: compute \(\operatorname{Stab}_{L^+\mathrm{SL}_2}(x_\mu)\) exactly and its component group; the simple equivariant perverse sheaves on \(\mathcal O_\mu\); what extra structure every Satake object carries (elements acting trivially on \(LX\) and on the Grassmannian; a larger group extending the action); whether a thick subcategory can be separated by such a structure; relate the \(\mathbb F_q\)-points of \(\mathcal O_\mu\) (Lang) to the square classes. State whether the two levels agree for this \(X\). Shared setting and rules: the problem card of the hub.
FILES local pages, LaTeX sources, PDFs
RULES label every claim proved · heuristic · gap; no web search for the answer; timestamp every node; 5–14 nodes; return one JSON object
Its steps: A2.
\(A_{4}\) brief · sheaf ⇄ function · returned after 50 min
You are agent A4 in a bounded team attacking one mathematical question. Work independently; you will not see the other agents.
SETTING the shared definitions, the same text for every agent
QUESTION the team-level statement (see \(R\) · Fix)
YOUR APPROACH Formulate and prove, with exact hypotheses, implications between (SG) over \(\mathbb F_q(\!(t)\!)\) and \(\mathcal C^{\mathrm{Sat}}=\mathcal C\) over \(\overline{\mathbb F}_q\), for symmetric \(X\) with \(Z_{G^\theta}(S)\) connected: (a) the trace function of \(V_\lambda\ast\mathrm{IC}_0\); (b) whether every Satake object is a direct sum of shifted \(\mathrm{IC}_\nu\) with constant coefficients and by which theorem; (c) when \(\mathcal C^{\mathrm{Sat}}=\mathcal C\) is equivalent to every \(\mathrm{IC}_\mu\) being a summand of some Satake object (Serre subcategory of the heart); (d) (SG) \(\Rightarrow\) \(\mathcal C^{\mathrm{Sat}}=\mathcal C\) or its failure, and the converse or its failure (Sakellaridis's Example 8.0.1 shape; Corollary C under coverage); (e) obstacles: \(\mathbb C\) versus \(\overline{\mathbb F}_q\), \(\operatorname{char}F=0\) in (A1), Weil structures, Lang's theorem, independence of the trace functions. Apply to Table 1. Shared setting and rules: the problem card of the hub.
FILES local pages, LaTeX sources, PDFs
RULES label every claim proved · heuristic · gap; no web search for the answer; timestamp every node; 5–14 nodes; return one JSON object
Its steps: A4.
\(A_{3}\) brief · symplectic fibres · returned after 54 min
You are agent A3 in a bounded team attacking one mathematical question. Work independently; you will not see the other agents.
SETTING the shared definitions, the same text for every agent
QUESTION the team-level statement (see \(R\) · Fix)
YOUR APPROACH Target: \(\mathrm{GL}_4/\mathrm{Sp}_4\) and the uncovered label \(\mu=(1,1,1,1)\); then \(\mathrm{GL}_{2m}/\mathrm{Sp}_{2m}\), \(\mathrm{SL}_{2n}/\mathrm{Sp}_{2n}\). The Summary remarks that \(\mathcal C^{\mathrm{Sat}}=\mathcal C\) would follow if the intersection complex of each uncovered orbit closure were a retract of some \(V_\lambda\ast\mathrm{IC}_0\). Steps: model \(X(F)\) as alternating forms, orbits = elementary-divisor classes; dimension formula and closure relations; choose \(\lambda\) with \(\varphi(\lambda)>\mu\), compute the fibre of the convolution map over \(x_\mu\), its cohomology; apply the decomposition theorem in an explicit finite-type equivariant model and decide whether \(\mathrm{IC}_{\overline{\mathcal O_\mu}}\) is a summand; say which step of Proposition I uses H5 and whether a per-orbit substitute suffices; propagate by central translation; attempt general uncovered labels; compute the function-level shadow as point counts. Shared setting and rules: the problem card of the hub.
FILES local pages, LaTeX sources, PDFs
RULES label every claim proved · heuristic · gap; no web search for the answer; timestamp every node; 5–14 nodes; return one JSON object
Its steps: A3.
\(A_{1}\) brief · literature · returned after 68 min
You are agent A1 in a bounded team attacking one mathematical question. Work independently; you will not see the other agents.
SETTING the shared definitions, the same text for every agent
QUESTION the team-level statement (see \(R\) · Fix)
YOUR APPROACH Approach family: status audit and definitions. (i) Reconstruct Table 1 of summary.html row by row and verify each status against the page where it is proved; classify each row as both-hold / both-fail / sheaf-open / function-open / both-open with the hypothesis it depends on. (ii) List every cell where a divergence could still hide and the statement that would produce or exclude it. (iii) Check comparability: same X, same acting group, same base field (C over \(\mathbb C\); (A1) demands \(\operatorname{char}F=0\)). (iv) Verify Proposition J's SL\(_2/T\) and GL\(_2/T\) arguments; the varieties are isomorphic, so say exactly what differs and what it means for the sheaf level. Shared setting and rules: the problem card of the hub.
FILES local pages, LaTeX sources, PDFs
RULES label every claim proved · heuristic · gap; no web search for the answer; timestamp every node; 5–14 nodes; return one JSON object
Its steps: A1.
\(A_{5}\) brief · functions, no (A) · returned after 100 min
You are agent A5 in a bounded team attacking one mathematical question. Work independently; you will not see the other agents.
SETTING the shared definitions, the same text for every agent
QUESTION the team-level statement (see \(R\) · Fix)
YOUR APPROACH For the rows marked under (A) or open at function level: (i) prove or disprove \(K\backslash X(F)\leftrightarrow\Lambda_S^+\) over a general non-archimedean local field for each family (sphere, alternating forms, GL\(_n/(\)GL\(_p\times\)GL\(_q)\), SL\(_{2n}/\)Sp\(_{2n}\), E\(_6/F_4\) if possible); (ii) prove the support bound \(Kt^\lambda X(\mathcal O)\subseteq\bigcup_{\nu\le\varphi(\lambda)}\mathcal O_\nu\) for a dominant lift and say whether the sheaf-level proof of H5(a) transfers to \(F\)-points for every local field; (iii) conclude (SG) unconditionally wherever coverage holds; (iv) where coverage fails, construct explicit Hecke combinations for the smallest uncovered label of \(\mathrm{GL}_4/\mathrm{Sp}_4\) by lattice counts, use the central Hecke elements and Proposition B along each degree chain, and say how far this extends. Report which rows become unconditional. Shared setting and rules: the problem card of the hub.
FILES local pages, LaTeX sources, PDFs
RULES label every claim proved · heuristic · gap; no web search for the answer; timestamp every node; 5–14 nodes; return one JSON object
Its steps: A5.
\(R\) after every return · Verdict
What \(R\) is told to do (SKILL.md › Verdict)
- Status per statement: proved, partial, refuted, blocked. With
verifier=offnothing checked a proof, so “proved” is written proved (unchecked). - Every verdict step lists as parents exactly the agent steps it uses.
- Write
verdict.md: one answer table; key propositions, each with status, assumptions and a numbered proof citing steps as [[A5-7]]; the gaps as exact obligations; the routes ruled out. - Record every solution the agents found. A proposition may have several proofs; the registry decides how many to present, and the rest are listed with their steps.
- Write it in the context of the Fix plus the returns (below); after a compaction, re-read
returns/andtree.jsonfirst.
In the worked example: R-4, citing one step from each of seven agents.
Waiting for all makes \(\mathbb E[T_1]=\mathbb E[\max_i T_i]\) grow with \(N\); a portfolio in the sense of Gomes–Selman races. Worked example: \(\min_i T_i=38\) min and \(\max_i T_i=100\) min.
The context of one agent
\(A_5\) of the worked example, from its transcript. The transcript records only the total; the split into bands is estimated from characters (1.65 per token, measured on \(A_5\)'s file reads), and growth beyond the text is counted as kept thinking. Source: figures/make_context_figures.py, data figures/context-a5.json.
What \(R\) knows when it writes the verdict
\(R\) is one session, so it writes the verdict in the same context as the Fix, with more appended:
$$c_R(\text{Verdict})=c_R(\text{Fix})\ +\ \underbrace{b_1,\dots,b_N}_{\text{briefs it wrote}}\ +\ \underbrace{r_1,\dots,r_N}_{\text{returns, verbatim}}\ +\ \text{its registry and notes}.$$It never sees an agent's files, thinking or dead ends, only the return. In the worked example \(c_R\) was 230k tokens at the Fix (02:03; the conversation had already built pages) and 584k at the verdict R-4 (04:17), with no compaction in between. The first compaction came at 06:04, after the run, and took it from 623k to 6.7k. If \(R\) is compacted before the verdict, the skill has it re-read returns/ and tree.json first.
Token use

The record keeps only the total; per-agent counts, which Experiment 1 plots, need token_usage.py to count each transcript separately.
Running it
/solve-maths agents=4 rounds=1 verifier=off <problem> four agents /solve-maths agents=1 rounds=1 verifier=off <problem> single-agent baseline
\(N\), rounds=1 and verifier=off are written to tree.json ("config") and the README, so runs with different \(N\) can be compared (Experiment 1).
What the root and an agent exchange
① Brief · root → agent
SETTING shared definitions, same for all
QUESTION the team-level statement
YOUR TARGET one sub-question or instance
YOUR APPROACH one idea + 3–6 things to compute
FILES local pages, PDFs, sources
RULES label every claim; no web search
for the answer; timestamp each stepalone →
② Return · agent → root
{"agent": "A2",
"nodes": [{"id": "A2-4", "t": "…Z",
"kind": "verdict", "status": "proved",
"parents": ["A2-1", "A2-2", "A2-3"],
"statement": "…", "body": "numbered proof"}],
"result": {"status": "proved", "gap": "none"},
"blocked_routes": ["…"]}Continuing an agent adds another brief–return pair in its own context (A7, twice). The node shown: A2-4.