1 / 122

Antichain Algorithms for Finite Automata

Antichain Algorithms for Finite Automata. Laurent Doyen LSV, ENS Cachan & CNRS Joint work with Jean-François Raskin. Acknowledgments. J-F. Raskin. M. De Wulf. N. Maquet. … S. Raje, E. Filiot, N. Jin, …. T. Henzinger. D. Berwanger. K. Chatterjee. Antichains everywhere!.

knoton
Download Presentation

Antichain Algorithms for Finite Automata

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Antichain Algorithms for Finite Automata Laurent DoyenLSV, ENS Cachan & CNRS Joint work with Jean-François Raskin

  2. Acknowledgments J-F. Raskin M. De Wulf N. Maquet … S. Raje, E. Filiot, N. Jin, … T. Henzinger D. Berwanger K. Chatterjee

  3. Antichains everywhere!

  4. Antichains everywhere!

  5. Antichains for… 200 states vs. 5000 states

  6. Antichains for… 10 states vs. 120 states

  7. Antichains for… 50 times faster…

  8. Antichains for… http://www.antichains.be

  9. Reachability

  10. Reachability Given a (directed) graph G=(V,E),

  11. Reachability Given a graph G=(V,E), two sets Init V and Final V, Final Init

  12. Reachability Given a graph G=(V,E), two sets Init V and Final V, is there a (finite) path from Init to Final ?

  13. Reachability Given a graph G=(V,E), two sets Init V and Final V, is there a (finite) path from Init to Final ?

  14. Reachability Given a graph G=(V,E), two sets Init V and Final V, NLogSpace-complete is there a (finite) path from Init to Final ?

  15. Reachability Given a graph G=(V,E), two sets Init V and Final V, NLogSpace-complete …when the graph is given explicitly ! is there a (finite) path from Init to Final ?

  16. Reachability Reachability is NLogSpace-complete. • In practice, the graph is implicit: • symbolic graphs • subset constructions • pushdown graphs • transition system of Petri nets • region graph of timed automata • …

  17. Running Example

  18. Running example Given finite automata A1 and A2, deciding if L(A1)  L(A2) is PSpace-complete. (even deciding L(A2) = Σ*) Subset construction

  19. Subset construction Init: sets containing initial states of A Final: sets containing no accepting states of A Final … {1,2,3} {1,2,3} {1,2,4} {1,3} {1,4} {1,2} {2,3} {1,2} {1,3} {3} {1} {2} {1} Init

  20. Subset construction Init: sets containing initial states of A Final: sets containing no accepting states of A Final … {1,2,3} {1,2,3} {1,2,4} {1,3} {1,4} {1,2} {2,3} {1,2} {1,3} {3} {1} {2} {1} Init

  21. Subset construction B: Bc: Successor in Ac of set s = set of successors in A of elements in s

  22. Subset construction B: Bc: Successor in Ac of set s = set of successors in A of elements in s

  23. Subset construction … Bc: Successor in Ac of set s  set of successors in A of elements in s

  24. Backward Algorithm

  25. Reachability Backward algorithm One-step predecessors of states in s  V: Final Init

  26. Reachability Backward algorithm One-step predecessors of states in s  V: Final Init

  27. Reachability Backward algorithm One-step predecessors of states in s  V: Final Init

  28. Reachability Backward algorithm One-step predecessors of states in s  V: Final Init

  29. Reachability Backward algorithm One-step predecessors of states in s  V: Final Init

  30. Reachability Backward algorithm One-step predecessors of states in s  V: Final Init

  31. Reachability Backward algorithm If then Final is reachable from Init Final Init

  32. Reachability Backward algorithm Final Init

  33. Reachability Backward algorithm Fixpoint such that Final Init

  34. Antichain Algorithms

  35. Structure in graphs Final Init

  36. Structure in graphs Final Init Graph is partially ordered…

  37. Structure in graphs Final Init Final Graph is monotone…

  38. Structure in graphs A pre-order ≤f over V is a forward simulation if v2 ≤fv1≡ v2 forward-simulates v1 ≤f implies ≤f ≤f for some

  39. Structure in graphs A pre-order ≤f over V is a forward simulation if v2 ≤fv1≡ v2 forward-simulates v1 Running example:  is a forward simulation ≤f implies  ≤f ≤f for some

  40. Structure in graphs A pre-order ≤f over V is a forward simulation if v2 ≤fv1≡ v2 forward-simulates v1 Running example:  is a forward simulation ≤f implies   ≤f ≤f for some

  41. Structure in graphs A forward simulation ≤f is compatible with Final if ≤f ≤f implies

  42. Structure in graphs A forward simulation ≤f is compatible with Final if Running example Final {1,2,3} ≤f ≤f implies {1,3} {1,2} {2,3} {3} {1} {2} Equivalently, Final is ≤f-downward-closed.

  43. Structure in graphs Theorem A pre-order ≤f over V is a forward simulation if and only if preserves ≤f-downward-closedness. i.e., if is ≤f-downward-closed, then is ≤f-downward-closed.

  44. Structure in graphs Theorem A pre-order ≤f over V is a forward simulation if and only if preserves ≤f-downward-closedness. i.e., if is ≤f-downward-closed, then is ≤f-downward-closed. ≤f

  45. Structure in graphs Theorem A pre-order ≤f over V is a forward simulation if and only if preserves ≤f-downward-closedness. i.e., if is ≤f-downward-closed, then is ≤f-downward-closed. ≤f ≤f

  46. Structure in graphs Theorem A pre-order ≤f over V is a forward simulation if and only if preserves ≤f-downward-closedness. i.e., if is ≤f-downward-closed, then is ≤f-downward-closed. ≤f ≤f

  47. Antichain algorithm ≤f forward simulation compatible with Final. Backward algorithm B(i) is ≤f-downward-closed for all i ≥ 0 !

  48. Antichain algorithm ≤f forward simulation compatible with Final. Backward algorithm B(i) is ≤f-downward-closed for all i ≥ 0 ! Use ≤f-maximal elements as a symbolic representation.

  49. Antichain algorithm ≤f forward simulation compatible with Final. Backward algorithm B(i) is ≤f-downward-closed for all i ≥ 0 ! Antichain algorithm

  50. Antichain algorithm ≤f forward simulation compatible with Final. Backward algorithm B(i) is ≤f-downward-closed for all i ≥ 0 ! Antichain algorithm

More Related