Rosen 5th ed., chs. 8-9 ~44 slides (more later), ~3 lectures

Slides:



Advertisements
Similar presentations
Chapter 9 Graphs.
Advertisements

Lecture 5 Graph Theory. Graphs Graphs are the most useful model with computer science such as logical design, formal languages, communication network,
1 Slides based on those of Kenneth H. Rosen Slides by Sylvia Sorkin, Community College of Baltimore County - Essex Campus Graphs.
1 Section 8.2 Graph Terminology. 2 Terms related to undirected graphs Adjacent: 2 vertices u & v in an undirected graph G are adjacent (neighbors) in.
Graph Theory in CS Route Search in Online Map Services
CSE 321 Discrete Structures Winter 2008 Lecture 25 Graph Theory.
KNURE, Software department, Ph , N.V. Bilous Faculty of computer sciences Software department, KNURE Discrete.
Discrete Mathematics Lecture 9 Alexander Bukharovich New York University.
9.2 Graph Terminology and Special Types Graphs
GRAPH Learning Outcomes Students should be able to:
Graph Theoretic Concepts. What is a graph? A set of vertices (or nodes) linked by edges Mathematically, we often write G = (V,E)  V: set of vertices,
Graph Theory 4/23/2017.
16.1 CompSci 102© Michael Frank Today’s topics GraphsGraphs –Basics & types –Properties –Connectivity –Hamilton & Euler Paths Reading: Sections Reading:
Module #19: Graph Theory: part I Rosen 5 th ed., chs. 8-9 내년 3 월 ? 교환 학생 프로그램 영어 점수 미리미리 준비하세요.
1 Elements of Graph Theory Quick review of Chapters 9.1… 9.5, 9.7 (studied in Mt1348/2008) = all basic concepts must be known New topics we will mostly.
© by Kenneth H. Rosen, Discrete Mathematics & its Applications, Sixth Edition, Mc Graw-Hill, 2007 Chapter 9 (Part 2): Graphs  Graph Terminology (9.2)
1 CS104 : Discrete Structures Chapter V Graph Theory.
Module #19: Graph Theory: part II Rosen 5 th ed., chs. 8-9.
Based on Rosen, Discrete Mathematics & Its Applications, 5e Prepared by (c) Michael P. Frank Modified by (c) Haluk Bingöl 1/18 Module.
Graphs.  Definition A simple graph G= (V, E) consists of vertices, V, a nonempty set of vertices, and E, a set of unordered pairs of distinct elements.
Graphs What are Graphs? General meaning in everyday math: A plot or chart of numerical data using a coordinate system. Technical meaning in discrete.
Discrete Structures Graphs 1 (Ch. 10) Dr. Muhammad Humayoun Assistant Professor COMSATS Institute of Computer Science, Lahore.
Graph Theory and Applications
Graphs 9.1 Graphs and Graph Models أ. زينب آل كاظم 1.
Graphs Basic properties.
LOGO.  Relations:  In these slides: Introductions to graphs Graph terminology Representing graphs and graph isomorphism Connectivity Euler and Hamilton.
Chapter 9: Graphs.
Graphs Rosen, Chapter 8. NOT ONE OF THESE! One of these!
Chap 7 Graph Def 1: Simple graph G=(V,E) V : nonempty set of vertices E : set of unordered pairs of distinct elements of V called edges Def 2: Multigraph.
1 GRAPH Learning Outcomes Students should be able to: Explain basic terminology of a graph Identify Euler and Hamiltonian cycle Represent graphs using.
GRAPH THEORY Discrete Math Team KS MATEMATIKA DISKRIT (DISCRETE MATHEMATICS )
Chapter Chapter Summary Graphs and Graph Models Graph Terminology and Special Types of Graphs Representing Graphs and Graph Isomorphism Connectivity.
An Introduction to Graph Theory
Applied Discrete Mathematics Week 14: Trees
Graphs: Definitions and Basic Properties
Chapter 9 (Part 2): Graphs
Let us switch to a new topic:
Lecture 5.2: Special Graphs and Matrix Representation
Lecture 19: CONNECTIVITY Sections
Applied Discrete Mathematics Week 13: Graphs
Special Graphs By: Sandeep Tuli Astt. Prof. CSE.
Copyright © Zeph Grunschlag,
Graphs Hubert Chan (Chapter 9) [O1 Abstract Concepts]
COT 3100, Spring 2001 Applications of Discrete Structures
Chapters 8.1 and 8.2 Based on slides by Y. Peng University of Maryland
Representing Graphs and
CS 250, Discrete Structures, Fall 2015
Agenda Lecture Content: Introduction to Graph Path and Cycle
Discrete Structures – CNS2300
Taibah University College of Computer Science & Engineering Course Title: Discrete Mathematics Code: CS 103 Chapter 10 Graphs Slides are adopted from “Discrete.
Discrete Mathematics and its Applications
Discrete Mathematics and its Applications
Graphs Chapters 10.1 and 10.2 Based on slides by Y. Peng University of Maryland.
Graphs.
Graphs.
Based on slides by Y. Peng University of Maryland
Chapter 13 (Part 1): Graphs
Chapters 8.1 and 8.2 Based on slides by Y. Peng University of Maryland
Graph & Trees Chapters 10-11
Discrete Mathematics and its Applications
CS100: Discrete structures
Discrete Mathematics and its Applications
Rosen 5th ed., ch. 8.1~8.5 ~44 slides (more later), ~3 lectures
Let us switch to a new topic:
Lecture 10: Graphs Graph Terminology Special Types of Graphs
5/9/2019 Discrete Math II Howon Kim
Applied Discrete Mathematics Week 13: Graphs
Based on slides by Y. Peng University of Maryland
HW 3 (Due Wednesday Feb 6) Create slide(s) for your 1 minute presentation on a graph theory application. Make sure your slide(s) include (1) Define the.
Concepts of Computation
Presentation transcript:

