-
Notifications
You must be signed in to change notification settings - Fork 0
luke36/LTL
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Requires CMake version 3.8 or higher, and a C++ compiler supporting C++17 or
higher.
Build and test (for example) by:
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
$ ./main < ../test/final1.txt
Or if the transition system and the formulae are in separate files:
$ ./main --ts="TS.txt" --formula="benchmark.txt" --output="result.txt"
Please input in LF format.
Action names and atom proposition names should contain only lower letters,
underlines, and hyphens.
The LTL-to-BA algorithm is almost the same as ltl2ba, or the 2001 paper "Fast
LTL to Büchi Automata Translation". But we do not implement the optimization
using SCCs to relax the equality condition.
ltl.hpp : AST of LTL formulae.
ltl.cpp : Translate LTL formulae to negation normal form.
parse.cpp, parse.hpp : Parse LTL formulae.
nnf.hpp : AST of LTL formulae in negation normal form.
nnf.cpp : Translate LTL formulae in negation normal form to equivalent very weak
alternating automata.
numbering.hpp : Translate between atom proposition names and
action names and their (integer) identifier.
dynbitset.hpp : Bitset with dynamic sizes.
vwaa.hpp, vwaa.cpp : Very weak alternating automate.
gba.hpp : Generalize (nondeterministic) Büchi Automata. The definition differs
from the textbook by using final transitions instead of final states.
gba.cpp : Translation from VWAA to GBA.
buchi.hpp : (Nondeterministic) Büchi Automata.
buchi.cpp : Translation from GBA to BA.
ts.hpp, ts.cpp : Transition systems.
verify.cpp, verify.hpp : Decide whether the product transition system is
empty. The algorithm is a direct copy of "Principles of
Model Checking", page 210-211. Note that we do not
create the product explicitly.
main.cpp : Entry.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published