relabel: fix handling of concat and fusion

* spot/tl/relabel.cc (formula_to_fgraph): Do not assume that n-ary
operators are Boolean operators.
* tests/python/relabel.py: Add a test case found while discussing
some expression with Antoine Martin.
* NEWS: Mention it.
This commit is contained in:
Alexandre Duret-Lutz 2022-10-13 11:34:38 +02:00
parent 666d78d499
commit 179672fe3b
3 changed files with 18 additions and 3 deletions

View file

@ -55,3 +55,7 @@ try:
spot.relabel_here(autg, m)
except RuntimeError as e:
tc.assertIn("old labels", str(e))
f = spot.parse_infix_sere("(p9;p21|p22):(p1&p2;p11&p22;p1&p2)").f
g = spot.relabel_bse(f, spot.Abc)
tc.assertEqual(str(g), "(a;(b | c)):(d;(c & e);d)")