automated method in proving graph properties
play

Automated method in proving graph properties Kailiang Ji INRIA - PowerPoint PPT Presentation

Automated method in proving graph properties Kailiang Ji INRIA & Universit e Paris Diderot-Paris 7 October 31, 2013 Outline Background Expressions of graph properties Automated theorem proving Implementation Motivation


  1. Automated method in proving graph properties Kailiang Ji INRIA & Universit´ e Paris Diderot-Paris 7 October 31, 2013

  2. Outline Background Expressions of graph properties Automated theorem proving Implementation

  3. Motivation ϕ ϕ ϕ ϕ ϕ ϕ s ϕ is there an infinite path such that all the vertices of the path are in ϕ ?

  4. Motivation ϕ ϕ ϕ ϕ ϕ ϕ s ϕ is there an infinite path such that all the vertices of the path are in ϕ ? ◮ by graph traversal algorithm

  5. Motivation ϕ ϕ ϕ ϕ ϕ ϕ s ϕ is there an infinite path such that all the vertices of the path are in ϕ ? ◮ by graph traversal algorithm ◮ model checking of G , s � EG ϕ

  6. Motivation ϕ ϕ ϕ ϕ ϕ ϕ s ϕ is there an infinite path such that all the vertices of the path are in ϕ ? ◮ by graph traversal algorithm ◮ model checking of G , s � EG ϕ ◮ It can also be expressed as � � x ∈ Y ⇒ ϕ ( x ) ∧∃ x ′ ( edge ( x , x ′ ) ∧ x ′ ∈ Y ) �� ∃ Y s ∈ Y ∧∀ x

  7. Ordered Polarized Resolution Modulo P ∨ C ¬ Q ∨ D L ∨ K ∨ C Factoring a , b , c d Resolution σ ( L ∨ C ) σ ( C ∨ D ) P ∨ C a , b , and ¬ Q ∨ D is a one-way clause of R Ext.Narr. σ ( D ∨ C ) ¬ Q ∨ D a , c , and P ∨ C is a one-way clause of R Ext.Narr. σ ( C ∨ D ) a σ = mgu ( P , Q ) b P ∈ δ ( P ∨ C ) c ¬ Q ∈ δ ( ¬ Q ∨ D ) d L and K maximal in L ∨ K ∨ C , σ = mgu ( L , K ) e L maximal in L ∨ C Figure: Inference rule of the OPRM ≻ R

  8. Language Definition The two-sorted language L with one sort for vertices and one sort for classes of vertices contains ◮ constants s 1 , . . . , s n for the vertices of the graph ◮ a binary predicate symbol edge ◮ a binary predicate symbol ∈ ◮ a constant ∅ ◮ a binary function symbol add

  9. The theory of a graph Definition (The theory T G ) The theory T G for a graph G contains ◮ edge ( s i , s j ); ◮ ϕ ( s i ) or ¬ varphi ( s i ); ◮ s i = s i and ¬ s i = s j ; ◮ ∀ x . ¬ x ∈ ∅ , ∀ x ∀ y ∀ Z ( x ∈ add ( y , Z ) ⇔ ( x = y ∨ x ∈ Z )).

  10. Clausal form of the theory Q ( s 1 , . . . , s k ) Q ( s 1 , . . . , s k ) ¬ Q ( s 1 , . . . , s k ) ¬ Q ( s 1 , . . . , s k ) ∀ x . ¬ x ∈ ∅ ¬ ( x ∈ ∅ ) ¬ x ∈ add ( y , Z ) ∨ x = y ∨ x ∈ Z ∀ x ∀ y ∀ Z ( x ∈ add ( y , Z ) ⇔ ( x = y ∨ x ∈ Z )) x ∈ add ( x , Z ) x ∈ add ( y , Z ) ∨ ¬ x ∈ Z s i = s i s i = s i ¬ s i = s j ¬ s i = s j

  11. Outline Background Expressions of graph properties Automated theorem proving Implementation

  12. Which kind of problem can be expressed by L ◮ Reachability or connectivity, ◮ k-colorable problem, ◮ bisimulation problem, ◮ problems can be expressed by Temporal logic, . . .

  13. Reachability Example For two vertices s 1 , s 2 in a graph G , the property that starting from s 1 , s 2 is reachable can be expressed as � � �� � ∀ Y s 1 ∈ Y ∧∀ x x ∈ X ⇒ ∀ y � edge ( x , y ) ⇒ y ∈ Y ⇒ s 2 ∈ Y . and s 2 is non-reachable can be expressed as � � ��� � ∃ Y s 1 ∈ Y ∧∀ x x ∈ Y ⇒ ¬ x = s 2 ∧∀ y ( edge ( x , y ) ⇒ y ∈ Y ) .

  14. 3-colorable Example (3-colorable) The property that graph G is 3-colorable can be expressed as: � � ∃ X , Y , Z Part ( X , Y , Z ) ∧ ∀ x ∀ y edge ( x , y ) ∧ ¬ x = y ⇒ �� ¬ ( x ∈ X ∧ y ∈ X ) ∧ ¬ ( x ∈ Y ∧ y ∈ Y ) ∧ ¬ ( x ∈ Y ∧ y ∈ Y ) where Part ( X , Y , Z ) expresses that ( X , Y , Z ) is a partition of the domain. The formula Part ( X , Y , Z ) is written as follows: �� � ∀ x x ∈ X ∨ x ∈ Y ∨ x ∈ Z ∧ �� � ¬ ( x ∈ X ∧ x ∈ Y ) ∧ ¬ ( x ∈ Y ∧ x ∈ Z ) ∧ ¬ ( x ∈ X ∧ x ∈ Z ) .

  15. Bisimulation Example Given a graph G , the property that two vertices s 1 and s 2 in G are bisimilar can be expressed as: � � ∃ B ( s 1 , s 2 ) ∈ B ∧ ∀ x ∀ y ( x , y ) ∈ B ⇒ ∀ x ′ ( edge ( x , x ′ ) ⇒ ∃ y ′′ ( edge ( y , y ′′ ) ∧ ( x ′ , y ′′ ) ∈ B )) � ��� ∧ ∀ y ′ ( edge ( y , y ′ ) ⇒ ∃ x ′′ ( edge ( x , x ′′ ) ∧ ( x ′′ , y ′ ) ∈ B )) . B is a class of binary tuple of vertices.

  16. Which kind of problem do we consider? Properties for single vertices in a graph which can be defined inductively or coinductively.

  17. Which kind of problem do we consider? Properties for single vertices in a graph which can be defined inductively or coinductively. For example the reachability between two vertices can be defined inductively, s 1 s 2

  18. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. For example the reachability between two vertices can be defined inductively, s 1 s 2

  19. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. For example the reachability between two vertices can be defined inductively, s 1 s 2

  20. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. For example the reachability between two vertices can be defined inductively, s 1 s 2

  21. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. The non-reachability between two vertices can be defined coinductively: s 1 s 2

  22. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. The non-reachability between two vertices can be defined coinductively: s 1 s 2

  23. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. The non-reachability between two vertices can be defined coinductively: s 1 s 2

  24. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. The non-reachability between two vertices can be defined coinductively: s 1 s 2

  25. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. The non-reachability between two vertices can be defined coinductively: s 1 s 2

  26. Which kind of problem do we consider? Properties in a graph which can be defined inductively or coinductively on single vertices. The non-reachability between two vertices can be defined coinductively: s 1 s 2

  27. The necessity of coinductive definition For the two examples before, as we can prove that whether two vertices are reachable by the inductive definition, why should we care about the coinductive definition?

  28. The necessity of coinductive definition For the two examples before, as we can prove that whether two vertices are reachable by the inductive definition, why should we care about the coinductive definition?

  29. The necessity of coinductive definition For the two examples before, as we can prove that whether two vertices are reachable by the inductive definition, why should we care about the coinductive definition?

  30. Outline Background Expressions of graph properties Automated theorem proving Implementation

  31. Example s 1 s 2 s 3 Example Given a graph as above. We prove that starting from s 1 , s 3 is reachable. The property can be expressed by � � �� � � ∀ Y s 1 ∈ Y ∧ ∀ x x ∈ X ⇒ ∀ y edge ( x , y ) ⇒ y ∈ Y ⇒ s 3 ∈ Y .

  32. Example s 1 s 2 s 3 Example Given a graph as above. We prove that starting from s 1 , s 3 is reachable. The property can be expressed by � � �� � � ∀ Y s 1 ∈ Y ∧ ∀ x x ∈ X ⇒ ∀ y edge ( x , y ) ⇒ y ∈ Y ⇒ s 3 ∈ Y . The negation of it is s 1 ∈ Y c (1a) ¬ x ∈ Y c ∨ ¬ edge ( x , y ) ∨ y ∈ Y c (1b) ¬ s 3 ∈ Y c (1c)

  33. s 1 s 2 s 3 ¬ s 3 ∈ Y c ¬ x ∈ Y c ∨ ¬ edge ( x , y ) ∨ y ∈ Y c ¬ x ∈ Y c ∨ ¬ edge ( x , s 3 ) edge ( s 2 , s 3 ) ¬ s 2 ∈ Y c ¬ x ∈ Y c ∨ ¬ edge ( x , y ) ∨ y ∈ Y c ¬ x ∈ Y c ∨ ¬ edge ( x , s 2 ) edge ( s 1 , s 2 ) ¬ s 1 ∈ Y c s 1 ∈ Y c �

  34. Coinductive formulas Definition (coinductive definition) For any unary predicate P , if the set T of vertices can be expressed by the formula ∀ v ( v ∈ T ⇒ ( P ( v ) ∧ ∃ v ′ ( edge ( v , v ′ ) ∧ v ′ ∈ T ))), or ∀ v ( v ∈ T ⇒ ( P ( v ) ∧ ∀ v ′ ( edge ( v , v ′ ) ⇒ v ′ ∈ T ))), we say that T is defined coinductively. And we denote these two kinds of formulas by co-rule( v , T ).

  35. Coinductive formulas Definition (coinductive formula) Formulas of the form ∃ X ( s ∈ X ∧ ∀ x . co-rule( x , X )) are called coinductive formulas.

  36. Coinductive formulas Definition (coinductive clause, traversal clause) ◮ The clausal form of the negation of coinductive formulas are called coinductive clauses (co-clause). ◮ The set of traversal clauses is inductively defined as the set containing all the co-clauses and closed by the inference rules of OPRM ≻ R .

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