1 discrete math graphs, representation, isomorphism, connectivity
TRANSCRIPT
![Page 1: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/1.jpg)
1
Discrete Math
Graphs,
representation,
isomorphism,
connectivity
![Page 2: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/2.jpg)
Adjacent The vertices u and v in a undirected graph
are adjacent when there are endpoints of an edge of G represented by the un ordered pair (u,v)
When the initial vertex u and final vertex v in a directed graph are endpoints of the edge represented by the ordered pair (u,v), then u is adjacent to v and v is adjacent from u
2
![Page 3: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/3.jpg)
Representation Consider a graph with no multiple edges.
(NOTE: For directed graphs the pairs (u,v) and (v,u) are not multiple edges)
The graph can be represented by a list of all the edges that are part of the graph
The graph can be represented by an adjacency list
The graph can be represented by an adjacency matrix.
3
![Page 4: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/4.jpg)
Adjacency List: undirected
vertex Adjacent vertices
a c
b c
c a, b, d
d c, e, f
e d, e, f
f d, e
4
e
f
c
d
a
f
e
d
c
b
![Page 5: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/5.jpg)
Adjacency Matrix The Adjacency matrix A of a graph G=(V,E), with
respect to the set of edges V, where V does not include multiple edges is
The graph has at most one edge If the graph is not directed is an unordered pair If the graph is directed is a ordered pair
5
otherwise
Gofedgeanisvvifa mkkm 0
),(1
),( mk vv
),( mk vv
),( mk vv
![Page 6: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/6.jpg)
Adjacency Matrix
6
e
f
c
d
a
f
e
d
c
b
011000
111000
110100
001011
000100
000100
Adjacency matrix element amk is 1 if there is an edge between node number m and number k, and 0 otherwise
![Page 7: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/7.jpg)
Adjacency List: directed
Initial vertex Terminal vertices
a b, c, g
b a
c d, e
d e, g
e c, e, g, f
f -
g d, f
7
e
f
c
d
a
f
e
d
c
b
dg
![Page 8: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/8.jpg)
Adjacency Matrix
8
0101000
0000000
1110100
1010000
0011000
0000001
1000110
Adjacency matrix element amk is 1 if there is an edge from node number m to node number k, and 0 otherwise
e
f
c
d
a
f
e
d
c
b
dg
![Page 9: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/9.jpg)
Observations The adjacency matrix of an undirected
graph is symmetric The adjacency list will be more useful in a
sparse graph with few edges The adjacency matrix will be most useful
in a dense graph with many edges
9
![Page 10: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/10.jpg)
What about multiple edges? How do we generalize these representations to
include graphs with multiple edges between the same vertices Multiple edges for an undirected graph means two or
more edges between the same pair of nodes Multiple edges for a directed graph means two or
more edges between the same ordered pair of nodes. That is multiple edges in the same direction between the same pair of nodes
10
![Page 11: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/11.jpg)
Adjacency Matrix The Adjacency matrix A of a graph G=(V,E), with
respect to the set of edges V, where V does include multiple edges is
11
otherwise
Ginmv
kvedgesnarethereifn
kma
0
),(
![Page 12: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/12.jpg)
Adjacency Matrix
12
e
f
c
d
a
f
e
d
c
b
014000
113000
430100
001012
000100
000200
Adjacency matrix element amk is 1 if there is an edge between node number m and number k, and 0 otherwise
![Page 13: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/13.jpg)
Adjacency Matrix
13
0201000
0000000
1410100
1010000
0011000
0000002
1000310
Adjacency matrix element amk is 1 if there is an edge from node number m to node number k, and 0 otherwise
e
f
c
d
a
f
e
d
c
b
dg
![Page 14: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/14.jpg)
Incidence matrices Let G=(V,E) be an undirected graph, an
incidence matrix representing G has one row for each vertex v1, v2, … , vn in V and one column for each edge e1, e2, …, em in E.
14
otherwise
vwithincidentiseedgewhenkpm kp
0
1
![Page 15: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/15.jpg)
Incidence Matrix
15
e
f
c
d
a
f
e
d
c
b
00000000000
00111110000
11100000000
10011111000
00000001111
00000000100
00000000011
Incidence matrix element amk is 1 if there is an edge ek is incident with node number m and node number k, and 0 otherwise
e9
e1, e2
e5,e6 e7, e8
e4
e3
e10
e11
![Page 16: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/16.jpg)
Incidence matrices Let G=(V,E) be an directed graph, an
incidence matrix representing G has one row for each vertex v1, v2, … , vn in V and one column for each edge e1, e2, …, em in E.
16
otherwise
vtoinincidentiseedgewhenvfromoutincidentiseedgewhen
kpm kp
kp
0
11
![Page 17: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/17.jpg)
Incidence Matrix
17
11100000110
11101001000
00011110000
00010000000
00000111111
00000000001
Adjacency matrix element amk is 1 if there is an edge from node number m to node number k, and 0 otherwise
e
c
d
a
f
e
d
c
db
e8
e9,
e10 e11
e7
e5, e6
e4
e2, e3
e1
![Page 18: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/18.jpg)
Isomorphism Two simple graphs G1=(V,E) and
G2=(W,F) are isomorphic if there is a oneto one and onto function f from V to W with the property that if a and b are adjacent in G1 iff f(a) and f(b) are adjacent in G2, for all a and b in V.
Such a function f is called an isomorphism
18
![Page 19: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/19.jpg)
Isomorphic graphs When two graphs are isomorphic then they have
the same number of vertices the same number of edges the same number of vertices or any degree n
These properties are called graph invariants and are identical for two graphs that are isomorphic. If any of these invariants changes between the two graphs, the two graphs are not isomorphic.
However, if these graph invariants are all identical it does not imply the graphs are isomorphic
19
![Page 20: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/20.jpg)
Graphs A and B
20
a1
a5a4
a3a2
b5b4
b3b2b1
![Page 21: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/21.jpg)
Are A and B isomorphic? They both have the same number of vertices They both have the same number of edges They both have 3 vertices of degree 2, and 2 vertices
of degree 3 The graphs may be isomorphic, to prove they are we
need to find an isomorphism However, in graph a there are no two nodes of degree
2 that are adjacent to each other, in graph b there are two nodes of degree 2 that are adjacent. Therefore, the two graphs are not isomorphic
21
![Page 22: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/22.jpg)
Graphs A and B
22
a1
a5a4
a3a2
b5b4
b3b2b1
![Page 23: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/23.jpg)
Are A and B isomorphic? They both have the same number of
vertices They both have the same number of edges They both have two vertices of degree 2,
two vertices of degree 3 and 1 vertex of degree 4
The graphs may be isomorphic, to prove they are we need to find an isomorphism
23
![Page 24: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/24.jpg)
Isomorphism Since an isomorphism preserves
adjacency, If n vertices are adjacent to a given vertex in a graph, then the images of those n vertices must be adjacent to the image of the vertex in the isomorphic graph.
Therefore, the order of the nodes should be preserved by the isomorphism.
24
![Page 25: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/25.jpg)
Graphs A and B
25
a1
a5a4
a3a2
b5b4
b3b2b1
![Page 26: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/26.jpg)
Isomorphism (2) There is only one node that is adjacent to 4
other nodes ( degree 4) so the image of that node must be the node in graph B which has degree 4. So F(a1) = b2
a1 is adjacent to 2 nodes of degree 3 (a2 and a3). The images of these nodes must be the nodes in B which have degree 3 (b4 and b5). Both are adjacent to b2
26
![Page 27: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/27.jpg)
Isomorphism (3) We have two possible ways to choose to assign
the isomorphism between these points. Since both ways preserve adjacency a2 and a3 are adjacent, b4 and b5 are adjacent a2 and a3 are both adjacent to a1, b4 and b5 are
both adjacent to b2 a2 and a3 are both adjacent to a node of degree 2,
that is adjacent to a1, b4 and b5 are both adjacent to a node of degree 2 that is adjacent to b2
27
![Page 28: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/28.jpg)
Isomorphism (4) we will randomly choose one, if it does
not work we will return and try the other. F(a2) = b5 F(a3) = b4
28
![Page 29: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/29.jpg)
Graphs A and B
29
a1
a5a4
a3a2
b5b4
b3b2b1
![Page 30: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/30.jpg)
Isomorphism (5) F(a1)= b2 F(a2) = b5 F(a3) = b4 A4 is adjacent to both a3 and a1, so its
image must be adjacent to b4 and b2. A5 is adjacent to both a2 and a1 so its
image must be adjacent to b5 and b4 F(a4) = b1, F(a5) = b3
30
![Page 31: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/31.jpg)
Isomorphic Graphs A and B
31
a1
a5a4
a3a2
b5b4
b3b2b1
![Page 32: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/32.jpg)
Paths: undirected graphs Let n be a nonnegative integer and G an undirected graph. A
path of length n from u to v in G is a sequence of n edges e1, e2, … , en of G such that e1 is (u, x1), e2 is (x1,x2), and en is (xn-1, v). When the graph is simple we denote the path by the vertex
sequence u, x1, x2, … , xn-1, v.
A circuit is a path with n>0 which starts and ends at the same vertex
The path or circuit passes through these vertices and traverses the edges
A path or circuit is simple if it does not traverse the same edge more than once
32
![Page 33: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/33.jpg)
Paths: directed graphs Let n be a nonnegative integer and G a directed graph. A path
of length n from u to v in G is a sequence of n edges e1, e2, … , en of G such that e1 is (u, x1), e2 is (x1,x2), and en is (xn-1, v).
When there are no multiple edges we denote the path by the vertex sequence u, x1, x2, … , xn-1, v.
A circuit is a path with n>0 which starts and ends at the same vertex
The path or circuit passes through these vertices and traverses the edges
A path or circuit is simple if it does not traverse the same edge more than once
33
![Page 34: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/34.jpg)
Alternate terms A walk is an alternating sequence of
vertices and edges starting at vertex u and ending at vertex v
A circuit may be called a closed walk S simple circuit may be called a trail If a reference is using walk, closed walk
and trail, it may use path do describe a trail with no repeated vertices
34
![Page 35: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/35.jpg)
Connected An undirected graph is called connected
if there is a path between every pair of distinct vertices of the graph.
35
![Page 36: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/36.jpg)
Connectedness: directed graphs A directed graph is strongly connected if
there is a path from a to b and from b to a whenever a and b are nodes in the directed graph
A directed graph is weakly connected if there is a path between each of the vertices in the underlying undirected graph
36
![Page 37: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/37.jpg)
Connected? Is this undirected graph connected?
37NO
![Page 38: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/38.jpg)
Connected? Is this undirected graph connected?
The green vertex is an isolated vertex. There is no path connecting it to any other vertex. The graph cannot be connected.
The red vertex is a pendant vertex. It is connected to the graph by only a single edge
38
![Page 39: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/39.jpg)
Connected? Is this undirected graph connected?
39
YES
![Page 40: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/40.jpg)
Strongly Connected? Is this undirected graph strongly connected?
40
NO
![Page 41: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/41.jpg)
Weakly Connected? Is this undirected graph strongly connected?
41
![Page 42: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/42.jpg)
Underlying undirected graph
Is this underlying undirected graph connected?
YES: so the digraph is weakly connected42
![Page 43: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/43.jpg)
Strongly Connected? Is this undirected graph connected?
43
YES
![Page 44: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/44.jpg)
Subgraph Recall
A subgraph of a graph G=(V,E) is a graph H=(W,F) when W⊆V and F⊆E.
A subgraph H of G is a proper subgraph of G if H=G
44
![Page 45: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/45.jpg)
Connected component A maximal connected subgraph is a subgraph
such that there are no nodes and edges in the original graph that could be added to the subgraph and still leave it connected.
A connected component of a graph G is a connected subgraph of G that is not a proper subgraph of another connected subgraph of G. That is, it is a maximal connected subgraph of G
45
![Page 46: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/46.jpg)
Connected components?
46
![Page 47: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/47.jpg)
Cut Edges When removing a vertex, increases the number
of connected components in the graph then the vertex (that was removed) is called a cut vertex or articulation point
Let v be a vertex in a graph G=(V,E). The subgraph of G denoted G-v has the vertex set V1=V-v and the edges E1⊆E where E1 contains all edges in E except for those that are incident with (out from, in to) the vertex v
47
![Page 48: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/48.jpg)
Find a cut vertex
48
![Page 49: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/49.jpg)
With cut vertex removed
49
![Page 50: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/50.jpg)
Cut Edges When removing a edge, increases the number
of connected components in the graph then the edge (that was removed) is called a cut edge or bridge
Let e be an edge in a graph G=(V,E). The subgraph of G denoted G-e has the same vertex set V and the edges E1=E-e
50
![Page 51: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/51.jpg)
Find a cut edge
51
![Page 52: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/52.jpg)
With a cut edge removed
52
![Page 53: 1 Discrete Math Graphs, representation, isomorphism, connectivity](https://reader036.vdocument.in/reader036/viewer/2022062223/551ace37550346b2288b5a59/html5/thumbnails/53.jpg)
Paths and Isomorphism The existance of a circuit of a particular
length within a graph is an isomorphic invariant.
If a graph G has a circuit of length n from node v to node v then any graph that is isomorphic to G must also have a circuit of length n from F(v) to F(v)
53