Skip to main content

Aristotle SDK - Python library for automated theorem proving with Lean

Project description

Aristotle - The Era of Vibe Proving is Here

The Aristotle SDK is a Python library and command-line tool for interacting with the Aristotle API. Aristotle is capable of proving and formally verifying graduate and research level problems in math, software, and more.

Sign up for access and view the complete documentation at aristotle.harmonic.fun

Quick Start

# Install
uv pip install aristotlelib

# Authenticate
export ARISTOTLE_API_KEY="your-api-key-here"

# Submit a Lean project for sorry filling
aristotle submit "Fill in all sorries" --project-dir ./my-lean-project --wait

# Formalize a math paper into Lean
aristotle formalize paper.tex --wait --destination output.tar.gz

Installation

Requires Python 3.10 or later. Pick one of the following methods.

Using uv (recommended)

We recommend uv for fast, reliable Python package management.

Run Aristotle directly without a separate install step:

uvx --from aristotlelib@latest aristotle --version

Or install it into your environment:

uv pip install aristotlelib

Using pip

pip install aristotlelib

To upgrade:

pip install --upgrade aristotlelib

Authentication

To use Aristotle, you need an API key.

  1. Sign up or log in at aristotle.harmonic.fun.
  2. Go to Dashboard → API Keys and create a new key.

Save it as an environment variable (recommended)

Set your key once so it's available automatically in every terminal session.

macOS / Linux

Open your terminal and run these two commands, replacing your-api-key-here with your actual key:

echo 'export ARISTOTLE_API_KEY="your-api-key-here"' >> ~/.zshrc
source ~/.zshrc

The first command saves the key to your shell startup file (~/.zshrc) so every new terminal session will have it. The second command loads it into your current session right away.

If you use bash instead of zsh, replace ~/.zshrc with ~/.bashrc in both commands.

Windows

Open PowerShell and run:

setx ARISTOTLE_API_KEY "your-api-key-here"

Then close and reopen PowerShell for the change to take effect.

Pass it directly to a command

Alternatively, you can add --api-key to any command without saving it:

aristotle submit "My prompt" --api-key your-api-key-here

CLI Quick Refernece

Fill sorries in a Lean project:

aristotle submit "Fill in all sorries in this project" --project-dir ./my-lean-project --wait

Formalize a document:

aristotle formalize paper.tex --wait --destination output.tar.gz

List your recent projects:

aristotle list --limit 10

Get a project's result:

aristotle result <project-id> --destination result.tar.gz

Project details


Download files

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

Source Distribution

aristotlelib-1.0.1.tar.gz (19.0 kB view details)

Uploaded Source

Built Distribution

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

aristotlelib-1.0.1-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file aristotlelib-1.0.1.tar.gz.

File metadata

  • Download URL: aristotlelib-1.0.1.tar.gz
  • Upload date:
  • Size: 19.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.12

File hashes

Hashes for aristotlelib-1.0.1.tar.gz
Algorithm Hash digest
SHA256 14e374b678025a809b2ce24f0310fdb8ea35599160db6339d5c9e62b044c961a
MD5 ccbd68d508d56543fe01a740eace2705
BLAKE2b-256 3b1c2c4c8f866ad5f694e462930e8b8242200f4974a13df4145ec1d40da28859

See more details on using hashes here.

File details

Details for the file aristotlelib-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: aristotlelib-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 22.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.12

File hashes

Hashes for aristotlelib-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7de71c0d647bb87863decf5445280ca9f31bf2586756a740e5da2a434298d998
MD5 0ac297e8b6b56dba73c751cfdc4f1544
BLAKE2b-256 cba1f655928ceda88d67edd3f094248e3ea3438295a95afd49e40514fb489536

See more details on using hashes here.

Supported by

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