Skip to content
Snippets Groups Projects
README.md 1.26 KiB
Newer Older
Gabriel's avatar
Gabriel committed
# Personoj -- Expressing PVS specifications in Dedukti
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
*Personoj* allows to translate specifications from the higher order, automated
proof assistant [PVS](http://pvs.csl.sri.com) into the universal proof checker
[Dedukti](https://deducteam.github.io). Personoj uses
[Lambdapi](https://github.com/Deducteam/lambdapi), an implementation of Dedukti
with meta-variables.
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
This repository contains 
- lambdapi files that define the theory of PVS,
- lisp files that implement a translation from PVS to lambdapi,
- scripts and tools to translate PVS specifications.
gabrielhdt's avatar
gabrielhdt committed

## Requirements
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
- [lambdapi](https://github.com/gabrielhdt/lambdapi.git), revision `aae26f2d`
  from <https://github.com/gabrielhdt/lambdapi.git>
- [PVS sources](https://github.com/SRI-CSL/PVS.git), revision `pvs7.1`

[This repository](https://forge.tedomum.net/koizel/lambdapi-pvs-build) provides
files and tools for reproducible builds and translations.

## Installing the encoding
hondet's avatar
hondet committed

``` sh
Gabriel's avatar
Gabriel committed
bmake -C encoding install
hondet's avatar
hondet committed
```
Gabriel's avatar
Gabriel committed
will install the theory of PVS under the package name `personoj`.

## Exporting PVS to Dedukti
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
### Installation
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
Copy the content of `pvs-load.lisp` into `.pvs.lisp`, replacing `PVSDKPATH` with
the path (absolute or relative to `$HOME`) to the `exporter` directory.
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
### Usage
gabrielhdt's avatar
gabrielhdt committed

Gabriel's avatar
Gabriel committed
See `tools/README.md`.