Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes Austin Mohr.

Slides:



Advertisements
Similar presentations
Weighted graphs Example Consider the following graph, where nodes represent cities, and edges show if there is a direct flight between each pair of cities.
Advertisements

Greedy Algorithms Greed is good. (Some of the time)
Greed is good. (Some of the time)
10.4 Spanning Trees. Def Def: Let G be a simple graph. A spanning tree of G is a subgraph of G that is a tree containing every vertex of G See handout.
Graph Isomorphism Algorithms and networks. Graph Isomorphism 2 Today Graph isomorphism: definition Complexity: isomorphism completeness The refinement.
1 NP-completeness Lecture 2: Jan P The class of problems that can be solved in polynomial time. e.g. gcd, shortest path, prime, etc. There are many.
3.3 Spanning Trees Tucker, Applied Combinatorics, Section 3.3, by Patti Bodkin and Tamsen Hunter.
1 Section 9.4 Spanning Trees. 2 Let G be a simple graph. A spanning subtree of G is a subgraph of G containing every vertex of G –must be connected; contains.
Breadth-First Search Seminar – Networking Algorithms CS and EE Dept. Lulea University of Technology 27 Jan Mohammad Reza Akhavan.
CMPS 2433 Discrete Structures Chapter 5 - Trees R. HALVERSON – MIDWESTERN STATE UNIVERSITY.
GOLOMB RULERS AND GRACEFUL GRAPHS
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 21: Graphs.
Graph. Undirected Graph Directed Graph Simple Graph.
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
Graphs and Trees This handout: Trees Minimum Spanning Tree Problem.
Minimum-Cost Spanning Tree weighted connected undirected graph spanning tree cost of spanning tree is sum of edge costs find spanning tree that has minimum.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Vertex Cut Vertex Cut: A separating set or vertex cut of a graph G is a set SV(G) such that S has more than one component. Connectivity of G ((G)): The.
Is the following graph Hamiltonian- connected from vertex v? a). Yes b). No c). I have absolutely no idea v.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Module #1 - Logic 1 Based on Rosen, Discrete Mathematics & Its Applications. Prepared by (c) , Michael P. Frank and Modified By Mingwu Chen Trees.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
MATH 310, FALL 2003 (Combinatorial Problem Solving) Lecture 10, Monday, September 22.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
Problem: Induced Planar Graphs Tim Hayes Mentor: Dr. Fiorini.
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
Graph Algorithms Using Depth First Search Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Analysis of Algorithms.
Introduction to Graph Theory
Data Structures Using C++ 2E
5.4 Shortest-path problem  Let G=(V,E,w) be a weighted connected simple graph, w is a function from edges set E to position real numbers set. We denoted.
BCT 2083 DISCRETE STRUCTURE AND APPLICATIONS
Trees and Distance. 2.1 Basic properties Acyclic : a graph with no cycle Forest : acyclic graph Tree : connected acyclic graph Leaf : a vertex of degree.
Module 5 – Networks and Decision Mathematics Chapter 23 – Undirected Graphs.
5.5.2 M inimum spanning trees  Definition 24: A minimum spanning tree in a connected weighted graph is a spanning tree that has the smallest possible.
Introduction to Graph Theory
Basic Notions on Graphs. The House-and-Utilities Problem.
Chapter 1 Fundamental Concepts Introduction to Graph Theory Douglas B. West July 11, 2002.
15-853Page :Algorithms in the Real World Planar Separators I & II – Definitions – Separators of Trees – Planar Separator Theorem.
5.5.2 M inimum spanning trees  Definition 24: A minimum spanning tree in a connected weighted graph is a spanning tree that has the smallest possible.
Introduction to Graph Theory
EMIS 8373: Integer Programming Combinatorial Relaxations and Duals Updated 8 February 2005.
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
Indian Institute of Technology Kharagpur PALLAB DASGUPTA Graph Theory: Trees Pallab Dasgupta, Professor, Dept. of Computer Sc. and Engineering, IIT
1 Assignment #3 is posted: Due Thursday Nov. 15 at the beginning of class. Make sure you are also working on your projects. Come see me if you are unsure.
Algorithms for hard problems Parameterized complexity Bounded tree width approaches Juris Viksna, 2015.
Iterative Improvement for Domain-Specific Problems Lecturer: Jing Liu Homepage:
1 Schnyder’s Method. 2 Motivation Given a planar graph, we want to embed it in a grid We want the grid to be relatively small And we want an efficient.
Trees.
Subgraphs Lecture 4.
Chapter 5 : Trees.
Minimum Spanning Tree Chapter 13.6.
Graph theory Definitions Trees, cycles, directed graphs.
12. Graphs and Trees 2 Summary
Graph Theory and Algorithm 01
Algorithms and networks
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
Algorithms and Complexity
Graph Algorithms Using Depth First Search
Minimum-Cost Spanning Tree
EMIS 8373: Integer Programming
Algorithms and networks
Minimum-Cost Spanning Tree
Minimum-Cost Spanning Tree
Trees.
CS 583 Analysis of Algorithms
Chapter 15 Graph Theory © 2008 Pearson Addison-Wesley.
Simple Graphs: Connectedness, Trees
Treewidth meets Planarity
Minimum-Cost Spanning Tree
Presentation transcript:

Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes Austin Mohr

 Problem Description  Generating Spanning Trees  Testing for Isomorphism  Partitioning Spanning Trees  Some Results  Finding a Closed Formula for I(K s,t )

