a coalgebraic decision procedure for ws1s
play

A Coalgebraic Decision Procedure for WS1S Dmitriy Traytel Isabelle - PowerPoint PPT Presentation

A Coalgebraic Decision Procedure for WS1S Dmitriy Traytel Isabelle = A Coalgebraic Decision Procedure for WS1S Dmitriy Traytel Isabelle = Logic-Automaton Connection WS1S T | F | x X | x < y


  1. A Coalgebraic Decision Procedure for WS1S Dmitriy Traytel Isabelle ∀ = α λ β →

  2. A Coalgebraic Decision Procedure for WS1S Dmitriy Traytel Isabelle ∀ = α λ β →

  3. Logic-Automaton Connection WS1S T | F | x ∈ X | x < y | ϕ ∨ ψ | ¬ ϕ | ∃ x . ϕ | ∃ X . ϕ finite

  4. Logic-Automaton Connection WS1S T | F | x ∈ X | x < y | ϕ ∨ ψ | ¬ ϕ | FO x | ∃ X . ϕ finite

  5. Logic-Automaton Connection WS1S ∀ I . I � ϕ ⇐ ⇒ I � ψ ? T | F | x ∈ X | x < y | ϕ ∨ ψ | ¬ ϕ | FO x | ∃ X . ϕ finite

  6. Logic-Automaton Connection Finite Automata Klarlund, Møller, et al. MONA WS1S ∀ I . I � ϕ ⇐ ⇒ I � ψ ? T | F | x ∈ X | x < y | ϕ ∨ ψ | ¬ ϕ | FO x | ∃ X . ϕ finite

  7. Logic-Automaton Connection Finite Automata Finite Reachability Games Fiedor et al., TACAS 2015 dWiNA, Toss Ganzow & Kaiser, CSL 2010 Klarlund, Møller, et al. MONA WS1S ∀ I . I � ϕ ⇐ ⇒ I � ψ ? T | F | x ∈ X | x < y | ϕ ∨ ψ | ¬ ϕ | FO x | ∃ X . ϕ finite

  8. Logic-Automaton Connection Finite Automata Finite Reachability Games Fiedor et al., TACAS 2015 dWiNA, Toss Ganzow & Kaiser, CSL 2010 Klarlund, Møller, et al. MONA WS1S ∀ I . I � ϕ ⇐ ⇒ I � ψ ? Isabelle ∀ I . I � ϕ ⇐ ⇒ enc I ∈ L ( mkRE ϕ ) ∀ = T. & Nipkow, ICFP 2013 α λ β → Regular Expressions L ( α ) = L ( β )?

  9. Logic-Automaton Connection Finite Automata Finite Reachability Games Fiedor et al., TACAS 2015 dWiNA, Toss Ganzow & Kaiser, CSL 2010 Klarlund, Møller, et al. MONA WS1S ∀ I . I � ϕ ⇐ ⇒ I � ψ ? Isabelle ∀ I . I � ϕ ⇐ ⇒ enc I ∈ L ( mkRE ϕ ) ∀ = T. & Nipkow, ICFP 2013 α λ β → Π -Extended Regular Expressions L ( α ) = L ( β )?

  10. Logic-Automaton Connection Finite Automata Finite Reachability Games Fiedor et al., TACAS 2015 dWiNA, Toss Ganzow & Kaiser, CSL 2010 Klarlund, Møller, et al. MONA WS1S ∀ I . I � ϕ ⇐ ⇒ I � ψ ? Isabelle ∀ I . I � ϕ ⇐ ⇒ enc I ∈ L ( mkRE ϕ ) ∀ = T. & Nipkow, ICFP 2013 α λ β → Π -Extended Regular Expressions L ( α ) = L ( β )?

  11. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ ε + a · a ∗

  12. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ d a ε + a · a ∗ ε · a ∗ ∅ + ε · a ∗ Brzozowski derivative d : letter → regex → regex L ( d a r ) = { w | aw ∈ L ( r ) }

  13. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ d a d b ε + a · a ∗ ε · a ∗ ∅ · a ∗ ∅ + ε · a ∗ ∅ + ∅ · a ∗

  14. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ d a d b ε + a · a ∗ ε · a ∗ ∅ · a ∗ ∅ + ε · a ∗ ∅ + ∅ · a ∗ d a ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ε · a ∗

  15. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ d a d b ε + a · a ∗ ε · a ∗ ∅ · a ∗ ∅ + ε · a ∗ ∅ + ∅ · a ∗ d a ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ε · a ∗ d a ∅ · a ∗ + ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ∅ · a ∗ + ε · a ∗

  16. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ d a d b ε + a · a ∗ ε · a ∗ ∅ · a ∗ ∅ + ε · a ∗ ∅ + ∅ · a ∗ d a ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ε · a ∗ d a ACI ∅ · a ∗ + ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ∅ · a ∗ + ε · a ∗

  17. a ∗ ? ≡ ε + a · a ∗ for Σ = { a , b } a ∗ d a d b ε + a · a ∗ ε · a ∗ ∅ · a ∗ d a ∅ + ε · a ∗ ∅ + ∅ · a ∗ d b d b d a ACI ACI ∅ · a ∗ + ε · a ∗ ∅ · a ∗ + ∅ · a ∗ ∅ + ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ∅ · a ∗ d b d a ACI ∅ · a ∗ + ∅ · a ∗ + ε · a ∗ ∅ · a ∗ + ∅ · a ∗ + ∅ · a ∗ ∅ + ∅ · a ∗ + ∅ · a ∗ + ε · a ∗ ∅ + ∅ · a ∗ + ∅ · a ∗ + ∅ · a ∗

  18. Key ingredients: derivative + ε -acceptance test � �� � coalgebra

  19. Key ingredients: derivative + ε -acceptance test � �� � coalgebra

  20. Key ingredients: derivative + ε -acceptance test � �� � coalgebra Let’s define them on WS1S formulas directly!

  21. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) ¬ F

  22. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) ¬ F

  23. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) • Implementation! ¬ F

  24. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) • Implementation! ¬ F • Formalization!

  25. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) • Implementation! ¬ F • Formalization! • Presentation?

  26. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) • Implementation! ¬ F • Formalization! • Presentation? • Efficiency?

  27. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) • Implementation! ¬ F • Formalization! • Presentation? • Efficiency? • vs. MONA

  28. ? ( ∃ X . x ∈ X ) ≡ ( ¬ x < x ) for Σ = { ( 0 ) , ( 1 ) } ∃ X . x ∈ X d ( 0 ) d ( 1 ) ¬ x < x ACI ∃ X . ( T ∨ F ) ∃ X . ( x ∈ X ∨ x ∈ X ) ¬ x < x ¬ F d ( 1 ) , d ( 0 ) ACI Benefits • Simplicity ∃ X . ( T ∨ F ) ∨ ( T ∨ F ) • Implementation! ¬ F • Formalization! • Presentation? • Efficiency? • vs. MONA → MonaCo (Pous & T., ongoing work)

  29. Interlude I: Encoding of Interpretations  X �→ { 1 , 2 , 3 }   I = Y �→ { 0 , 2 }   Z �→ { 3 }

  30. Interlude I: Encoding of Interpretations  X �→ { 1 , 2 , 3 }   I = Y �→ { 0 , 2 }   Z �→ { 3 } enc X 0 1 1 1 Y 1 0 1 0 Z 0 0 0 1

  31. Interlude I: Encoding of Interpretations  X �→ { 1 , 2 , 3 }   I = Y �→ { 0 , 2 }   Z �→ { 3 } enc X 0 1 1 1 X 1 1 1 Y 1 0 1 0 Y 0 1 0 tail Z 0 0 0 1 Z 0 0 1

  32. Interlude I: Encoding of Interpretations   X �→ { 1 , 2 , 3 } X �→ { 0 , 1 , 2 }     I = Y �→ { 0 , 2 } TAIL I = Y �→ { 1 }     Z �→ { 3 } Z �→ { 2 } enc enc X 0 1 1 1 X 1 1 1 Y 1 0 1 0 Y 0 1 0 tail Z 0 0 0 1 Z 0 0 1

  33. Interlude I: Encoding of Interpretations I � ϕ ⇐ ⇒ TAIL I � d ( HEAD I ) ϕ   X �→ { 1 , 2 , 3 } X �→ { 0 , 1 , 2 }     I = Y �→ { 0 , 2 } TAIL I = Y �→ { 1 }     Z �→ { 3 } Z �→ { 2 } enc enc X 0 1 1 1 X 1 1 1 Y 1 0 1 0 Y 0 1 0 tail Z 0 0 0 1 Z 0 0 1

  34. Interlude I: Encoding of Interpretations   0 I � ϕ ⇐ ⇒ TAIL I � d 1 ϕ   0   X �→ { 1 , 2 , 3 } X �→ { 0 , 1 , 2 }     I = Y �→ { 0 , 2 } TAIL I = Y �→ { 1 }     Z �→ { 3 } Z �→ { 2 } enc enc X 0 1 1 1 X 1 1 1 Y 1 0 1 0 Y 0 1 0 tail Z 0 0 0 1 Z 0 0 1

  35. Interlude II: First-Order Variables Does x �→ { 1 , 2 , 3 } satisfy FO x ?

  36. Interlude II: First-Order Variables Does x �→ { 1 , 2 , 3 } satisfy FO x ? No, only singleton sets do

  37. Interlude II: First-Order Variables Does x �→ { 1 , 2 , 3 } satisfy FO x ? Yes, all non-empty sets do No, only singleton sets do Minimum is the assigned value

  38. Interlude II: First-Order Variables Does x �→ { 1 , 2 , 3 } satisfy FO x ? Yes, all non-empty sets do No, only singleton sets do Minimum is the assigned value → my Ph.D. thesis draft → here (also used in MONA)

  39. Derivative d : letter → formula → formula

  40. Derivative d : letter → formula → formula = d v T T d v F = F

  41. Derivative d : letter → formula → formula = d v T T d v F = F � if ¬ v [ x ] FO x d v ( FO x ) = T otherwise

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend