zlktree: remimplement zielonka_tree without BDDs
* spot/twaalgos/zlktree.cc (zielonka_tree): Find the models using a recursive procedure on the acceptance condition, without conversion to BDD. * tests/python/_zlktree.ipynb: Adjust to a different order of nodes.
This commit is contained in:
parent
200ee0d204
commit
86c22d98bc
2 changed files with 88 additions and 119 deletions
|
|
@ -126,7 +126,7 @@
|
|||
"<g id=\"node9\" class=\"node\">\n",
|
||||
"<title>8</title>\n",
|
||||
"<ellipse fill=\"none\" stroke=\"black\" cx=\"124.36\" cy=\"-26.87\" rx=\"35.21\" ry=\"26.74\"/>\n",
|
||||
"<text text-anchor=\"middle\" x=\"124.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{3}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"124.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{1}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"124.36\" y=\"-15.67\" font-family=\"Times,serif\" font-size=\"14.00\"><8></text>\n",
|
||||
"</g>\n",
|
||||
"<!-- 4->8 -->\n",
|
||||
|
|
@ -139,7 +139,7 @@
|
|||
"<g id=\"node10\" class=\"node\">\n",
|
||||
"<title>9</title>\n",
|
||||
"<ellipse fill=\"none\" stroke=\"black\" cx=\"213.36\" cy=\"-26.87\" rx=\"35.21\" ry=\"26.74\"/>\n",
|
||||
"<text text-anchor=\"middle\" x=\"213.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{1}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"213.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{3}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"213.36\" y=\"-15.67\" font-family=\"Times,serif\" font-size=\"14.00\"><9></text>\n",
|
||||
"</g>\n",
|
||||
"<!-- 4->9 -->\n",
|
||||
|
|
@ -152,7 +152,7 @@
|
|||
"<g id=\"node11\" class=\"node\">\n",
|
||||
"<title>10</title>\n",
|
||||
"<ellipse fill=\"none\" stroke=\"black\" cx=\"308.36\" cy=\"-26.87\" rx=\"41.94\" ry=\"26.74\"/>\n",
|
||||
"<text text-anchor=\"middle\" x=\"308.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{3}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"308.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{1}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"308.36\" y=\"-15.67\" font-family=\"Times,serif\" font-size=\"14.00\"><10></text>\n",
|
||||
"</g>\n",
|
||||
"<!-- 5->10 -->\n",
|
||||
|
|
@ -165,7 +165,7 @@
|
|||
"<g id=\"node12\" class=\"node\">\n",
|
||||
"<title>11</title>\n",
|
||||
"<ellipse fill=\"none\" stroke=\"black\" cx=\"409.36\" cy=\"-26.87\" rx=\"41.94\" ry=\"26.74\"/>\n",
|
||||
"<text text-anchor=\"middle\" x=\"409.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{1}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"409.36\" y=\"-30.67\" font-family=\"Times,serif\" font-size=\"14.00\">{3}</text>\n",
|
||||
"<text text-anchor=\"middle\" x=\"409.36\" y=\"-15.67\" font-family=\"Times,serif\" font-size=\"14.00\"><11></text>\n",
|
||||
"</g>\n",
|
||||
"<!-- 5->11 -->\n",
|
||||
|
|
@ -191,7 +191,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dc46b540> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba77a4b0> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -286,7 +286,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"(9, 2)"
|
||||
"(8, 3)"
|
||||
]
|
||||
},
|
||||
"execution_count": 6,
|
||||
|
|
@ -307,7 +307,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"(9, 3)"
|
||||
"(8, 2)"
|
||||
]
|
||||
},
|
||||
"execution_count": 7,
|
||||
|
|
@ -328,7 +328,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"(8, 3)"
|
||||
"(9, 2)"
|
||||
]
|
||||
},
|
||||
"execution_count": 8,
|
||||
|
|
@ -755,7 +755,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dd55e780> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba77a450> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -1111,7 +1111,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dc427f90> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba755810> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -1247,7 +1247,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dc427630> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba77a630> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -1358,7 +1358,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dc42d090> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba755510> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -1421,7 +1421,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dc42d720> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba755780> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -1484,7 +1484,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7f14dc427630> >"
|
||||
"<spot.zielonka_tree; proxy of <Swig Object of type 'spot::zielonka_tree *' at 0x7fd0ba755e40> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -2587,7 +2587,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.acd; proxy of <Swig Object of type 'spot::acd *' at 0x7f14dc427600> >"
|
||||
"<spot.acd; proxy of <Swig Object of type 'spot::acd *' at 0x7fd0ba74db70> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 24,
|
||||
|
|
@ -3974,7 +3974,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc2662a0> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0ba759870> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 38,
|
||||
|
|
@ -4058,7 +4058,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.acd; proxy of <Swig Object of type 'spot::acd *' at 0x7f14dc29b240> >"
|
||||
"<spot.acd; proxy of <Swig Object of type 'spot::acd *' at 0x7fd0ba764510> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 40,
|
||||
|
|
@ -4181,7 +4181,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc266720> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0ba764240> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 41,
|
||||
|
|
@ -4329,7 +4329,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc29b750> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0ba764750> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -4483,7 +4483,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc29b3f0> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0ba7646c0> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -4629,7 +4629,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc29b2a0> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0ba759bd0> >"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
|
@ -4881,7 +4881,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.acd; proxy of <Swig Object of type 'spot::acd *' at 0x7f14dc27a120> >"
|
||||
"<spot.acd; proxy of <Swig Object of type 'spot::acd *' at 0x7fd0ba747030> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 48,
|
||||
|
|
@ -5015,7 +5015,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc27abd0> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0ba747c90> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 50,
|
||||
|
|
@ -5406,7 +5406,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc295360> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0b9cfb570> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 51,
|
||||
|
|
@ -5790,7 +5790,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc295420> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0b9cfb840> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 52,
|
||||
|
|
@ -5874,7 +5874,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc295960> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0b9cfbc90> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 53,
|
||||
|
|
@ -5996,7 +5996,7 @@
|
|||
"</svg>\n"
|
||||
],
|
||||
"text/plain": [
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7f14dc295ba0> >"
|
||||
"<spot.twa_graph; proxy of <Swig Object of type 'std::shared_ptr< spot::twa_graph > *' at 0x7fd0b9cfb5a0> >"
|
||||
]
|
||||
},
|
||||
"execution_count": 56,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue