You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: DEVELOPING.md
+16-16Lines changed: 16 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,16 +8,16 @@ It uses the [Dune](https://dune.build/) build system for OCaml, with [Make](http
8
8
Release Channels
9
9
----------------
10
10
Past versioned releases can be downloaded from the [GitHub Releases page](https://github.com/tlaplus/tlapm/releases).
11
-
For the latest development version, download the builds attached to the [1.6.0 rolling pre-release](https://github.com/tlaplus/tlapm/releases/tag/1.6.0-pre) or follow the instructions below to build TLAPM from source.
11
+
For the latest development version, download the builds attached to the [1.6.0 rolling pre-release](https://github.com/tlaplus/tlapm/releases/tag/1.6.0-pre) or follow the instructions below to build TLAPS from source.
12
12
13
13
Dependencies
14
14
------------
15
-
TLAPM development & use is only supported on Unix-like systems, such as:
15
+
TLAPS development & use is only supported on Unix-like systems, such as:
16
16
* Any modern Linux
17
17
* macOS
18
18
* Windows Subsystem for Linux
19
19
20
-
For building TLAPM, some Linux distros require additional packages beyond the base install; on Debian/Ubuntu:
20
+
For building TLAPS, some Linux distros require additional packages beyond the base install; on Debian/Ubuntu:
21
21
```sh
22
22
apt install zlib1g-dev gawk time
23
23
```
@@ -38,7 +38,7 @@ eval $(opam env --switch=5.1.0)
38
38
```
39
39
You can put the `eval` statement in your shell init file (`~/.bashrc` or similar) to ensure your shell always has an active OCaml environment.
40
40
41
-
Build & Install TLAPM
41
+
Build & Install TLAPS
42
42
---------------------
43
43
Clone this repo & open a shell in its root.
44
44
Install OCaml package dependencies with:
@@ -49,26 +49,26 @@ make opam-deps-opt
49
49
```
50
50
Package dependencies are unfortunately not yet declarative, but [will be in the future](https://github.com/tlaplus/tlapm/issues/158#issuecomment-2455455589).
51
51
52
-
Compile the embedded dependencies and TLAPM with:
52
+
Compile the embedded dependencies and TLAPS with:
53
53
```sh
54
54
make
55
55
```
56
-
Install TLAPM to your local OCaml environment with:
56
+
Install TLAPS to your local OCaml environment with:
57
57
```sh
58
58
make install
59
59
```
60
60
This should put `tlapm` on your path from your local OCaml environment, but if not you can run:
61
61
```sh
62
62
opam exec -- tlapm --help
63
63
```
64
-
Compile a TLAPM release distributable with:
64
+
Compile a TLAPS release distributable with:
65
65
```sh
66
66
make release
67
67
```
68
68
This will output a file to `_build/tlaps-$GIT_COMMMIT_HASH-$ARCH-$OS.tar.gz`; for example, running `make release` on Linux produced the file `_build/tlaps-a7a3a0a-x86_64-linux-gnu.tar.gz`.
69
-
This file can be used the same as any downloaded TLAPM release.
69
+
This file can be used the same as any downloaded TLAPS release.
70
70
71
-
Test TLAPM
71
+
Test TLAPS
72
72
----------
73
73
You can run all tests with:
74
74
```sh
@@ -87,7 +87,7 @@ If you are new to OCaml coming from other programming languages, you might expec
87
87
This is not so!
88
88
The OCaml debugger is not often used, and [you will encounter many problems](https://github.com/tlaplus/tlapm/discussions/143#discussioncomment-10277989) when trying to use it.
89
89
Instead (as befits a functional language), people use a REPL when analyzing parts of the codebase.
90
-
The [UTop](https://opam.ocaml.org/blog/about-utop/) REPL (aka toplevel) works well; you can enter a UTop instance with TLAPM libraries available by running:
90
+
The [UTop](https://opam.ocaml.org/blog/about-utop/) REPL (aka toplevel) works well; you can enter a UTop instance with TLAPS libraries available by running:
91
91
```sh
92
92
dune utop
93
93
```
@@ -102,26 +102,26 @@ There are other files and directories beyond these, but these are the most impor
102
102
├── README.md # Basic info about the project
103
103
├── DEVELOPING.md # This document
104
104
├── CONTRIBUTING.md # How to contribute to the project
105
-
├── hints.txt # Some tips on effectively writing TLAPM proofs
105
+
├── hints.txt # Some tips on effectively writing TLAPS proofs
This repository hosts the TLA⁺ Proof Manager TLAPM, formerly known as TLAPS.
6
-
TLAPM translates TLA⁺ proof constructs into forms understood by an array of backend solvers & theorem provers, enabling machine-checked proofs of correctness for TLA⁺ specifications.
7
-
TLAPM's development is managed by the [TLA⁺ Foundation](https://foundation.tlapl.us/).
5
+
This repository hosts what is collectively called the TLA⁺ Proof System, or TLAPS.
6
+
It consists of the TLA⁺ Proof Manager `tlapm` that interprets TLA⁺ proofs & manages their state, as well as interfaces to automatic backend provers such as [SMT](https://en.wikipedia.org/wiki/Satisfiability_modulo_theories) solvers like [Z3](https://github.com/Z3Prover/z3), the [tableau](https://en.wikipedia.org/wiki/Method_of_analytic_tableaux) prover [Zenon](https://github.com/zenon-prover/zenon), the [Isabelle](https://isabelle.in.tum.de/)/TLA⁺ object logic, and the LS4 decision procedure for [propositional temporal logic](https://en.wikipedia.org/wiki/Linear_temporal_logic).
7
+
8
+
TLAPS development is managed by the [TLA⁺ Foundation](https://foundation.tlapl.us/).
8
9
For documentation, see http://proofs.tlapl.us.
9
10
For information on TLA⁺ generally, see http://tlapl.us.
10
11
11
12
Installation & Use
12
13
------------------
13
14
Past versioned releases can be downloaded from the [GitHub Releases page](https://github.com/tlaplus/tlapm/releases).
14
-
For the latest development version, download the builds attached to the [1.6.0 rolling pre-release](https://github.com/tlaplus/tlapm/releases/tag/1.6.0-pre) or follow the instructions in [`DEVELOPING.md`](DEVELOPING.md) to build TLAPM from source.
15
+
For the latest development version, download the builds attached to the [1.6.0 rolling pre-release](https://github.com/tlaplus/tlapm/releases/tag/1.6.0-pre) or follow the instructions in [`DEVELOPING.md`](DEVELOPING.md) to build TLAPS from source.
15
16
16
-
Once TLAPM is installed, run `tlapm --help` to see documentation of the various command-line parameters.
17
+
Once TLAPS is installed, run `tlapm --help` to see documentation of the various command-line parameters.
17
18
Check the proofs in a simple example spec in this repo by running:
18
19
```sh
19
20
tlapm examples/Euclid.tla
@@ -22,14 +23,14 @@ Documentation is hosted at http://proofs.tlapl.us, or can be viewed locally from
22
23
23
24
Developing & Contributing
24
25
-------------------------
25
-
For instructions on building & testing TLAPM as well as setting up a development environment, see [DEVELOPING.md](DEVELOPING.md).
26
+
For instructions on building & testing TLAPS as well as setting up a development environment, see [DEVELOPING.md](DEVELOPING.md).
26
27
27
28
We welcome your contributions to this open source project!
28
-
TLAPM is used in safety-critical systems, so we have a contribution process in place to ensure quality is maintained; read [CONTRIBUTING.md](CONTRIBUTING.md) before beginning work.
29
+
TLAPS is used in safety-critical systems, so we have a contribution process in place to ensure quality is maintained; read [CONTRIBUTING.md](CONTRIBUTING.md) before beginning work.
29
30
30
31
Authors
31
32
-------
32
-
The following people were instrumental in creating TLAPM:
33
+
The following people were instrumental in creating TLAPS:
0 commit comments