An automated, transparent log of frontier-model attempts at every open Erdős problem.
🌐 Live status board → · Erdős Problems · Setup guide
Every open Erdős problem is submitted to a large language model under a single, strict research-mode prompt — one that forbids appeals to authority or literature status and forces the model to attack the problem from first principles. The model's verdict and self-scored completeness are recorded, and the full reasoning transcript is committed to this repository.
Important
These are machine attempts, not peer-reviewed proofs. A high completeness score is an invitation to verify a transcript — never a claim that a problem is actually solved. Treat every result as unverified until a human checks it.
→ erichou1.github.io/erdos-open-problems
A single-page dashboard that loads directly from the committed solution files:
- headline stats — attempted, solved, ≥60 % complete, average completeness;
- a searchable, sortable, filterable table of every attempt;
- a completeness bar and verdict badge per problem, linking to the full transcript and to the original problem page;
- light / dark themes;
- collaborative Fable / Cooked review marks that sync to the repo (connect a fine-grained GitHub token in your browser — never committed).
The board updates itself. A GitHub Action (.github/workflows/build-site.yml)
regenerates the feed (data.json) from outputs/chatgpt/open/ on every push, so
new solutions appear on the site automatically — no manual rebuild step.
- Submit —
solve_submit.pyopens a chat per problem in a ChatGPT Project and sends the research-mode prompt. It drives a real browser via Playwright, so it uses your session — no API keys. - Collect —
solve_rename.pyrevisits each chat, saves the answer, and names the file by verdict and completeness, e.g.Erdős #117 [solved] 82%.md. - Publish —
build_status_sheet.pyturns those filenames intodata.json; the static site renders it. The Action keeps it current.
The completeness score is how much of the argument the model rigorously established, deliberately distinct from how confident the prose sounds.
git clone https://github.com/erichou1/erdos-open-problems.git
cd erdos-open-problems
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
playwright install chromium
cp .env.example .env # optional: set your ChatGPT Project URL
python3 solve_submit.py --login
# submit a batch, then collect the answers
python3 solve_submit.py --reverse --start 0 --limit 50
python3 solve_rename.py --watch --interval 60See SETUP_GUIDE.md (or the printable SETUP_GUIDE.pdf) for the
full walkthrough, including DeepSeek and resume behavior.
| Path | Purpose |
|---|---|
index.html |
The live status board (static SPA, reads data.json). |
build_status_sheet.py |
Regenerates data.json + status.csv from outputs/. |
.github/workflows/build-site.yml |
Auto-rebuilds the feed on every push. |
outputs/chatgpt/open/ |
Human-named solution copies — the source of truth for the site. |
solutions/<category>/ |
Raw machine-readable solution records. |
open/, falsifiable/, verifiable/, individual/ |
The Erdős problem set as LaTeX (problem_N.tex). |
solve_submit.py / solve_rename.py |
Submit problems to ChatGPT and collect answers. |
deepseek_submit.py / deepseek_rename.py |
Same pipeline for DeepSeek. |
erdos_common.py / deepseek_common.py |
Shared prompt, parsing, browser and output helpers. |
fetch_erdos.py / fetch_categories.py |
(Re)download and categorize the problem set. |
Your browser session, conversation IDs, and project URL never leave your
machine — .env, .chatgpt_profile/, .deepseek_profile/, and the
*_chat_map.json files are all git-ignored. Only the finished solution files and
the site feed are published.
Problems are sourced from Tom Bloom's Erdős Problems database, openly maintained at https://github.com/teorth/erdosproblems. This project is an independent experiment and is not affiliated with that database.