reasoning about connectivity without paths

Reasoning about connectivity without paths Alberto Casagrande and - PowerPoint PPT Presentation

Reasoning about connectivity without paths Alberto Casagrande and Eugenio G. Omodeo Dip. Matematica e Geoscienze DMI Eugenio G. Omodeo Reasoning about Connectivity without Paths 1/24 Reasoning about connectivity without paths 1 Alberto


  1. Reasoning about connectivity without paths Alberto Casagrande and Eugenio G. Omodeo Dip. Matematica e Geoscienze — DMI Eugenio G. Omodeo Reasoning about Connectivity without Paths 1/24

  2. Reasoning about connectivity without paths 1 Alberto Casagrande and Eugenio G. Omodeo Dip. Matematica e Geoscienze — DMI 1 Work partially funded by: INdAM/GNCS 2013, FRA-UniTS 2012 PUMA Eugenio G. Omodeo Reasoning about Connectivity without Paths 1/24

  3. Every connected graph has non-cut vertices Example Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  4. Every connected graph has non-cut vertices Example Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  5. Every connected graph has non-cut vertices Example Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  6. Every connected graph has non-cut vertices Example Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  7. Every connected graph has non-cut vertices Example · Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  8. Every connected graph has non-cut vertices Example · Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  9. Every connected graph has non-cut vertices Example More generally: ‘Every connected (finite) hyper graph has at least one vertex whose removal does not disrupt connectivity’ Eugenio G. Omodeo Reasoning about Connectivity without Paths 2/24

  10. (Ideal) itinerary of this talk i Connectivity and non-cut vertices ii Applications ( one in particular. . . ) iii The proof assistant Ref iv Our proof-verification experiment http://www2.units.it/eomodeo/NonCutVertices.html http://aetnanova.units.it/scenarios/NonCutVertices/ Eugenio G. Omodeo Reasoning about Connectivity without Paths 3/24

  11. Connectivity Connectivity plays a crucial role in many fields. Es. The number of connected components of a graph is a topological invariant; corresponds to the multiplicity of the eigenvalue 0 in its Laplacian; is related to the number of its claw-free subgraphs [CPR07]. ∴ Large scale proof-verification efforts [Wie07, SCO11] must formally investigate this notion. Eugenio G. Omodeo Reasoning about Connectivity without Paths 4/24

  12. How we see a hypergraph Example f a b g c h e d Eugenio G. Omodeo Reasoning about Connectivity without Paths 5/24

  13. How we see a hypergraph Example f a b g c h e d The edges of G belong to G . Eugenio G. Omodeo Reasoning about Connectivity without Paths 5/24

  14. How we see a hypergraph Example f a b g c h e d   vertices    of G belong to { v : e ∈ G , v ∈ e } . The or  nodes Eugenio G. Omodeo Reasoning about Connectivity without Paths 5/24

  15. How we see a hypergraph Example f a b g c h e d In a graph, the edges have cardinality 2 . Eugenio G. Omodeo Reasoning about Connectivity without Paths 5/24

  16. Our formal definition of connectivity . . . Def . Conn ( G ) { p ⊆ G | nodes ( p ) ∩ nodes ( G \ p ) = ∅ } ⊆ { ∅ , G } & ↔ Def HGraph ( G ) Eugenio G. Omodeo Reasoning about Connectivity without Paths 6/24

  17. Our formal definition of connectivity . Def . nodes ( G ) = Def � G . Def . Conn ( G ) { p ⊆ G | nodes ( p ) ∩ nodes ( G \ p ) = ∅ } = { ∅ , G } & ↔ Def HGraph ( G ) Eugenio G. Omodeo Reasoning about Connectivity without Paths 6/24

  18. Our formal definition of connectivity . Def . nodes ( G ) = Def � G � ∀ e ∈ G | CardAtLeast2 ( e ) � & Def . HGraph ( G ) ↔ Def � � Finite nodes ( G ) Def . Conn ( G ) { p ⊆ G | nodes ( p ) ∩ nodes ( G \ p ) = ∅ } = { ∅ , G } & ↔ Def HGraph ( G ) Eugenio G. Omodeo Reasoning about Connectivity without Paths 6/24

  19. Our formal definition of connectivity Def . CardAtLeast2 ( E ) ↔ Def E �⊆ { arb ( E ) } Def . nodes ( G ) = Def � G � ∀ e ∈ G | CardAtLeast2 ( e ) � & Def . HGraph ( G ) ↔ Def � � Finite nodes ( G ) Def . Conn ( G ) { p ⊆ G | nodes ( p ) ∩ nodes ( G \ p ) = ∅ } = { ∅ , G } & ↔ Def HGraph ( G ) Eugenio G. Omodeo Reasoning about Connectivity without Paths 6/24

  20. Does this hypergraph have a spanning tree ? c a e b f d Eugenio G. Omodeo Reasoning about Connectivity without Paths 7/24

  21. Existence of non-cut vertices . . . Thm . Conn ( G ) & G �⊆ { arb ( G ) } → � ∃ v ∈ nodes ( G ) | NonCut ( G , v ) � Eugenio G. Omodeo Reasoning about Connectivity without Paths 8/24

  22. Existence of non-cut vertices . . � � & lost ( G , V ) = ∅ Def . NonCut ( G , V ) Conn rmv ( G , V ) ↔ Def Thm . Conn ( G ) & G �⊆ { arb ( G ) } → � ∃ v ∈ nodes ( G ) | NonCut ( G , v ) � Eugenio G. Omodeo Reasoning about Connectivity without Paths 8/24

  23. Existence of non-cut vertices Def . rmv ( G , V ) = Def { e \ { V } : e ∈ G | CardAtLeast2 ( e \ { V } ) } . � � & lost ( G , V ) = ∅ Def . NonCut ( G , V ) Conn rmv ( G , V ) ↔ Def Thm . Conn ( G ) & G �⊆ { arb ( G ) } → � ∃ v ∈ nodes ( G ) | NonCut ( G , v ) � Eugenio G. Omodeo Reasoning about Connectivity without Paths 8/24

  24. Existence of non-cut vertices Def . rmv ( G , V ) = Def { e \ { V } : e ∈ G | CardAtLeast2 ( e \ { V } ) } � � � � Def . lost ( G , V ) = Def nodes ( G ) \ nodes rmv ( G , V ) ∪ { V } � � & lost ( G , V ) = ∅ Def . NonCut ( G , V ) Conn rmv ( G , V ) ↔ Def Thm . Conn ( G ) & G �⊆ { arb ( G ) } → � ∃ v ∈ nodes ( G ) | NonCut ( G , v ) � Eugenio G. Omodeo Reasoning about Connectivity without Paths 8/24

  25. Ur-application of non-cut vertices: Walking How can we: walk along an infinite acyclic path? visit all vertices of a finite acyclic path? Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  26. Ur-application of non-cut vertices: Walking Example 4 · · · 0 1 2 3 Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  27. Ur-application of non-cut vertices: Walking Example 4 · · · 0 1 2 3 Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  28. Ur-application of non-cut vertices: Walking Example 4 · · · 1 2 3 Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  29. Ur-application of non-cut vertices: Walking Example 4 · · · 2 3 Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  30. Ur-application of non-cut vertices: Walking Example 4 · · · 3 Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  31. Ur-application of non-cut vertices: Walking Example 4 · · · Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  32. Ur-application of non-cut vertices: Walking Example 4 · · · This amounts to repeatedly picking and removing a non-cut vertex (the only one , in this case) from a graph ( infinite in this case) Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  33. Ur-application of non-cut vertices: Walking Example 4 · · · This amounts to repeatedly picking and removing a non-cut vertex (the only one , in this case) from a graph ( infinite in this case) Why such a silly example ? Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  34. Ur-application of non-cut vertices: Walking Example 4 · · · 0 1 2 3 N ∪ { N } N Where does the difference between N and N ∪ { N , N ∪ { N }} lie ? Eugenio G. Omodeo Reasoning about Connectivity without Paths 9/24

  35. A more revealing application Example We can get a spanning tree for a connected nonnull graph by: Eugenio G. Omodeo Reasoning about Connectivity without Paths 10/24

  36. A more revealing application Example We can get a spanning tree for a connected nonnull graph by: 1 Picking & removing a non-cut vertex from a connected graph Eugenio G. Omodeo Reasoning about Connectivity without Paths 10/24

  37. A more revealing application Example We can get a spanning tree for a connected nonnull graph by: 1 Picking & removing a non-cut vertex from a connected graph recursively getting a spanning tree for the resulting graph 2 Eugenio G. Omodeo Reasoning about Connectivity without Paths 10/24

  38. A more revealing application Example We can get a spanning tree for a connected nonnull graph by: 1 Picking & removing a non-cut vertex from a connected graph recursively getting a spanning tree for the resulting graph 2 3 restoring the removed vertex, along with one of the edges incident to it Eugenio G. Omodeo Reasoning about Connectivity without Paths 10/24

  39. A more revealing application Example We can get a spanning tree for a connected nonnull graph by: 1 Picking & removing a non-cut vertex from a connected graph recursively getting a spanning tree for the resulting graph 2 3 restoring the removed vertex, along with one of the edges incident to it 0 In the base case , the spanning tree consists of the (sole) edge Eugenio G. Omodeo Reasoning about Connectivity without Paths 10/24

Recommend


More recommend