- 28 Apr, 2012 16 commits
-
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/ltl2tgba_fm.cc (ltl_trad_visitor): Take an exprop argument, and use it while translation <>-> operators. * src/tgbatest/ltl2tgba.test (check_psl): Use -x too.
-
Alexandre Duret-Lutz authored
* src/ltlast/multop.hh (multop::type::Fusion): New operator. * src/ltlast/multop.cc: Handle it. * src/ltlparse/ltlparse.yy: Declare OP_FUSION and add grammar rules. * src/ltlparse/ltlscan.ll: Recognize ":" as OP_FUSION. * src/tgbaalgos/ltl2tgba_fm.cc (ratexp_trad_visitor::visit): Add translation rule for multop::Fusion. * src/tgbatest/ltl2tgba.test: Add more tests. * src/ltlvisit/basicreduce.cc, src/ltlvisit/consterm.cc, src/ltlvisit/contain.cc, src/ltlvisit/mark.cc, src/ltlvisit/nenoform.cc, src/ltlvisit/syntimpl.cc, src/ltlvisit/tostring.cc, src/tgba/formula2bdd.cc, src/tgbaalgos/eltl2tgba_lacim.cc, src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2tgba_lacim.cc: Handle multop::Fusion in switches.
-
Alexandre Duret-Lutz authored
For instance "(a+#e);(b+#e);(c*)" does. * src/ltlvisit/consterm.cc: Fix handling of Concat operator. * src/ltltest/consterm.test: Add more tests.
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/ltl2tgba_fm.cc: Implement translation for recently introduced operators. * src/tgbatest/ltl2tgba.test: Add some PSL tests.
-
Alexandre Duret-Lutz authored
* src/ltlvisit/mark.cc, src/ltlvisit/mark.hh: New files. * src/ltlvisit/Makefile.am: Add mark.hh and mark.cc.
-
Alexandre Duret-Lutz authored
* src/ltlast/binop.cc, src/ltlast/binop.hh: Introduce EConcatMarked ("<>+>"). * src/ltlvisit/basicreduce.cc, src/ltlvisit/consterm.cc, src/ltlvisit/lunabbrev.cc, src/ltlvisit/nenoform.cc, src/ltlvisit/reduce.cc, src/ltlvisit/simpfg.cc, src/ltlvisit/syntimpl.cc, src/ltlvisit/tostring.cc, src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/eltl2tgba_lacim.cc, src/tgbaalgos/ltl2tgba_lacim.cc, src/tgba/formula2bdd.cc, src/tgba/formula2bdd.cc: Deal with it if possible or ignore it.
-
Alexandre Duret-Lutz authored
* src/ltlast/multop.cc: Handle it.
-
Alexandre Duret-Lutz authored
* src/ltlast/binop.cc: Add simplification rules.
-
Alexandre Duret-Lutz authored
* src/ltltest/nenoform.test, src/ltltest/equals.test, src/ltltest/consterm.test: Update tests for rational ops. * src/ltltest/consterm.cc: Use parse_ratexp(). * src/ltlast/binop.cc: Fix simplification rules for []-> and <>->.
-
Alexandre Duret-Lutz authored
* src/ltlparse/ltlparse.yy (parse_ratexp): New function. (START_LTL, START_RATEXP): Add these new tokens. (result): Parse and LTL formula or a rational expression depending on the start symbol. * src/ltlparse/public.hh (parse_ratexp): New function. * src/ltlparse/parsedecl.hh (flex_set_buffer): Add a new argument to set the starting rule. * src/ltlparse/ltlscan.ll (flex_set_buffer): Adjust. (start_token): New global variable. Return this as first token if it is set.
-
Alexandre Duret-Lutz authored
* src/ltlast/binop.hh, src/ltlast/binop.cc (EConcat, UConcat): Add these new operators. * src/ltlparse/ltlparse.yy, src/ltlparse/ltlscan.ll: Parse these new operators. * src/ltlvisit/simpfg.cc, src/ltlvisit/syntimpl.cc, src/ltlvisit/tostring.cc, src/ltlvisit/basicreduce.cc, src/ltlvisit/consterm.cc, src/ltlvisit/lunabbrev.cc, src/ltlvisit/nenoform.cc, src/ltlvisit/reduce.cc src/tgba/formula2bdd.cc, src/tgbaalgos/eltl2tgba_lacim.cc, src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2tgba_fm.cc, src/tgbaalgos/ltl2tgba_lacim.cc: Add these new operators into the switches.
-
Alexandre Duret-Lutz authored
* src/ltlvisit/Makefile.am: Add consterm.cc and consterm.hh. * src/ltlvisit/consterm.hh, src/ltlvisit/consterm.cc: New files. * src/ltltest/Makefile.am: Add consterm.cc and consterm.test. * src/ltltest/consterm.cc, src/ltltest/consterm.test: New files.
-
Alexandre Duret-Lutz authored
-
Alexandre Duret-Lutz authored
Trivial simplifications rules (such as "FFa=Fa" or "x&1=x") are performed any time a formule is instanciated. * src/ltlast/constant.hh, src/ltlast/constant.cc (true_instance, true_instance_): Declare the true_instance_ as a static member, and move true_instance() into the .hh so it gets inlined. Have true_instance_ as a class variable will ensure that it is the first formula instantiated. Binop simplifications rely on this to order arguments. (false_instance, false_instance_): Likewise. (empty_word_instance, empty_word_instance_): New method and static member. * src/ltlast/formula.hh (formula::formula): If max_count_ ever loops, skip the first three values so that constants always have smaller hash codes. * src/ltlast/binop.hh, src/ltlast/binop.cc (instance): Add simplifications and document them. * src/ltlast/multop.hh (multop::Concat): New operator. * src/ltlast/multop.cc (op_name): Handle Concat. (instance): Inline Concat arguments without reordering. Handle absorbent and neutral elements for all operators. * src/ltlast/unop.hh (unop::Star): New operator. * src/ltlast/unop.cc (op_name): Handle Star. (instance): Handle Star, and add trivial simplifications for other unary operators. * src/ltlparse/ltlparse.yy (OP_CONCAT, OP_STAR, CONST_EMPTYWORD): Declare these new operators and add rules for them. * src/ltlparse/ltlscan.ll (OP_CONCAT, OP_STAR, CONST_EMPTYWORD): Output these new operators. * src/ltltest/equals.test: New tests. * src/ltltest/parse.test: Remove redundant test. * src/ltltest/tunabbrev.test, src/tgbatest/emptchk.test: Adjust tests. * src/ltlvisit/basicreduce.cc, src/ltlvisit/contain.cc, src/ltlvisit/nenoform.cc, src/ltlvisit/reduce.cc, src/ltlvisit/syntimpl.cc, src/ltlvisit/tostring.cc, src/ltlvisit/tunabbrev.cc: Complete visitors to handle new operators. * src/ltltest/nenoform.test: More tests. * src/ltlvisit/lunabbrev.cc (unabbreviate_logic_visitor::visit): Clone formulae before instance() function actually have a chance to destroy them. * src/tgba/formula2bdd.cc, src/tgbaalgos/eltl2tgba_lacim.cc, src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2tgba_fm.cc, src/tgbaalgos/ltl2tgba_lacim.cc: Adjust switches to assert on new operators.
-
Alexandre Duret-Lutz authored
* src/ltlast/multop.cc (instance): Handle neutral and absorbent elements for the operator. * src/ltltest/equals.test: Add more tests.
-
Alexandre Duret-Lutz authored
* NEWS: Here.
-
- 27 Apr, 2012 10 commits
-
-
Alexandre Duret-Lutz authored
* iface/dve2/dve2check.test: Here.
-
Alexandre Duret-Lutz authored
* doc/gpl.texi: Fix make pdf for newer texinfo.tex.
-
Alexandre Duret-Lutz authored
* src/tgbatest/ltl2tgba.cc: Here. * src/tgbatest/spotlbtt.test: Adjust.
-
Alexandre Duret-Lutz authored
This implementation of direct simulation was only working on degeneralized automata, and produce automata that are inferiors to those output by the new direct simulation implementation (in tgba/simulation.hh) which can also work on TGBA. The delayed simulation has never been reliable. It's time for some spring cleaning. * src/tgba/tgbareduc.hh, src/tgba/tgbareduc.cc: Delete. * src/tgba/Makefile.am: Adjust. * src/tgbaalgos/reductgba_sim.cc, src/tgbaalgos/reductgba_sim.hh: Remove all code, and keep only a deprecated replacement from reduc_tgba_sim(). * src/tgbaalgos/reductgba_sim_del.cc: Delete. * src/tgbaalgos/Makefile.am: Adjust. * src/tgbatest/reduccmp.test, src/tgbatest/reductgba.cc, src/tgbatest/reductgba.test: Delete. * src/tgbatest/Makefile.am: Adjust. * src/tgbatest/ltl2tgba.cc: Undocument options -R1s, -R1t, -R2s, -R2t, and implement them using the new direct simulation. Remove options -Rd and -RD. * src/tgbatest/spotlbtt.test: Remove entry using these old options. * wrap/python/spot.i: Do not process tgbaalgos/reductgba_sim.cc.
-
Alexandre Duret-Lutz authored
* src/tgbaalgos/simulation.hh: Mention the fact that this is a "direct" simulation. * wrap/python/ajax/ltl2tgba.html: Likewise, and change the key to "ds". * wrap/python/ajax/protocol.txt, wrap/python/ajax/spot.in: Adjust.
-
Alexandre Duret-Lutz authored
* README: Here.
-
Alexandre Duret-Lutz authored
* iface/dve2/dve2.cc: Here.
-
Alexandre Duret-Lutz authored
* configure.ac: Check for times() and sys/times.h. * src/misc/timer.hh: Include sys/times.h conditionally and use clock() if times() is not available. Reported by Yann Thierry-Mieg.
-
Alexandre Duret-Lutz authored
* src/misc/memusage.cc: Do not include the unneeded sys/time.hh and sys/resource.h. Reported by Yann Thierry-Mieg.
-
Alexandre Duret-Lutz authored
* configure.ac: Do not check for mkstemp(), it is not used.
-
- 18 Apr, 2012 4 commits
-
-
Thomas Badie authored
* wrap/python/ajax/spot.in: Add the simulation. * wrap/python/ajax/protocol.txt: Add the direct simulation in the automaton simplifications section. * wrap/python/spot.i (simulation_new): Create a function which takes an automaton and a call to the simulation with the good template parameter. * wrap/python/ajax/ltl2tgba.html: Add the direct simulation checkbox.
-
Thomas Badie authored
* bench/ltl2tgba/known (ltlfile): Add a $srcdir. * bench/ltlclasses/defs.in (builddir): Add the $builddir. * bench/ltlclasses/run (gen): Change the $srcdir into $builddir.
-
Thomas Badie authored
* src/tgbaalgos/simulation.cc, src/tgbaalgos/simulation.hh: New files. * src/tgbaalgos/Makefile.am: Add the new files to the compilation. * src/tgbatest/spotlbtt.test: Add the simulation. * src/tgbatest/ltl2tgba.cc: Add direct simulation (-RSD).
-
Thomas Badie authored
* src/misc/acccompl.cc, src/misc/acccompl.hh: Add a way to an acceptance condition in an automaton, into its complement. Create a method to make the reverse operation. * src/misc/Makefile.am: Add the new files to the compilation.
-
- 13 Apr, 2012 3 commits
-
-
Alexandre Duret-Lutz authored
* src/tgba/tgbatba.cc (tgba_tba_proxy::~tgba_tba_proxy): Zero last_support_conditions_input_ and last_support_variables_input_.
-
Alexandre Duret-Lutz authored
* src/tgbatest/explicit2.test: New file. * src/tgbatest/Makefile.am: Add it. * src/tgbatest/explicit2.cc: Print the LTL formula as text.
-
Alexandre Duret-Lutz authored
* src/tgba/sba.hh: New file, extrated from... * src/tgba/tgbaexplicit.hh: ... here. Also rename sba_explicit::is_accepting as sba_explicit::state_is_accepting for consistency with tgba_sba_proxy. * src/tgbatest/explicit2.cc: Adjust to the renaming. * src/tgba/Makefile.am: Add sba.hh.
-
- 12 Apr, 2012 5 commits
-
-
* src/tgba/tgbaexplicit.hh (current_acceptance_conditiosn): remove a suspect and in return statement
-
* src/tgba/tgbaexplicit.hh: modify is_accepting method
-
* src/tgba/tgbaexplicit.hh: Add sba_explicit implementation * src/tgbatest/explicit2.cc: Add test to check the good instantiation of sba_explicit_*
-
Alexandre Duret-Lutz authored
* src/tgba/tgbaexplicit.hh (explicit_graph, tgba_explicit): Make the transition type explicit. (state_explicit_string::get_iterator): New method. (explicit_graph::get_transition): Use it. (tba): Rename as ... (sba): ... this. * wrap/python/spot.i: Instanciate explicit_graph and tgba_explicit for all three types.
-
* src/tgba/tgbaexplicit.hh, src/tgba/tgbaexplicit.cc: Factor most of the code in an explicit_graph<State, Type> that inherits from type. The tgba_explicit type<State> now inherits from explicit_graph<State,tgba>. * src/ltlvisit/contain.cc, src/neverparse/neverclaimparse.yy src/tgba/tgbareduc.cc, src/tgba/tgbareduc.hh, src/tgbaalgos/cutscc.cc, src/tgbaalgos/dupexp.cc, src/tgbaalgos/dupexp.hh, src/tgbaalgos/emptiness.cc, src/tgbaalgos/ltl2tgba_fm.cc, src/tgbaalgos/ltl2tgba_fm.hh, src/tgbaalgos/minimize.cc, src/tgbaalgos/powerset.cc, src/tgbaalgos/randomgraph.cc, src/tgbaalgos/sccfilter.cc, src/tgbaparse/tgbaparse.yy, src/tgbatest/complementation.cc, src/tgbatest/explicit.cc, src/tgbatest/explprod.cc, src/tgbatest/ltl2tgba.cc, src/tgbatest/mixprod.cc, src/tgbatest/powerset.cc, src/tgbatest/tgbaread.cc, src/tgbatest/tripprod.cc: Replace tgba_explicit* by the actual type used. * src/tgbatest/explicit2.cc: New file. * src/tgbatest/Makefile.am: Add it.
-
- 11 Apr, 2012 1 commit
-
-
Alexandre Duret-Lutz authored
* .checklog: New file.
-
- 19 Mar, 2012 1 commit
-
-
Alexandre Duret-Lutz authored
* lrde-upload.sh: Call umask, so that newly created directories are accessible.
-