Commit graph

6759 commits

Author SHA1 Message Date
b5f11f7366 expansions: allow toggling merge_edges off 2025-03-17 16:11:36 +01:00
518c58fe52 expansions: latest implementation 2025-03-17 16:11:36 +01:00
003230ed19 expansions: multimap version 2025-03-17 16:11:36 +01:00
ce9a94f224 expansions: determinize only once per state 2025-03-17 16:11:36 +01:00
faaefa7424 expansions: fix bdd method 2025-03-17 16:11:36 +01:00
12a8d5382d expansions: add BDD method 2025-03-17 16:11:36 +01:00
9361116431 expansions: multiple implementations 2025-03-17 16:11:36 +01:00
3c6929829d expansions: split-off OrRat case 2025-03-17 16:11:36 +01:00
1240fec39b expansions: first_match deterministic 2025-03-17 16:11:36 +01:00
b9f461c025 expansions: draft 2025-03-17 16:11:36 +01:00
0fdd3c31f4 derive: add options to control distribution 2025-03-17 16:11:36 +01:00
89543e6a73 derive: option for some optimisations 2025-03-17 16:11:36 +01:00
e80c98751d sere_to_tgba: produce state-names 2025-03-17 16:11:36 +01:00
7b936819cc ltl2aa: handle edge case in UConcat
If SERE recognizes false, then combined with UConcat the property is
always true.
2025-03-17 16:11:36 +01:00
07a283498f alternation: fix bug introduced in oe_combiner
turns out sometimes we want to account for bddfalse
2025-03-17 16:11:36 +01:00
465b135f44 ltl2aa: implement EConcat 2025-03-17 16:11:36 +01:00
e5d7ba9e22 ltl2aa: comment 2025-03-17 16:11:36 +01:00
dec854ee07 ltl2aa: finalize UConcat 2025-03-17 16:11:36 +01:00
0957c11c94 ltl2aa: finish SERE aut merging with rhs outedges 2025-03-17 16:11:36 +01:00
eca0bd4590 ltl2aa: fix two bugs in SERE aut merge 2025-03-17 16:11:36 +01:00
93c50e1610 ltl2aa: place new state in var_to_state map 2025-03-17 16:11:36 +01:00
58965475fb ltl2aa: implem closure 2025-03-17 16:11:36 +01:00
4153ce0655 ltl2aa: share dict between sere and final aut 2025-03-17 16:11:36 +01:00
0c76e6dd21 ltl2aa: fix bdd manipulation in UConcat 2025-03-17 16:11:36 +01:00
8e8e44c5f9 ltl2aa: fix R & M operators handling 2025-03-17 16:11:36 +01:00
7b376a212c Add ltl2aa binary to tests/core 2025-03-17 16:11:36 +01:00
ffd60219b5 psl not working 2025-03-17 16:11:36 +01:00
43ed07d283 ltl2aa: factorize self-loop creation 2025-03-17 16:11:36 +01:00
e4bfebf36f twaalgos: add LTL to AA translation 2025-03-17 16:11:36 +01:00
6ebbb93024 twaalgos: filter accepting sinks in oe combiner 2025-03-17 16:11:36 +01:00
00ad02070b graph: filter accepting sinks in univ_dest_mapper 2025-03-17 16:11:36 +01:00
a046a4983c derive: use first 2025-03-17 16:11:36 +01:00
1925910f4a derive: handle AndNLM 2025-03-17 16:11:36 +01:00
eea35cdb31 derive: extract AndNLM rewriting 2025-03-17 16:11:36 +01:00
5b3b292b10 derive: no nullptr handling 2025-03-17 16:11:36 +01:00
2df8e200d8 derive: use from_finite 2025-03-17 16:11:36 +01:00
3b3ec16b20 twaalgos: add from_finite
* spot/twaalgos/remprop.cc, spot/twaalgos/remprop.hh: add a from_finite
  function to perform the opposite operation to to_finite
2025-03-17 16:11:36 +01:00
175012b919 twaalgos: extract internal sere2dfa 2025-03-17 16:11:36 +01:00
4a646e5aa0 tl: implement SERE derivation 2025-03-17 16:11:36 +01:00
2ae9da1bc6 twagraph: merge_edges supports finite automata
* spot/twa/twagraph.cc: don't remove false-labeled edges if the
  automaton uses state-based acceptance and the edge is a self loop
2025-03-17 16:11:36 +01:00
Alexandre Duret-Lutz
b6e782589e bin: handle '--parity=X --colored-parity' like '--colored-parity=X'
Fixes #602.

* bin/common_post.cc (-P, -p): Do not overwrite an existing parity
specification if none were given.
* tests/core/parity2.test: Test this.
2025-03-11 14:19:30 +01:00
Alexandre Duret-Lutz
1dd2ce3ae2 sanity: improve bin.test
* tests/sanity/bin.test: Add missing exit status on error,
and report manpage and binaries missing from spot.spec.in.
* spot.spec.in: Add ltlmix and ltlmix.1.
* bin/ltlsynt.cc: Fix formating for --algo.
2025-03-11 14:19:30 +01:00
c4e3509d18 * bin/.gitignore: Add ltlmix to gitignore 2025-03-07 10:34:56 +01:00
Alexandre Duret-Lutz
539d250587 * spot/twaalgos/gtec/gtec.cc: Work around spurious warning. 2025-02-26 12:08:46 +01:00
Alexandre Duret-Lutz
00456e5211 ltlfilt: add a --save-part-file option
* bin/ltlfilt.cc: Add support for --save-part-file.
* NEWS, doc/org/ltlfilt.org: Mention it.
* tests/core/ltlfilt.test: Test it.
2025-02-25 22:47:51 +01:00
Alexandre Duret-Lutz
b1b06ef7bd ltlsynt: remove superfluous output options
No point in having options such as --spin, --lbtt, --check, etc.
Also --dot was documented twice...

* bin/ltlsynt.cc (children): Remove aoutput_argp.
(options): Add explicit support for -d, -H, -q.
* bin/common_aoutput.cc, bin/common_aoutput.hh: Share the HOA help
text.
2025-02-25 22:47:10 +01:00
Alexandre Duret-Lutz
d0e404fec0 gnulib: fix argp --help formatting
This is a patch that was sent by Simon Reinhardt to gnulib and has
never been applied.  It fixes a several formatting issues in --help.
https://lists.gnu.org/archive/html/bug-gnulib/2016-02/msg00013.html

* lib/argp-fmtstream.c (__argp_fmtstream_update): Flush output as soon
as possible.
* lib/argp-fmtstream.h (struct argp_fmtstream): Member point_offs is
no longer needed.
* lib/argp-help.c (indent_to): Flush output to avoid a spurious
newline before an overlong word.
2025-02-25 17:26:36 +01:00
Alexandre Duret-Lutz
27fb175276 ltlsynt: fix a memory leak
* bin/ltlsynt.cc: Declare the realizability_simplifier as a unique_ptr
so that it gets deleted after use.
* NEWS: Mention the bug.
2025-02-25 17:26:18 +01:00
Alexandre Duret-Lutz
aba0e8dd24 * spot/twaalgos/mealy_machine.hh: Typo in documentation. 2025-02-25 17:26:10 +01:00
Alexandre Duret-Lutz
602aad013f aiger: never use state names for encoding
* spot/twaalgos/aiger.cc (mealy_machine_to_aig): Remove the code that
attempted to convert state names to integer, throwing exceptions on
failure.  That code was not exercised anywhere, but it caused failure
in the implementation of an LTLf->AIG pipeline in which LTLf formulas
that label states are preserved.
2025-02-25 17:26:01 +01:00