Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 5.3: Graph Isomorphism and Paths

Similar presentations


Presentation on theme: "Lecture 5.3: Graph Isomorphism and Paths"— Presentation transcript:

1 Lecture 5.3: Graph Isomorphism and Paths
CS 250, Discrete Structures, Fall 2012 Nitesh Saxena Adopted from previous lectures by Zeph Grunschlag

2 Lecture 5.3 -- Graph Isomorphism and Connectivity
Course Admin -- HW4 Grading now – expect results in about a week Solution has been posted 4/13/2019 Lecture Graph Isomorphism and Connectivity

3 Course Admin -- Homework 5
Heads up: will be posted today Due on Dec 4 Covers the chapter on Graphs (lecture 5.*) 4/13/2019 Lecture Graph Isomorphism and Connectivity

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

5 Lecture 5.3 -- Graph Isomorphism and Connectivity
Lecture next Tuesday I am traveling (NSF in DC) and won’t be here to give the lecture The TA, Amit Dutta, will cover for me He is going to talk about homework assignment mostly Please do attend the lecture Please cooperate with him This is the first time he will be lecturing a big class 4/13/2019 Lecture Graph Isomorphism and Connectivity

6 Lecture 5.3 -- Graph Isomorphism and Connectivity
Outline Graph Isomorphism Paths 4/13/2019 Lecture Graph Isomorphism and Connectivity

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

8 Lecture 5.3 -- Graph Isomorphism and Connectivity
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 4/13/2019 Lecture Graph Isomorphism and Connectivity

9 Lecture 5.3 -- Graph Isomorphism and Connectivity
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: 4/13/2019 Lecture Graph Isomorphism and Connectivity

10 Graph Isomorphism Undirected 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 G1 is the same as the number of edges between f (u) and f (v ) in G2. Then f is called an isomorphism and G1 is said to be isomorphic to G2. 4/13/2019 Lecture Graph Isomorphism and Connectivity

11 Graph Isomorphism Digraphs
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 from u to v in G1 is the same as the number of edges between f (u) and f (v ) in G2. Then f is called an isomorphism and G1 is said to be isomorphic to G2. Note: Only difference between two definitions is the italicized “from” in no. 2 (was “between”). 4/13/2019 Lecture Graph Isomorphism and Connectivity

12 Graph Isomorphism -Example
EG: Prove that is isomorphic to First label the vertices: 2 2 1 3 1 3 5 4 5 4 Lecture Graph Isomorphism and Connectivity 4/13/2019

13 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 4/13/2019 Lecture 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. 2 2 1 1 3 3 5 4 5 4 4/13/2019 Lecture 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. 2 2 1 3 1 3 5 4 5 4 4/13/2019 Lecture 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 2 2 1 3 1 3 5 4 5 4 4/13/2019 Lecture 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. 2 2 1 3 1 3 5 4 5 4 4/13/2019 Lecture 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 isomorphism. 2 2 1 1 3 3 5 4 5 4 4/13/2019 Lecture Graph Isomorphism and Connectivity

19 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 1 3 1 3 5 4 5 4 4/13/2019 Lecture Graph Isomorphism and Connectivity

20 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

21 Lecture 5.3 -- Graph Isomorphism and Connectivity
Exercise Is “isomorphism” on graphs an equivalence relation? If so, what are the equivalence classes? Let’s use the whiteboard! 4/13/2019 Lecture Graph Isomorphism and Connectivity

22 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. 4/13/2019 Lecture Graph Isomorphism and Connectivity

23 Graph Isomorphism -Negative Examples
Q: Why are the following non-isomorphic? u2 v2 u3 u1 v1 v3 u4 v4 u5 4/13/2019 Lecture Graph Isomorphism and Connectivity

24 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

25 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

26 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

27 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

28 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

29 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

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 4/13/2019 Lecture Graph Isomorphism and Connectivity

38 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 4/13/2019 Lecture Graph Isomorphism and Connectivity

39 Lecture 5.3 -- Graph Isomorphism and Connectivity
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? 4/13/2019 Lecture Graph Isomorphism and Connectivity

40 Lecture 5.3 -- Graph Isomorphism and Connectivity
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. 4/13/2019 Lecture Graph Isomorphism and Connectivity

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

42 Lecture 5.3 -- Graph Isomorphism and Connectivity
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 e2 2 e5 e3 e4 e7 3 4 4/13/2019 Lecture Graph Isomorphism and Connectivity

43 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 . 4/13/2019 Lecture Graph Isomorphism and Connectivity

44 Paths in Directed Graphs
Q: Consider digraph adjacency matrix: Find a path from 1 to 4. Is there a path from 4 to 1? 4/13/2019 Lecture Graph Isomorphism and Connectivity

45 Paths in Directed Graphs
1 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. 4/13/2019 Lecture Graph Isomorphism and Connectivity

46 Paths in Directed Graphs
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. 4/13/2019 Lecture Graph Isomorphism and Connectivity

47 Paths in Directed Graphs
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. 4/13/2019 Lecture Graph Isomorphism and Connectivity

48 Lecture 5.3 -- Graph Isomorphism and Connectivity
Today’s Reading Rosen 10.3 and 10.4 4/13/2019 Lecture Graph Isomorphism and Connectivity


Download ppt "Lecture 5.3: Graph Isomorphism and Paths"

Similar presentations


Ads by Google