1 / 69

Lecture 5.3: Graph Isomorphism and Connectivity

Lecture 5.3: Graph Isomorphism and Connectivity. CS 250, Discrete Structures, Fall 2011 Nitesh Saxena * Adopted from previous lectures by Zeph Grunschlag. HW1 . Submitted yesterday Grading now – expect results in about a week Solution to be posted soon. Course Admin -- Final Exam .

cjonas
Download Presentation

Lecture 5.3: Graph Isomorphism and Connectivity

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. Lecture 5.3: Graph Isomorphism and Connectivity CS 250, Discrete Structures, Fall 2011 NiteshSaxena *Adopted from previous lectures by ZephGrunschlag

  2. HW1 • Submitted yesterday • Grading now – expect results in about a week • Solution to be posted soon Lecture 5.3 -- Graph Isomorphism and Connectivity

  3. Course Admin -- Final Exam • Thursday, December 8,  10:45am- 1:15pm, lecture room • Heads up! • Please mark the date/time/place • Emphasis on post mid-term 2 material • Coverage: • 65% post mid-term 2 (lectures 4.*, 5.*, 6.*), and • 35% pre mid-term 2 (lecture 1.*. 2.* and 3.*) • Our last lecture will be on December 6 • We plan to do a final exam review then Lecture 5.3 -- Graph Isomorphism and Connectivity

  4. Course Admin -- Homework 5 • Heads up: will be posted by the coming weekend • Due in 10 days after the day of posting • Covers the chapter on Graphs (lecture 5.*) Lecture 5.3 -- Graph Isomorphism and Connectivity

  5. Outline • Graph Isomorphism • Paths and Connectivity Lecture 5.3 -- Graph Isomorphism and Connectivity

  6. Warm-up Exercise Theorem: No. of edges in an n-cube is n2n-1 Proof: Use mathematical induction. Let’s use the whiteboard. Lecture 5.3 -- Graph Isomorphism and Connectivity

  7. Graph Isomorphism Various mathematical notions come with their own concept of equivalence, as opposed to equality: • Equivalence for sets is bijectivity: • EG {23, 12, 43}  {12, 23, 43} • Equivalence for graphs is isomorphism: • EG  Lecture 5.3 -- Graph Isomorphism and Connectivity

  8. Graph Isomorphism Intuitively, two graphs are isomorphic if can bend, stretch and reposition vertices of the first graph, until the second graph is formed. Etymologically, isomorphic means “same shape”. EG: Can twist or relabel: to obtain: Lecture 5.3 -- Graph Isomorphism and Connectivity

  9. Graph IsomorphismUndirected Graphs DEF: Suppose G1 = (V1,E1 ) and G2 = (V2,E2 ) are pseudographs. Let f :V1V2 be a function s.t.: • f is bijective • for all vertices u,v in V1, the number of edges between u and v in G1is the same as the number of edges between f (u) and f (v ) in G2. Then f is called an isomorphismand G1is said to be isomorphic to G2. Lecture 5.3 -- Graph Isomorphism and Connectivity

  10. Graph IsomorphismDigraphs DEF: Suppose G1 = (V1,E1 ) and G2 = (V2,E2 ) are directed multigraphs. Let f :V1V2 be a function s.t.: • f is bijective • for all vertices u,v in V1, the number of edges fromu to v in G1is the same as the number of edges between f (u) and f (v ) in G2. Then f is called an isomorphismand G1is said to be isomorphic to G2. Note: Only difference between two definitions is the italicized “from” in no. 2 (was “between”).

  11. Graph Isomorphism-Example EG: Prove that is isomorphic to First label the vertices: 2 2 3 3 1 1 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  12. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. 2 2 1 1 3 3 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  13. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. The next vertex seen is 3, not 2 so set f (2) = 3. 2 2 3 1 1 3 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  14. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. The next vertex seen is 3, not 2 so set f (2) = 3. Next vertex is 5 so set f (3) = 5. 2 2 3 3 1 1 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  15. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. The next vertex seen is 3, not 2 so set f (2) = 3. Next vertex is 5 so set f (3) = 5. In this fashion we get f (4) = 2 2 2 3 3 1 1 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  16. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. The next vertex seen is 3, not 2 so set f (2) = 3. Next vertex is 5 so set f (3) = 5. In this fashion we get f (4) = 2, f (5) = 4. 2 2 3 3 1 1 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  17. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. The next vertex seen is 3, not 2 so set f (2) = 3. Next vertex is 5 so set f (3) = 5. In this fashion we get f (4) = 2, f (5) = 4. If we would continue, we would get back to f (1) =1 so this process is well defined and f is a isomorphism. 2 2 1 1 3 3 5 4 5 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  18. Graph Isomorphism -Example Next, set f (1) = 1 and try to walk around clockwise on the star. The next vertex seen is 3, not 2 so set f (2) = 3. Next vertex is 5 so set f (3) = 5. In this fashion we get f (4) = 2, f (5) = 4. If we would continue, we would get back to f (1) =1 so this process is well defined and f is a morphism. Finally since f is bijective, f is an isomorphism. 2 2 3 3 1 1 5 4 5 4

  19. Properties of Isomorphims Since graphs are completely defined by their vertex sets and the number of edges between each pair, isomorphic graphs must have the same intrinsic properties. I.e. isomorphic graphs have the same… • number of vertices and edges • degrees at corresponding vertices • types of possible subgraphs Lecture 5.3 -- Graph Isomorphism and Connectivity

  20. Exercise • Is “isomorphism” on graphs an equivalence relation? • If so, what are the equivalence classes? Let’s use the whiteboard! Lecture 5.3 -- Graph Isomorphism and Connectivity

  21. Graph Isomorphism-Negative Examples To show that two graphs are non-isomorphic need to show that no function can exist that satisfies defining properties of isomorphism. In practice, you try to find some intrinsic property that differs between the 2 graphs in question. Lecture 5.3 -- Graph Isomorphism and Connectivity

  22. Graph Isomorphism-Negative Examples Q: Why are the following non-isomorphic? u2 v2 u3 u1 v1 v3 u4 v4 u5 Lecture 5.3 -- Graph Isomorphism and Connectivity

  23. Graph Isomorphism-Negative Examples A: 1st graph has more vertices than 2nd. Q: Why are the following non-isomorphic? u2 v2 u3 v3 u1 v1 u4 v4 u5 v5 Lecture 5.3 -- Graph Isomorphism and Connectivity

  24. Graph Isomorphism-Negative Examples A: 1st graph has more edges than 2nd. Q: Why are the following non-isomorphic? u2 v2 u3 v3 u1 v1 u4 v4 u5 v5 Lecture 5.3 -- Graph Isomorphism and Connectivity

  25. Graph Isomorphism-Negative Examples A: 2nd graph has vertex of degree 1, 1st graph doesn't. Q: Why are the following non-isomorphic? u1 u2 u3 u4 u5 u6 v1 v2 v3 v4 v5 v6 u7 u8 u9 v7 v8 v9 Lecture 5.3 -- Graph Isomorphism and Connectivity

  26. Graph Isomorphism-Negative Examples A: 1st graph has 2 degree 1 vertices, 4 degree 2 vertex and 2 degree 3 vertices. 2nd graph has 3 degree 1 vertices, 3 degree 2 vertex and 3 degree 3 vertices. Q: Why are the following non-isomorphic? u1 u2 u3 u4 u5 u6 v1 v2 v3 v4 v5 v6 u7 u8 v7 v8 Lecture 5.3 -- Graph Isomorphism and Connectivity

  27. Graph Isomorphism-Negative Examples A: None of the previous approaches work as there are the same no. of vertices, edges, and same no. of vertices per degree. LEMMA: If G and H are isomorphic, then any subgraph of G will be isomorphic to some subgraph of H. Q: Find a subgraph of 2nd graph which isn’t a subgraph of 1st graph. u1 u2 u3 u4 u5 u6 v1 v2 v3 v4 v5 v6 u7 u8 v7 v8

  28. Graph Isomorphism-Negative Examples A: This subgraph is not a subgraph of the left graph. Why not? Deg. 3 vertices must map to deg. 3 vertices. Since subgraph and left graph are symmetric, can assume v2 maps to u2. Adjacent deg. 1 vertices to v2 must map to degree 1 vertices, forcing the deg. 2 adjacent vertex v3 to map to u3. This forces the other vertex adjacent to v3, namely v4 to map to u4. But then a deg. 3 vertex has mapped to a deg. 2 vertex. u1 u2 u3 u4 u5 u6 v1 v2 v3 v4 v5 v6 u7 u8 v7 v8

  29. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  30. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  31. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  32. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  33. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  34. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  35. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  36. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  37. Paths A path in a graph is a continuous way of getting from one vertex to another by using a sequence of edges. EG: could get from 1 to 3 circuitously as follows: 1-e12-e11-e33-e42-e62-e52-e43 e6 e1 e2 1 2 e5 e3 e4 e7 3 4

  38. Paths DEF: A path of length n in an undirected graph is a sequence of n edges e1, e2, …,en such that each consecutive pair ei , ei+1 share a common vertex. In a simple graph, one may instead define a path of length n as a sequence of n+1 vertices v0, v1, v2, …,vn such that each consecutive pair vi , vi+1 are adjacent. Paths of length 0 are also allowed according to this definition. Q: Why does the second definition work for simple graphs? Lecture 5.3 -- Graph Isomorphism and Connectivity

  39. Paths A: For simple graphs, any edge is unique between vertices so listing the vertices gives us the edge-sequence as well. DEF: A simple path contains no duplicate edges (though duplicate vertices are allowed). A cycle (or circuit) is a path which starts and ends at the same vertex. Note: Simple paths need not be in simple graphs. E.g., may contain loops. Lecture 5.3 -- Graph Isomorphism and Connectivity

  40. Paths Q: Find a longest possible simple path in the following graph: e6 e1 e2 1 2 e5 e3 e4 e7 3 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  41. Paths A: The following path from 1 to 2 is a maximal simple path because • simple: each of its edges appears exactly once • maximal: because it contains every edge except the unreachable edge e7 The maximal path: e1,e5,e6,e2,e3,e4 e1 e6 1 2 e2 e5 e3 e4 e7 3 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  42. Paths in Directed Graphs One can define paths for directed graphs by insisting that the target of each edge in the path is the source of the next edge: DEF: A path of length n in a directed graph is a sequence of n edges e1, e2, …,en such that the target of ei is the source ei+1 for each i. In a digraph, one may instead define a path of length n as a sequence of n+1 vertices v0, v1, v2, …,vn such that for each consecutive pair vi , vi+1 there is an edge from vi to vi+1 . Lecture 5.3 -- Graph Isomorphism and Connectivity

  43. Paths in Directed Graphs Q: Consider digraph adjacency matrix: • Find a path from 1 to 4. • Is there a path from 4 to 1? Lecture 5.3 -- Graph Isomorphism and Connectivity

  44. Paths in Directed Graphs A: • 13 . • There’s no path from 4 to 1. From 4 must go to 2, from 2 must stay at 2 or return to 4. In other words 2 and 4 are disconnected from 1. Lecture 5.3 -- Graph Isomorphism and Connectivity

  45. Paths in Directed Graphs A: • 132 . • There’s no path from 4 to 1. From 4 must go to 2, from 2 must stay at 2 or return to 4. In other words 2 and 4 are disconnected from 1. Lecture 5.3 -- Graph Isomorphism and Connectivity

  46. Paths in Directed Graphs A: • 1324. • There’s no path from 4 to 1. From 4 must go to 2, from 2 must stay at 2 or return to 4. In other words 2 and 4 are disconnected from 1. Lecture 5.3 -- Graph Isomorphism and Connectivity

  47. Connectivity DEF: Let G be a pseudograph. Let u and v be vertices. u and v are connected to each other if there is a path in G which starts at u and ends at v. G is said to be connected if all vertices are connected to each other. Note: Any vertex is automatically connected to itself via the empty path. Lecture 5.3 -- Graph Isomorphism and Connectivity

  48. Connectivity Q: Which of the following graphs are connected? 1 2 3 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  49. Connectivity A: First and second are disconnected. Last is connected. 1 2 3 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

  50. Connectivity A: First and second are disconnected. Last is connected. 1 2 3 4 Lecture 5.3 -- Graph Isomorphism and Connectivity

More Related