2016-05-20 15:29:24 +02:00
# plasp—Translate PDDL to ASP
2016-05-20 22:24:24 +02:00
[![Build Status ](https://travis-ci.org/potassco/plasp.svg?branch=master )](https://travis-ci.org/potassco/plasp)
2016-05-20 19:23:28 +02:00
`plasp` 3 is in early development and not intended for productive use yet.
2016-05-24 02:43:48 +02:00
As of now, `plasp` 3 experimentally supports the full [SAS Format ](http://www.fast-downward.org/TranslatorOutputFormat ) (as of version 3) used by [Fast Downward ](http://www.fast-downward.org/ ).
2016-05-24 02:42:31 +02:00
2016-05-20 19:23:28 +02:00
Please get in touch with [Patrick Lühne ](https://www.luehne.de ) if you have any suggestions.
2016-05-20 15:29:24 +02:00
2016-05-24 02:42:31 +02:00
## Usage
2016-05-24 02:43:03 +02:00
To translate an SAS file into ASP facts, call:
2016-05-24 02:42:31 +02:00
```bash
$ plasp file.sas
```
2016-05-24 12:53:09 +02:00
For instance, a PDDL instance can be solved as follows.
First, use [Fast Downward ](http://www.fast-downward.org/ ) to translate the files from PDDL to SAS:
2016-05-24 02:57:00 +02:00
```bash
2016-05-24 12:53:09 +02:00
$ ./fast-downward.py --translate --build=release64 domain.pddl instance.pddl
```
This creates the file `output.sas` .
The translated SAS instance can now be solved incrementally with `clingo` and the meta encoding `meta-sequential-incremental.lp` :
```bash
$ plasp output.sas > instance.lp
$ clingo encodings/meta-sequential-incremental.lp instance.lp
2016-05-24 02:57:00 +02:00
```
2016-05-24 02:51:33 +02:00
## Building
2016-05-24 02:58:11 +02:00
`plasp` requires a C++14 compiler (preferrably GCC ≥ 6.1), the `boost` libraries (≥ 1.55), and CMake for building.
2016-05-24 02:51:33 +02:00
```bash
$ git clone https://github.com/potassco/plasp.git
$ cd plasp
$ mkdir -p build/release
$ cd build/release
$ cmake ../.. -DCMAKE_BUILD_TYPE=Release
$ make
```
The built `plasp` binary is then located at `plasp/build/release/bin/plasp` .
2016-05-20 15:29:24 +02:00
## Contributors
2016-05-20 19:23:28 +02:00
* [Patrick Lühne ](https://www.luehne.de ) (plasp 3)
### Earlier Versions
* Murat Knecht (plasp)
* René Knaebel (plasp 2)