Problem Description

 Spanning tree T of graph G › T is a tree with E(T) ⊆ E(G) and V(T)=V(G)  Isomorphic trees T 1 and T 2 › There exists a mapping f where the edge uv ∈ T 1 if and only if the edge f(u)f(v) ∈ T 2 Problem Description Reference: pg

Problem Description Reference: pg. 5

Generating Spanning Trees

 Index of an edge › “Arbitrary” labeling of the edges of G  T* › Tree induced by the edge-subset {1,2,…,n-1}  top(H)/btm(H) › Edge of H with smallest/largest index  Cut(H,e) › Edges of G connecting the components of H\e   (T) › (T\f) ∪ g, f = btm(T), g = top(Cut(T,f)) Generating Spanning Trees Reference: pg. 6 Let G be a graph on n vertices, H ⊆ G, e be an edge of G, and T be a spanning tree of G.

 Let T be a spanning tree of G. Then,  (T) is a spanning tree of G.  Let T ≠ T* be a spanning tree of G with  (T) = (T\f) ∪ g. Then, g ∈ T* ∌ f. › Means iteration of  yields T* Generating Spanning Trees Reference: pg. 7

Reference: pg. 8 Generating Spanning Trees

 Pivot edge f of T › An edge such that T`\T = f for some child tree T`  Cycle(T,e) › The set of edges of the unique cycle in T ∪ e Generating Spanning Trees Reference: pg. 8 Let G be a graph on n vertices, e be an edge of G, and T be a spanning tree of G.

Reference: pg. 11 Generating Spanning Trees

Testing for Isomorphism

Reference: pg. 14 We first consider the simpler problem of determining when two rooted trees are isomorphic.

 Given two rooted trees T 1 and T 2 on n vertices, a mapping f: V(T 1 ) → V(T 2 ) is an isomorphism if and only if for every vertex v ∈ V(T 1 ), the subtree of T 1 rooted at v is isomorphic to the subtree of T 2 rooted at f(v). › Means we can start at the bottom of the tree and work recursively toward the root Reference: pg. 14 Testing for Isomorphism

Reference: pg. 17 Testing for Isomorphism

 To generalize the algorithm, we need a vertex u ∈ V(T 1 ) and v ∈ V(T 2 ) such that f(u) = v for every isomorphism f. › If found, we root T 1 at u, root T 2 at v, and use the previous algorithm › The center of each tree is suitable choice Reference: pg. 18 Testing for Isomorphism

 d(u,v) (distance) › The number of edges in the shortest uv-path  eccentricity › Let v be a vertex of maximum distance from u. Then, the eccentricity of u is d(u,v).  center › The subgraph of G induced by the vertices of minimum eccentricity Reference: pg. 18 Let u and v be vertices of a graph G. Testing for Isomorphism

 Theorem (Jordan): The center of a tree is either a vertex or an edge. › Jordan’s proof also shows that we can find the center by successively removing all the leaves from the tree until only a vertex or an edge remains. Reference: pg Testing for Isomorphism

Reference: pg. 21 Testing for Isomorphism

Partitioning Spanning Trees

 Place T* in a subset S 1  For each child T of T* › For each subset S i  If T is isomorphic to a tree in S i, place T in S i  Otherwise, create a new subset for T  Find the children of the children of T* and repeat  Continue until all trees have been partitioned Reference: pg. 22 Partitioning Spanning Trees

Reference: pg. 23 Partitioning Spanning Trees

Some Results

Finding a Closed Formula for I(K s,t )

 I(G) › The number of isomorphism classes of the spanning trees of G  p k (n) › The number of partitions of the integer n into at most k parts Reference: pg. 28 Finding a Closed Formula for I(K s,t )

 The number of ways to arrange n unlabeled balls into k unlabeled buckets is given by p k (n). › At least two buckets nonempty: p k (n) - 1  The number of ways to arrange n unlabeled balls into k labeled buckets is given by C(n+k-1, n). › At least two buckets nonempty: C(n+k-1, n) - k Reference: pg Finding a Closed Formula for I(K s,t )

 A spanning tree of K s,t belongs to one of three disjoint sets › The center is a vertex in the s-set › The center is a vertex in the t-set › The center is an edge between the two sets  We determine the number of nonisomorphic trees in each set and then sum to find I(K s,t ) Reference: pg. 29 Finding a Closed Formula for I(K s,t )

Reference: pg. 32 Finding a Closed Formula for I(K s,t ) Center in 2-set No such tree

Reference: pg Finding a Closed Formula for I(K s,t ) Center in t-set p 2 (t-1) – 1 trees

Reference: pg. 33 Finding a Closed Formula for I(K s,t ) Center is an edge Only one such tree

 Summing across the disjoint sets yields K 2,t p 2 (t-1) – = p 2 (t-1),. I(K 2,t ) = 0 + p 2 (t-1) – = p 2 (t-1), t  2.  Similarly, we can find K 3,t I(K 3,t ) = sum{k=2 to t-2}(p 2 (k)) + p 3 (t-1) +2, t  4. Reference: pg. 29 Finding a Closed Formula for I(K s,t )

 Using the generating function for p k (n), we can simplify the formulas to: › I(K 2,t ) = ⌈ t/2 ⌉, t  2 › I(K 3,t ) = [1/3(t 2 + t + 1)], t  4 Reference: pg Finding a Closed Formula for I(K s,t )

Questions?