Benchmark files can be found here. Includes both dot graph files and also automata info files.
optionally create xcodeproj from swift package using swift package generate-xcodeproj to work with XCode
- EAHyper (AAlta and PLTL supported).
- Optionally BoSy (Swift) to synthesize strategies from the LTL specifications generated by KBoSy.
- set environment variable
EAHYPER_SOLVER_DIR="...../eahyper/LTL_SAT_solver" - set environment variable
KBOSY_EAHYPER_BINARY="..../eahyper/eahyper_src/eahyper.native" - set environment variable
KBOSY_OUTPUT_DIR - set environment variable
KBOSY_ROOT_DIRto absolute path of KBoSy's root directory - optionally set environment variable
KBOSY_INPUT_DIRto directory to avoid the need to specify absolute paths for both specification, input file and dot-graph - adjust BoSy Directory in
bosy_run.shscript if it is desired to call BoSy automatically after KBoSy for LTL synthesis
- support for Aalta backend in EAHyper, very significant performance benefits due to optimzation for early termination (reports in thesis)
- Build and run scripts require at least Swift 5.2.4 to be installed
- Specifies which APs are observable and which are not (every AP has to be contained in either of those sets)
- Specifies KLTL specification that is synthesised by BoSy after knowledge has been abstracted away
- Specifies Output APs that are under control by the later BoSy-synthesized strategy
- May specify candidate states for Knowledge terms which would skip the internal model checking to determine this candidate states algorithmically
- Examples given in Benchmark Repo
- Needs to mark at least one state as initial state
- Graph has to be complete, ie. at any point in time every state has to have at least one applicable transition.
- Transition Conditions have to be given in DNF Form.
- All APs have to be specified in AutomataInfo File beforehand.
- Examples given in Benchmark Repo
-ispecifies input automata file. Can be given as relative path starting from the environment variableKBOSY_INPUT_DIRwhich may be set.-dspecifies dot graph of the environmen behavior. Can be given as relative path starting from the environment variableKBOSY_INPUT_DIRwhich may be set.--benchmarkto output performance breakdown of different tasks performed by KBoSy.--synthesizeto automatically forward the resulting LTL synthesis task to BoSy.--aaltato use Aalta satifiability checker instead of default PLTL. Results in significant performance improvements as reported in my thesis.