Rosen 5th ed., chs. 8-9 ~44 slides (more later), ~3 lectures Module #19: Graph Theory Rosen 5th ed., chs. 8-9 ~44 slides (more later), ~3 lectures 2018-12-01 (c)2001-2002, Michael P. Frank

What are Graphs? Not Our Meaning General meaning in everyday math: A plot or chart of numerical data using a coordinate system. Technical meaning in discrete mathematics: A particular class of discrete structures (to be defined) that is useful for representing relations and has a convenient webby-looking graphical representation. Not Our Meaning 2018-12-01 (c)2001-2002, Michael P. Frank

Applications of Graphs Potentially anything (graphs can represent relations, relations can describe the extension of any predicate). Apps in networking, scheduling, flow optimization, circuit design, path planning. Geneology analysis, computer game-playing, program compilation, object-oriented design, … 2018-12-01 (c)2001-2002, Michael P. Frank

Visual Representation of a Simple Graph Simple Graphs Correspond to symmetric binary relations R. A simple graph G=(V,E) consists of: a set V of vertices or nodes (V corresponds to the universe of the relation R), a set E of edges / arcs / links: unordered pairs of [distinct?] elements u,v  V, such that uRv. Visual Representation of a Simple Graph 2018-12-01 (c)2001-2002, Michael P. Frank

Example of a Simple Graph Let V be the set of states in the far-southeastern U.S.: V={FL, GA, AL, MS, LA, SC, TN, NC} Let E={{u,v}|u adjoins v} ={{FL,GA},{FL,AL},{FL,MS}, {FL,LA},{GA,AL},{AL,MS}, {MS,LA},{GA,SC},{GA,TN}, {SC,NC},{NC,TN},{MS,TN}, {MS,AL}} NC TN MS AL SC GA LA FL 2018-12-01 (c)2001-2002, Michael P. Frank

Multigraphs Like simple graphs, but there may be more than one edge connecting two given nodes. A multigraph G=(V, E, f ) consists of a set V of vertices, a set E of edges (as primitive objects), and a function f:E{{u,v}|u,vV  uv}. E.g., nodes are cities, edges are segments of major highways. Parallel edges 2018-12-01 (c)2001-2002, Michael P. Frank

Pseudographs Like a multigraph, but edges connecting a node to itself are allowed. A pseudograph G=(V, E, f ) where f:E{{u,v}|u,vV}. Edge eE is a loop if f(e)={u,u}={u}. E.g., nodes are campsites in a state park, edges are hiking trails through the woods. 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Graphs Correspond to arbitrary binary relations R, which need not be symmetric. A directed graph (V,E) consists of a set of vertices V and a binary relation E on V. E.g.: V = people, E={(x,y) | x loves y} 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Multigraphs Like directed graphs, but there may be more than one arc from a node to another. A directed multigraph G=(V, E, f ) consists of a set V of vertices, a set E of edges, and a function f:EVV. E.g., V=web pages, E=hyperlinks. The WWW is a directed multigraph... 2018-12-01 (c)2001-2002, Michael P. Frank

Types of Graphs: Summary Summary of the book’s definitions. Keep in mind this terminology is not fully standardized... 2018-12-01 (c)2001-2002, Michael P. Frank

