Recursive Proving
Use this skill when direct proving has failed on the current decomposition plans.
Input Contract
Read:
- the current set of decomposition plans
- the direct-proving reports and key stuck points for each plan
- the known stuck points from other plans
- relevant
failed_paths,branch_states, and search results
Procedure
- Confirm that all current decomposition plans have already been attempted with
$direct-provingand that none has fully solved the problem. - Spawn one sub-agent per decomposition plan.
- Give each sub-agent:
- the full target theorem
- the assigned decomposition plan
- the key stuck points for its own plan
- the key stuck points found in the other plans
- the instruction to follow
AGENTS.md
- Tell each sub-agent to tackle the assigned plan under the instructions in
AGENTS.md, treating that plan as its starting point rather than restarting the search from zero. If new evidence or discoveries justify it, the sub-agent may refine, extend, or locally revise the plan, but it should preserve continuity with the assigned plan instead of discarding it outright. - Tell each sub-agent that it may itself spawn sub-agents recursively if that helps its assigned plan.
- Require each sub-agent to write progress, failures, and any successful proof development back into the shared memory using the same data-relative
problem_idas the MCPproblem_id. - Wait for all sub-agents to finish, then gather their reports.
- If any plan succeeds, assemble the proof draft from that plan.
- If all plans fail, hand the collected reports to
$identify-key-failures.
Output Contract
Append an events record for the recursive round:
{
"event_type": "recursive_proving_round",
"plan_ids": ["..."],
"subagent_ids": ["..."],
"shared_stuck_points": {
"plan_id": ["..."]
},
"status": "running|completed",
"successful_plan_ids": ["..."],
"failed_plan_ids": ["..."]
}
Update branch_states with the recursive round status and per-plan outcomes.
Tools
memory_searchmemory_appendbranch_updatesearch_arxiv_theorems- Codex sub-agent tools:
spawn_agent,send_input,wait_agent,close_agent
Failure Logging
If every plan fails in the recursive round, append a summary record to failed_paths and immediately invoke $identify-key-failures.