Skip to main content

OpenATP

PyPI Docs CI codecov License: MIT Checked with mypy Ruff

OpenATP is an open-source Python package providing a common interface for Automated Theorem Proving (ATP). OpenATP focuses on recent agentic ATP methods that prove formal statements in Lean. Each method runs in an isolated sandbox, either locally with Docker or remotely with Modal. OpenATP also provides benchmarking utilities to run methods on common datasets.

OpenATP banner

Installation

pip install open-atp

OpenATP runs each prover (e.g., Claude Code, Codex, OpenCode) in a Docker container. The image must be built before running any prover:

open-atp build-docker-image

Each prover has its own authentication requirements. See each prover page for its authentication instructions, and check what the host currently has with:

open-atp auth-status

Quickstart

Complete the sorrys in a lake project (or a .lean file) from the CLI:

open-atp prove path/to/project runs/example claude

Or programmatically, here on a simple example theorem:

from open_atp import standard_prover
from open_atp.backends import DockerBackend
from open_atp.examples import EXAMPLE, example_task

prover = standard_prover("claude", backend=DockerBackend())
task = example_task(EXAMPLE.MUL_REORDER)

result = prover.prove(task, output_dir="runs/example")

Available provers

The ID is the standard prover name used by standard_prover, the CLI prove command's prover argument, and the benchmark command's -p/--provers option. Also see Provers.

Prover ID Skills MCP Paper Source
Claude Code claude leanprover, lean4 ✓ — —
Codex codex leanprover ✓ — GitHub
DeepSeek deepseek leanprover ✓ — GitHub
Grok grok leanprover ✓ — —
Muse Spark spark leanprover ✓ — —
AxProverBase axproverbase — ✗ Requena et al. 2026 GitHub
Leanstral leanstral leanprover ✓ Leanstral (blog) HuggingFace
Kimi Code kimi leanprover ✓ — GitHub
Numina numina — ✓ Liu et al. 2026 GitHub
Aristotle aristotle — — Achim et al. 2025 —

Download common datasets

OpenATP provides utilities to download common proof-synthesis benchmarks (see Downloading a dataset). The available datasets are listed in the DATASET enum.

Benchmark DATASET Toolchain Paper Source
Examples EXAMPLES v4.28.0 — docs
PutnamBench PUTNAM v4.27.0 Tsoukalas et al. 2024 trishullab/PutnamBench
FATE-H FATE_H v4.28.0 Jiang et al. 2025 frenzymath/FATE-H
FATE-M FATE_M v4.28.0 Jiang et al. 2025 frenzymath/FATE-M
FATE-X FATE_X v4.28.0 Jiang et al. 2025 frenzymath/FATE-X

Citing

If you use OpenATP in your work, please cite it:

@software{openatp,
  title = {OpenATP: Open Automated Theorem Proving},
  author = {Henry Robbins},
  year = {2026},
  publisher = {GitHub},
  url = {https://github.com/henryrobbins/open-atp}
}

OpenATP includes provers with associated papers and bundles popular open-source tools for improving agentic theorem proving. Please see Citations for a comprehensive list of references.

Development

See AGENTS.md for development information.

License

MIT

Metadata

Release files for open-atp 0.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for open-atp 0.4.2
File Size Uploaded
open_atp-0.4.2.tar.gz 2.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for open-atp 0.4.2
File Interpreter ABI Platform
open_atp-0.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 2.7 MB

Release files / open_atp-0.4.2.tar.gz

Download URL open_atp-0.4.2.tar.gz
Size 2.0 MB
Tags Source
SHA-256 checksum
How to use checksums
1ae7cad252c88db739b83db64c3142fd0d15f9fd780b82a40f7c7da333e34813
BLAKE2b-256 checksum
How to use checksums
4d6a1a04904aa85d80bf65d599257774519852fbf5e3de29e13400bfd47aeb90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / open_atp-0.4.2-py3-none-any.whl

Download URL open_atp-0.4.2-py3-none-any.whl
Size 706.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
de6913352654644e1aa90ae6b60b8724117c791e4bddb5dd64ca5f35bf6674a0
BLAKE2b-256 checksum
How to use checksums
f360148e23ad0d2dd3c9092d93644c88aaf7e20db82ed2147ab31207452ac109
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.4.2 This release

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page