Skip to main content

Python Library for interfacing with Coq and Tactician

Project description

PyTactician

PyTactician is a Python Library for interfacing with the Coq Proof Assistant through the API of its Tactician plugin and reading associated datasets.

The major version number x of this library indicates the version of the dataset and communication protocol. Any PyTactician version x.y is compatible with the communication protocol x.

Installation

Binary wheels are provided for Linux and MacOS (on PyPI). On those platforms you can install by executing pip install pytactician. If you need to install from source, you need to have Cap'n Proto >= 0.8 installed on your system. See the main repo README for more details on prerequisites. Once you have the prerequisites, you can install by running pip install . from the root of the repository.

Usage

PyTactician provides a library to work with the datasets extracted from Coq and to directly interface with Coq through Tacticians API. The documentation for the library can be found here.

In addition, PyTactician contains a number of executables that can be used to analyze datasets and interact with Coq. Available executables are as follows (use the --help flag for each executable to learn about all the options).

  • pytact-check [-h] [--jobs JOBS] [--quick] [--verbose VERBOSE] dir Run sanity checks on a dataset and print some statistics.
  • pytact-visualize [-h] [--port PORT] [--hostname HOSTNAME] [--dev] [--fast | --workers WORKERS] dataset: Start an interactive server that visualizes a dataset.
  • pytact-server [-h] [--tcp TCP] [--record RECORD_FILE] {graph,text} Example python server capable of communicating with Coq through Tactician's 'synth' tactic To learn how to interface Coq and Tactician with this server, see the sections below.
  • pytact-oracle [-h] [--tcp PORT] [--record RECORD_FILE] {graph,text} dataset A tactic prediction server acting as an oracle, retrieving it's information from a dataset
  • pytact-fake-coq [-h] (--tcp TCP_LOCATION | --stdin EXECUTABLE) data A fake Coq client that connects to a prediction server and feeds it a stream of previously recorded messages.
  • pytact-prover: A dummy example client that interfaces with Coq and Tactician for proof exploration driven by the client.

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

pytactician-15.1.tar.gz (705.2 kB view hashes)

Uploaded Source

Built Distributions

pytactician-15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.5 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pytactician-15.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (6.3 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

pytactician-15.1-cp311-cp311-macosx_10_9_x86_64.whl (2.6 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

pytactician-15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.3 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pytactician-15.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (6.2 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

pytactician-15.1-cp310-cp310-macosx_10_9_x86_64.whl (2.6 MB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

pytactician-15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.3 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pytactician-15.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (6.2 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

pytactician-15.1-cp39-cp39-macosx_10_9_x86_64.whl (2.6 MB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

pytactician-15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.3 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pytactician-15.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (6.2 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

pytactician-15.1-cp38-cp38-macosx_10_9_x86_64.whl (2.6 MB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

Supported by

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