partitioning the labeled spanning trees of an arbitrary graph into isomorphism classes
DESCRIPTION
Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes. Austin Mohr. Outline. Problem Description Generating Spanning Trees Testing for Isomorphism Partitioning Spanning Trees Some Results Finding a Closed Formula for I(K s,t ). Problem Description. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/1.jpg)
Partitioning the Labeled Spanning TreesPartitioning the Labeled Spanning Treesof an Arbitrary Graph into of an Arbitrary Graph into Isomorphism ClassesIsomorphism ClassesAustin Mohr
![Page 2: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/2.jpg)
Outline Problem Description Generating Spanning Trees Testing for Isomorphism Partitioning Spanning Trees Some Results Finding a Closed Formula for I(Ks,t)
![Page 3: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/3.jpg)
Problem DescriptionProblem Description
![Page 4: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/4.jpg)
Definitions Spanning tree T of graph G
› T is a tree with E(T)⊆E(G) and V(T)=V(G)
Isomorphic trees T1 and T2
› There exists a mapping f where the edgeuv∈T1 if and only if the edge f(u)f(v)∈T2
Problem DescriptionProblem DescriptionReference: pg. 3 - 4Reference: pg. 3 - 4
![Page 5: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/5.jpg)
Spanning Trees of K2,3
Problem DescriptionProblem DescriptionReference: pg. 5Reference: pg. 5
![Page 6: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/6.jpg)
Generating Spanning TreesGenerating Spanning Trees
![Page 7: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/7.jpg)
Definitions
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 TreesGenerating Spanning TreesReference: pg. 6Reference: 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.
![Page 8: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/8.jpg)
Regarding (T) 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 TreesGenerating Spanning TreesReference: pg. 7Reference: pg. 7
![Page 9: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/9.jpg)
“Tree of trees” for K2,3
Reference: pg. 8Reference: pg. 8 Generating Spanning TreesGenerating Spanning Trees
![Page 10: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/10.jpg)
Definitions
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 TreesGenerating Spanning TreesReference: pg. 8Reference: pg. 8
Let G be a graph on n vertices, e be an edge of G, and T be a spanning tree of G.
![Page 11: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/11.jpg)
Finding the Children of a Tree
Reference: pg. 11Reference: pg. 11 Generating Spanning TreesGenerating Spanning Trees
![Page 12: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/12.jpg)
Testing for IsomorphismTesting for Isomorphism
![Page 13: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/13.jpg)
Rooted Tree Isomorphism
Testing for IsomorphismTesting for IsomorphismReference: pg. 14Reference: pg. 14
We first consider the simpler problem of determining when two rooted trees are isomorphic.
![Page 14: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/14.jpg)
Rooted Tree Isomorphism Given two rooted trees T1 and T2 on n
vertices, a mapping f: V(T1) → V(T2) is an
isomorphism if and only if for every vertex v∈V(T1), the subtree of T1 rooted at v is isomorphic to the subtree of T2 rooted at f(v).› Means we can start at the bottom of the tree
and work recursively toward the root
Reference: pg. 14Reference: pg. 14 Testing for IsomorphismTesting for Isomorphism
![Page 15: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/15.jpg)
Sample Run of Algorithm for Rooted Trees
Reference: pg. 17Reference: pg. 17 Testing for IsomorphismTesting for Isomorphism
![Page 16: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/16.jpg)
General Tree Isomorphism To generalize the algorithm, we need
a vertex u∈V(T1) and v∈V(T2) such that
f(u) = v for every isomorphism f.› If found, we root T1 at u, root T2 at v, and
use the previous algorithm› The center of each tree is suitable choice
Reference: pg. 18Reference: pg. 18 Testing for IsomorphismTesting for Isomorphism
![Page 17: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/17.jpg)
Definitions
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. 18Reference: pg. 18
Let u and v be vertices of a graph G.
Testing for IsomorphismTesting for Isomorphism
![Page 18: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/18.jpg)
Finding the Center of a Tree
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. 18 - 19Reference: pg. 18 - 19 Testing for IsomorphismTesting for Isomorphism
![Page 19: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/19.jpg)
Algorithm for General Tree Isomorphism
Reference: pg. 21Reference: pg. 21 Testing for IsomorphismTesting for Isomorphism
![Page 20: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/20.jpg)
Partitioning Spanning TreesPartitioning Spanning Trees
![Page 21: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/21.jpg)
Partitioning Spanning Trees
Place T* in a subset S1
For each child T of T*› For each subset Si
If T is isomorphic to a tree in Si, place T in Si
Otherwise, create a new subset for T Find the children of the children of T*
and repeat Continue until all trees have been
partitionedReference: pg. 22Reference: pg. 22 Partitioning Spanning TreesPartitioning Spanning Trees
![Page 22: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/22.jpg)
Reference: pg. 23Reference: pg. 23 Partitioning Spanning TreesPartitioning Spanning Trees
![Page 23: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/23.jpg)
Some ResultsSome Results
![Page 24: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/24.jpg)
Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
![Page 25: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/25.jpg)
Definitions I(G)
› The number of isomorphism classes of the spanning trees of G
pk(n)› The number of partitions of the integer n
into at most k parts
Reference: pg. 28Reference: pg. 28 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
![Page 26: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/26.jpg)
Useful Counting Tools The number of ways to arrange n
unlabeled balls into k unlabeled buckets is given by pk(n).
› At least two buckets nonempty: pk(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) -
kReference: pg. 28 - 29Reference: pg. 28 - 29 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
![Page 27: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/27.jpg)
Configurations of Ks,t
A spanning tree of Ks,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(Ks,t)
Reference: pg. 29Reference: pg. 29 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
![Page 28: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/28.jpg)
Configurations of K2,t
Reference: pg. 32Reference: pg. 32 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
Center in 2-setCenter in 2-setNo such treeNo such tree
![Page 29: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/29.jpg)
Configurations of K2,t
Reference: pg. 32 - 33Reference: pg. 32 - 33 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
Center in Center in tt-set-setpp22(t(t-1-1)) – 1 trees – 1 trees
![Page 30: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/30.jpg)
Configurations of K2,t
Reference: pg. 33Reference: pg. 33 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
Center is an edgeCenter is an edgeOnly one such treeOnly one such tree
![Page 31: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/31.jpg)
Summing Across the Sets Summing across the disjoint sets yields
I(KK2,t2,t) = 0 + pp22(t(t-1-1)) – 1 + 1 = – 1 + 1 = pp22(t(t-1-1), ), t2.. Similarly, we can find
I(KK3,t3,t) = sum{k=2 to t-2}(p2(k)) + p3(t-1) +2, t4.
Reference: pg. 29Reference: pg. 29 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
![Page 32: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/32.jpg)
Nicer Formulas Using the generating function for pk(n),
we can simplify the formulas to:› I(K2,t) = ⌈t/2⌉, t2› I(K3,t) = [1/3(t2 + t + 1)], t4
Reference: pg. 36 - 41Reference: pg. 36 - 41 Finding a Closed Formula for Finding a Closed Formula for I(KI(Ks,ts,t))
![Page 33: Partitioning the Labeled Spanning Trees of an Arbitrary Graph into Isomorphism Classes](https://reader037.vdocuments.us/reader037/viewer/2022110213/56815007550346895dbddb34/html5/thumbnails/33.jpg)
Questions?Questions?