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.0.tar.gz (17.9 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.0-py3-none-any.whl (21.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aristotlelib-1.0.0.tar.gz
  • Upload date:
  • Size: 17.9 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.0.tar.gz
Algorithm Hash digest
SHA256 46abe385ec96ebfe6a141ea800d373ecc055e6a10998fdd9285fa430adf2f736
MD5 ce97702ef85765ccb13ef33eda82e7b2
BLAKE2b-256 be3e7a3d64c24bc09cb690321eefe22e9dfe10f7c2b0a56cfc622a5ad74d4e86

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aristotlelib-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 21.7 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 293f9979033adb2170e16f065441dc8b4a8edf38854a8fa3eae506b3fe55116b
MD5 7ecdf508c6ca85f210790746166f371e
BLAKE2b-256 45dfae307c7339db8c5f90b3beff12fffdccc18679a926e97c48ff7638b72528

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