§8.2: Graph Terminology Adjacent, connects, endpoints, degree, initial, terminal, in-degree, out-degree, complete, cycles, wheels, n-cubes, bipartite, subgraph, union. 2018-12-01 (c)2001-2002, Michael P. Frank

Adjacency Let G be an undirected graph with edge set E. Let eE be (or map to) the pair {u,v}. Then we say: u, v are adjacent / neighbors / connected. Edge e is incident with vertices u and v. Edge e connects u and v. Vertices u and v are endpoints of edge e. 2018-12-01 (c)2001-2002, Michael P. Frank

Degree of a Vertex Let G be an undirected graph, vV a vertex. The degree of v, deg(v), is its number of incident edges. (Except that any self-loops are counted twice.) A vertex with degree 0 is isolated. A vertex of degree 1 is pendant. 2018-12-01 (c)2001-2002, Michael P. Frank

Handshaking Theorem Let G be an undirected (simple, multi-, or pseudo-) graph with vertex set V and edge set E. Then Corollary: Any undirected graph has an even number of vertices of odd degree. 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Adjacency Let G be a directed (possibly multi-) graph, and let e be an edge of G that is (or maps to) (u,v). Then we say: u is adjacent to v, v is adjacent from u e comes from u, e goes to v. e connects u to v, e goes from u to v the initial vertex of e is u the terminal vertex of e is v 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Degree Let G be a directed graph, v a vertex of G. The in-degree of v, deg(v), is the number of edges going to v. The out-degree of v, deg(v), is the number of edges coming from v. The degree of v, deg(v)deg(v)+deg(v), is the sum of v’s in-degree and out-degree. 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Handshaking Theorem Let G be a directed (possibly multi-) graph with vertex set V and edge set E. Then: Note that the degree of a node is unchanged by whether we consider its edges to be directed or undirected. 2018-12-01 (c)2001-2002, Michael P. Frank

Special Graph Structures Special cases of undirected graph structures: Complete graphs Kn Cycles Cn Wheels Wn n-Cubes Qn Bipartite graphs Complete bipartite graphs Km,n 2018-12-01 (c)2001-2002, Michael P. Frank

Complete Graphs For any nN, a complete graph on n vertices, Kn, is a simple graph with n nodes in which every node is adjacent to every other node: u,vV: uv{u,v}E. K1 K4 K2 K3 K5 K6 Note that Kn has edges. 2018-12-01 (c)2001-2002, Michael P. Frank

How many edges are there in Cn? Cycles For any n3, a cycle on n vertices, Cn, is a simple graph where V={v1,v2,… ,vn} and E={{v1,v2},{v2,v3},…,{vn1,vn},{vn,v1}}. C3 C4 C5 C6 C8 C7 How many edges are there in Cn? 2018-12-01 (c)2001-2002, Michael P. Frank

How many edges are there in Wn? Wheels For any n3, a wheel Wn, is a simple graph obtained by taking the cycle Cn and adding one extra vertex vhub and n extra edges {{vhub,v1}, {vhub,v2},…,{vhub,vn}}. W3 W4 W5 W6 W8 W7 How many edges are there in Wn? 2018-12-01 (c)2001-2002, Michael P. Frank

Number of vertices: 2n. Number of edges:Exercise to try! n-cubes (hypercubes) For any nN, the hypercube Qn is a simple graph consisting of two copies of Qn-1 connected together at corresponding nodes. Q0 has 1 node. Q0 Q1 Q2 Q4 Q3 Number of vertices: 2n. Number of edges:Exercise to try! 2018-12-01 (c)2001-2002, Michael P. Frank

n-cubes (hypercubes) For any nN, the hypercube Qn can be defined recursively as follows: Q0={{v0},} (one node and no edges) For any nN, if Qn=(V,E), where V={v1,…,va} and E={e1,…,eb}, then Qn+1=(V{v1´,…,va´}, E{e1´,…,eb´}{{v1,v1´},{v2,v2´},…, {va,va´}}) where v1´,…,va´ are new vertices, and where if ei={vj,vk} then ei´={vj´,vk´}. 2018-12-01 (c)2001-2002, Michael P. Frank

Bipartite Graphs Skipping this topic for this semester… 2018-12-01 (c)2001-2002, Michael P. Frank

Complete Bipartite Graphs Skip... 2018-12-01 (c)2001-2002, Michael P. Frank

Subgraphs A subgraph of a graph G=(V,E) is a graph H=(W,F) where WV and FE. G H 2018-12-01 (c)2001-2002, Michael P. Frank

