* src/tgbaalgos/ltl2tgba_fm.hh (ltl_to_tgba_fm): Add argument
branching_postponement. * src/tgbaalgos/ltl2tgba_fm.cc (fill_dests): New function, extracted from ltl_to_tgba_fm(). (ltl_to_tgba_fm): Implement the branching_postponement optimization. * src/tgbatest/ltl2tgba.cc: Add the -p option. * src/tgbatest/spotlbtt.test: Exercise branching postponement. * wrap/python/cgi/ltl2tgba.in: Make it an option.
This commit is contained in:
parent
f11df7679a
commit
6b06e28f3d
6 changed files with 150 additions and 44 deletions
|
|
@ -72,6 +72,7 @@ syntax(char* prog)
|
|||
<< std::endl
|
||||
<< " -N display the never clain for Spin "
|
||||
<< "(implies -D)" << std::endl
|
||||
<< " -p branching postponement (implies -f)" << std::endl
|
||||
<< " -r display the relation BDD, not the reachability graph"
|
||||
<< std::endl
|
||||
<< " -R same as -r, but as a set" << std::endl
|
||||
|
|
@ -111,6 +112,7 @@ main(int argc, char** argv)
|
|||
bool magic_many = false;
|
||||
bool expect_counter_example = false;
|
||||
bool from_file = false;
|
||||
bool post_branching = false;
|
||||
|
||||
for (;;)
|
||||
{
|
||||
|
|
@ -194,6 +196,11 @@ main(int argc, char** argv)
|
|||
degeneralize_opt = true;
|
||||
output = 8;
|
||||
}
|
||||
else if (!strcmp(argv[formula_index], "-p"))
|
||||
{
|
||||
post_branching = true;
|
||||
fm_opt = true;
|
||||
}
|
||||
else if (!strcmp(argv[formula_index], "-r"))
|
||||
{
|
||||
output = 1;
|
||||
|
|
@ -300,7 +307,8 @@ main(int argc, char** argv)
|
|||
{
|
||||
if (fm_opt)
|
||||
to_free = a = spot::ltl_to_tgba_fm(f, dict, fm_exprop_opt,
|
||||
fm_symb_merge_opt);
|
||||
fm_symb_merge_opt,
|
||||
post_branching);
|
||||
else
|
||||
to_free = a = concrete = spot::ltl_to_tgba_lacim(f, dict);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -119,6 +119,27 @@ Algorithm
|
|||
Enabled = yes
|
||||
}
|
||||
|
||||
Algorithm
|
||||
{
|
||||
Name = "Spot (Couvreur -- FM post_branch + exprop)"
|
||||
Path = "${LBTT_TRANSLATE} --spot './ltl2tgba -F -f -x -p -t'"
|
||||
Enabled = yes
|
||||
}
|
||||
|
||||
Algorithm
|
||||
{
|
||||
Name = "Spot (Couvreur -- FM post_branch + exprop), degeneralized"
|
||||
Path = "${LBTT_TRANSLATE} --spot './ltl2tgba -F -f -p -x -t -D'"
|
||||
Enabled = yes
|
||||
}
|
||||
|
||||
Algorithm
|
||||
{
|
||||
Name = "Spot (Couvreur -- FM exprop + post_branch), fake"
|
||||
Path = "${LBTT_TRANSLATE} --spot './ltl2tgba -F -f -x -p -T'"
|
||||
Enabled = no
|
||||
}
|
||||
|
||||
Algorithm
|
||||
{
|
||||
Name = "Spot (Couvreur -- FM exprop), fake"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue