doc: Build instructions
This commit is contained in:
parent
7d4ee57c15
commit
8dd59bb891
12
README.md
12
README.md
|
@ -16,6 +16,18 @@ poetry build
|
||||||
poetry install
|
poetry install
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
Build the documentations by
|
||||||
|
```sh
|
||||||
|
jupyter-book build docs
|
||||||
|
```
|
||||||
|
Then serve
|
||||||
|
```sh
|
||||||
|
cd docs/_build/html
|
||||||
|
python3 -m http.server -d .
|
||||||
|
```
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
|
|
||||||
For API interaction examples, see `examples/README.md`
|
For API interaction examples, see `examples/README.md`
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
format: jb-book
|
format: jb-book
|
||||||
root: intro
|
root: intro
|
||||||
parts:
|
parts:
|
||||||
- caption: Basic examples 🪄
|
- caption: Features
|
||||||
chapters:
|
chapters:
|
||||||
- file: search
|
- file: goal
|
||||||
|
- file: proof_search
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
# Goals and Tactics
|
||||||
|
|
||||||
|
Executing tactics in Pantograph is very simple.
|
||||||
|
|
||||||
|
```python
|
||||||
|
from pantograph import Server
|
||||||
|
|
||||||
|
server = Server()
|
||||||
|
state0 = server.goal_start("forall (p q: Prop), Or p q -> Or q p")
|
||||||
|
state1 = server.goal_tactic(state0, goal_id=0, tactic="intro a")
|
||||||
|
```
|
||||||
|
|
|
@ -1,2 +1,25 @@
|
||||||
# Intro
|
# Intro
|
||||||
|
|
||||||
|
This is PyPantograph, an machine-to-machine interaction interface for Lean 4.
|
||||||
|
Its main purpose is to train and evaluate theorem proving agents. The main
|
||||||
|
features are:
|
||||||
|
1. Interfacing via the Python library, REPL, or C Library
|
||||||
|
2. A mixture of expression-based and tactic-based proofs
|
||||||
|
3. Pantograph has been designed with facilitating search in mind. A theorem
|
||||||
|
proving agent can simultaneously explore multiple branches of the proof.
|
||||||
|
4. Handling of metavariable coupling
|
||||||
|
5. Reading/Adding symbols from the environment
|
||||||
|
6. Extraction of tactic training data
|
||||||
|
7. Support for drafting
|
||||||
|
|
||||||
|
## Design Rationale
|
||||||
|
|
||||||
|
The Lean 4 interface is not conducive to search. Readers familiar with Coq may
|
||||||
|
know that the Coq Serapi was superseded by CoqLSP. In the opinion of the
|
||||||
|
authors, this is a mistake. An interface conducive for human operators to write
|
||||||
|
proofs is often not an interface conductive to search.
|
||||||
|
|
||||||
|
LeanDojo has architectural limitations that prevent it from gaining new features
|
||||||
|
such as drafting without refactoring. Almost all of Pantograph's business logic
|
||||||
|
is written in Lean, and Pantograph achieves tighter coupling between the data
|
||||||
|
extraction and proof search components.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Search
|
# Proof Search
|
||||||
|
|
||||||
About search ...
|
About search ...
|
||||||
|
|
Loading…
Reference in New Issue