Graph Unions The union G1G2 of two simple graphs G1=(V1, E1) and G2=(V2,E2) is the simple graph (V1V2, E1E2). 2018-12-01 (c)2001-2002, Michael P. Frank

§8.3: Graph Representations & Isomorphism Adjacency lists. Adjacency matrices. Incidence matrices. Graph isomorphism: Two graphs are isomorphic iff they are identical except for their node names. 2018-12-01 (c)2001-2002, Michael P. Frank

Adjacency Lists A table with 1 row per vertex, listing its adjacent vertices. b a d c e f 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Adjacency Lists 1 row per node, listing the terminal nodes of each edge incident from that node. 2018-12-01 (c)2001-2002, Michael P. Frank

Adjacency Matrices Matrix A=[aij], where aij is 1 if {vi, vj} is an edge of G, 0 otherwise. 2018-12-01 (c)2001-2002, Michael P. Frank

Graph Isomorphism Formal definition: Simple graphs G1=(V1, E1) and G2=(V2, E2) are isomorphic iff  a bijection f:V1V2 such that  a,bV1, a and b are adjacent in G1 iff f(a) and f(b) are adjacent in G2. f is the “renaming” function that makes the two graphs identical. Definition can easily be extended to other types of graphs. 2018-12-01 (c)2001-2002, Michael P. Frank

Graph Invariants under Isomorphism Necessary but not sufficient conditions for G1=(V1, E1) to be isomorphic to G2=(V2, E2): |V1|=|V2|, |E1|=|E2|. The number of vertices with degree n is the same in both graphs. For every proper subgraph g of one graph, there is a proper subgraph of the other graph that is isomorphic to g. 2018-12-01 (c)2001-2002, Michael P. Frank

Isomorphism Example If isomorphic, label the 2nd graph to show the isomorphism, else identify difference. d b a b a d c e e c f f 2018-12-01 (c)2001-2002, Michael P. Frank

Are These Isomorphic? If isomorphic, label the 2nd graph to show the isomorphism, else identify difference. * Same # of vertices a b * Same # of edges * Different # of verts of degree 2! (1 vs 3) d e c 2018-12-01 (c)2001-2002, Michael P. Frank

§8.4: Connectivity In an undirected graph, a path of length n from u to v is a sequence of adjacent edges going from vertex u to vertex v. A path is a circuit if u=v. A path traverses the vertices along it. A path is simple if it contains no edge more than once. 2018-12-01 (c)2001-2002, Michael P. Frank

Paths in Directed Graphs Same as in undirected graphs, but the path must go in the direction of the arrows. 2018-12-01 (c)2001-2002, Michael P. Frank

Connectedness An undirected graph is connected iff there is a path between every pair of distinct vertices in the graph. Theorem: There is a simple path between any pair of vertices in a connected undirected graph. Connected component: connected subgraph A cut vertex or cut edge separates 1 connected component into 2 if removed. 2018-12-01 (c)2001-2002, Michael P. Frank

Directed Connectedness A directed graph is strongly connected iff there is a directed path from a to b for any two verts a and b. It is weakly connected iff the underlying undirected graph (i.e., with edge directions removed) is connected. Note strongly implies weakly but not vice-versa. 2018-12-01 (c)2001-2002, Michael P. Frank

Paths & Isomorphism Note that connectedness, and the existence of a circuit or simple circuit of length k are graph invariants with respect to isomorphism. 2018-12-01 (c)2001-2002, Michael P. Frank

Counting Paths w Adjacency Matrices Let A be the adjacency matrix of graph G. The number of paths of length k from vi to vj is equal to (Ak)i,j. (The notation (M)i,j denotes mi,j where [mi,j] = M.) 2018-12-01 (c)2001-2002, Michael P. Frank

§8.5: Euler & Hamilton Paths An Euler circuit in a graph G is a simple circuit containing every edge of G. An Euler path in G is a simple path containing every edge of G. A Hamilton circuit is a circuit that traverses each vertex in G exactly once. A Hamilton path is a path that traverses each vertex in G exactly once. 2018-12-01 (c)2001-2002, Michael P. Frank

Some Useful Theorems A connected multigraph has an Euler circuit iff each vertex has even degree. A connected multigraph has an Euler path (but not an Euler circuit) iff it has exactly 2 vertices of odd degree. If (but not only if) G is connected, simple, has n3 vertices, and v deg(v)n/2, then G has a Hamilton circuit. 2018-12-01 (c)2001-2002, Michael P. Frank