Restructured documentation of feature requirements and added an example.

This commit is contained in:
Patrick Lühne 2016-08-13 17:52:27 +02:00
parent d00c5bb753
commit 18ac959970

View File

@ -2,24 +2,35 @@
`plasp` 3 translates SAS and PDDL files into the same ASP fact format. `plasp` 3 translates SAS and PDDL files into the same ASP fact format.
## Syntax and Semantics
`plasp` structures the translated ASP facts into the multiple sections, which are explained in the following. `plasp` structures the translated ASP facts into the multiple sections, which are explained in the following.
### Feature Requirements ## Feature Requirements
Declares advanced features required by the input planning problem, such as conditional effects and axiom rules. Declares advanced features required by the input planning problem, such as conditional effects and axiom rules.
Feature requirements may be used in meta encodings to warn about unsupported features. Feature requirements may be used in meta encodings to warn about unsupported features.
### Syntax
syntax | description syntax | description
-------|------------ -------|------------
`requiresFeature(<feature>).` | declares the feature `<feature>` to be required by the input problem `requiresFeature(<feature name>).` | declares the feature `<feature name>` to be required by the input problem
Currently, feature requirements are only recognized with SAS problems. Currently, feature requirements are only recognized with SAS problems.
`plasp` supports the following feature requirements:
SAS feature | description SAS feature | description
------------|------------ ------------|------------
`actionCosts` | actions have associated costs `actionCosts` | actions have associated costs
`axiomRules` | immediate actions are used, which are executed as soon as the preconditions are satisfied `axiomRules` | immediate actions are used, which are executed as soon as the preconditions are satisfied
`conditionalEffects` | some effects of an action may have additional conditions `conditionalEffects` | some effects of an action may have additional conditions
### Example
The following specifies that the input problem has the two requirements `actionCosts` and `conditionalEffects`.
```prolog
% requirements
requiresFeature(actionCosts).
requiresFeature(conditionalEffects).
```