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.

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
OpenCode opencode leanprover GitHub
AxProverBase axproverbase Requena et al. 2026 GitHub
Leanstral leanstral leanprover Leanstral (blog) HuggingFace
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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

open_atp-0.3.0.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

open_atp-0.3.0-py3-none-any.whl (681.2 kB view details)

Uploaded Python 3

File details

Details for the file open_atp-0.3.0.tar.gz.

File metadata

  • Download URL: open_atp-0.3.0.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","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}

File hashes

Hashes for open_atp-0.3.0.tar.gz
Algorithm Hash digest
SHA256 adc00bfd0d99efc09cc3f2b9b807877de732f76d4e055cc2c85abe112c841f95
MD5 fed7d8a1e8e64bcd8cbe16eab285c05b
BLAKE2b-256 4e425be09cca1e14520210a6562011c930b04d09168632dd1e2f4180e57ab986

See more details on using hashes here.

File details

Details for the file open_atp-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: open_atp-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 681.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","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}

File hashes

Hashes for open_atp-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0edd761721f7749fb9ba346aca6bf541f975f0a88704cf698e302a76f2065bf6
MD5 2aa2af70821dd3f993dec641b1cc9a6c
BLAKE2b-256 aec3669e502ffc6b4a87afef2168e597487e6fc5b75df207d3bb7f9c47e4090f

See more details on using hashes here.

Release history Release notifications | RSS feed

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

This release

0.3.0 This release

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page