AI Agents for the Working Mathematician A new approach using AI agents, such as OpenAI's Codex and ChatGPT Work, enables mathematicians to autonomously tackle conjectures over long periods, learning from mistakes and avoiding wasted effort. The method involves setting an agent to work on a problem statement with defined success criteria, allowing for persistent progress and tool integration. AI Agents for the Working Mathematician Most working mathematicians I talk to or observe have the same relationship with AI: they paste a question into ChatGPT, get something proof-shaped back, feel vaguely impressed or vaguely cheated, and go back to work. This makes sense, especially under the common opinion: If you ask ChatGPT a few times and it does not solve the problem, then AI can NEVER solve the problem by itself. This opinion was formed by mathematicians worldwide through long and brutal ChatGPT sessions: read the latest output, send “keep going”, wait for a response, repeat until the entire afternoon is wasted. If the opinion were true, then asking ChatGPT a few times would be the optimal way of using AI to do math — and to be fair, even that is occasionally strong enough to solve real open problems. But the opinion is wrong see FAQ . You can use a system that is far more capable, with a much higher chance of success than the standard opinion allows. Specifically, you can have an autonomous agent that keeps bashing on a conjecture for hours: it keeps track of itself, learns from its mistakes, does not waste its time retrying something already tried, does not waste your time with long wrong proofs, and you can still influence its direction. I will use some words like token, model, and harness. If you don’t know what they mean, watch the first part of Edward Lockhart’s talk https://www.youtube.com/watch?v=XRTmhpOW1WA . I recommend it to anyone who has a math background but no idea what these new AI things are. 1 Use Agents An agent is an AI that uses tools. Here the tools are exactly what you would use on a computer: operating system, Python, a LaTeX compiler, SAGE math, a browser. Agents can interact with the environment and actually “do” things. Codex is the coding harness from OpenAI. It runs agents on your own computer. A “chat” session in Codex would be an agent. ChatGPT Work , which is different from ChatGPT, is also an agent, and can run on OpenAI’s server. I prefer Codex as one can maintain even tighter control, but if you just want to explore, ChatGPT Work is easier as you don’t even need to download anything. However, this article I will assume people will be using Codex. What Codex buys you over the chat window: Files are durable state. Your problem statement, definitions, proved lemmas, failed attempts — they live in a directory, in git if you like. Progress is not lost, you can keep advancing. You control the context. The agent reads the files you point it at. You have much more control over what agents can do. A clean STATEMENT.md with your exact conventions beats re-explaining notation every conversation. Tool use. Gurobi to construct counterexamples, SAGE to compute some polynomial, LEAN to formally verify some statement it proved, access to your compute cluster, and tools that help with your computation that you never knew existed. Long autonomous runs. You can hand it a hard target, leave, and come back to either progress or a precise record of what failed. Step by step on how to do it. - Use an agent - Codex: Download the Codex program and log in with your ChatGPT account. - ChatGPT Work: Just open the ChatGPT website, and switch it to work. - Set the model to the highest available, currently gpt-5.6-sol ultra. - Replace STATEMENT in the prompt below with your exact claim — all quantifiers, your conventions, what is known, and what counts as an answer — then use it on a conjecture you always wanted to solve. Current task statement STATEMENT Success criteria Partial progress does not count unless it implies exactly the resolution above. In particular, proofs for special classes, reductions to another unproved conjecture, computational verification through any fixed size, and candidate counterexamples without a complete nonexistence certificate are insufficient. If the statement above is ambiguous about what counts as an answer, ask before starting; never resolve ambiguity silently. Durable state — create these files before searching - STATEMENT.md — the exact statement, conventions, and success criteria. Fixed for the whole run; never edit it to fit a result. - REGISTRY.md — one row per approach family: family name, exact claim attempted, exact remaining gap, smallest known obstruction, next decisive test, status. - FAILED.md — every closed route: what was tried, the exact obstruction, the evidence for it, and what would make a retry materially new. - PROVED.md — promoted results only, each with its status label and proof or certificate. All mathematical work products land in these files, not only in conversation. After any context compaction, re-read these files before continuing; they are the memory, the conversation is not. Status vocabulary — literal, never inflated Every claim carries exactly one label, with these exact meanings: - candidate — produced by an agent; no checks yet. - self-audited — re-checked only by its own author or context. For building on, this counts the same as candidate. - verifier-backed — survived both steps of the verification cadence below: a hostile audit by a fresh agent that tried to refute it, and an independent end-to-end reconstruction by an agent that never saw the proof. - promoted — verifier-backed and recorded in PROVED.md; later work may cite it, and anything built on it carries at most this label. - independently audited — additionally checked from outside the producing model family: a different-family model or a human. Present final answers at this label when possible. If no different-family model is available in this environment, do not simulate independence with another instance of the same family — that is label inflation. Instead deliver the final answer at promoted status, state prominently that the cross-family audit has not run, and list the specific claims an outside model or human referee should check first, in order of risk. A claim's label only advances through the verification steps below. A later argument never inherits more certainty than its weakest premise's label. Never call a mismatched case, a global compatibility assertion, or a polynomial recurrence "routine" — those are where proofs hide their hard step. Orchestration Use subagents aggressively and dynamically, at most 6 concurrent. Work in waves: agents push the frontier, then fresh agents verify what came back. Do not use a fixed assignment such as "N agents for strategy X." - Begin with a genuinely diverse portfolio: substantially different formulations, invariants, reductions, algebraic viewpoints, structural inductions, decompositions, embeddings, extremal arguments. - Do not tell most agents the currently favored approach; preserve independence during early rounds so they do not converge on the same attractive but incomplete reduction. Agents may be assigned a direction, but never shown another agent's partial proof of it. - Group approaches in REGISTRY.md by the mathematical mechanism and by their terminal missing lemma, not by terminology. If several agents converge to one family, redirect the surplus toward underexplored formulations. - A route that ends at a missing lemma as strong as the original conjecture is blocked, not "one lemma away." Record it in FAILED.md. Reopen a blocked route only for a materially new mechanism, invariant, or construction, and say in REGISTRY.md what is new. - Before starting any route, check FAILED.md and state either: "no close prior route" or "closest prior route is X; this differs materially because of