clausal-acl2
ACL2 theorem prover predicates for Clausal Prolog.
Talks to a real ACL2 through its ACL2 Bridge (books/centaur/bridge). Lisp
forms and results cross as Clausal terms -- Clausal's functor-first terms are
Lisp forms -- so an ACL2 term is a Prolog compound:
acl2/2,3,acl2_mv/2— evaluate a form; its value(s) and outputevent/1,2— submit an event (defun,defthm, ...)thm/1,2— prove a termacl2_text/2— a term and its ACL2 text, either wayuse_acl2/1— a running bridge, or the ACL2 to start
Install
pip install clausal-acl2
No Python dependencies. ACL2 is an external program: acl2 on PATH (with its
books, including a certified centaur/bridge), or a running bridge named with
use_acl2/1. Requires Python 3.13 or later.
Use
Import the predicates into a seam (.seam) module. A Clausal Prolog
(.clausal) module reaches Python only through the seam: put the imports in a
.seam module and list it under [tool.clausal] python_bridges in your
project's pyproject.toml (see
Importing Prolog).
This test, from tests/fixtures/docs/acl2_examples.seam:
-import_from(py.acl2, [acl2_text, event, thm])
-private([equal(_, _), app(_, _)])
test("define a function, then prove a theorem about it") <- (
acl2_text(DEFUN, "(defun app (x y) (if (endp x) y (cons (car x) (app (cdr x) y))))"),
event(DEFUN),
thm(equal(app(app('x', 'y'), 'z'), app('x', app('y', 'z'))))
)
Documentation
License
MIT
Metadata
Release files for clausal-acl2 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| clausal_acl2-0.1.0.tar.gz | 13.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| clausal_acl2-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.4 kB
Release files / clausal_acl2-0.1.0.tar.gz
| Download URL | clausal_acl2-0.1.0.tar.gz |
|---|---|
| Size | 13.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f62ee1a2ec7d748218985e1db48d96d341e1b930d4934478db45390dc24f67bd
|
|
BLAKE2b-256 checksum How to use checksums |
0bf191c5248610e2f9b737af8b3279129d2fa79b264e65c9d16bee6335a3376c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.
Transparency logRelease files / clausal_acl2-0.1.0-py3-none-any.whl
| Download URL | clausal_acl2-0.1.0-py3-none-any.whl |
|---|---|
| Size | 8.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4a7ea6194cb5a1655c6ae40472141c270ce17310afd93fd3ef0188251752647e
|
|
BLAKE2b-256 checksum How to use checksums |
c20a32818df73710698fb399f2d487b5f99722ec39c78aa2107e895ebb887ab8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.
Transparency log