- 09 Nov, 2009 6 commits
-
-
Alexandre Duret-Lutz authored
* src/ltlast/formula.hh, src/ltlast/formula.cc (clone): Declare as const.
-
Alexandre Duret-Lutz authored
and formula::destroy. * src/ltlast/atomic_prop.cc, src/ltlast/automatop.cc, src/ltlast/binop.cc, src/ltlast/formula.hh, src/ltlast/formula.cc, src/ltlast/multop.cc, src/ltlast/unop.cc, src/ltlenv/declenv.cc, src/ltlvisit/basicreduce.cc, src/ltlvisit/clone.cc, src/ltlvisit/destroy.cc, src/ltlvisit/nenoform.cc, src/ltlvisit/randomltl.cc, src/ltlvisit/reduce.cc, src/tgbatest/randtgba.cc: Adjust.
-
Alexandre Duret-Lutz authored
Before this patch, every time you cloned a formula, the clone visitor would recurse into the entire AST to increment the reference count of all nodes. When running ltl2tgba_fm on the formula generated by "LTLcounterLinear.pl 8", approx 27% of the time was spent in the clone visitor. After this patch, cloning a formula is just an increment of the reference count of the top node. Children are decremented only when the top node's ref count is decremented to zero. With this change, clone() and destroy() become constant time, the ltl2tgba_fm spend only 0.01% of the time cloning formulae. * src/ltlast/automatop.cc (~automatop): Decrement children. (instance): Decrement children if the instance already exists. * src/ltlast/binop.cc, src/ltlast/multop.cc, src/ltlast/unop.cc: Likewise. * src/ltlvisit/clone.cc (clone): Simplify, now we only need to call ref(). * src/ltlvisit/destroy.cc (destroy): Simplify, now we only need to call unref(). (destroy_visitor): Remove, no longer needed.
-
Alexandre Duret-Lutz authored
* src/ltlast/automatop.cc, src/ltlast/automatop.hh, src/ltlast/binop.cc, src/ltlast/binop.hh, src/ltlast/multop.cc, src/ltlast/multop.hh, src/ltlast/unop.cc, src/ltlast/unop.hh: Add a dump_instance() static method to all class. * src/ltltest/readltl.cc: Add option -r to dump all instances with their reference count, after parsing and after deletion.
-
Alexandre Duret-Lutz authored
* src/ltlast/unop.hh (map): Use unop* as values. * src/ltlast/binop.hh (map): Use binop* as values. * src/ltlast/multop.hh (map): Use multop* as values. * src/ltlast/automatop.hh (paircmp): Rename as tripletcmp. (map): Use automaton* as values, not formula*.
-
Alexandre Duret-Lutz authored
* src/ltlast/automatop.hh, src/ltlast/automatop.cc: Add missing instance_count() functions. * src/tgbatests/eltl2tgba.cc: Add missing instance_count() assertions at the end. * src/tgbatests/ltl2tgba.cc: Also call automatop::instance_count(), even if automatop are not used in ltl2tgba yet. This way we won't forget once eltl2tgba and ltl2tgba are merged.
-
- 07 Nov, 2009 2 commits
-
-
Damien Lefortier authored
-
Damien Lefortier authored
in taa_succ_iterator and allow multiple initial states in taa. * src/tgba/ltl2taa.cc: Remove temporary printing.
-
- 05 Nov, 2009 2 commits
-
-
Alexandre Duret-Lutz authored
* src/tgbatest/defs.in (srcdir): Adjust from VPATH builds. * src/tgbatest/ltlcounter.test (lcdir): Adjust definition to new value of $srcdir. (run): Fix setting of $run after $n = 2. Using run=: would in fact disable all the big tests...
-
Alexandre Duret-Lutz authored
formulae (i.e. n<=2) under valgrind. The test case is too slow otherwise.
-
- 04 Nov, 2009 2 commits
-
-
Alexandre Duret-Lutz authored
* src/sanity/style.test: Make sure sh does not abort when read exits with false.
-
Alexandre Duret-Lutz authored
* src/ltlast/formula.hh (formula_ptr_less_than::operator()): Fix a typo where `l' was typed as `1'. * src/tgbatest/ltlcounter/: New files from Kristin Y. Rozier. * src/tgbatest/ltlcounter.test: New * src/tgbatest/Makefile.am (TESTS): Add ltlcounter.test. (EXTRA_DIST): Add files in ltlcounter/.
-
- 03 Nov, 2009 1 commit
-
-
Alexandre Duret-Lutz authored
* src/tgbatest/ltl2tgba.cc (syntax): Add missing std::endl before -taa. Remove -r8 and -fr8, since they do not exist.
-
- 28 Oct, 2009 2 commits
-
-
Alexandre Duret-Lutz authored
constructor. It does the same thing as the default copy constructor, and g++ 4.2.3 complained that the copy constructor of spot::state was not called. Reported by Denis Poitrenaud.
-
Alexandre Duret-Lutz authored
return 0 at the end to prevent g++ 4.2.3 from complaining about a missing return. Reported by Denis Poitrenaud.
-
- 23 Oct, 2009 1 commit
-
-
Alexandre Duret-Lutz authored
-
- 22 Oct, 2009 3 commits
-
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/scc.cc (dump_scc_dot): Escape labels and other strings output between quote in dot. * src/tgbatest/kv.test: New file. * src/tgbatest/Makefile.am (TESTS): Add it.
-
Alexandre Duret-Lutz authored
-
Damien Lefortier authored
* src/tgba/taa.cc, src/tgba/taa.hh: taa_succ_iterator is not on-the-fly anymore allowing some redundant transitions to be removed. Also a new function to output a TAA. * src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2taa.hh: Add the refined rules from Tauriainen. * src/tgbatest/ltl2tgba.cc: Use -c to activate refined rules in ltl_to_taa. * src/tgbatest/spotlbtt.test: More tests.
-
- 17 Oct, 2009 1 commit
-
-
Damien Lefortier authored
* src/tgba/taa.cc, src/tgbaalgos/ltl2taa.cc: Fix style.
-
- 16 Oct, 2009 3 commits
-
-
Damien Lefortier authored
* src/misc/bddop.hh, src/tgba/taa.hh, src/tgbaalgos/ltl2taa.hh: Fix sanity (incorrect include guard). * src/tgba/tgbacomplement.cc, src/tgba/tgbacomplement.hh: Copyright 2009. * src/tgbaalgos/eltl2tgba_lacim.cc: Use abbreviations. * src/tgbatest/taa.cc: Fix it.
-
Damien Lefortier authored
TGBA which uses TAA as an intermediate representation. This is a basic version, optimizations and enhancements will come later. * src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2taa.hh: The algortihm. * src/tgbaalgos/Makefile.am: Adjust. * src/tgbatest/ltl2tgba: New option: -taa, which uses this new translation algorithm. * src/tgbatest/spotlbtt.test: Add ltl2tgba -taa.
-
Damien Lefortier authored
* misc/Makefile.am, misc/bbop.cc, misc/bddop.hh: Factorize some code on BDDs to compute all_acceptance_conditions from neg_acceptance_condition. * src/tgba/Makefile.am, src/tgbatest/Makefile.am: Adjust. * src/tgba/taa.cc, src/tgba/taa.hh: The TAA class. * src/tgba/tgbaexplicit.hh: Use the factorized code in bddop.hh. * src/tgbatest/taa.cc, src/tgbatest/taa.test: Some test cases.
-
- 07 Oct, 2009 1 commit
-
-
Alexandre Duret-Lutz authored
-
- 01 Oct, 2009 7 commits
-
-
Alexandre Duret-Lutz authored
-
Guillaume Sadegh authored
the original automaton has no acceptance condition. * src/tgba/tgbasgba.cc, src/tgba/tgbasgba.hh: New option: when the original automaton has no accepting condition, it explicitly considers that every state is accepting.
-
Guillaume Sadegh authored
shared_ptr on states... * src/tgba/state.hh: ... here. * src/tgbatest/complementation.test: Do not apply some tests on the new algorithm because it takes to much time to run.
-
Guillaume Sadegh authored
* src/tgba/tgbacomplement.cc, src/tgba/tgbacomplement.hh: The construction. * src/tgbatest/Makefile.am: Adjust. * src/tgbatest/complementation.cc: Add options to support this construction in addition to Safra construction. * src/tgba/Makefile.am: Adjust. * src/tgbatest/complementation.test: Adjust to test also this complementation.
-
Guillaume Sadegh authored
src/tgbatest/dfs.test: Adjust headers to 80 columns.
-
Guillaume Sadegh authored
* src/tgba/tgbasgba.hh, src/tgba/tgbasgba.hh: Here. * src/tgbatest/ltl2tgba.cc: New option `-lS' for state-labeled automata. * src/tgba/Makefile.am: Adjust and sort files in tgba_HEADERS and libtgba_la_SOURCES.
-
Guillaume Sadegh authored
* src/tgba/tgbacomplement.cc, src/tgba/tgbacomplement.hh: Rename as... * src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh: ... these, and adjust class name. * src/tgba/Makefile.am, src/tgbatest/Makefile.am: Adjust. * src/tgbatest/complementation.cc: Adjust.
-
- 28 Sep, 2009 1 commit
-
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/scc.cc (scc_map::update_supp_rec): Also take the label of the outgoing edges into account.
-
- 18 Sep, 2009 1 commit
-
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/scc.hh (scc_map::scc::supp_rec): Initialize to bddfalse, since this cannot occur in reallife. * src/tgbaalgos/scc.cc (scc_map::update_supp_rec): Adjust.
-
- 17 Sep, 2009 2 commits
-
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/scc.hh (scc_map::scc): Add a supp_rec member to hold reachable APs. * src/tgbaalgos/scc.cc (scc_map::update_supp_rec): New function, to update supp_rec. (scc_map::build_map): Call it. (scc_map::aprec_set_of): New function. (dump_scc_dot): Show the output of aprec_set_of().
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/scc.hh (scc_map::scc): Add a supp member to hold APs. * src/tgbaalgos/scc.cc (scc_map::build_map): Update supp. (scc_map::ap_set_of): New function. (dump_scc_dot): Show the output of ap_set_of().
-
- 08 Sep, 2009 1 commit
-
-
Alexandre Duret-Lutz authored
-
- 07 Sep, 2009 4 commits
-
-
Damien Lefortier authored
* src/eltlparse/eltlparse.yy: Free the automatop::vec when CHECK_ARITY fails while parsing an automatop. * src/eltltest/acc.cc: Free all constructed formulae.
-
Alexandre Duret-Lutz authored
* src/ltlvisit/contain.cc (reduce_tau03_visitor::visit): Free the operand array when a multop reduces to a constant.
-
Alexandre Duret-Lutz authored
* src/ltltest/randltl.cc: Free the atomic properties from AP before exit.
-
Damien Lefortier authored
size of TGBAs represented as BDDs by deleting unaccepting SCCs. * src/eltlparse/eltlparse.yy: Remove a warning. * src/tgba/tgbabddconcrete.cc, src/tgba/tgbabddconcrete.hh, src/tgba/tgbabddcoredata.cc, src/tgba/tgbabddcoredata.hh: Add a new function delete_unaccepting_scc in both classes. * src/tgbatest/eltl2tgba.cc, src/tgbatest/spotlbtt.test: Use this new function in LaCIM for ELTL and bench it. * src/tgbatest/defs.in: Fix it. * bench/ltl2tgba/algorithms, bench/ltl2tgba/defs.in: Add LaCIM for ELTL in benchs.
-