Jupyter 4.2 just landed in Debian unstable, so we have a few failures
because of all the renamings.
* tests/python/ipnbdoctest.py: Adjust imports for Jupyter 4.2.
This fixes an issue in the on-line translator, where error message would
not be output in the correct <div>.
* spot/parsetl/fmterror.cc (format_parse_errors): Flush the stream.
This fixes the incorrect output of tgba_determinize() reported yesterday
by Reuben Rowe.
* spot/twaalgos/simulation.cc: Do not purge unreachable states when
recording implications.
* tests/python/bugdet.py: New test case.
* tests/Makefile.am: Add it.
* THANKS: Add Reuben.
* NEWS: Mention the bug.
These were not actually printing in "SERE" mode due to a copy/paste
error. PVS-Studio seems really good at finding those. For #192.
* spot/tl/print.cc: Fix it.
* NEWS: Mention the bug.
This was noticed while looking at a false-positive in the report for
PVS-Studio, in #192.
* spot/misc/optionmap.cc: Do not remove the option from unused_ twice..
For #192.
* bin/common_trans.cc, bin/common_trans.hh, spot/twa/acc.hh:
Add an operator= in addition to the copy constructor.
* spot/twaalgos/ltl2tgba_fm.cc: Use the default constructor.
* spot/ta/taproduct.cc, spot/ta/taproduct.hh: Delete an unused copy
constructor.
Fix an issue reported by Tomáš Babiak, who noticed that he could not
manage to have ltl2tgba process `genltl --go-theta=N` efficiently for
larger values of N.
* spot/twaalgos/translate.hh (set_level): Reset any owned LTL simplifier
whenever the optimization level is changed.
* NEWS: Mention the bug.
Related to #188. This is a third fix that independently
makes `'utfilt --is-unambiguous -q smaller.hoa' instantaneous.
* spot/twaalgos/remfin.cc: Clean the received automaton if
necessary.
* bin/autfilt.cc: No need to call cleanup_acceptance_here() before
remove_fin() anymore.
* tests/core/remfin.test: Add an additional test.
* NEWS: Mention the change.
* bin/autfilt.cc, spot/twaalgos/isweakscc.cc, spot/twaalgos/remfin.cc,
spot/twaalgos/sccinfo.cc: Use mask_keep_accessible_states instead of
mask_keep_states.
As observed in #188, the smaller.hoa automaton is made only of
1-state/1-self-loop SCCs, for which calling remove_fin is a complete
waste of time. This patch alone (i.e., without the other changes
suggested by #188) improves the run time of
% autofilt -q --is-unambiguous smaller.hoa
from 38s to 0.05s.
* spot/twaalgos/sccinfo.cc: If a single-state SCC has undeterminate SCC
and only one self-loop, then it is necessarily rejecting.
* NEWS: Mention the change.
Avoid calling scc_info::determine_unknown_acceptance on the product, as
suggested in #188.
* spot/twaalgos/isunamb.cc (is_unambiguous): Rewrite.
* tests/core/unambig.test: Add the automaton from #188.
* NEWS: Mention the improved function.
* spot/twaalgos/mask.cc,
spot/twaalgos/mask.hh (mask_keep_accessible_states): New function.
* spot/twaalgos/dot.cc: Rearrange options to speed up their
initialization and avoid an "uninitialized read" error from valgrind
when compiling with clang-3.9. The uninitialized read is still a bit
misterious to me; valgrind was complaining about opt_shape_ who is
actually initialized in the code. However looking into the assembly
code generated revealed that all consecutive 0/false values were
initialized together, so this patch reorganize the options to encourage
that. Also the palette was copied over for each call to print_dot(), so
this is now declared statically.
Suggested by František Blahoudek.
* bin/ltlcross.cc: Implement the two options.
* doc/org/ltlcross.org, NEWS: Document them.
* tests/core/complementation.test: Adjust test case.
* tests/core/ltlcross3.test, tests/core/unambig.test: More tests.
Report from František Blahoudek.
* bin/ltlcross.cc: Do not display stats for automata
that do not exist.
* tests/core/ltlcross3.test: Test it.
* NEWS: Mention the fix.