prelims.tex
11/8/2008
12: 54
Page i
prelims.tex
11/8/2008
12: 54
Page ii
prelims.tex
11/8/2008
12: 54
Page...
157 downloads
1307 Views
19MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
prelims.tex
11/8/2008
12: 54
Page i
prelims.tex
11/8/2008
12: 54
Page ii
prelims.tex
11/8/2008
12: 54
Page iii
prelims.tex
11/8/2008
12: 54
Page iv
prelims.tex
11/8/2008
12: 54
Page v
Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Chapter 1: Fundamental Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Graphs and Simple Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Matrices and Isomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Paths and Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4 Vertex Degrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.5 Graph Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6 Some Basic Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.7 Degree Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Chapter 2: Applications on Graph Isomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.1 2.2
Generalized Honeycomb Tori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Isomorphism between Cyclic-Cubes and Wrapped Butterfly Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.3 1-Edge Fault-Tolerant Design for Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.4 Faithful 1-Edge Fault-Tolerant Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.5 k-Edge Fault-Tolerant Designs for Hypercubes . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Chapter 3: Distance and Diameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Diameter for Some Interconnection Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Shuffle-Cubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Route1(u, v) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Moore Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Star Graphs and Pancake Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Edge Congestion and Bisection Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7 Transmitting Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43 43 47 49 50 52 55 57
Chapter 4: Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4.1 Basic Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Breadth-First Search and Depth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Rooted Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Counting Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Counting Binary Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Number of Spanning Trees Contains a Certain Edge . . . . . . . . . . . . . . . . . . . . . 4.7 Embedding Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61 64 65 68 72 73 76 v
prelims.tex
vi
11/8/2008
12: 54
Page vi
Contents
Chapter 5: Eulerian Graphs and Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5.1 Eulerian Graphs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Eulerian Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.1 Chinese Postman Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.2 Street-Sweeping Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.3 Drum Design Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.4 Functional Cell Layout Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79 82 85 85 86 86 87
Chapter 6: Matchings and Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 6.1 6.2 6.3 6.4 6.5
Matchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Bipartite Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Edge Cover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Perfect Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Chapter 7: Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 7.1 Cut and Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2 2-Connected Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Menger Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4 An Application—Making a Road System One-Way . . . . . . . . . . . . . . . . . . . . . 7.5 Connectivity of Some Interconnection Networks . . . . . . . . . . . . . . . . . . . . . . . 7.6 Wide Diameters and Fault Diameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.7 Superconnectivity and Super-Edge-Connectivity . . . . . . . . . . . . . . . . . . . . . . .
105 109 111 115 117 118 120
Chapter 8: Graph Coloring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 8.1 Vertex Colorings and Bounds. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2 Properties of k-Critical Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.3 Bound for Chromatic Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4 Girth and Chromatic Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.5 Hajós’ Conjecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.6 Enumerative Aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.7 Homomorphism Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.8 An Application—Testing on Printed Circuit Boards . . . . . . . . . . . . . . . . . . . . . 8.9 Edge-Colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
125 126 128 130 131 133 136 137 138
Chapter 9: Hamiltonian Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 9.1 9.2 9.3 9.4 9.5 9.6 9.7
Hamiltonian Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Necessary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sufficient Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hamiltonian-Connected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mutually Independent Hamiltonian Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diameter for Generalized Shuffle-Cubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cycles in Directed Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
141 141 143 147 152 155 158
prelims.tex
11/8/2008
12: 54
Page vii
Contents
vii
Chapter 10: Planar Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 10.1 10.2 10.3 10.4
Planar Embeddings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Euler’s Formula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Characterization of Planar Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Coloring of Planar Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
161 165 166 167
Chapter 11: Optimal k-Fault-Tolerant Hamiltonian Graphs . . . . . . . . . . . . . . . . . 171 11.1 11.2 11.3 11.4
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Node Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other Construction Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fault-Tolerant Hamiltonicity and Fault-Tolerant Hamiltonian Connectivity of the Folded Petersen Cube Networks . . . . . . . . . . . . . . . . . . 11.5 Fault-Tolerant Hamiltonicity and Fault-Tolerant Hamiltonian Connectivity of the Pancake Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.6 Fault-Tolerant Hamiltonicity and Fault-Tolerant Hamiltonian Connectivity of Augmented Cubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.7 Fault-Tolerant Hamiltonicity and Fault-Tolerant Hamiltonian Connectivity of the WK-Recursive Networks . . . . . . . . . . . . . . . . . . . . . . . . . 11.8 Fault-Tolerant Hamiltonicity of the Fully Connected Cubic Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
171 173 180 185 189 195 206 221
Chapter 12: Optimal 1-Fault-Tolerant Hamiltonian Graphs . . . . . . . . . . . . . . . . . 227 12.1 12.2 12.3 12.4 12.5 12.6 12.7 12.8
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cycle Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cells for Optimal 1-Hamiltonian Regular Graphs . . . . . . . . . . . . . . . . . . . . . Generalized Petersen Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Honeycomb Rectangular Disks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Properties with Respect to the 3-Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Examples of Various Cubic Planar Hamiltonian Graphs . . . . . . . . . . . . . . . . 12.8.1 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.2 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.3 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.4 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.5 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.6 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.7 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.8.8 A ∩ B ∩ C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.9 Hamiltonian Properties of Double Loop Networks . . . . . . . . . . . . . . . . . . . .
227 228 229 241 249 259 262 267 268 268 268 269 271 272 273 274 275
Chapter 13: Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs . . . . . . . . 285 13.1 13.2 13.3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Super Fault-Tolerant Hamiltonian Laceability of Hypercubes . . . . . . . . . . . 287 Super Fault-Tolerant Hamiltonian Laceability of Star Graphs . . . . . . . . . . . 289
prelims.tex
viii
13.4 13.5 13.6
11/8/2008
12: 54
Page viii
Contents
Construction Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cubic Hamiltonian-Laceable Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1p -Fault-Tolerant Hamiltonian Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.6.1 Spider-Web Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.6.2 Brother Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.7 Hamiltonian Laceability of Faulty Hypercubes . . . . . . . . . . . . . . . . . . . . . . . . 13.8 Conditional Fault Hamiltonicity and Conditional Fault Hamiltonian Laceability of the Star Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
294 301 303 303 312 318 327
Chapter 14: Spanning Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 14.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 14.2 Spanning Connectivity of General Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 14.3 Spanning Connectivity and Spanning Laceability of the Hypercube-Like Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 14.4 Spanning Connectivity of Crossed Cubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 14.5 Spanning Connectivity and Spanning Laceability of the Enhanced Hypercube Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 14.6 Spanning Connectivity of the Pancake Graphs . . . . . . . . . . . . . . . . . . . . . . . . . 391 14.7 Spanning Laceability of the Star Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 14.8 Spanning Fan-Connectivity and Spanning Pipe-Connectivity of Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410 Chapter 15: Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs . . . . . 417 15.1 15.2 15.3 15.4 15.5 15.6
Properties of Cubic 3∗ -Connected Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 Examples of Cubic Super 3∗ -Connected Graphs . . . . . . . . . . . . . . . . . . . . . . . 419 Counterexamples of 3∗ -Connected Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 Properties of Cubic 3∗ -Laceable Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 Examples of Cubic Hyper 3∗ -Laceable Graphs . . . . . . . . . . . . . . . . . . . . . . . . 431 Counterexamples of 3∗ -Laceable Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Chapter 16: Spanning Diameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 16.1 16.2 16.3 16.4
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 Spanning Diameter for the Star Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 Spanning Diameter of Hypercubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 Spanning Diameter for Some (n, k)-Star Graphs . . . . . . . . . . . . . . . . . . . . . . . 474
Chapter 17: Pancyclic and Panconnected Property . . . . . . . . . . . . . . . . . . . . . . . . . 479 17.1 17.2 17.3 17.4 17.5 17.6
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 Bipanconnected and Bipancyclic Properties of Hypercubes . . . . . . . . . . . . . 480 Edge Fault-Tolerant Bipancyclic Properties of Hypercubes . . . . . . . . . . . . . 485 Panconnected and Pancyclic Properties of Augmented Cubes . . . . . . . . . . . 489 Comparison between Panconnected and Panpositionable Hamiltonian . . . 500 Bipanpositionable Bipancyclic Property of Hypercube . . . . . . . . . . . . . . . . . 504
prelims.tex
11/8/2008
Contents
12: 54
Page ix
ix
Chapter 18: Mutually Independent Hamiltonian Cycles . . . . . . . . . . . . . . . . . . . . 509 18.1 18.2 18.3 18.4 18.5 18.6 18.7 18.8
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509 Mutually Independent Hamiltonian Cycles on Some Graphs . . . . . . . . . . . . 510 Mutually Independent Hamiltonian Cycles of Hypercubes . . . . . . . . . . . . . . 512 Mutually Independent Hamiltonian Cycles of Pancake Graphs . . . . . . . . . . 518 Mutually Independent Hamiltonian Cycles of Star Graphs . . . . . . . . . . . . . . 524 Fault-Free Mutually Independent Hamiltonian Cycles in a Faulty Hypercube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526 Fault-Free Mutually Independent Hamiltonian Cycles in Faulty Star Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 Orthogonality for Sets of Mutually Independent Hamiltonian Cycles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .543
Chapter 19: Mutually Independent Hamiltonian Paths . . . . . . . . . . . . . . . . . . . . . 545 19.1 19.2 19.3 19.4
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 Mutually Independent Hamiltonian Laceability for Hypercubes . . . . . . . . . 545 Mutually Independent Hamiltonian Laceability for Star Graphs . . . . . . . . . 550 Mutually Independent Hamiltonian Connectivity for (n, k)-Star Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555 19.5 Cubic 2-Independent Hamiltonian-Connected Graphs . . . . . . . . . . . . . . . . . . 575 19.5.1 Examples of Cubic 2-Independent Hamiltonian-Connected Graphs That Are Super 3∗ -Connected . . . . . . . . . . . . . . . . . . . . . . . . 576 19.5.2 Examples of Super 3∗ -Connected Graphs That Are Not Cubic 2-Independent Hamiltonian-Connected . . . . . . . . . . . . . . . . . 579 19.5.3 Example of a Cubic 2-Independent HamiltonianConnected Graph That Is Not Super 3∗ -Connected . . . . . . . . . . . . . 580 19.5.4 Example of a Cubic 1-Fault-Tolerant Hamiltonian Graph That Is Hamiltonian-Connected but Not Cubic 2-Independent Hamiltonian-Connected or Super 3∗ -Connected . . . . . . . . . . . . . . . 581 Chapter 20: Topological Properties of Butterfly Graphs . . . . . . . . . . . . . . . . . . . . 585 20.1 20.2 20.3 20.4
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585 Cycle Embedding in Faulty Butterfly Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . 590 Spanning Connectivity for Butterfly Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . 607 Mutually Independent Hamiltonicity for Butterfly Graphs . . . . . . . . . . . . . . 616
Chapter 21: Diagnosis of Multiprocessor Systems . . . . . . . . . . . . . . . . . . . . . . . . . 625 21.1 21.2 21.3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625 Diagnosis Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625 21.2.1 PMC Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626 21.2.2 Comparison Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628 Diagnosability of the Matching Composition Networks . . . . . . . . . . . . . . . . 631 21.3.1 Diagnosability of the Matching Composition Networks under the PMC Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
prelims.tex
11/8/2008
x
12: 54
Page x
Contents
21.3.2
21.4
21.5 21.6 21.7
21.8
Diagnosability of the Matching Composition Networks under the Comparison Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Diagnosability of Cartesian Product Networks . . . . . . . . . . . . . . . . . . . . . . . . . 637 21.4.1 Diagnosability of Cartesian Product Networks under the PMC Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638 21.4.2 Diagnosability of Cartesian Product Networks under the Comparison Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 21.4.3 Diagnosability of t-Connected Networks . . . . . . . . . . . . . . . . . . . . . . 639 21.4.4 Diagnosability of Homogeneous Product Networks . . . . . . . . . . . . 641 21.4.5 Diagnosability of Heterogeneous Product Networks . . . . . . . . . . . . 644 Strongly t-Diagnosable Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645 21.5.1 Strongly t-Diagnosable Systems in the Matching Composition Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649 Conditional Diagnosability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652 21.6.1 Conditional Diagnosability of Qn under the PMC Model . . . . . . . 653 Conditional Diagnosability of Qn under the Comparison Model . . . . . . . . . 658 21.7.1 Conditional Diagnosability of Cayley Graphs Generated by Transposition Trees under the Comparison Diagnosis Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666 21.7.2 Cayley Graphs Generated by Transposition Trees . . . . . . . . . . . . . . 666 21.7.3 Conditional Diagnosability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668 Local Diagnosability. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .670 21.8.1 Strongly Local-Diagnosable Property . . . . . . . . . . . . . . . . . . . . . . . . . 675 21.8.2 Conditional Fault Local Diagnosability . . . . . . . . . . . . . . . . . . . . . . . 679
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703
prelims.tex
11/8/2008
12: 54
Page xi
Preface Since the origin of graph theory with Euler, people have liked graph theory, because it is a delightful playground for the exploration of proof techniques without much previous background needed. With the application of graph theory to many areas of computing, social, and natural sciences, the importance of graph theory has been recognized. For this reason, many good graph theoretic results have been developed in recent years. It is almost impossible to write a book that covers all these good graph theories. The architecture of an interconnection network is always represented by a graph, where vertices represent processors and edges represent links between processors. It is almost impossible to design a network that is optimum from all aspects. One has to design a suitable network depending on its properties and requirements. Thus, many graphs are proposed as possible interconnection network topologies. Thus, these graphs can be referred to as good graphs. For this reason, the theory of interconnection networks is referred to as good-graph theory. Thus, we need some basic background in graph theory to study interconnection networks. The first 10 chapters cover those materials presented in most graph theory texts and add some concepts of interconnection networks. Later, we discuss some interesting properties of interconnection networks. Sometimes, these properties are too good to be true—so the beginner finds them hard to believe. Such properties can be observed from interconnection networks, diameter, connectivity, Hamiltonian properties, and diagnosis properties. We can also study these properties in general graphs. Ends of proofs are marked with the symbol . This symbol can be found directly following a formal assertion. It means that the proof should be clear after what has been said. There are also some theorems that are stated, without proof, via background information. In this case, such theorems are stated without proofs and the symbol . The main purpose of this book is to share our research experience. Our experience tells us that much background is not needed for doing research. Looking for a proper theme is a difficult problem for research. We are just lucky in finding problems. For this reason, we put some of our results at the end of each chapter but we do not put any exercises in this book. We observed that all the material, contents, and exercises in every book are exercises of previous books. For this reason, we hope that the readers can find their own exercises. It is a great pleasure to acknowledge the work of Professor Jimmy J.M. Tan. We have worked together for a long time. Yet, at least one-third of this book is his contribution. We also thank all the members of the Computer Theory Laboratory of National Chiao-Tung University: T.Y. Sung, T. Liang, H.M. Huang, Chiuyuan Chen, Y.C. Chuang, S. S. Kao, Y.C. Chang, T.Y. Ho, R.S. Chou, C.N. Hung, J.J. Wang, S.Y. Wang, C.Y. Lin, C.H. Tsai, J.Y. Hwang, C.P. Chang, J.N. Wang, J.J. Sheu, C.H. Chang, T.K. Li, W.T. Huang, Y.C. Chen, xi
prelims.tex
xii
11/8/2008
12: 54
Page xii
Preface
H.C. Hsu, K.Y. Liang, Y.L. Hsieh, M.C. Yang, P.L. Lai, L.C. Chiang, Y.H. Teng, C.M. Sun, and K.M. Hsu. We also thank CRC Press for offering us the opportunity of publishing this book. Lih-Hsing Hsu also thanks his advisor, Professor Joel Spencer, for entering the area of graph theory. We also thank Professor Frank Hsu for strongly recommending to us the area of interconnection networks. Finally, we thank all of our teachers; without their encouragement, this book could never have been written.
prelims.tex
11/8/2008
12: 54
Page xiii
Authors Lih-Hsing Hsu received his BS in mathematics from Chung Yuan Christian University, Taiwan, Republic of China, in 1975, and his PhD in mathematics from the State University of New York at Stony Brook in 1981. From 1981 to 1985, he was an associate professor at the Department of Applied Mathematics at National Chiao Tung University in Taiwan. From 1985 to 2006, he was a professor at National Chiao Tung University. From 1985 to 1988, he was the chairman of the Department of Applied Mathematics at National Chiao Tung University. After 1988, he joined the Department of Computer and Information Science of National Chiao Tung University. In 2004, he retired from National Chiao Tung University, holding a title as an honorary scholar of that university. He is currently the chairman of the Department of Computer Science and Information Engineering, Providence University, Taichung, Taiwan. His research interests include interconnection networks, algorithms, graph theory, and VLSI layout. Cheng-Kuan Lin received his BS in applied mathematics from Chinese Culture University, Taiwan, Republic of China, in 2000, and his MS in mathematics from the National Central University in Taiwan in 2002. His research interests include interconnection networks, algorithms, and graph theory.
xiii
prelims.tex
11/8/2008
12: 54
Page xiv
ch001.tex
30/6/2008
1 1.1
9: 37
Page 1
Fundamental Concepts
GRAPHS AND SIMPLE GRAPHS
A graph G with n vertices and m edges consists of the vertex set V (G) = {v1 , v2 , . . . , vn } and edge set E(G) = {e1 , e2 , . . . , em }, where each edge consists of two (possibly equal) vertices called, endpoints. An element in V (G) is called a vertex of G. An element in E(G) is called an edge of G. Because graph theory has a variety of applications, we may also use a node for a vertex and a link for an edge to fit the common terminology in that area. We use the unordered pair (u, v) for an edge e = {u, v}. If (u, v) ∈ E(G), then u and v are adjacent. We write u ↔ v to mean u is adjacent to v. A loop is an edge whose endpoints are equal. Parallel edges or multiple edges are edges that have the same pair of endpoints. A simple graph is a graph having no loops or multiple edges. For a graph G = (V , E), the underlying simple graph UG is the simple graph with vertex V and (x, y) ∈ E(UG) if and only if x = y and (x, y) ∈ E. A graph is finite if its vertex set and edge set are finite. We adopt the convention that every graph mentioned is finite. We illustrate a graph on paper by assigning a point to each vertex and drawing a curve for each edge between the points representing its endpoints, sometimes omitting the name of the vertices or edges. In Figure 1.1a, e is a loop and f and g are parallel edges. Figures 1.1b and 1.1c illustrate two ways of drawing one simple graph. The order of a graph G, written n(G), is the number of vertices in G. An n-vertex graph is a graph of order n. The size of a graph G, written e(G), is the number of edges in G, even though we also use e by itself to denote an edge. The degree of a vertex v in a graph, written degG (v), or deg(v), is the number of nonloop edges containing v plus twice the number of loops containing v. The maximum degree of G, denoted by (G), is max{deg(v) | v ∈ V (G)} and the minimum degree of G, denoted by δ(G), is min{deg(v) | v ∈ V (G)}. A graph G is regular if (G) = δ(G), and k-regular if (G) = δ(G) = k. A vertex of degree k is k-valent. The neighborhood of v, written NG (v) or N(v), is {x ∈ V (G) | x ↔ v}; x is a neighbor of v if x ∈ N(v). An isolated vertex has a degree of 0. A directed graph or digraph G consists of a vertex set V (G) and an edge set E(G), where each edge is an ordered pair of vertices. We use the ordered pair (u, v) for the edge uv, where u is the tail and v is the head. (Note that the notation (u, v) is used both as an unordered pair in an unordered graph and as an ordered pair in a directed graph. However, it is easy to distinguish each from the other from the context.) Sometimes, we may use the term arc for an edge of a digraph. We write u → v when (u, v) ∈ E(G), meaning there is an edge from u to v. A simple digraph is a digraph in which each ordered pair of vertices occur at most once as an edge. For a digraph G = (V , E), the 1
ch001.tex
30/6/2008
9: 37
Page 2
2
Graph Theory and Interconnection Networks
x
f
v
w
y
d g e
h
i
w
(a)
FIGURE 1.1
y
u x
v
u
(b)
(c)
Examples of graphs. y
w a
c
b d
z x
FIGURE 1.2 A digraph.
underlying graph UG is the simple graph with the vertex set V and (x, y) ∈ E(UG) if and only if x = y and either (x, y) ∈ E(G) or (y, x) ∈ E(G). The choice of head and tail assigns a direction to an edge, which we illustrate by assigning edges as arrows. See Figure 1.2 for an example of a digraph. Sometimes, weights are assigned to the edges of graphs or digraphs. Thus, we have weighted graphs, weighted digraphs, (unweighted) graphs, and (unweighted) digraphs. Graphs arise in many settings, which suggests useful concepts and terminologies about the structure of graphs.
Example 1.1 A famous brain-teaser asks: Does every set of six people have three mutual acquaintances or three mutual strangers?
Because an acquaintance is symmetric, we can model it by a simple graph having a vertex for each person and an edge for each acquainted pair. The nonacquaintance relation on the same set yields another graph. The complement G of a simple graph G with the same vertex set V (G) is defined by (u, v) ∈ E(G) if and only if (u, v) ∈ / E(G). In Figure 1.3, we draw a graph and its complement. Let two graphs equal G = (V (G), E(G)) and H = (V (H), E(H)). We say that H is a subgraph of G or G is a supergraph of H if V (H) ⊆ V (G) and E(H) ⊆ E(G); we write H ⊆ G and say that G contains H. In particular, H is called a spanning subgraph of G or G is a spanning supergraph of H if H is a subgraph of G and V (H) = V (G). Let G = (V , E) be a graph and S be a subset of V . The subgraph of G induced by S, denoted by G[S], is the subgraph with vertex set S and those edges of G with both ends in S. In particular, the graph G[V − S] is denoted by G − S. Let v be a vertex of G. We use G − v to denote G − {v}. Let F be a subset of E. The subgraph generated
ch001.tex
30/6/2008
9: 37
Page 3
Fundamental Concepts
3 u
u
y
v
x
w G
y
v
x
w G
FIGURE 1.3 A graph and its complement.
by F, denoted by GF , is the subgraph of G with F as its edge set and {v | v is incident with some edge of F} as its vertex set. The subgraph G − F denotes the subgraph of G with V as its vertex set and E − F as its edge set. Let e be an edge of E. The graph G − {e} is denoted by G − e. A complete graph or clique is a simple graph in which every pair of vertices is an edge. A complete graph has many subgraphs that are not cliques, but every induced subgraph of a complete graph is a clique. The complement of a complete graph has no edges. An independent set in a graph G is a vertex set S ⊆ V (G) that contains no edge of G (that is, G[S] has no edges). In the graph G shown in Figure 1.3, the largest clique and the largest independent set have cardinalities three and two, respectively. These values reverse in the complement G, because cliques become independent sets (and vice versa) under complementation. Our six-person brain-teaser asks whether every six-vertex graph has a clique or an independent set of size 3. It is worthwhile to verify this statement. The generalization of the six-person brain-teaser leads the Ramsey Theory [128].
Example 1.2 Suppose that we have m jobs and n people, and each person can do some of the jobs. Can we make assignments to fill the jobs? We model the available assignments by a graph H having a vertex for each job and each person, putting job j adjacent to person p if p can do j.
A graph G is bipartite if V (G) is the union of two disjoint sets such that each edge consists of one vertex from each set. The graph H of available assignments is bipartite, with the two sets being the people and the jobs. Because a person can do only one job and we assign a job to only one person, we seek m pairwise disjoint edges in H. A complete bipartite graph, illustrated in Figure 1.4, is a bipartite graph whose edge set consists of all pairs having a vertex set from each of two disjoint sets covering the vertices. When the assignment graph H is a complete bipartite graph, pairing up vertices is easy, so we seek the best way to do it. We can assign numerical weights on the edges to measure desirability. The best way to match up the vertices is often the one where the selected edges have maximum total weight.
ch001.tex
30/6/2008
9: 37
Page 4
4
Graph Theory and Interconnection Networks
FIGURE 1.4 A complete bipartite graph.
FIGURE 1.5 A 3-partite graph.
Example 1.3 Suppose that we must schedule for Senate committee meetings into designated weekly time periods. We cannot assign two committees to the same time if they have a common member. How many different time periods do we need?
We create a vertex for each committee, with two vertices adjacent when their committees have a common member. We must assign labels (time periods) to vertices so that the endpoints of each edge receive different labels. The labels have no numerical value, so we call them colors, and the vertices receiving a particular label form a color class. The minimum number of colors needed is the chromatic number of G, written χ(G). Because vertices of the same color must form an independent set, χ(G) equals the minimum number of independent sets that partition V (G). This generalizes bipartite graphs. A graph G is k-partite if V (G) is the union of k (possibly empty) independent sets. When they are pairwise disjoint, these sets that partition V (G) are called partite sets (or color classes). The graph in Figure 1.5 has chromatic number 3 and is 3-partite (there could be graphs that are also 4-partite, 5-partite, etc.). We will study the chromatic number of graphs in Chapter 10. The most (in)famous problem in graph theory involves coloring. A map is a partition of the plane into connected regions. Can we color the regions of every map, using at most four colors, so that neighboring regions have different colors? In each map, we introduce a vertex for each region and an edge for regions sharing a boundary. We obtain a planar graph. A graph is planar if it can be drawn in the plane without line crossings. In other words, the map coloring problem asks whether each planar graph has a chromatic number of at most 4. We will study planar graphs in Chapter 12.
ch001.tex
30/6/2008
9: 37
Page 5
Fundamental Concepts
5
FIGURE 1.6 A disconnected graph.
Example 1.4 We can model a road network by a graph having edges that correspond to road segments between intersections. We can assign edge weights to measure distance or travel time. We may want to know the shortest route from x to y.
Informally, we think of a path in a graph as a single vertex or an ordered list of distinct vertices v1 , v2 , . . . , vn such that (vi−1 , vi ) is an edge for 2 ≤ i ≤ n. The first and the last vertices of a path are its endpoints. A path from u to v is a path with endpoints u and v. Similarly, we think of a cycle as an ordered list v1 , v2 , . . . , vn such that all (vi−1 , vi ) for 2 ≤ i ≤ n and also (vn , v1 ) are edges. To find the shortest route from x to y, we want to find the path from x to y having the least total weight among all paths from x to y in G. Similarly, in a network of n cities, we may want to visit all the cities and return home at the minimum total cost. Using the cost that we weight on the edges of the complete graph, we seek the n-vertex cycle with minimum total cost. This is the Traveling Salesman Problem. In a road network or communication network, every site should be reachable from each other. A graph G is connected if it has a path from u to v for each pair u, v ∈ V (G). A graph is disconnected if it is not connected. The graph in Figure 1.6 is disconnected.
1.2
MATRICES AND ISOMORPHISMS
How can we specify a graph? We can list the vertices and edges, but there are other useful ways to encode this information. Given a graph or digraph G with vertices indexed as V (G) = {v1 , v2 , . . . , vn }, the adjacency matrix of G, written A(G), is the matrix in which entry aij is the number of copies of the edges (vi , vj ) in G. If vertex v belongs to edge e, then v and e are
ch001.tex
30/6/2008
9: 37
Page 6
6
Graph Theory and Interconnection Networks w
G
H
y
b
c
A(G)
a
x
z
w
y
b
c
x
A(H )
a
w w 0 x 1 y 0 z 0
x 1 0 1 0
y 0 1 0 1
w 0 1 0 0
x 0 0 1 0
y
z
0 0 0 0
0 0 1 0
w x y z
z 0 0 1 0
w M(G )
M(H )
x y z
a 0 0 1 1
b 0 1 1 0
c 1 1 0 0
a b c w 0 0 ⫺1 0 ⫺1 1 x 1 1 0 y z ⫺1 0 0
z
FIGURE 1.7 Adjacency matrices and incidence matrices.
incident. The incidence matrix M(G) of a loopless graph G has rows indexed by V (G) and columns indexed by E(G), with mij = 1 if vertex vi belongs to ej ; otherwise mij = 0. For a loopless digraph, mij = +1 if vi is the tail of ej , mij = −1 if vi is the head of ej , and mij = 0 if otherwise. A graph may have many adjacency matrices, depending on the ordering of the vertices. Each ordering of the vertices determines an adjacency matrix. The adjacency matrix of G is symmetric if G is a graph (not a digraph). Moreover, every entry in A(G) is 0 or 1, with 0’s on the diagonal if G is a simple graph.
Example 1.5 In Figure 1.7, we draw a simple graph G and a digraph H, together with the adjacency matrices and incidence matrices that result from the vertex ordering w, x, y, z and the edges ordering a, b, c. The adjacency matrix for the graph having two copies of each of these edges would obtained by changing each 1 to 2.
When we present an adjacency matrix for a graph, we are implicitly naming the vertices by the order of its rows. The ith vertex corresponds to the ith row and column. This provides names for the vertices. We cannot store a graph in a computer without naming the vertices. Nevertheless, we want to study properties (like chromatic number or connected) that do not depend on the names of the vertices. If we can find a one-toone correspondence (bijection) between V (G) and V (H) that preserves the adjacency relation, then G and H have the same structural properties. An isomorphism from G to H is a bijection f : V (G) → V (H) such that (u, v) ∈ E(G) if and only if ( f (u), f (v)) ∈ E(H). We say “G is isomorphic to H,” written G ∼ = H, if there is an isomorphism from G to H. When G is isomorphic to H and H is also isomorphic to G, we may say G and H are isomorphic (to each other). Because an adjacency matrix encodes the adjacency
ch001.tex
30/6/2008
9: 37
Page 7
Fundamental Concepts p
q A(G)
s
r G
7
p
r
q
s
p
0
0
0
1
r
0
0
1
0
q
0
1
0
1
s
1
0
1
0
a
b A(H)
d
c H
a
b
c
d
a
0
0
1
1
b
0
0
1
0
c
1
1
0
0
d
1
0
0
0
FIGURE 1.8 Two isomorphic graphs.
relation, we can also describe isomorphism using adjacency matrices. The graphs G and H are isomorphic if and only if we can apply a permutation to the rows of A(G) and the same permutation to the columns of A(G) to obtain A(H).
Example 1.6 The graphs G and H in Figure 1.8 are 4-vertex paths. They are isomorphic by an isomorphism that maps p, q, r, s to b, a, d, c, respectively. Rewriting A(G) by placing the rows in the order p, q, r, s and the columns also in order yields A(H). Another isomorphism maps s, r, q, p to a, b, c, d, respectively.
The set of the pair (G, H) such that G is isomorphic to H is the isomorphism relation on the set of graphs. Obviously, isomorphism is an equivalence relation. An isomorphism class of graphs is an equivalence class of graphs under the isomorphism relation. When discussing the structure of a graph G, we consider a fixed vertex set, but our comments apply to every graph isomorphic to G. Therefore, we sometimes use the informal expression unlabeled graph to mean an isomorphic class of graphs. When we draw a graph, its vertices are named by their physical locations, even if we give them no other names. We often use the name graph for the drawing of a graph. When we redraw a graph to display some structural aspect, we have chosen a more convenient member of the isomorphism class. We often discuss two isomorphic graphs using the same name. Our statement applies to all graphs in their isomorphism class. Hence, we usually write G = H instead of G ∼ = H. Similarly, when we say that H is a subgraph of G, we mean technically that H is isomorphic to a subgraph of G, or G contains a copy of H. This treatment of isomorphism classes leads us to using the notation Kn , Pn , and Cn , respectively, to denote a clique, a path, or a cycle with n vertices. Similarly, Kr,s denotes the complete bipartite graph with partite sets of cardinalities r and s.
Example 1.7 Suppose that X is a set of size n. Obviously, X contains C(n; 2) = n(n − 1)/2 unordered pairs of (u, v) with u = v. We may include or omit each pair as an edge. Thus, there are 2C(n;2) simple graphs with vertex set X. For example, there are sixty four simple graphs having four vertices. However, these fall into eleven isomorphism classes as illustrated in Figure 1.9 in complementary pairs. Only P4 is isomorphic to its complement. Note that
ch001.tex
30/6/2008
9: 37
Page 8
8
Graph Theory and Interconnection Networks
FIGURE 1.9
Graphs with four vertices.
FIGURE 1.10 Graphs for Example 1.8. the isomorphism classes have different sizes. We cannot count the isomorphism classes of n-vertex simple graphs, though, by dividing 2C(n;2) by the size of a class.
An isomorphism from G into H preserves the adjacency relation. As structural properties of graphs are determined by their adjacency relations, we can prove that each G and H are not isomorphic by finding some structural properties that are not true of the other. If they have different vertex degrees, different sizes of the largest clique or smallest cycle, and so on, then they cannot be isomorphic, because these properties are preserved by isomorphism. On the other hand, no known list of common structural properties implies that G ∼ = H. We must present a bijection f : V (G) → V (H) that preserves the adjacency relation.
Example 1.8 In Figure 1.10, we have four graphs with each vertex having a degree of 3. However, these graphs are not pairwise isomorphic. Several are drawings of K3,3 , as shown by their exhibited isomorphisms. One contains C3 and hence cannot be a drawing of K3,3 . Consider the graphs in Figure 1.11. Because they have many edges, we prefer to consider their complements. Note that graphs G and H are isomorphic if and only if G and H are isomorphic. It is observed that the complement of one of these graphs is connected, but the complement of the other is not connected. These two graphs cannot be isomorphic.
An automorphism of G is a permutation of V (G), that is, an isomorphism from G into G. A graph G is vertex-transitive if for every pair u, v ∈ V (G) there is an automorphism that maps u to v. A graph G is edge-transitive if for every pair e, f ∈ E(G) there is an automorphism that maps e to f . Obviously, every cycle is not only vertex-transitive but also edge-transitive. Suppose that n > 2. Then Pn is not
ch001.tex
30/6/2008
9: 37
Page 9
Fundamental Concepts
9
FIGURE 1.11 Two nonisomorphic graphs. a
d x e
z
H
f
b
y
c G
FIGURE 1.12 A vertex-transitive graph and an edge-transitive graph.
vertex-transitive, because no automorphism can map a vertex of degree 1 into a vertex of degree 2.
Example 1.9 Let G be the path with a vertex set {1, 2, 3, 4} and an edge set {(1, 2), (2, 3), (3, 4)}. This graph has two isomorphisms: an identity permutation and the permutation that switches 1 with 4 and switches 2 with 3. Interchanging vertices 1 and 2 is not an automorphism of G, although G is isomorphic to the graph H with the vertex set {1, 2, 3, 4} and the edge set {(1, 2), (1, 3), (3, 4)}. The automorphisms of G can be viewed as the permutations that can be applied simultaneously to the rows and columns of A(G) without changing A(G). For example, permuting the vertices of one independent set of Kr,s does not change the adjacency matrix. Thus, Kr,s has r!s! automorphism if r = s. Moreover, Kt,t has 2(t!)2 automorphisms. Thus, the complete bipartite graph Kr,s is vertex-transitive if and only if r = s.
The graph G in Figure 1.12 is vertex-transitive but not edge-transitive. Yet the graph H in Figure 1.12 is edge-transitive but not vertex-transitive.
1.3
PATHS AND CYCLES
A walk of length k is a sequence v0 , e1 , v1 , e2 , . . . , ek , vk of vertices such that ei = (vi−1 , vi ) for all i. The length of a walk W is denoted by l(W ). A trail is a
ch001.tex
30/6/2008
9: 37
Page 10
10
Graph Theory and Interconnection Networks
walk with no repeated edge. A path is a walk with no repeated vertex. A walk from u to v has first vertex u and last vertex v; these are its endpoints. A walk (or trail) is closed if it has a length of at least 1 and its endpoints are equal. A cycle is a closed trail in which first = last is the only vertex repetition (a loop is a cycle of length 1). Paths and trails are walks and hence have endpoints. A path or trail may have length 0, but a cycle or closed walk cannot. We use the words path and cycle in three closely related contexts: as a graph or subgraph, as the special case of a walk, and as a set of edges. In a simple graph, a walk is completely specified by its sequence of vertices. Hence, we usually describe a path or a cycle (or walk) in a simple graph by its ordered list of vertices. Although we may list only vertices, the walk still consists of both vertices and edges. We may start a cycle at any vertex. To emphasize the cyclic aspect of the ordering, we often list each vertex only once when naming a cycle.
Example 1.10 The graph in Figure 1.13 has a closed walk of length 11 that visits vertices in the order
a, x, a, x, u, y, c, d, y, v, b, a. Omitting the first two steps yields a closed trail (no edge repetition). The edge set of this trail is the the union of the edge sets of three pairwise edge-disjoint cycles. The trail u, y, c, d, y, v contains the edge of the path u, y, v.
With the previous example, we have the following observation: suppose that u and v are distinct vertices in G. Obviously, every walk from u to v in G contains a path from u to v. Moreover, every closed odd walk contains an odd cycle. The definitions and remarks hold for digraphs, with each ei being an ordered pair (vi−1 , vi ). In a path or cycle of a directed graph, successive edges follow the arrows. For example, the digraph consisting only of the edge (x, y) has a path from x to y but no path from y to x. A graph G is connected if it has a path from u to v for each pair u, v ∈ V (G). Otherwise, it is disconnected. The vertex u is connected to the vertex v in G if G has a path from u to v. The connection relation in a graph consists of the vertex pairs (u, v) such that u is connected to v. Connectedness is a property of graphs. However, the connection relation on vertices and the phrase u is connected to v are convenient when writing proofs. To specify the stronger condition (u, v) ∈ E(G), we say u and v are adjacent or u and v are joined by an edge. We use connected to for the existence of a path from u to v, and we use joined to for the existence of an edge (u, v). c
a u
x
b
FIGURE 1.13 Graph for Example 1.10.
y
v
d
ch001.tex
30/6/2008
9: 37
Page 11
Fundamental Concepts
11 u
r
y
s v
q
t
z
w x
FIGURE 1.14 Graph for Example 1.11.
The components of a graph G are its maximal connected subgraphs. A component (or graph) is nontrivial if it contains an edge. A cut vertex of a graph is a vertex whose deletion increases the number of components. Similarly, a cut edge of a graph is an edge whose deletion increases the number of components.
Example 1.11 The graph in Figure 1.14 has three components. The vertex sets of components are {q, r}, {s, t, u, v, w}, and {x, y, z}. The vertex v is a cut vertex. The edges (q, r) and (v, w) are the cut edges.
The connection relation is an equivalence relation. The equivalence classes of this relation are the vertex sets of the components. PROPOSITION 1.1 A graph is connected if and only if there is an edge with endpoints in both sets for every partition of its vertices into two nonempty sets. Proof: Suppose that G is connected. Let S and T be any partition of V (G); that is, V (G) = S ∪ T , S ∩ T = ∅, min{|S|, |T |} = 0. We choose u ∈ S and v ∈ T . Because G is connected, G has a path P from u to v. After its last vertex in S, P has an edge from S to T . Suppose that G is disconnected. Let H be a component of G. Then no edge has exactly one endpoint in H. This means that the partition S and T with S = V (H) has no edge with endpoints in both sets. We have proved that if G is disconnected, then the partition condition fails. By the contrapositive, the partition condition implies that G is connected. Adding an edge e to G reduces the number of components by at most one. Similarly, deleting a cut edge increases the number of components by exactly one. THEOREM 1.1 An edge of a graph is a cut edge if and only if it belongs to no cycle. Proof: Suppose that edge e = (x, y) belongs to a component H of G. Note that the deletion of e affects no other components. It suffices to prove that H − e is connected if and only if e belongs to a cycle. Suppose that H − e is connected. Then H − e contains a path P from x to y. Obviously, P ∪ {e} forms a cycle containing e.
ch001.tex
30/6/2008
9: 37
12
Page 12
Graph Theory and Interconnection Networks
Conversely, suppose that e belongs to a cycle C. Let u and v be any two different vertices in V (H). Because H is connected, H has a path P from u to v. Suppose that P does not contain e. Then P exists in H − e. Thus, H − e has a path from u to v. Suppose that P contains e. By the symmetry role of x and y, we can assume that x is between u and y on P. Since H − e contains a path from u to x along P, a path from x to y along C, and a path from y to v along P. The transitivity of the connection relation implies that H − e has a path from u to v. Since u and v were chosen arbitrarily from V (G), we have proved that H − e is connected. PROPOSITION 1.2 Let G be a graph with V (G) = {v1 , v2 , . . . , vn } with n ≥ 3. Suppose that at least two of the subgraphs G − v1 , G − v2 , . . . , G − vn are connected. Then G is connected. Proof: Suppose that G is not connected and has components H1 , H2 , . . . , Hk . When we delete a vertex from Hi , we still have at least k components unless Hi = K1 , in which case k − 1 components remain. Thus, having at least two of G − v1 , G − v2 , . . . , G − vn be connected requires that k = 2 and that each of these two components is a single vertex. This contradicts the hypothesis that G has at least three vertices. COROLLARY 1.1 Every nontrivial graph has at least two vertices that are not cut-vertices. THEOREM 1.2 A graph is bipartite if and only if it has no odd cycle. Proof: Suppose that G is a bipartite graph. Every walk in G alternates between the two sets of bipartition of G. Thus, every return to the original class (including the original vertex) happens after an even number of steps. Hence, G has no odd cycle. Suppose that graph G has no odd cycle. We prove that G is bipartite by constructing a bipartition of each nontrivial component. Let u be a vertex in a nontrivial component H of G. For each v ∈ V (G), we claim that all walks from u to v have the same parity. If not, the concatenation of two walks from u to v of different parity (reversing the second) is a closed walk of odd length. Then G has an odd cycle. This contradicts the assumption of no odd cycle. We can thus partition V (G) into disjoint sets X, Y by letting X = {v ∈ V (G) | walks from u to v have even length} and Y = {v ∈ V (G) | walks from u to v have odd length}. Because an edge joining two vertices in X will create a closed odd walk, X is an independent set. Similarly, Y is also an independent set. Thus, G is a bipartite graph.
1.4 VERTEX DEGREES We begin with an essential tool of graph theory, sometimes called the First Theorem of Graph Theory or the Handshaking Lemma. THEOREM 1.3 (Degree-Sum Formula). If G is a graph, then 2e(G).
v∈V (G)
deg(v) =
ch001.tex
30/6/2008
9: 37
Page 13
Fundamental Concepts
13
Proof: Summing the degrees counts each edge twice, as each edge has two ends and contributes to the degree at each endpoint. By the degree-sum formula, the average vertex degree is 2e(G)/n(G); hence δ(G) ≤ 2e(G)/n(G) ≤ (G). We list two other immediate corollaries. COROLLARY 1.2 Every graph has an even number of vertices of odd degree. No graph of odd order is regular with odd degree. COROLLARY 1.3 A k-regular graph with n vertices has nk/2 edges.
Example 1.12 The Petersen graph is drawn in Figure 1.15. The graph is useful enough to have an entire book devoted to it (Holten and Sheehan [156]). The Petersen graph has a simple description using the set S of all two-element subsets of a 5-element set. Let G be the graph with V (G) = S such that two vertices join an edge if and only if they are disjoint as sets. Hence, the Petersen graph is vertex-transitive. Obviously, the Petersen graph is a 3-regular graph with 10 vertices. Thus, it has 15 = 3 × 10/2 edges.
Example 1.13 Let S be the set of all n-tuples in which each position is 0 or 1. Obviously, S contains 2n elements. The n-dimensional hypercube is the graph Qn with vertex set S in which two n-tuples are adjacent if and only if they differ in exactly one position. In Figure 1.16, we illustrate Q3 . The hypercube is an architecture for parallel computers [220]. Processing units can communicate directly if they correspond to adjacent vertices in Qn . The Hamming weight of a 0, 1-vector is the number of 1’s. Every edge of Qn consists of a vector of even weight and a vertex of odd weight. Hence, the vectors of all even weights form an independent set, and the vectors of all odd weights form an independent
FIGURE 1.15 Some drawings of the Petersen graph. 010
000
FIGURE 1.16 Q3 .
110 011
111
001
101 100
ch001.tex
30/6/2008
9: 37
Page 14
14
Graph Theory and Interconnection Networks set. Thus, Qn is bipartite. Because each vector can be changed in n places, Qn is n-regular. By Corollary 3.3, Qn has n2n−1 edges. Deleting the dashed edges in the illustration leaves 2Q2 . This suggests an inductive description of Qn . The basis is the 1-vertex graph Q0 , which consists of the unique binary vector of length 0. Given Qn−1 , we construct Qn in two steps: (1) Take two disjoint copies of Qn−1 . Call them Q0 and Q1 ; (2) For each v ∈ V (Qn−1 ), append a 0 to the end of the vector for v in Q0 and a 1 to the end of the vector for v in Q1 , and add an edge consisting of these two vertices.
1.5
GRAPH OPERATIONS
We need more methods to generate graphs and discuss their properties. For this reason, we present some graph operations. Let G1 = (V1 , E1 ) and G2 = (V2 , E2 ) be two graphs. The union of G1 and G2 , written G1 ∪ G2 , has vertex set V1 ∪ V2 and edge set E1 ∪ E2 . To specific the disjoint union with V1 ∩ V2 = ∅, we write G1 + G2 . More generally, mG is the graph consisting of m pairwise disjoint copies of G. The join of G1 and G2 , written G1 ∨ G2 , is obtained from G1 + G2 by adding the edges {(x, y) | x ∈ V1 , y ∈ V2 }. We illustrate C3 + C4 in Figure 1.17a and C3 ∨ C4 in Figure 1.17b. Note that the adjacency matrix of G1 + G2 is the direct sum of the adjacency matrix of G1 and the adjacency matrix of G2 . Let G1 = (V1 , E1 ) and G2 = (V2 , E2 ) be two graphs. The Cartesian product of G1 and G2 , denoted by G1 × G2 , is the graph with vertex set V1 × V2 such that (u1 , v1 ) is joined to (u2 , v2 ) k times if and only if either u1 = u2 and v1 is joined to v2 k times in G2 or v1 = v2 and u1 is joined to u2 k times in G1 . We illustrate the Cartesian product of G1 in Figure 1.18a and G2 in Figure 1.18b as the graph in Figure 1.18c. Many interconnection networks are constructed by Cartesian product [6,220]. An n-dimensional mesh (abbreviated as mesh) M(m1 , m2 , . . . , mn ) is defined as the Cartesian product of n paths Pm1 × Pm2 × · · · × Pmn , where Pmi is the path graph with mi vertices, and an n-dimensional torus (abbreviated as torus) C(m1 , m2 , . . . , mn ) is defined as the Cartesian product of n cycles Cm1 × Cm2 × · · · × Cmn where Cmi is the cycle graph with mi vertices. Meshes and Tori are widely used computer architectures [220]. In particular, the hypercube Qn is M(m1 , m2 , . . . , mn ) where mi = 2 for 1 ≤ i ≤ n. We introduce another family of such interconnection networks based on the Cartesian product. The Petersen graph is a 3-regular graph with ten vertices such that the
(a)
FIGURE 1.17 (a) C3 + C4 and (b) C3 ∨ C3 .
(b)
ch001.tex
30/6/2008
9: 37
Page 15
Fundamental Concepts
15
y3
x1
x2
x3
y2
y1 (a)
(x1,y3 )
(x2,y3)
(x3,y3)
(x1,y2)
(x2,y2)
(x3,y2)
(x1,y1)
(x2,y1)
(x3,y1)
(b)
(c)
FIGURE 1.18 (a) G1 , (b) G2 , and (c) G1 × G2 .
(x 1,y3)
(x 2,y3)
(x3,y3 )
(x 1,y3)
(x2 ,y3 )
(x3 ,y3)
(x1 ,y2)
(x2,y2 )
(x3,y2)
(x 1,y2)
(x 2,y2)
(x3,y2 )
(x1,y1)
(x 2,y1)
(x 3,y1)
(x 1,y1)
(x 2,y1)
(x 3,y1)
(a)
(b)
FIGURE 1.19 (a) G1 · G2 and (b) G1 ∗ G2 .
length of the shortest path between any two vertices is at most 2. Compared to this graph, the three-dimensional hypercube is a 3-regular graph with eight vertices such that the length of the shortest path between any two vertices is at most 3. It has more vertices as compared to the three-dimensional hypercube and a shorter distance between any two vertices. We call it the simple Petersen graph. As an extension, Öhring and Das [260] introduce the k-dimensional folded Petersen graph, FPk , to be Pk . It is observed that FPk possesses qualities of a good network topology for distributed systems with a large number of sites, because it accommodates 10k vertices and is a symmetric, 3k-regular graph such that the distance between any two vertices is at most 2k. Being an iterative Cartesian product on the Petersen graph, it is scalable. Moreover, Öhring and Das [260] define the folded Petersen cube networks FPQn,k as Qn × Pk . It turns out that FPQn,k and its special derivations FPQ0,k = FPk and FPQn−3,1 = HPn , called the n-dimensional hyper Petersen network (originally proposed by Das and Banerjee [79]), are better than the comparable-size hypercubes and several other networks with respect to the usual metrics of a multicomputer architecture. Let G1 = (V1 , E1 ) and G2 = (V2 , E2 ) be two graphs. The tensor product of G1 and G2 , denoted by G1 · G2 , is the graph with vertex set V1 × V2 such that (u1 , v1 ) is joined to (u2 , v2 ) k times if and only if u1 is joined to u2 m times in G1 and v1 is joined to v2 n times in G2 with k = mn. The strong product of G1 and G2 , denoted by G1 ∗ G2 , is the graph (G1 × G2 ) ∪ (G1 · G2 ). We illustrate G1 · G2 in Figure 1.19a and G1 ∗ G2 in Figure 1.19b where G1 and G2 are shown in Figure 1.18.
ch001.tex
30/6/2008
9: 37
Page 16
16
Graph Theory and Interconnection Networks
Note that the adjacency matrix of G1 · G2 is the tensor product of the adjacency matrix of G1 and the adjacency matrix of G2 . Let m and n be positive integers. It is apparent that Km ∗ Kn = Kmn . Let G be any graph and k be any positive integer. We use k G to denote the graph obtained by duplicating k times to each edge in G. Obviously, 1 G = G. The graph 2 K2 is denoted by C2 .
1.6
SOME BASIC TECHNIQUES
We can count a set by finding a one-to-one correspondence between it and a set of known size. PROPOSITION 1.3 For n ≥ 2, there are 2C(n−1;2) simple graphs with the vertex set {v1 , v2 , . . . , vn } such that every vertex degree is even. Proof: Let A be the set of simple graphs with the vertex set {v1 , v2 , . . . , vn−1 } and let B be the set of simple graphs with the vertex set {v1 , v2 , . . . , vn } such that every vertex degree is even. In Example 1.7, we observed that |A| = 2C(n−1;2) . To prove this proposition, we set a bijection from A to B as follows. Let G be a simple graph with vertices v1 , v2 , . . . , vn−1 . We form a new graph G by adding a vertex vn and making it adjacent to each vertex that has an odd degree in G, as illustrated in Figure 1.20. The vertices with an odd degree in G have an even degree in G. Also, vn itself has even degree because the number of vertices of odd degree in G is even. Conversely, deleting the vertex vn from any graph on {v1 , v2 , . . . , vn } with even degrees produces a graph on {v1 , v2 , . . . , vn−1 }, and this is the inverse of the first procedure. We have established a one-to-one correspondence between the sets. Hence, |B| = 2C(n−1;2) . The pigeonhole principle is a simple notion that leads to elegant proofs and may reduce case analysis. PROPOSITION 1.4 Every simple graph with at least two vertices has two vertices of equal degree. Proof: In a simple graph with n vertices, every vertex degree belongs to the set {0, 1, . . . , n − 1}. Suppose that fewer than n values occur. By the pigeonhole principle, the proposition holds. Otherwise, both (n−1) and 0 occur as vertex degrees. However,
vn G
FIGURE 1.20 Illustration of Proposition 1.3.
G⬘
ch001.tex
30/6/2008
9: 37
Page 17
Fundamental Concepts
17
this is impossible, because the vertex of degree (n − 1) is adjacent to all others, but the vertex of degree 0 is an isolated vertex. We get a contradiction. PROPOSITION 1.5 Suppose that G is a simple n-vertex graph with δ(G) ≥ (n − 1)/2. Then G is connected. Moreover, the bound (n − 1)/2 is tight. Proof: Let G be a simple n-vertex graph with δ(G) ≥ (n − 1)/2. Suppose that u and v are any two different vertices of G. Suppose that u is not adjacent with v. Because δ(G) ≥ (n − 1)/2, at least (n − 1) edges join {u, v} to the remaining vertices. However, there are (n − 2) other vertices. By the pigeonhole principle, one of them receives two of these edges. Because G is simple, this vertex is a common neighbor of u and v. In other words, every pair of vertices is either adjacent or has a common neighbor. Therefore, G is connected. The graph Kn/2 + Kn/2 has two components. Note that it has a minimum degree of n2 − 1 and is yet disconnected. Thus, the bound is tight. We can prove that something exists by building it. Such proofs can be implemented as computer algorithms. A constructive proof requires more than stating an algorithm. We must also prove that the algorithm terminates and yields result. THEOREM 1.4 Every loopless graph G has a bipartite subgraph with at least e(G)/2 edges. Proof: We start with an arbitrary partition of V (G) into two sets, X and Y . By including the edges having one endpoint in each set, we obtain a bipartite subgraph H with bipartition X and Y . Suppose that H contains fewer than half the edges of G incident to a vertex v. Then v has more neighbors in its own class than in the other class, as illustrated in Figure 1.21. By moving v to the other class, we gain more edges of G than we lose. We make such a local switch in the bipartition as long as the current bipartition subgraph has a vertex that contributes fewer than half its edges. Each such switch increases the number of edges in the subgraph. Obviously, the process must terminate. When it terminates, we have degH (v) ≥ degG (v)/2 for every v ∈ V (G). Hence, e(H) ≥ e(G)/2 by the degree-sum formula.
Example 1.14 The algorithm used in Theorem 3.4 does not necessarily produce a bipartite subgraph with the most edges—only a bipartite graph with at least half the edges. For example, the graph in Figure 1.22 is 5-regular with 8 vertices. Hence, it has 20 edges. The bipartition X = {a, b, c, d} and Y = {e, f , g, h} yields a bipartite subgraph with 12 edges. In this
X
Y v
FIGURE 1.21 Illustration of Theorem 1.4.
ch001.tex
30/6/2008
9: 37
Page 18
18
Graph Theory and Interconnection Networks a
h
g
b
f
c
e
d
FIGURE 1.22 Illustration of Example 1.14. bipartite graph, each vertex has degree 3. The algorithm terminates here. Any switching of one vertex would pick up two edges but lose three. Nevertheless, the bipartition X = {a, b, g, h} and Y = {c, d, e, f } produces a 4-regular bipartite subgraph with 16 edges. Thus, an algorithm seeking a maximum example by local changes. It may get stuck in a local maximum.
The proof in Theorem 1.4 illustrates one way to prove the existence of the desired configuration. Define a sequence of changes to an arbitrary configuration that must terminate but can terminate only when the desired property occurs.
1.7
DEGREE SEQUENCES
The degree sequence of a graph is the list of vertices’ degrees, usually written in nonincreasing order, as d1 ≥ d2 ≥ · · · ≥ dn . Some applications use nondecreasing order. Let d1 , d2 , . . . , dn be a sequence of nonnegative integers. Can we determine whether there is a graph with the required sequence? PROPOSITION 1.6 The nonnegative integers d1 , d2 , . . . , dn are the vertex degrees of some graph if and only if ni=1 di is even. Proof: Obviously, the degree-sum formula makes the condition necessary. Conversely, suppose that ni=1 di is even. We need to construct a graph with the vertex set v1 , v2 , . . . , vn and deg(vi ) = di for all i. Because ni=1 di is even, the number of odd values is even. We can form an arbitrary pairing of {vi | di is odd} and establish an edge for each pair. Now the remaining degree needed at each vertex is even and nonnegative. To satisfy this demand for each i, we put d2i loops at vi . We find the required graph. The availability of loops makes the construction easy. If a loop is forbidden, (2, 0, 0) is not realizable. Thus, that the condition ni=1 di is even is no longer sufficient. A graphic sequence is a list of nonnegative numbers that is the degree sequence of a certain simple graph. A simple graph with degree sequence d realizes d.
ch001.tex
30/6/2008
9: 37
Page 19
Fundamental Concepts
19 w
FIGURE 1.23 Graphs with degree sequences 1, 0, 1 and 2, 2, 1, 1. x
w
y
FIGURE 1.24 Graph with degree sequence 33333322.
Example 1.15 The list 2, 0, 0 is not graphic. However, the list 2, 2, 1, 1 and the list 1, 0, 1 are graphic. Obviously, the graph K2 + K1 realizes 1, 0, 1. Suppose that we add a new vertex adjacent to the isolated vertex and to one vertex of degree 1. We obtain a graph with degree sequence 2, 2, 1, 1 as illustrated in Figure 1.23. Conversely, if we have a graph realizing the list 2, 2, 1, 1 in which some vertex w of maximum degree is adjacent to vertices of degrees 2 and 1, we can delete w to obtain a graph with degree list 1, 0, 1.
Example 1.16 These observations suggest a recursive test for graphic sequences. To test the sequence 33333322, we can seek a realization with a vertex y of degree 3 that has three neighbors of degree 3. Such graph exists if and only if 2223322 is graphic by deleting y. We rearrange this as 3322222 and seek a realization having a vertex x of degree 3 with one neighbor of degree 3 and two neighbors of degree 2. Such a graph exists if and only if 211222 is graphic by deleting x. We rearrange this as 222211 and seek a realization having a vertex w of degree 2, with neighbors of degree 2. Such a graph exists if and only if 11211 is graphic. Perhaps you recognize that this is indeed graphic. Beginning with a realization 11211, we can insert w, y, x with the properties desired to obtain a realization of the original sequence 33333322 as shown in Figure 1.24. The realization is not unique.
THEOREM 1.5 (Havel [141], Hakimi [135]) For n > 1, the nonnegative integer list d of size n is graphic if and only if d is graphic, where d is the list of size n − 1 obtained from d by deleting its largest element and subtracting 1 from its next largest elements. The only 1-element graph is sequence is d1 = 0.
ch001.tex
30/6/2008
9: 37
Page 20
20
Graph Theory and Interconnection Networks
S x y
w
z
FIGURE 1.25 Illustration of Theorem 1.5.
Proof: The statement is trivial for n = 1. Assume that n > 1. We first prove that the condition is sufficient. Let d be the sequence d1 ≥ d2 ≥ · · · ≥ dn , and G be a simple graph with degree sequence d . We can add a new vertex adjacent to vertices in G having degrees d2 − 1, d3 −1, . . . , d+1 − 1. Note that these di are the largest elements of d after (only copy of) itself. However, the numbers d2 − 1, d3 − 1, . . . , d+1 − 1 need not be the largest numbers in d . To prove necessity, let G be a simple graph with degree sequence d. We want to produce a simple graph G realizing d . Let w be a vertex of degree in G. Let S be a set of vertices in G having the desired degrees d2 , d3 , . . . , d+1 . Suppose that N(w) = S. We can delete w to obtain G . Suppose that N(w) = S. Some vertex of S is missing from N(w). In this case, we will modify G to increase |N(w) ∩ S| without changing the degree of any vertex. Because N(w) ∩ S can increase at most times, repeating this procedure converts an arbitrary G that realizes d into a graph G∗ that realizes d and has N(w) = S. From G∗ , we then delete w to obtain the desired graph G realizing d . The modification of G that increases |N(w) ∩ S| without changing the degree of any vertex is described as follows: because deg (w) = = |S|, there exists a vertex x ∈ S and another vertex z ∈ / S such that w is adjacent to z and w is not adjacent to x. By the choice of S, deg(x) ≥ deg(z). Thus, there exists a vertex y ∈ / {x, z, w} such that y is adjacent to x, but y is not adjacent to z. Now, we modify G by adding the edge set {(w, x), (z, y)} and deleting the edge set {(w, z), (x, y)} (see Figure 1.25 for illustration). The desired modification is obtained. The vertex degree notation for digraphs incorporates the distinction between heads and tails of edges. Let v be a vertex in a directed graph. The out-neighborhood or successor set N + (v) is {x ∈ V (G) | v → x}. The in-neighborhood or predecessor set N − (v) is {x ∈ V (G) | x → v}. The out-degree of v, deg+ (v), is the cardinality of N + (v). Similarly, the in-degree of v, deg− (v), is the cardinality of N − (v).
ch002.tex
25/7/2008
12: 33
Page 21
on Graph 2 Applications Isomorphisms The main goal of this book is to share our research with the readers. We believe that anyone can do well in research with very little background. So it is time to see what we can do with the limited background provided in Chapter 1.
2.1
GENERALIZED HONEYCOMB TORI
Stojmenovic [288] introduced three different honeycomb tori by adding wraparound edges on honeycomb meshes; namely, the honeycomb rectangular torus, the honeycomb rhombic torus, and the honeycomb hexagonal torus. Recently, these honeycomb tori have been recognized as an attractive alternative to existing torus interconnection networks in parallel and distributed applications. We use the brick drawing [266,288] to define the honeycomb rectangular torus. Assume that m and n are positive even integers. The honeycomb rectangular torus HReT(m, n) is the graph with V (HReT(m, n)) = {(i, j) | 0 ≤ i < m, 0 ≤ j < n} such that (i, j) and (k, l) are adjacent if they satisfy one of the following conditions: 1. i = k and j = l ± 1 (mod n) 2. j = l and k = i − 1 (mod m) if i + j is even Assume that m and n are positive integers, where n is even. The honeycomb rhombic torus HRoT(m, n) is the graph with V (HRoT(m, n)) = {(i, j) | 0 ≤ i < m, 0 ≤ j − i < n} such that (i, j) and (k, l) are adjacent if they satisfy one of the following conditions: 1. i = k and j = l ± 1 (mod n) 2. j = l and k = i − 1 if i + j is even 3. i = 0, k = m − 1, and l = j + m if j is even Assume that n is a positive integer. The honeycomb hexagonal mesh HM(n) is the graph with V (HM(n)) = {(x1 , x2 , x3 ) | −n + 1 ≤ x1 , x2 , x3 ≤ n and 1 ≤ x1 + x2 + x3 ≤ 2}. Two vertices (x11 , x21 , x31 ) and (x12 , x22 , x32 ) are adjacent if and only |x11 − x12 | + |x21 − x22 | + |x31 − x32 | = 1. The honeycomb hexagonal torus HT(n) is the graph with the same vertex set as HM(n). The edge set is the union of E(HM(n)) and the wraparound edge set {((i, n − i + 1, 1 − n), (i − n, 1 − i, n)) | 1 ≤ i ≤ n} ∪ {((1 − n, i, n − i + 1), (n, i − n, 1 − i)) | 1 ≤ i ≤ n} ∪ {((i, 1 − n, n − i + 1), (i − n, n, 1 − i)) | 1 ≤ i ≤ n} 21
ch002.tex
22
25/7/2008
12: 33
Page 22
Graph Theory and Interconnection Networks
Chou and Hsu [62] unify these three families of honeycomb torus into generalized honeycomb torus. Assume that m and n are positive integers, where n is even. Let d be any integer such that (m − d) is an even number. The generalized honeycomb rectangular torus GHT(m, n, d) is the graph with V (GHT(m, n, d)) = {(i, j) | 0 ≤ i < m, 0 ≤ j < n} such that (i, j) and (k, l) are adjacent if they satisfy one of the following conditions: 1. i = k and j = l ± 1 (mod n) 2. j = l and k = i − 1 if i + j is even 3. i = 0, k = m − 1, and l = j + d (mod n) if j is even See Figure 2.1 for various honeycomb tori. Obviously, any GHT(m, n, d) is a 3regular bipartite graph. We can label those vertices (i, j) white when i + j is even or black if otherwise. It is easy to confirm that the honeycomb rectangular torus HReT(m, n) is isomorphic to GHT(m, n, 0) and the honeycomb rhombic torus HRoT(m, n) is isomorphic to GHT(m, n, m (mod n)). With the following theorem, the honeycomb hexagonal torus HT(n) is isomorphic to GHT(n, 6n, 3n). THEOREM 2.1 HT(n) is isomorphic to GHT(n, 6n, 3n). Proof: Let h be the function from the vertex set of HT(n) into the vertex set of GHT(n, 6n, 3n) by setting h(x1 , x2 , x3 ) = (x3 , x1 − x2 + 2n) if 0 ≤ x3 < n, h(x1 , x2 , x3 ) = (0, x1 − x2 + 5n (mod 6n)) if x3 = n, and h(x1 , x2 , x3 ) = (x3 + n, x1 − x2 + 5n (mod 6n)) if otherwise. We need to check whether f is an isomorphism. For any 1 − n ≤ c ≤ n, we use Xc to denote the set of those vertices (x1 , x2 , x3 ) in HT(n) with x3 = c. We use Yc to denote the set of vertices (i, j) in GHT(n, 6n, 3n) where (1) i = c + n and j ∈ {k | 4n − c − 3 < k < 6n} ∪ {k | 0 ≤ k < n + c} if c < 0, (2) i = 0 and j ∈ {1 ≤ j < 4n} if c = 0, (3) i = c and { j | c ≤ j ≤ 4n − c} if 0 < c < n, and (4) i = 0 and j ∈ {k | 4n ≤ k < 6n} ∪ {0} if c = n. Let hc denote the function of h induced by Xc . It is easy to confirm that hc is a one-to-one function from Xc onto Yc . Thus, h is one-to-one and onto. We need to check that h preserves the adjacency. Let e = ((x1 , x2 , x3 ), (x1 , x2 , x3 )) be an edge of HT(n). Without loss of generality, we assume that x1 + x2 + x3 = 2 and x1 + x2 + x3 = 1. Assume that e is an edge of HM(n). Then either x3 = x3 or x3 − x3 = ±1. Case 1. x3 = x3 . Obviously, either (x1 , x2 , x3 ) = (x1 − 1, x2 , x3 ) or (x1 , x2 , x3 ) = (x1 , x2 − 1, x3 ) holds. Assume that 0 ≤ x3 < n. Then h(x1 , x2 , x3 ) = (x3 , x1 − x2 + 2n). Moreover, h(x1 , x2 , x3 ) = (x3 , x1 − x2 − 1 + 2n) if (x1 , x2 , x3 ) = (x1 − 1, x2 , x3 ) and h(x1 , x2 , x3 ) = (x3 , x1 − x2 + 1 + 2n) if (x1 , x2 , x3 ) = (x1 , x2 − 1, x3 ). Assume that x3 = n. Then h(x1 , x2 , x3 ) = (0, x1 − x2 + 5n (mod 6n)). Moreover, h(x1 , x2 , x3 ) = (x3 , x1 − x2 − 1 + 5n (mod 6n)) if (x1 , x2 , x3 ) = (x1 − 1, x2 , x3 ) and h(x1 , x2 , x3 ) = (x3 , x1 − x2 + 1 + 5n (mod 6n)) if (x1 , x2 , x3 ) = (x1 , x2 − 1, x3 ). Assume that x3 < 0. Then h(x1 , x2 , x3 ) = (x3 + n, x1 − x2 + 5n (mod 6n)). Moreover, h(x1 , x2 , x3 ) = (x3 , x1 − x2 − 1 + 5n (mod 6n)) if (x1 , x2 , x3 ) = (x1 − 1, x2 , x3 ) and h(x1 , x2 , x3 ) = (x3 , x1 − x2 + 1 + 5n
ch002.tex
25/7/2008
12: 33
Page 23
Applications on Graph Isomorphisms
23
(a)
(b)
x1
x3
x3
x3 x3
x3 x3
x3
(c)
FIGURE 2.1
x2
(d)
(a) HReT(6, 6), (b) HRoT(4, 6), (c) HT(3), and (d) GHT(3, 18, 9).
(mod 6n)) if (x1 , x2 , x3 ) = (x1 , x2 − 1, x3 ). Therefore, h(x1 , x2 , x3 ) and h(x1 , x2 , x3 ) are adjacent. Case 2. x3 − x3 = ±1. Because x1 + x2 + x3 = 2 and x1 + x2 + x3 = 1, (x1 , x2 , x3 ) = (x1 , x2 , x3 − 1). Assume that 1 ≤ x3 < n. Then h(x1 , x2 , x3 ) = (x3 , x1 − x2 + 2n) and h(x1 , x2 , x3 ) = (x3 − 1, x1 − x2 + 2n). Assume that x3 = 0. Then h(x1 , x2 , x3 ) = (0, x1 − x2 + 2n) and h(x1 , x2 , x3 ) = (n − 1, x1 − x2 + 5n (mod 6n)). Assume that x3 = n. Then h(x1 , x2 , x3 ) = (0, x1 − x2 + 5n (mod 6n)) and h(x1 , x2 , x3 ) = (n − 1, x1 − x2 + 2n). Assume that 2 − n ≤ x3 ≤ −1. Then h(x1 , x2 , x3 ) = (x3 + n, x1 − x2 + 5n (mod 6n))
ch002.tex
25/7/2008
12: 33
24
Page 24
Graph Theory and Interconnection Networks
and h(x1 , x2 , x3 ) = (x3 + n − 1, x1 − x2 + 5n (mod 6n)). Therefore, h(x1 , x2 , x3 ) and h(x1 , x2 , x3 ) are adjacent. Assume that e is an wraparound edge of HM(n). We have the following three cases: Case 3. e ∈ {((i, n − i + 1, 1 − n), (i − n, 1 − i, n)) | 1 ≤ i ≤ n}. Obviously, (x1 , x2 , x3 ) = (i, n − i + 1, 1 − n) and (x1 , x2 , x3 ) = (i − n, 1 − i, n). Thus, h(x1 , x2 , x3 ) is (1, 4n + 2i − 1) and h(x1 , x2 , x3 ) is (0, 4n + 2i − 1). Therefore, h(x1 , x2 , x3 ) and h(x1 , x2 , x3 ) are adjacent. Case 4. e ∈ {((1 − n, i, n − i + 1), (n, i − n, 1 − i)) | 1 ≤ i ≤ n}. Obviously, (x1 , x2 , x3 ) = (1 − n, i, n − i + 1) and (x1 , x2 , x3 ) = (n, i − n, 1 − i). Thus, h(x1 , x2 , x3 ) is (0, 4n) if i = 1 and (n − i + 1, n − i + 1) if 1 < i ≤ n. Again, h(x1 , x2 , x3 ) is (0, 4n − 1) if i = 1 and (n − i + 1, n − i) if 1 < i ≤ n. Therefore, h(x1 , x2 , x3 ) and h(x1 , x2 , x3 ) are adjacent. Case 5. e ∈ {((i, 1 − n, n − i + 1), (i − n, n, 1 − i)) | 1 ≤ i ≤ n}. Obviously, (x1 , x2 , x3 ) = (i, 1 − n, n − i + 1) and (x1 , x2 , x3 ) = (i − n, n, 1 − i). Thus, h(x1 , x2 , x3 ) is (0, 0) if i = 1 and (n − i + 1, 3n + i − 1) if 1 < i ≤ n. Again, h(x1 , x2 , x3 ) is (0, 1) if i = 1 and (n − i + 1, 3n + i) if 1 < i ≤ n. Hence, h(x1 , x2 , x3 ) and h(x1 , x2 , x3 ) are adjacent. Thus, the theorem is proved. For example, the honeycomb torus illustrated in Figure 2.1c is actually isomorphic to the generalized honeycomb torus illustrated in Figure 2.1d.
2.2
ISOMORPHISM BETWEEN CYCLIC-CUBES AND WRAPPED BUTTERFLY NETWORKS
The wrapped-around butterfly network WB(n, k) has n · k n vertices, and each vertex is represented by (n + 1)-bit vectors a0 a1 . . . an−1 i where 0 ≤ i ≤ n − 1 and 1 ≤ aj ≤ k for all 0 ≤ j ≤ n − 1. Two vertices a0 a1 . . . an−1 i and b0 b1 . . . bn−1 j are adjacent in WB(n, k) if and only if j − i = 1 (mod n) and at = bt for all 0 ≤ t = j ≤ n − 1. The graph in Figure 2.2 is WB(3, 2). The WB(n, k) is widely used in communication networks [220].
0112
row 000 row 001 row 010 row 011 row 100 row 101 row 110 row 111
FIGURE 2.2 The graph WB(3, 2).
ch002.tex
25/7/2008
12: 33
Page 25
Applications on Graph Isomorphisms
25
In 1998, Fu and Chau [118] proposed a family of graphs called cyclic-cubes, which have even fixed degrees. They show that this family of graphs has many useful properties, so that it can serve as an interconnection network topology. Let Gkn denote k-ary n-dimensional cyclic-cubes. In 2000, Hung et al. [184] proved that this family of graphs is indeed isomorphic to WB(n, k). To define Gkn , let t1 , t2 , . . . , tn be n distinct symbols with ordering t1 > t2 · · · > tn . Each symbol tj is assigned a rank i for 1 ≤ i ≤ k, and this ranked symbol is denoted by tji . The graph Gkn has n · k n vertices, and each vertex of Gkn is represented by an n-bit vector, which is a circular permutation of t1i1 t2i2 . . . tnin for 1 ≤ i1 , i2 , . . . , in ≤ k. For example, in G24 t31 t42 t11 t22 is a vertex and t32 t21 t42 t11 is not. In other words, i ij+1 ij−1 . . . tnin t1i1 . . . tj−1 V Gkn = tj j tj+1 for 1 ≤ j ≤ n
and
1 ≤ i1 , i2 , . . . , in ≤ k
To define edges in Gkn , we first define the function fs for every 1 ≤ s ≤ k, mapping V (Gkn ) onto itself as follows: i ij+1 ij−1 ij+1 ij−1 s = tj+1 . . . tnin t1i1 . . . tj−1 . . . tnin t1i1 . . . tj−1 tj fs tj j tj+1
for any 1 ≤ s ≤ k
Note that all fj are bijective functions. Each vertex x ∈ V (Gkn ) is linked to exactly 2k vertices fj (x) and fj−1 (x) for all 1 ≤ j ≤ k. For example, in G24 the vertex t31 t41 t11 t22 is linked to t41 t11 t22 t31 , t41 t11 t22 t32 , t21 t31 t41 t11 , and t22 t31 t41 t11 . THEOREM 2.2 Gkn is isomorphic to WB(n, k). Proof: For each vertex a0 a1 . . . an−1 i in WB(n, k), we define a function π mapping V (WB(n, k)) to V (Gkn ) as follows: a
π (a0 a1 . . . an−1 i) = ti i−1
+1 ai +1 ai−2 +1 ti+1 . . . tnan−1 +1 t1a0 +1 t2a1 +1 . . . ti−1
For example, n = 3, k = 2, f (0000) = t11 t21 t31 , f (0001) = t21 t31 t11 , and f (0112) = t32 t11 t22 . Obviously, the function π is bijective. Let u = a0 a1 . . . an−1 i and v = b0 b1 . . . bn−1 j be two distinct vertices in WB(n, k). Then π(u) and π(v) are two distinct vertices in Gkn given as follows: a
+1 ai +1 ai−2 +1 ti+1 . . . tnan−1 +1 t1a0 +1 t2a1 +1 . . . ti−1
b
+1 bj +1 bj−2 +1 tj+1 . . . tnbn−1 +1 t1b0 +1 t2b1 +1 . . . tj−1
π(u) = ti i−1 π(v) = tj j−1
Assume that u and v are adjacent in WB(n, k). Without loss of generality, we may assume that j = i − 1 (mod n). Thus, at = bt for all 0 ≤ t = j ≤ n − 1; that is, v = a0 a1 . . . ai−2 bi−1 ai . . . an−1 (i − 1). Therefore, a
ai +1 i+1 π(v) = ti+1 ti+2
+1
a
i−2 · · · tnan−1 +1 t1a0 +1 t2a1 +1 · · · ti−1
Thus, π(u) and π(v) are adjacent in Gkn .
+1 bi−1 +1 ti
= fbi−1 (π(u))
ch002.tex
25/7/2008
12: 33
26
Page 26
Graph Theory and Interconnection Networks
On the other hand, suppose that π(u) and π(v) are adjacent in Gkn . Then π(v) can be fs (π(u)) or fs−1 (π(u)) for some 1 ≤ s ≤ k. Suppose that π(v) = fs (π(u)) a +1 ai−2 −1 s+1 ai +1 ai+1 +1 ti+2 . . . tn n−1 t1a0 +1 t2a1 +1 . . . ti−1 ti for some 1 ≤ s ≤ k. Then π(v) = ti+1 and v = a0 a1 . . . ai−1 sai . . . an−1 (i − 1). Therefore, (u, v) ∈ E(WB(n, k)). Similarly, π(v) = fs−1 (π(u)) also implies (u, v) ∈ E(WB(n, k)). This theorem is proved.
2.3
1-EDGE FAULT-TOLERANT DESIGN FOR MESHES
Motivated by the study of computer and communication networks that can tolerate failure of their components, Harary and Hayes [139] formulated the concept of edge fault tolerance in graphs. Let G be a graph of order n and k be a positive integer. An n-vertex graph G∗ is said to be k-edge fault-tolerant, or k-EFT, with respect to G, if every graph obtained by removing any k-edges from G∗ contains G. For brevity, we refer to G∗ as k-EFT(G) graph. A k-EFT(G) graph G∗ is optimal if it contains the least number of edges among all k-EFT(G) graphs. Let eftk (G) be the difference between the number of edges in an optimal k-EFT(G) graph and that in G. LEMMA 2.1 Assume that G∗ is a k-EFT(G). Then δ(G∗ ) ≥ δ(G) + k. Proof: Suppose that the lemma is false. Then there exists a k-EFT(G) graph G∗ with δ(G∗ ) < δ(G) + k. Let v be a vertex of G∗ with degG∗ (v) = δ(G∗ ). We delete k edges that are incident with v from G∗ to obtain a graph G. Obviously, δ(G ) < δ(G). Hence, G is not a subgraph of G. We get a contradiction, because G∗ is a k-EFT(G). Hence, the lemma is proved. It is easy to see that k+1 G is a k-EFT(G) for any graph G. Moreover, Cn is an optimal 1-EFT(Pn ). It is easy to confirm that the torus graph C(m1 , m2 , . . . , mn ) is a 1-edge fault-tolerant graph for M(m1 , m2 , . . . , mn ) where mi ≤ 2 with 1 ≤ i ≤ n. In Ref. 139, Harary and Hayes conjectured that C(m1 , m2 , . . . , mn ) is optimal 1-EFT (M(m1 , m2 , . . . , mn )) for every mi ≥ 2 with 1 ≤ i ≤ n. The two-dimensional mesh M(3, 4) is illustrated in Figure 2.3a. The graph C(3, 4) with a faulty (dashed) edge F = (x2,3 , x2,4 ) is illustrated in Figure 2.3b. A recovery from a fault affecting the dashed edge F = (x2,3 , x2,4 ) is shown in Figure 2.3c. Chou and Hsu [64] disprove the conjecture by proposing the following counterexample. We assume that the vertices of M(m1 , m2 , . . . , mn ) are labeled canonically. Thus, xi1 ,i2 ,...,in is a vertex of M(m1 , m2 , . . . , mn ) if and only if 1 ≤ ij ≤ mj for 1 ≤ j ≤ n. x31 x32
x33 x34
x31 x32 x33
x34
x34 x31
x32 x33
x21 x22
x23 x24
x21 x22 x23
x24
x24 x21
x22 x23
x11 x 12
x13
x11 x12 x13
x14
x14 x11
x12 x13
(a)
x14
(b)
(c)
FIGURE 2.3 (a) The graph M(3, 4), (b) the graph C(3, 4) with a faulty (dashed) edge F = (x2,3 , x2,4 ), and (c) a recovery from a fault affecting the dashed edge F = (x2,3 , x2,4 ).
ch002.tex
25/7/2008
12: 33
Page 27
Applications on Graph Isomorphisms
27
Moreover, xi1 ,i2 ,..., in is adjacent to another vertex xj1 , j2 ,..., jn if all indices t with 1 ≤ t ≤ n but one index k satisfy it = jt ; and the index k is such that ik = jk satisfies |ik − jk | = 1. Let Vp = {xi1 ,i2 ,...,in | ik = 1 or mk for some 1 ≤ k ≤ n} be the set of peripheral vertices. Assume that xi1 ,i2 ,..., in is a vertex in Vp . The antipodal vertex of xi1 ,i2 ,...,in is xj1 , j2 ,..., jn , with jk = mk − ik + 1, which is another vertex in Vp . It is easy to confirm that every vertex in Vp has exactly one antipodal. In M(m1 , m2 , . . . , mn ), we add the edges joining each vertex in Vp to its antipodal counterpart to form a new graph P(m1 , m2 , . . . , mn ). We call these P(m1 , m2 , . . . , mn ) projective-plane graphs because their construction is similar to that of the projective plane when n = 2. THEOREM 2.3 P(m1 , m2 , . . . , mn ) is 1-EFT(M(m1 , m2 , . . . , mn )) and it contains fewer edges than that of C(m1 , m2 , . . . , mn ). Proof: Suppose that F is the faulty edge of P(m1 , m2 , . . . , mn ) joining xi1 ,i2 ,..., in to xi1 ,i2 ,...,in where is = is if s = k and ik = ik + 1. Now, we reconfigure M(m1 , m2 , . . . , mn ) through the following. First we delete all the edges joining xj1 , j2 ,..., jn to xj1 , j2 ,..., jn where js = js for every s = k, jk = ik , and jk = ik + 1. Let A = {xj1 , j2 ,..., jn | jk ≤ ik } and B = {xj1 , j2 ,..., jn | jk ≥ jk + 1}. In M(m1 , m2 , . . . , mn ), the sets A and B induce two submeshes. These two submeshes are connected by edges including the set E ∗ = {(xj1 , j2 ,..., jn , xj1 , j2 ,..., jn ) | js = ms − js + 1 for every s = k, jk = 1, and jk = mk }. Therefore, the subgraphs of P(m1 , m2 , . . . , mn ) generated by A, B, and E ∗ form a mesh M isomorphic to M(m1 , m2 , . . . , mn ). For example, the recovery of M(3, 4) for the faulty edge F = (x2,3 , x2,4 ) in P(3, 4) is illustrated in Figure 2.4. Obviously, |E(P(m1 , m2 , . . . , mn ))| ≤ |E(C(m1 , m2 , . . . , mn ))|. Hence, the theorem is proved. COROLLARY 2.1 eft1 (M(m1 , m2 , . . . , mn )) ≤ 1/2
n
i=1 mi
−
n
i=1 (mi
− 2) .
The projective-plane graphs are optimal for some cases, but not for all. Note that every n-dimensional hypercube can be viewed as the mesh M(2, 2, . . . , 2). Our P(2, 2, . . . , 2) is actually the same 1-EFT graph as that proposed in Refs 34, 139, 319, and 347. Thus, P(2, 2, . . . , 2) is an optimal 1-EFT graph. It is easy to prove that the graph in Figure 2.5a is a 1-EFT(M(3, 2)) and the graph in Figure 2.5b is a 1-EFT(M(4, 2)). With these two examples, we know that the projective-plane graphs may not be optimal for some cases. Furthermore, the problem of finding the optimal 1-EFT for all n-dimensional meshes remains unsolved. In Ref. 67, Chuang et al. study the 1-EFT graphs for M(k, 2) with k ≥ 2. For simplicity, the kth ladder graph Lk is defined to be M(k, 2). The vertices of Lk can be x31
x32
x33
x34
x14
x31
x32
x33
x21
x22
x23
x24
x24
x21
x22
x23
x11
x12
x13
x14
x34
x11
x12
x13
FIGURE 2.4 The recovery of M(3, 4) for the faulty edge F = (x2,3 , x2,4 ) in P(3, 4).
ch002.tex
25/7/2008
12: 33
Page 28
28
Graph Theory and Interconnection Networks x1,2
x2,2
x3,2
x1,1
x2,1
x3,1
x1,2
x2,2
x1,1
(a)
FIGURE 2.5
x3,2
x3,1
x2,1
x4,2
x4,1
(b)
(a) A 1-EFT(M(3, 2)), L3∗ and (b) a 1-EFT(M(4, 2)), L4∗ .
labeled by xi, j with 1 ≤ i ≤ k and 1 ≤ j ≤ 2 canonically. The vertices x1,1 , xk,1 , x1,2 , and xk,2 are called the corner vertices of Lk . We have the following theorem. THEOREM 2.4 Assume that Lk∗ is a 1-EFT(Lk ) graph. Then (i) degLk∗ (x) ≥ 3 for any vertex x of Lk∗ and (ii) eft1 (Lk ) ≥ 2. Proof: Assume that some vertex x with degLk∗ (x) = 2. Let e be any edge incident with x. Then degLk∗ −e (x) = 1. Because degLk (x) ≥ 2 for any vertex x of Lk , Lk is not a subgraph of Lk∗ − e. We find a contradiction to Lk∗ being a 1-EFT(Lk ) graph. Hence, degLk∗ (x) ≥ 3. Because there are exactly four corner vertices in every Lk , we have eft1 (Lk ) ≥ 2. COROLLARY 2.2 eft1 (Lk ) > 2 if k > 4. Proof: It is easy to check whether there are exactly three different ways of joining the four corner vertices in Lk with two edges; namely, {(x1,1 , x1,2 ), (xk,1 , xk,2 )}, {(x1,1 , xk,1 ), (x1,2 , xk,2 )}, and {(x1,1 , xk,2 ), (x1,2 , xk,1 )}. It is observed that none of the graphs obtained by joining two edges to the corner vertices of Lk with k > 4 is 1-EFT(Lk ). Hence, eft1 (Lk ) > 2 if k > 4. Let L2∗ (L3∗ , and L4∗ , respectively) be the graph P(2, 2) (the graph in Figures 2.5a, and 2.5b, respectively). From the previous discussion, Lk∗ is 1-EFT(Lk ) for k = 2, 3, and 4. Note that there are exactly two edges added to Lk with k = 2, 3, and 4. By Theorem 2.4, these graphs are optimal. By checking all three cases joining two edges to the corner vertices of Lk , the optimal 1-EFT(Lk ) is unique for k = 2, 3, and 4. We obtain the following theorem. THEOREM 2.5 eft1 (Lk ) = 2 for k = 2, 3, and 4. Let us consider the spanning supergraph L5∗ of L5 given by E(L5∗ ) = E(L5 ) ∪ {(x1,1 , x5,2 ), (x1,2 , x4,2 ), (x2,1 , x5,1 )} as shown in Figure 2.6. Obviously, edges of L5 can be divided into the following seven classes: namely, A = {(x1,1 , x1,2 )}, B = {(xi,1 , xi,2 ) | 2 ≤ i ≤ 4}, C = {(x5,1 , x5,2 )}, D = {(x1,1 , x2,1 ), (x1,2 , x2,2 )}, E = {(x2,1 , x3,1 ), (x2,2 , x3,2 )}, F = {(x3,1 , x4,1 ), (x3,2 , x4,2 )}, and G = {(x4,1 , x5,1 ), (x4,2 , x5,2 )}. We can reconfigure L5 in L5∗ for any faulty edge e in A, B, C, D, E, F, and G, respectively, as shown in Figures 2.7a through 2.7g, respectively. Thus, L5∗ is 1-EFT(L5 ). By Corollary 2.2, we have the following theorem.
ch002.tex
25/7/2008
12: 33
Page 29
Applications on Graph Isomorphisms x1,2
29
x2,2
x2,1
x1,1
x4,2
x3,2
x5,2
x5,1
x4,1
x3,1
FIGURE 2.6 A 1-EFT(M(5, 2)), L5∗ . x2,2
x3,2
x1,2
x4,2
x3,1
x2,1
x1,1
x2,2
x1,2
x4,1
x5,1
x5,2
x3,2
x4,2
x3,2
x4,2
x4,2
x5,1
x5,2
(e)
x2,1
x3,1
x4,1
x3,1
x5,2
x5,1
x4,1
x5,1
x2,1
x2,1
x1,1
x2,2
x1,2
x3,2
x3,1
x2,2
x1,2
x2,1
x1,1
(f)
x3,2
x4,2
x5,2
x1,2
x4,2
x2,2
x1,2
x1,1
x1,1
x5,2
(c)
(b)
(a) x3,1
x1,1
x4,2
x5,2
x4,1
x5,1
x5,2
x5,1
x1,1
x2,1
x4,1
x3,1
x3,2
x5,1
x2,1
x2,2
(d)
x1,2
x2,2
x4,2
x3,2
x4,1
x3,1
(g)
FIGURE 2.7 A 1-EFT(M(5, 2)), L5∗ .
THEOREM 2.6 eft1 (L5 ) = 3. Let k be an even integer with k ≥ 4. The spanning supergraph Lk∗ of Lk is the graph that adds E = {(xi, j , xk−i+1, j ) | 1 ≤ i < k/2, j = 1, 2} to E(Lk ) as shown in Figure 2.8a. The graph in Figure 2.8a is actually isomorphic to M(k/2, 2, 2), as shown in Figure 2.8b. We can reconfigure Lk in Lk∗ as shown in Figure 2.8c for any faulty edge of the form (xi,1 , xi,2 ) or as shown in Figure 2.8d for any faulty edge of the form (xi,1 , xi+1,1 ) or (xi,2 , xi+1,2 ). Thus, M(k/2, 2, 2) is a 1-EFT(Lk ). We obtain the following theorem. THEOREM 2.7 Assume that k is an even integer with k ≥ 4. Then eft1 (Lk ) ≤ k − 2. Let k be an odd integer with k ≥ 7. Construct the spanning supergraph Lk∗ of Lk by adding E = {(x1,2 , x4,2 ), (x3,2 , x6,2 ), (x2,1 , x5,1 ), (x4,1 , x7,1 ), (x1,1 , x5,2 ), (x3,1 , x7,2 )} ∪ {(x2i, j , x2i+3, j ) | 3 ≤ i ≤ (k − 3)/2, j = 1, 2} as shown in Figure 2.9. Obviously, edges of Lk can be divided into the following seven classes: A = {(xi,1 , xi,2 ) | i = 1, 2} ∪ {(x2i, j , x2i+1, j ) | 4 ≤ i ≤ (k − 3)/2, j = 1, 2} B = {(xi,1 , xi,2 ) | i = 3, 4} ∪ {(x2i−1, j , x2i, j ) | 4 ≤ i ≤ (k − 1)/2, j = 1, 2} C = {(x5,1 , x5,2 )} ∪ {(xi,1 , xi,2 ) | 4 ≤ i ≤ (k − 1)/2} D = {(xi,1 , xi,2 ) | i = 6, 7} ∪ {(xi,1 , xi,2 ) | i = k, k − 1} E = {(x1, j , x2, j ) | j = 1, 2} ∪ {(x3, j , x4, j ) | j = 1, 2} F = {(x2, j , x3, j ) | j = 1, 2} ∪ {(x5, j , x6, j ) | j = 1, 2} G = {(x4, j , x5, j ) | j = 1, 2} ∪ {(x6, j , x7, j ) | j = 1, 2} ∪ {(xk−1, j , xk, j ) | j = 1, 2}
x 2,1
x1,1
x i,1
x i,2
Lk∗ ,
xi,1
(c)
x2,2
x1,1 x3,1
x3,2
(d)
xi,1 xi1,1
i1,2
xi,2 x
xi1,1
xi,1
(b)
xi1,2
xi,2
xk/22,1
xk/22,2
xki,1
xki1,1
xk/21,1
xk/21,2
xk/23,1
xk/23,2
xk/2,1
xk/2,2
xk/22,1
xk/22,2
xk/21,1
xk/21,2
30
xi,2
x2,2
x1,2
xk2,1
xki,2
xki1,2
12: 33
(a)
xi1,2 xk/21,2 xk/2,2 xk/21,2 xk/22,2 xki,2 xki1,2 xk1,2 xi1,1 xk/21,1 xk/2,1 xk/21,1 xk/22,2 xki,1 xki1,1 xk1,1 xk,1
xk1,1
xk,1
xk2,2
25/7/2008
FIGURE 2.8 (a) a 1-EFT(Lk ) where k is even and k ≥ 4, (b) the three-dimensional mesh M(k/2, 2, 2), (c) reconfigured Lk for any faulty edge of the form (xi,1 , xi,2 ), and (d) reconfigured Lk for any faulty edge of the form (xi,1 , xi+1,1 ) or (xi,2 , xi+1,2 ).
x 2,2
x1,2
xk,2
xk1,2
xk,2
ch002.tex Page 30
Graph Theory and Interconnection Networks
ch002.tex
25/7/2008
12: 33
Page 31
Applications on Graph Isomorphisms
31
x 1,2
x 2,2
x 3,2
x 4,2
x 5,2
x 6,2
x7,2
x 8,2
x 9,2
xk3,2 xk2,2 xk1,2 xk,2
x 1,1
2,1
x 3,1
x 4,1
x 5,1
x 6,1
x7,1
x 8,1
x 9,1
xk3,1 xk2,1 xk1,1 xk,1
FIGURE 2.9 A 1-EFT(Lk ) where k is odd and k ≥ 7.
We can reconfigure Lk in Lk∗ for any faulty edge e in A, B, C, D, E, F, and G, respectively, as shown in Figures 2.10a through 2.10g, respectively. Thus, Lk∗ is 1-EFT(Lk ). We have the following theorem. THEOREM 2.8 Assume that k is an odd integer with k ≥ 7. Then eft1 (Lk ) ≤ k − 1. We conjecture that Lk∗ is optimal 1-EFT(Lk ) for k ≥ 6.
2.4
FAITHFUL 1-EDGE FAULT-TOLERANT GRAPHS
Families of k-EFT graphs with respect to some graphs have been studied [64,139,153,284,293]. It is observed that there is no general approach to the construction of edge fault-tolerant graphs. However, we note that meshes, tori, and hypercubes can be expressed as Cartesian products of several primal graphs. Wang et al. [332] aim at providing a scheme for constructing one-edge fault-tolerant graphs with respect to some graph products. Once we can find certain 1-EFT graphs with respect to these primal graphs having some desired properties, this scheme enables us to construct a 1-EFT graph with respect to the graph product. In particular, we apply this scheme to construct a 1-EFT(C(m1 , m2 , . . . , mn )) and show it is optimal, where m1 , m2 , . . . , mn are positive even integers with each mi ≥ 4. Because multiple edges are allowed in graphs, all set operations in this section are defined with multisets; for example, {a, b} {a} = {a, a, b} and {a, a, b} − {a, c} = {a, b}, where denotes the sum operation of two multisets. We call (G∗ , G) a graph pair if G∗ is a spanning supergraph of G. Moreover, (G∗ , G) is a 1-EFT pair if G∗ is a 1-EFT(G). Throughout this section, let (G∗i , Gi ) be a graph pair for all i with G∗i = (Vi , Ei∗ ) and Gi = (Vi , Ei ). We use (G∗1 , G1 ) ⊕ (G∗2 , G2 ) to denote the graph with V1 × V2 as its vertex set and E(G1 × G2 ) E((G∗1 − E1 ) · (G∗2 − E2 )) as its edge set, where × is the Cartesian product of graphs and · is the tensor product of graphs. Obviously, G1 × G2 is a spanning subgraph of (G∗1 , G1 ) ⊕ (G∗2 , G2 ). Now, we define an operator ⊗ on two graph pairs (G∗1 , G1 ) and (G∗2 , G2 ), denoted by (G∗1 , G1 ) ⊗ (G∗2 , G2 ), as the graph pair ((G∗1 , G1 ) ⊕ (G∗2 , G2 ), G1 × G2 ). For example, let G1 = C6 , G2 = C4 , G∗1 be the graph in Figure 2.11a, and G∗2 be the graph in Figure 2.11b. In Figures 2.11a and 2.11b, dashed lines represent edges G∗1 − E1 and G∗2 − E2 . We illustrate G1 × G2 , (G∗1 − E1 ) · (G∗2 − E2 ), and (G∗1 , G1 ) ⊕ (G∗2 , G2 ) in Figures 2.11c through 2.11e, respectively. Note that × and · are commutative and associative. The following theorem can easily be obtained.
x5,1
x2,1
x3,2
x2,2
x3,2
x2,2
x3,1
x2,1
x3,1
x2,1
xk3,2 xk2,2
x4,1
x5,1
x4,1
x5,1
x2i,2
x2i,1
x10,1
x10,2
x10,1
x10,2
x7,1
x6,1
x7,1
x6,1
x2i1,2
x2i1,1
x4i1,1
x8,1
x9,1
x8,1
x9,1
x10,2
x10,1
x4i2,1
x4i1,2 x4i2,2
x4i1,1 x4i2,1
x4i1,2 x4i2,2
x11,1
x10,1
x11,1
x10,1
x11,2
x11,1
x9,2
x9,1
xk,1
xk,2
xk,1
xk,2
x4i,1
x4i1,1
x4i3,1
x4i2,1
x4i1,1 x4i,1
x4i2,1 x4i1,1
x8,2
x8,1
xk2,1 xk1,1
xk2,2 xk1,2
xk4,1 xk3,1
xk4,2 xk3,2
xk2,1
xk2,2
xk1,1
xk,1
x7,2
x7,1
xk3,1 xk,1
xk2,1 xk1,1
xk2,1
xk3,1
x6,2
x6,1
xk3,1 xk4,1
xk3,2 xk4,2
xk1,1
xk1,2
x4i3,2 x4i,2
xk3,2
x2,1
x5,1
x4i,1
x4i,2
xk ,2
xk1,2
xk3,2
xk2,2
xk1,2 xk2,2
xk,2
x3,1
x4,1
x4i3,1
x4i3,2
x1,2
x4,2
x8,1
x8,2
x11,1
x11,2
x2,2
x3,2
x7,1
x7,2
x8,1
x8,2
x4i1,2
x4i3,2 x4i,2
x4i2,2 x4i1,2
x4i,2
x11,2
x10,2
x11,2
x4i1,2 x4i2,2 x10,2
x1,1
x5,2
x11,1
x11,2
xk5,1 x4i3,1 x4i,1
xk5,2
Reconfigures of Lk in Lk∗ where k is odd and k ≥ 7 for any faulty edge in (a)–(g), respectively.
x4,2
x5,2
FIGURE 2.10
x1,2
x1,1
x4,2
x1,2
x1,1
x5,2
xk,2
xk1,2
x9,1
x9,2
xk3,1 xk2,1
x6,1
x6,2
x9,1
x9,2
x8,2
x9,2
x8,2
x9,2
x4,1
x3,1
x7,1
x7,2
x7,2
x6,2
x7,2
x6,2
x4,2
x3,2
x4,1
x3,1
x1,2
x2,2
x4,2
x3,2
x1,2
x2,2
k 4m 3
k 4m 1
k 4m 3
k 4m 1
32
(c)
x5,2
x1,1
x6,1
x6,2
12: 33
xk1,1 xk,1
x5,1
x2,1
x5,2
25/7/2008
(b)
(a)
x1,1
ch002.tex Page 32
Graph Theory and Interconnection Networks
x5,2
x1,1
FIGURE 2.10
x4,1
x4,2
x1,2
(continued)
x5,1
x5,1
x5,2
x1,1
x4,1
xk2,2 xk5,2
xk1,2
x4,2
xk3,2 xk4,2
xk,2
x6,1
x7,1
x6,1
x7,1
x4i2,2
x4i3,2
x9,1
x8,1
x9,1
x8,1
x4i1,2
x4i,2
x4i1,2 x4i2,2
x10,2
x11,2
x10,2
x10,1
x11,1
x10,1
x11,1
x9,2
x8,2
x9,2
x8,2
xk2,1
x2,2
x2,1
x2,2
x2,1
x4i3,1
xk2,1
xk3,1
x4i1,1 xk3,1
x4i,1
x3,2
x3,1
x3,2
x3,1
x4i1,1 x4i2,1
x4i,1
x4i2,1
x4i1,1
x6,2
x7,2
x6,2
x7,2
x4,2
x5,2
x4,2
x5,2
xk,2
xk,2
xk1,1 xk1,2
xk,1
xk,1
xk1,1 xk1,2
x1,2
x1,1
x1,2
x1,1
x7,1
x6,1
x7,1
x6,1
xk2,2
xk3,2
xk3,2
xk2,2
x4,1
x5,1
x4,1
x5,1
x11,1
x10,1
x11,1
x10,1
x4i,1
x4i2,2 x4i1,2
x10,2
x11,2
x4i2,2 x10,2
x9,2
x8,2
x9,2
x8,2
x4i3,1
x4i1,1 x4i2,1
x4i1,1 x4i,1
xk2,1
x6,2
x7,2
x6,2
x7,2
x3,2
x3,1
x3,2
x3,1
xk4,1 xk3,1
xk5,1 xk2,1
xk5,1
x2,2
x2,1
x2,2
x2,1
xk,1
xk1,1
xk1,1
x4i2,1 x xk4,1 xk3,1 xk,1 4i1,1
x4i1,2 x11,2
x4i3,2 x4i,2
x4i1,2
x4i,2
x8,1
x9,1
x8,1
x9,1
k 4m 3
k 4m 1
k 4m 3
k 4m 1
12: 33
x1,2
xk3,1 xk4,2
xk,2
x4i1,2 x11,2
25/7/2008
(e)
(d)
xk1,2 xk2,2 xk5,2 x4i,2
ch002.tex Page 33
Applications on Graph Isomorphisms 33
x2,1
x2,2
xk3,2
xk,2
FIGURE 2.10
xk3,1
x4i,2
x4i,1
x4i1,2
x4i1,2
x12,2
x12,1
x11,2
x11,1
x3,1
x3,2
x3,1
x3,2
x4i1,1
x12,2
x4i1,1 x12,1
x4,1
x4,2
(continued)
xk4,2
xk4,1
xk2,2 x4i,2
xk,1
xk1,2
x5,1
x5,2
x4,1
x4,2
x8,1
x8,2
x11,2
x7,2
x7,1
x8,2
x9,2
x8,2
x9,2
x11,1
x8,2
x8,1
x7,2
x6,2
x7,2
x6,2
x3,1
x4,1
x7,2
x3,2
x7,1
x3,2
x4,2
x2,2
x1,2
x2,2
x1,2
x2,1
x1,1
x2,1
x1,1
x5,1
x5,2
x5,1
x5,2
x6,1
x6,2
x6,1
x6,2
x9,1
x9,2
xk,1
xk,2
x4i,2
x4i3,2 xk3,2
xk1,2 xk1,1
x4,2
xk3,1
x4i,1
x9,1
x9,2
x10,1
x10,2
x10,1
x10,2
x13,1
x13,2
x13,1
x13,2
x14,1
x14,2
xk3,1 x4i3,1 x4i,1
x4i2,2
x8,1
x9,1
x8,1
x9,1
x14,1
x14,2
x4i1,1
x4i1,2
x4i1,1 x4i2,1
x4i1,2
x11,1
x10,1
x4i1,1 x11,1
x4i1,1 x4i2,1 x10,1
xk2,1 x4i2,1 x4i1,1
xk2,2 xk1,2 xk1,1 xk2,1
xk,1
x4i1,2 x4i2,2 xk2,2
x4i1,2 x4i,2
x4i2,2 x4i1,2 xk3,2 xk,2
x3,1
x4,1
x11,2
x10,2
x11,2
x10,2
x4i2,1 xk2,1
x4i2,2 xk2,2
xk4,1 xk3,1
xk4,2 xk3,2
x7,1
x6,1
x7,1
x6,1
k 4m 1
xk1,1
k 4m 2
xk1,2
xk,1
xk,2
k 4m 3
k 4m 1
34
xk2,1 x4i,1
x1,1
x1,2
x5,1
x5,2
12: 33
xk1,1
x2,1
x2,2
x1,1
25/7/2008
(g)
(f)
x1,2
ch002.tex Page 34
Graph Theory and Interconnection Networks
ch002.tex
25/7/2008
12: 33
Page 35
Applications on Graph Isomorphisms
(a)
(b)
(d)
35
(c)
(e)
FIGURE 2.11 (a) The graph pair (G∗1 , G1 ), (b) the graph pair (G∗2 , G2 ), (c) the graph G1 (d) the graph (G∗1 − E1 ) · (G∗2 − E2 ), and (e) the graph (G∗1 , G1 ) ⊕ (G∗2 , G2 ).
THEOREM 2.9 (G∗1 , G1 ) ⊗ (G∗2 , G2 ) = (G∗2 , G2 ) ⊗ (G∗1 , G1 ); (G∗2 , G2 )) ⊗ (G∗3 , G3 ) = (G∗1 , G1 ) ⊗ ((G∗2 , G2 ) ⊗ (G∗3 , G3 )).
× G2 ,
and ((G∗1 , G1 ) ⊗
Recursively, we define (G∗1 , G1 ) ⊗ (G∗2 , G2 ) ⊗ · · · ⊗ (G∗n , Gn ) as ((G∗1 , G1 ) ⊗ (G∗2 , G2 ) ⊗ · · · ⊗ (G∗n−1 , Gn−1 )) ⊗ (G∗n , Gn ). Again, we define (G∗1 , G1 ) ⊕ (G∗2 , G2 ) ⊕ · · · ⊕ (G∗n , Gn ) as ((G∗1 , G1 ) ⊗ (G∗2 , G2 ) ⊗ · · · ⊗ (G∗n−1 , Gn−1 )) ⊕ (G∗n , Gn ). We have the following corollary. COROLLARY 2.3
Let π be any permutation on the set {1, 2, . . . , n}. We have
1. (G∗1 , G1 ) ⊗ (G∗2 , G2 ) ⊗ · · · ⊗ (G∗n , Gn ) = (G∗π(1) , Gπ(1) ) ⊗ (G∗π(2) , Gπ(2) ) ⊗ · · · ⊗ (G∗π(n) , Gπ(n) ) 2. (G∗1 , G1 ) ⊕ (G∗2 , G2 ) ⊕ · · · ⊕ (G∗n , Gn ) = (G∗π(1) , Gπ(1) ) ⊕ (G∗π(2) , Gπ(2) ) ⊕ · · · ⊕ (G∗π(n) , Gπ(n) ) For 1 ≤ i ≤ n, the ith projection of V1 × V2 × · · · × Vn is defined as the function pi : V1 × V2 × · · · × Vn → Vi given by pi ((x1 , x2 , . . . , xn )) = xi where xj ∈ Vj for 1 ≤ j ≤ n. Assume that G∗i is a 1-EFT(Gi ) graph for i = 1, 2. It is easy to verify that G∗1 × G∗2 is a 1-EFT(G1 × G2 ) graph. However, G∗1 × G∗2 may contain many more edges than that of optimal 1-EFT(G1 × G2 ). For example, let G1 = C6 and G2 = C4 . The graphs G∗1 shown in Figure 2.11a and G∗2 shown in Figure 2.11b are 1-EFT(G1 ) and 1-EFT(G2 ), respectively. Then the graph G∗1 × G∗2 is 1-EFT(G1 × G2 ). It can be verified that the graph (G∗1 , G1 ) ⊕ (G∗2 , G2 ) in Figure 2.11e is also 1-EFT(G1 × G2 ). Note that the
ch002.tex
25/7/2008
12: 33
Page 36
36
Graph Theory and Interconnection Networks
number of edges in (G∗1 , G1 ) ⊕ (G∗2 , G2 ) is less than that in G∗1 × G∗2 . Hence G∗1 × G∗2 is not an optimal 1-EFT(G1 × G2 ) graph. Let K2 be the complete graph on two vertices z1 and z2 . We refer to C2 as 2 K2 . Obviously, C2 is 1-EFT(K2 ). Assume that G = (V (G), E(G)) is a graph with V (G) = {x1 , x2 , . . . , xn }, and G∗ = (V , E ∗ ) is a spanning supergraph of G. Then G × K2 is a spanning subgraph of (G∗ , G) ⊕ (C2 , K2 ). Any edge in G × K2 is of the form either ((xi , z1 ), (xi , z2 )) for some xi ∈ V (G) or ((xi , zk ), (xj , zk )) for some (xi , xj ) ∈ E(G) and k = 1, 2. Let X be a set of edges given by X = {((xi , z1 ), (xi , z2 )) | for every xi ∈ V (G)}. For an edge e = (xi , yj ) in G, let Ye = {((xi , z1 ), (xj , z1 )), ((xi , z2 ), (xj , z2 ))}. The graph G∗ is said to be faithful or a faithful graph with respect to G, denoted by FG(G), if it satisfies the following conditions: 1. There exists a function σ from V (G) into itself such that the function h : V (G × K2 ) → V (G × K2 ) given by h((xi , z1 )) = (xi , z1 ) and h((xi , z2 )) = (σ(xi ), z2 ) induces an isomorphism from G × K2 into a subgraph of (G∗ , G) ⊕ (C2 , K2 ) − X. 2. For any edge e = (xi , xj ) in G, there exists an isomorphism fe from G × K2 into a subgraph of ((G∗ , G) ⊕ (C2 , K2 )) − Ye satisfying p1 ( fe ((xi , z1 ))) = p1 ( fe ((xi , z2 ))) for every xi ∈ V (G) where p1 is the first projection of the specified vertex. REMARK: Suppose that function σ satisfies condition 1. Then σ is an automorphism on G. We call such σ an inversion of G∗ . Let Pn be the path graph of n vertices with V (Pn ) = {x0 , x1 , . . . , xn−1 } and E(Pn ) = {(xi , xi+1 ) | 0 ≤ i ≤ n − 2}. We consider aspanning supergraph Pn∗ of Pn n ∗ defined by E(Pn ) = E(Pn ) ∪ {(xi , xn−i−1 ) | 0 ≤ i ≤ 2 − 1}. We illustrate P4∗ and (P4∗ , P4 ) ⊕ (C2 , K2 ) in Figure 2.12. Let σ be a function from V (Pn ) into V (Pn ) defined by σ(xi ) = xn−i+1 for every i. It can be easily verified that σ satisfies condition (1). We use (P5∗ , P5 ) ⊕ (C2 , K2 ) for illustration. Figures 2.13a and 2.13b show P5∗ and (P5∗ , P5 ) ⊕ (C2 , K2 ). In Figure 2.13c, we illustrate (P5∗ , P5 ) ⊕ (C2 , K2 ), where the vertices are labeled according to the function h, and the the graph isomorphic to P5 × K2 is shown by thick lines. Let e = (xi , xi+1 ) be an edge of Pn . Let fe be the function defined by fe ((xj , zk )) = (xn−i+j−1 , zk ) for 1 ≤ j ≤ i and fe ((xj , zk )) = (xj−i−1 , z3−k ) for i < j ≤ n.
x0
x1
x2
(x0,z2)
(x1,z2)
(x2,z2)
(x3,z2)
(x0,z1)
(x1,z1)
(x2,z1)
(x3,z1)
x3
(a)
FIGURE 2.12 (a) The graph
(b)
P4∗
and (b) the graph
(P4∗ , P4 ) ⊕ (C2 , K2 ).
ch002.tex
25/7/2008
12: 33
Page 37
Applications on Graph Isomorphisms
x0
x1
x2
x3
37 (x0,z2) (x1,z2)
(x2,z2)
(x3,z2)
(x4,z2)
(x0,z1) (x1,z1)
(x2,z1)
(x3,z1)
(x4,z1)
x4
(a)
(b)
(x4,z2) (x3,z2)
(x2,z2)
(x1,z2)
(x0,z1)
(x4,z2) (x3,z2)
(x2,z2)
(x1,z2)
(x0,z2)
(x0,z1) (x1,z1)
(x2,z1)
(x3,z1)
(x4,z1)
(x0,z1) (x1,z1)
(x2,z2)
(x3,z1)
(x4,z1)
(c)
(d)
P5∗ ,
(P5∗ , P5 ) ⊕ (C2 , K2 ),
FIGURE 2.13 (a) The graph (b) the graph (c) the function h satisfies condition 1, and (d) the function fe satisfies condition 2 where e = (x1 , x2 ).
It is observed that the function fe is an isomorphism from Pn × K2 into a subgraph of ((Pn∗ , Pn ) ⊕ (C2 , K2 )) − Ye such that p1 ( f ((xi , z1 ))) = p1 ( f ((xi , z2 ))) for every xi ∈ V (Pn ). Thus, the function fe satisfies condition 2. In Figure 2.13d, we illustrate the case of n = 5 and e = (x1 , x2 ) where the vertices are labeled according to the function fe , and the dark lines represent the graph isomorphic to P5 × K2 . Hence, Pn∗ is FG(Pn ), which is stated in the following lemma. LEMMA 2.2 Pn∗ is FG(Pn ). Let us consider the example illustrated in Figure 2.13d. Identifying fe (xi , z1 ) and fe (xi , z2 ) specified in condition 2, we obtain a graph that can tolerate fault on edge (x1 , x2 ). It is not surprising that the faithful graph Pn∗ is 1-EFT(Pn ). To generalize this result, let G be an arbitrary graph, and G∗ be FG(G). Then (G∗ , G) ⊕ (C2 , K2 ) is 1-EFT(G × K2 ). Obviously, the number of edges in (G∗ , G) ⊕ (C2 , K2 ) − X is at most |E(G × K2 )| + 2(|E(G∗ )| − |E(G)|) − |V (G)|. Because the function h is an isomorphism from G × K2 into a subgraph of (G∗ , G) ⊕ (C2 , K2 ) − X, it follows that 2(|E(G∗ )| − |E(G)|) − |V (G)| ≥ 0, that is, |E(G∗ )| − |E(G)| ≥ |V (G)| . Let fe 2 be a function satisfying condition 2. The function ge : V (G) → V (G) defined by ge (xi ) = p1 (fe ((xi , z1 )) is called an e-rotation of G∗ . Obviously, ge induces an isomorphism from G into G∗ − e. As a summary, we have the following lemma. LEMMA 2.3 Any faithful graph G∗ with respect to G is 1-EFT(G). Moreover, |V (G)| ∗ |E(G )| − |E(G)| ≥ holds for any faithful graph G∗ with respect to G. 2
ch002.tex
25/7/2008
12: 33
Page 38
38
Graph Theory and Interconnection Networks
Because any faithful graph G∗ with respect to G is also 1-EFT(G), we call G∗ a faithful 1-EFT(G). Let G∗ be the spanning supergraph of G with E(G∗ ) = E(2 G) {(xi , xi ) | xi ∈ V (G)}. Let σ be the identity function defined on V (G), and fe be the identity function defined on V (G × K2 ) for every e ∈ E(G). With these functions, it is easy to verify that G∗ is a faithful graph with respect to G. We have the following lemma. LEMMA 2.4 Any graph has a faithful supergraph. The question whether any 1-EFT(G) is FG(G) naturally arises. Let us consider G to be the n-path graph Pn . The n-cycle Cn is a spanning supergraph of Pn defined by E(Cn ) = E(Pn ) ∪ {(x1 , xn )}. Harary and Hayes [145] point out that Cn is an optimal 1-EFT(Pn ) graph. By Lemma 2.3, Cn is not FG(Pn ) if n ≥ 3. Therefore, Cn is FG(Pn ) if and only if n = 2. Thus any 1-EFT(G) graph is not necessarily FG(G). Assume that n is a positive even integer. Let us construct a supergraph Cn∗ of Cn as follows: E(Cn∗ ) = E(Cn ) ∪ {(xi , xi+ n2 ) | 1 ≤ i ≤ n/2}. LEMMA 2.5 Assume that n is a positive even integer n. Cn∗ is FG(Cn ) if and only if n ≥ 4. Proof: Note that C2 = 2 K2 and C2∗ = 3 K2 . Thus, there are two parallel edges in C2 × K2 , but there is no parallel edge in (C2∗ , C2 ) ⊕ (C2 , K2 ) − Ye for any e ∈ E(C2 ). Hence, there is no fe that satisfies condition (2). Thus, C2∗ is not FG(C2 ). Now, we discuss the case n ≥ 4. Let σ be the function from V (Cn ) into V (Cn ) defined by σ(xi ) = xi+ n2 (mod n) for every i. It can be observed that σ satisfies condition 1. (See Figure 2.14a for the case n = 4; the vertices are labeled according to the function h.) Choose an arbitrary edge e from Cn ; say, e = (x n2 , x n2 + 1 ). Consider the function fe : Cn × K2 → (Cn∗ , Cn ) ⊕ (C2 , K2 ) given by fe ((xj , zk )) = (xj , zk ) if 1 ≤ j ≤ n/2, and fe ((xj , zk )) = (x 3n −j−1 , z3−k ) otherwise. It follows that fe satisfies con2 dition 2. (See Figure 2.14b for the case n = 4 with e = (x2 , x3 ); the vertices are labeled according to fe .) Since (Cn∗ , Cn ) ⊕ (C2 , K2 ) is vertex-transitive, we can always find fe for every edge e ∈ E(Cn ) that satisfies condition 2. Hence, Cn∗ is FG(Cn ). THEOREM 2.10 Assume that G∗i is FG(Gi ) for i = 1, 2. The graph (G∗1 , G1 ) ⊕ (G∗2 , G2 ) is FG(G1 × G2 ). In other words, let W = {(G∗ , G) | G∗ is FG(G)}. Then W is closed under the operation ⊗.
(x0,z2) (x2,z2)
(x3,z2)
(x0,z2)
(x1,z2)
(x0,z2)
(x1,z1)
(x2,z1)
(x3,z1) (x0,z1)
(a)
(x3,z1)
(x1,z2)
(x3,z2)
(x1,z1)
(x2,z1) (x2,z2)
(b)
FIGURE 2.14 The graph (C4∗ , C4 ) ⊕ (C2 , K2 ). (a) The function h satisfies condition 1 and (b) the function fe satisfies condition 2, where e = (x1 , x2 ).
ch002.tex
25/7/2008
12: 33
Page 39
Applications on Graph Isomorphisms
39
Proof: Let V1 = {x1 , x2 , . . . , xm } and V2 = {y1 , y2 , . . . , yn }. Since G∗i is FG(Gi ), G∗i has an inversion σi for i = 1, 2. Let the function σ : V (G1 × G2 ) → V (G1 × G2 ) defined by σ((xr , ys )) = (σ1 (xr ), σ2 (ys )). Obviously, σ is a one-to-one mapping of V (G1 × G2 ). Since σi is an automorphism on Gi for i = 1, 2, it follows that (xi , xj ) ∈ E(G1 ) implies (σ1 (xi ), σ1 (xj )) ∈ E(G1 ) and that ( yk , yl ) ∈ E(G2 ) implies (σ2 ( yk ), σ2 ( yl )) ∈ E(G2 ). Suppose that ((xi , yk ), (xi , yl )) ∈ E(G1 × G2 ). It follows that (σ((xi , yk )), σ((xi , yl ))) ∈ E(G1 × G2 ). Similarly, we have (σ((xi , yk )), σ((xj , yk ))) ∈ E (G1 × G2 ) if ((xi , yk ), (xj , yk )) ∈ E(G1 × G2 ). Thus, σ is an automorphism on G1 × G2 and satisfies condition 1. Let e be an edge of G1 × G2 . Without loss of generality, we assume that e = ((xi , yj ), (xk , yj )) where e = (xi , xk ) is an edge of G1 . Let fe be a function from G1 × K2 into a subgraph of ((G∗1 , G1 ) ⊕ (C2 , K2 )) − Ye such that p1 ( fe ((xi , z1 ))) = p1 ( fe ((xi , z2 ))) for every xi ∈ V1 . We define fe : V1 × V2 × V (K2 ) → V1 × V2 × V (K2 ) as follows: fe ((xr , ys , zt )) = (xu , yv , zw ) where (xu , zw ) = fe (xr , zt ), and yv = ys if zw = zt and yv = σ2 ( ys ) otherwise. For every ys ∈ V2 , the image of fe for V1 × {ys } × V (K2 ) is either {(xu , yv , zw ) | (xu , zw ) = fe (xr , zt ), yv = ys ∈ V2 , and xr ∈ V1 , zt ∈ V (K2 ), zw = zt } or {(xu , yv , zw ) | (xu , zw ) = fe (xr , zt ), yv = σ2 (ys ), and xr ∈ V1 , zt ∈ V (K2 ), zw = zt } Since the function fe satisfies condition 2, fe induces an isomorphism from V1 × V (K2 ) into its image in both cases. For every (xr , zt ) ∈ V1 × V (K2 ) the image of fe for {xr } × V2 × {zt } is either {(xu , yv , zw ) | (xu , zw ) = fe (xr , zt ), yv = ys , and ys ∈ V2 , zw = zt }
or
{(xu , yv , zw ) | (xu , zw ) = fe (xr , zt ), yv = σ2 (ys ), and ys ∈ V2 , zw = zt } Since the function σ2 is an automorphism on V2 , fe induces an isomorphism from V2 into its image in both cases. From this discussion, fe induces an isomorphism from V1 × V2 × V (K2 ) into a subgraph of (G∗1 , G1 ) ⊕ (G∗2 , G2 ) ⊕ (C2 , K2 ) − {((xr , ys , z1 ), (xr , ys , z2 )) | xr ∈ V1 , ys ∈ V2 }. Furthermore, p1,2 ( fe ((xr , ys , z1 ))) = p1,2 ( fe ((xr , ys , z2 ))) where p1,2 (x, y, z) = (x, y). Hence, fe satisfies condition 2. Thus, (G∗1 , G1 ) ⊕ (G∗2 , G2 ) is FG(G1 × G2 ). COROLLARY 2.4 Assume that G∗i is a faithful graph of Gi for i = 1, 2. The graph (G∗1 , G1 ) ⊕ (G∗2 , G2 ) is 1-EFT(G1 × G2 ). Furthermore, eft1 (G1 × G2 ) ≤ 2(|E(G∗1 )| − |E(G1 )|)(|E(G∗2 )| − |E(G2 )|). Proof: By Theorem 2.10 and Lemma 2.3, (G∗1 , G1 ) ⊕ (G∗2 , G2 ) is 1-EFT(G1 × G2 ). Moreover, |E((G∗1 , G1 ) ⊕ (G∗2 , G2 ))| − |E(G1 × G2 )| = 2(|E(G∗1 ) − E(G1 )|)(|E(G∗2 )|− |E(G2 )|). The corollary is proved. COROLLARY 2.5 Assume that G∗i is FG(Gi ) for i = 1, 2, and e = (xi , xk ) is any edge of G1 . Let f : V(G1 × G2 ) → V (G1 × G2 ) be a function given by f((xr , ys )) = (xu , yv ) where xu = ge (xr ) (i.e., e -rotation of G∗1 ), and yv = ys if p2 ( fe ((xr , zt ))) = zt ,
ch002.tex
40
25/7/2008
12: 33
Page 40
Graph Theory and Interconnection Networks
and yv = σ2 (ys ) otherwise. Then the function f induces an isomorphism from G1 × G2 into a subgraph of (G∗1 , G1 ) ⊕ (G∗2 , G2 ) − e for any edge e = ((xi , yj ), (xk , yj )) with yj ∈ V (G2 ). COROLLARY 2.6 Assume that mi ≥ 4 is a positive even integer for all i. graph with respect to Then the graph C ∗ (m1 , m2 , . . . , mn ) is an optimal 1-EFT
C(m1 , m2 , . . . , mn ). Moreover, eft 1 (C(m1 , m2 , . . . , mn )) = 1/2 ni= 1 mi . It would be interesting to know eft1 (C(m1 , m2 , . . . , mn )) with some mi being odd integer.
2.5
k -EDGE FAULT-TOLERANT DESIGNS FOR HYPERCUBES
The hypercube Qn can be viewed as a vector space over the field with two elements 0 and 1. In this case, any vertex of Qn can be viewed as an n-dimensional binary vector. Let u = (u1 , u2 , . . . , un ) be a vertex in the hypercube Qn . The Hamming weight of u is the cardinality of {i | ui = 1}. Let u = (u1 , u2 , . . . , un ) and v = (v1 , v2 , . . . , vn ) be two vertices of Qn . The Hamming distance between u and v, denoted by h(u, v), is defined as the cardinality of {i | ui = vi }. An optimal 1-EFT(Qn ) graph G∗ has been proposed, which is given by adding to Qn the set of edges {(u, v) | h(u, v) = n}. This 1-EFT(Qn ) graph is called a folded hypercube in Ref. 96. Then the question whether k-EFT(Qn ) graphs for k ≥ 2 can be derived naturally arises. Yamada, Yamamoto, and Ueno [347] used a vector-space approach to develop k-EFT(Qn ) graphs for k ≥ 1. Assume that B is any m × n matrix over the Galois field GF(2) and R is a proper subset of {1, 2, . . . , m}. We use B(R) to denote the matrix obtained from B by deleting those rows with indices in R. Let k be any positive integer. Suppose that B is an m × n matrix such that the rank of B(R) is n for any |R| ≤ k. With this matrix B, we can build a graph GB = (Vn , EB ) where Vn = V (Qn ) and any vertex v ∈ Vn is joined with u if and only if u = v + r i where r i is the ith row vector of B. Obviously, the degree of any vertex v in GB is m. We call the edge joining v to v + r i be of class i. Assume that E is a subset of EB with |E | ≤ k. Let R = {i | e is an edge in E and e is of class i}. Then |R| ≤ k. Hence, the rank of B(R) is n. Therefore, we can choose n linearly independent rows from B(R). Then all the edges of classes in B(R) induce a graph isomorphic to Qn . Hence, GB is a k-EFT(Qn ). We call the corresponding graph GB a linear k-EFT(Qn ). Let EFTL (n, k) be the set of matrix B such that GB is a linear k-EFT(Qn ). Obviously, the matrix B ∈ EFTL (n, k) with the smallest number of rows will derive a linear k-EFT(Qn ) graph with the least number of edges among all linear k-EFT(Qn ) graph. Thus, we say a matrix B ∈ EFTL (n, k) with the smallest number of rows is an optimum linear k-EFT(Qn ) and we use eftL (n, k) to denote (m − n) where m is the number of rows in any optimum linear k-EFT(Qn ). The concept of linear k-EFT(Qn ) had already been used before the formulation proposed by Yamada et al. [347]. Bruck et al. [34] used this approach to construct 1-EFT(Qn ). Assume that B is a matrix in EFTL (n, k). Obviously, the rank of B is n. By I changing coordinates, we can transform B into IDn = d 1 , d 2 ,n. . . , d n . Shih and Batcher
ch002.tex
25/7/2008
12: 33
Page 41
Applications on Graph Isomorphisms
41
[284] proved that any such B in EFTL (n, k) satisfies the following two conditions: (1) w(d j ) ≥ k for every 1 ≤ j ≤ n; that is, the Hamming weight of each d i is at least k and (2) w(d i + d j ) ≥ k − 1 for every 1 ≤ i < j ≤ n; that is, the Hamming distance h(d i , d j ) between d i and d j is at least k − 1. Then they employed an ad hoc program to verify edge fault tolerance and thus generate optimal linear k-EFT graphs for k = 2, 3 and n ≤ 26. Sung et al. [293] show that these two conditions are actually the necessary and sufficient conditions for matrix B ∈ EFTL (n, k) with k = 2. They also show that eftL (n, 3) = eftL (n, 2) + 1 and present a construction scheme for optimal linear k-EFT(Qn ) for k = 2, 3. They also conjectured that eftL (n, 5) = eftL (n, 4) + 1. Ho et al. [153] extend the idea in Ref. 347 to present some necessary and sufficient conditions for matrix B in EFTL (n, k). With this result, Ho et al. [153] prove that eftL (n, k + 1) ≥ eftL (n, k) + 1 and eftL (n, k + 1) = eftL (n, k) + 1 if k is even. Assume that B is any m × n matrix and R is any proper subset of {1, 2, . . . , m}. Using column vectors, we can write B as [c1 , c2 , . . . , cn ] and B(R) as [cR1 , cR2 , . . . , cRn ]. Let h be a column or row vector. We use htr to denote the transpose of h. THEOREM 2.11 A matrix B is in EFTL (n, k) if and only if the Hamming weight of any column vector—that is, a summation of t different columns of B with 1 ≤ t ≤ n— is greater than k; that is, w(ci1 + ci2 + · · · + cit ) > k for any 1 ≤ i1 < i2 < · · · < it ≤ n and 1 ≤ t ≤ n. Proof: Assume that B is a matrix such that the Hamming weight of some column vector—that is, a summation of t different columns of B with 1 ≤ t ≤ n—is at most k. Then there exist some 1 ≤ i1 < i2 < · · · < it ≤ n and 1 ≤ t ≤ n satisfying w(ci1 + ci2 + · · · + cit ) ≤ k. Let h = (h1 , h2 , . . . , hm )tr = ci1 + ci2 + · · · + cit . Let R = {i | hi = 1}. Obviously, |R| = w(h) ≤ k and cRi1 + cRi2 + · · · + cRit = 0. Therefore, {cRi1 , cRi2 , . . . , cRit } is linearly dependent. Hence, the rank of B(R) is less than n. Therefore, B ∈ / EFTL (n, k). On the other hand, assume that B is a matrix such that the Hamming weight of any column vector—that is, a summation of t different columns of B with 1 ≤ t ≤ n—is greater than k. Let R be any subset of {1, 2, . . . , m} with |R| ≤ k. Thus, any nontrivial linear combination of at most n different columns of B(R) is not zero. Hence, the rank of B(R) is n. Therefore, B ∈ EFTL (n, k). THEOREM 2.12 eftL (n, k + 1) ≥ eftL (n, k) + 1. Moreover, eftL (n, k + 1) = eftL (n, k) + 1 if k is even. Proof: Assume that B∗ is a matrix in EFTL (n, k + 1). Let B be any matrix obtained by deleting any row from B∗ . Obviously, B is a matrix in EFTL (n, k). Hence, eftL (n, k + 1) ≥ eftL (n, k) + 1. Let k be an even integer. Assume that B = (bi, j ) is any m × n matrix in EFTL (n, k). Form a new matrix B = (bij ) from B by adding a new row (bm+1,1 , bm+1,2 , . . . , bm+1,n ) m where bm+1, j = i=1 bi, j . In other words, the new row is the even parity check row of B. Thus, the Hamming weight of any column in B is even. Therefore, the Hamming weight of any linear combination of column vectors of B is even. Let
ch002.tex
25/7/2008
12: 33
Page 42
42
Graph Theory and Interconnection Networks
h = (h1 , h2 , . . . , hm , hm+1 )tr be a summation of t columns of B with 1 ≤ t ≤ n. We set h = (h1 , h2 , . . . , hm )tr . Obviously, w(h) ≥ w(h ). By Theorem 2.11, w(h ) > k. Since both w(h) and k are even integers, w(h) > k + 1. Thus, B ∈ EFTL (n, k + 1) follows from Theorem 2.11. Therefore, eftL (n, k + 1) = eftL (n, k) + 1 if k is even. Since the rank of any matrix is an invariant on changing coordinates, we can find an optimal linear k-EFT(Qn ) among all the matrices of the form IDn . THEOREM 2.13 Let B =
In D
=
In d1 , d2 , . . . , dn
⎡ r1 ⎤ r2
= [c1 , c2 , . . . , cn ] = ⎣ .. ⎦. Then B is . rm
a matrix in EFTL (n, k) if and only if the Hamming weight of any column vector that is a summation of t different columns of D with 1 ≤ t ≤ k is greater than k − t. Proof: It is observed that w(ci1 + ci2 + · · · + cij ) = w(d i1 + d i2 + · · · + d ij ) + j for any 1 ≤ j ≤ n and 1 ≤ i1 < i2 < · · · < ij ≤ n. Suppose that the Hamming weight of some column vector—that is, a summation of t different columns of D with 1 ≤ t ≤ k—is at most k − t. Then there exist some 1 ≤ i1 < i2 < · · · < it ≤ n and 1 ≤ t ≤ k satisfying w(ci1 + ci2 + · · · + cij ) ≤ k. By Theorem 2.11, B ∈ / EFTL (n, k). On the other hand, assume that the Hamming weight of any column vector—that is, a summation of t different columns of D with 1 ≤ t ≤ k—is greater than k − t. Assume that R is any subset of {1, 2, . . . , m} with |R| ≤ k. Let IR = {t ∈ R | t ≤ n} and |IR | = s. Then s ≤ min{k, n}. Let R∗ = R − IR . Assume that s = 0. Then r 1 , r 2 , . . . , r n form n independent rows in B(R). Thus, the rank of B(R) is n. Assume that 0 < s ≤ n. Let B∗ be the submatrix of B formed by those columns with their indices not in IR . By our assumption, any column vector that is a summation of t different columns of B with 1 ≤ t ≤ s is greater than k. Therefore, any column vector that is a summation of t different columns of B(R) with 1 ≤ t ≤ s and with indices not in IR is greater than 0. Thus, any nontrivial linear combination of at most s different columns of B∗ (R∗ ) is not a zero vector. Therefore, the rank of B(R∗ ) is s. Note that the row rank of any matrix equals its column rank. We can find s independent rows, r i1 , r i2 , . . . , r is , that span all the row vectors of B∗ (R∗ ). Obviously, the rows of {r i1 , r i2 , . . . , r is } ∪ {r t | t ∈ / R and 1 ≤ t ≤ n} in B(R) forms n independent row vectors. Hence, the rank of B(R) is n. Therefore, B is in EFTL (n, k). Obviously, In is an optimal linear 0-EFT(Qn ). With Theorem 2.12, we obtain an optimal linear 1-EFT(Qn ). By Theorem 2.13, any Bm×n in EFTL (n, 2) of the n m − n n form IDn satisfies m − + 3 + · · · + mm − 2 − n ≥ n. Assume that m and n satisfy this inequality. We can choose any n different 1 × (m − n) columns with Hamming weights of at least 2 to form the matrix D. Again, by Theorem 2.13, the matrix B is in EFTL (n, 2). Therefore, eftL (n, 2) is the smallest integer r that satisfies 2r + 3r + · · · + rr ≥ n. By Theorem 2.12, we obtain an optimal linear 3-EFT(Qn ). However, we have difficulty in constructing the optimal linear k-EFT(Qn ) with k ≥ 4.
ch003.tex
19/7/2008
3 3.1
17: 46
Page 43
Distance and Diameter
INTRODUCTION
Let u and v be two vertices of a graph G. Suppose that there exists a path from u to v in G. The distance from u to v, written dG (u, v) or simply d(u, v), is the least length among all paths from u to v. Suppose that there exists no path from u to v in G. Then d(u, v) = ∞. THEOREM 3.1 Assume that G is a graph. Then 1. d(u, v) ≥ 0 and d(u, v) = 0 if and only if u = v 2. d(u, v) = d(v, u) for all u, v ∈ V (G) 3. d(u, v) ≤ d(u, w) + d(w, v) for all u, v, w ∈ V (G) (the triangle inequality) Proof: The proof of (1) and (2) are obvious. We need to prove the third statement. Let u, v, and w be vertices of G. Let P be the shortest path from u to w and Q the shortest path from w to v in G. Then P followed by Q is a path W from u to v. Thus, d(u, v) ≤ d(u, w) + d(w, v). The eccentricity of a vertex u, written (u), is the maximum of its distances to other vertices; that is, (u) = max{d(x, u) | x ∈ V (G) and x = u}. In the graph G, the diameter D(G) and the radius r(G) are the maximum and minimum of the vertex eccentricities, respectively. In other words, D(G) = max{(u) | u ∈ V (G)} and r(G) = min{(u) | u ∈ V (G)}. The center of G is the subgraph of G induced by the vertices of minimum eccentricity. COROLLARY 3.1 r(G) ≤ D(G) ≤ 2r(G) for every graph G. Proof: By the definitions of radius and diameter, r(G) ≤ D(G). To prove D(G) ≤ 2r(G), let x and y be two vertices of G such that d(x, y) = D(G). Let z be any vertex of G such that (z) = r(G). By the triangle inequality, we have D(G) = d(x, y) ≤ d(x, z) + d(z, y) ≤ 2r(G). The distance of any two vertices of a graph (or digraph) can be computed by the breadth-first search algorithm that is discussed in Chapter 4. With this method, we can determine the radius and the diameter of a graph. However, we can more easily determine these parameters in some particular graphs.
3.2
DIAMETER FOR SOME INTERCONNECTION NETWORKS
Network topology is a crucial factor for an interconnection network, as it determines the performance of the network. Many interconnection network topologies have been proposed for the purpose of connecting hundreds or thousands of processing elements 43
ch003.tex
44
19/7/2008
17: 46
Page 44
Graph Theory and Interconnection Networks
[220]. Network topology is always represented by a graph, where vertices represent processors and edges represent links between processors. The diameter is an important parameter for interconnection networks. In this section, we discuss about the diameter of some interconnection networks. Among all network topologies, the binary hypercube, Qn , is one of the most popular one. Let u = un−1 un−2 . . . u1 u0 and v = vn−1 vn−2 . . . v1 v0 be two n-bit strings. Let H(u, v) denote the indices set {i | ui = vi }. The Hamming distance between u and v, h(u, v), is |H(u, v)|. For example, h(11000, 11110) = 2. The n-dimensional hypercube consists of all n-bit strings as its vertices, and two vertices u and v are adjacent if and only if h(u, v) = 1. (u, v) is an edge in E(Qn ) of dimension i if the ith bit of u is different from that of v. It is easy to check whether dQn (u, v) = h(u, v). Actually, we can easily find a path of length h(u, v) by applying the following algorithm: route u to v by changing the rightmost differing bit iteratively. For example, 11000, 11010, 11110 forms a path of length 2 joining 11000 to 11110. Hence, we can easily conclude that D(Qn ) = n. However, Qn does not make the best use of its hardware in the following sense: given N = 2n vertices and nN/2 links, it is possible to fashion networks with smaller diameters than the hypercube’s diameter n. There are many variants proposed to lower the diameter, such as the twisted cube TQn [1,146], the crossed cube CQn [92–94], and the Möbius cube MQn [76]. The diameters of TQn , CQn , and MQn are around n/2. In the following discussion, we describe the twisted cubes. The n-dimensional twisted cube, denoted by TQn , is a variant of an n-dimensional hypercube Qn . TQn has the same number of vertices and edges as Qn . We restrict the following discussion on TQn to the cases where n is odd. Assume that n = 2m + 1. To form the twisted cube, we remove some links from the hypercube and replace them with links that span two dimensions in such a manner that the total number of links (nN/2) is conserved. To be precise, let u = un−1 un−2 . . . u1 u0 be any vertex in TQn . We define the parity function Pi (u) = ui ⊕ ui−1 ⊕ · · · ⊕ u0 , where ⊕ is the exclusive-or operation. Suppose that P2j−2 (u) = 0 for some 1 ≤ j ≤ m. We divert the edge on the (2j − 1)th dimension to vertex v such that v2j v2j−1 = u2j u2j−1 and vi = ui for i = 2j or 2j − 1. Such diverted edges are called twisted edges. TQ3 and TQ5 are shown Figure 3.1. We may formally define the term of twisted cube recursively as follows: a twisted 1-cube, TQ1 , is a complete graph with two vertices, 0 and 1. Assume that n is an odd integer and n ≥ 3. We decompose vertices of TQn into four sets S 0,0 , S 0,1 , S 1,0 and S 1,1 where S i, j consists of those vertices u with un−1 = i and un−2 = j. For each (i, j) ∈ {(0, 0), (0, 1), (1, 0), (1, 1)}, the induced subgraph of S i,j in TQn is isomorphic to TQn−2 . Edges that connect these four subtwisted cubes are described as follows: any vertex un−1 un−2 . . . u1 u0 with Pn−3 (u) = 0 is connected to un−1 un−2 un−3 . . . u0 and un−1 un−2 un−3 . . . u0 ; and un−1 un−2 un−3 . . . u0 and un−1 un−2 un−3 . . . u0 , if Pn−3 (u) = 1. We define the 0th double bit of vertex address u as the single bit u0 , and the jth double bit as u2j u2j−1 . Let u and v be any two vertices of TQn . The double Hamming distance of u and v, denoted by h2 (u, v), is the number of different double bits between u and v. Obviously, dTQn (u, v) ≥ h2 (u, v). We can find the shortest path between any two vertices using the algorithm proposed in Ref. 1. Let u and v be two vertices of TQn . Let z = u. The basic strategy of
ch003.tex
19/7/2008
17: 46
Page 45
Distance and Diameter
011
111
010
110
000
100
001
101 TQ3
FIGURE 3.1
01000 01001 01011 01010 01110 01111 01101 01100 00000 00001 00011 00010 00110 00111 00101 00100
45
11000 11001 11011 11010 11110 TQ5 11111 11101 11100 10000 10001 10011 10010 10110 10111 10101 10100
TQ3 and TQ5 .
the algorithm is to find recursively a neighborhood w of z that reduces h2 (w, v). More precisely, the strategy is described as follows: ALGORITHM H 1. If z = v, then the path is determined. 2. Assume that there exist neighbors w of z such that h2 (w, v) = h2 (z, v) − 1. Let w be such w that differs from z with the largest double bit. We reset z to be w . 3. Assume that all the neighbors w of z satisfy h2 (w, v) ≥ h2 (z, v). Let j be the smallest index of double bits that z differs from v. Choose w to be the neighbor of z that differs from z in the 2jth bit. We reset z to be w . We use PH (u, v) to denote the path joining from u to v obtained by the previous algorithm. Following are two examples.
Example 3.1 Find PH (000100101, 111000010) and PH (000100101, 111000011). We list the paths move by move: P H (000100101, 111000010)
000100101 → 001000101 → 001000100 → 111000100 → 111000010
P H (000100101, 111000011)
000100101 → 001000101 → 001000001 → 111000001 → 111000011
ch003.tex
19/7/2008
17: 46
Page 46
46
Graph Theory and Interconnection Networks
Note that the rightmost differing double bit is selected in step 3. The resulting parity change guarantees that all subsequent routing for the message will be by step 2 until the destination is reached. Hence, step 3 is executed at most once for a given message. With this routing algorithm, we have the following theorems. THEOREM 3.2
The diameter of the twisted cube TQn is
n+1 2
.
Next, we briefly give the definitions of crossed cubes and Möbius cubes. Two 2-digit binary strings x = x1 x0 and y = y1 y0 are pair-related, denoted by x ∼ y, if and only if (x, y) ∈ {(00, 00), (10, 10), (01, 11), (11, 01)}. The n-dimensional crossed cube CQn , proposed in Ref. 93, is a graph CQn = (V , E) that is recursively constructed as follows: CQ1 is a complete graph with two vertices labeled by 0 and 1. 0 1 . CQn consists of two identical (n − 1)-dimension crossed cubes, CQn−1 and CQn−1 0 1 The vertex u = 0un−2 . . . u0 ∈ V (CQn−1 ) and vertex v = 1vn−2 . . . v0 ∈ V (CQn−1 ) are adjacent in CQn if and only if (1) un−2 = vn−2 , if n is even; and (2) for 0 ≤ i < n −2 1 , u2i+1 u2i ∼ v2i+1 v2i . The crossed cubes CQ3 and CQ4 are illustrated in Figure 3.2. The n-dimensional Möbius cube MQn , proposed in Ref. 76, has 2n vertices. Each vertex is labeled by a unique n-bit binary string as its address and has connections to n other distinct vertices. The vertex with address x = xn−1 xn−2 . . . x0 connects to n other vertices yi , 0 ≤ i ≤ n − 1, where the address of yi satisfies (1) yi = (xn−1 . . . xi+1 xi . . . x0 ), if xi+1 = 0; or (2) yi = (xn−1 . . . xi+1 xi . . . x0 ) if xi+1 = 1. From the previous definition, x connects to yi by complementing the bit xi if xi+1 = 0, or by complementing all bits of xi . . . x0 if xi+1 = 1. For the connection between x and yn−1 , we can assume that the unspecified xn is either 0 or 1, which gives slightly different topologies. If xn is 0, we call the network generated the 0-Möbius cube, denoted by 0-MQn ; and if xn is 1, we call the network generated the 1-Möbius
010
011
111
110
000
001
101
100
0100 0110
1110 1100
0101 0111
1111 1101
0001 0011
1011 1001
0000 0010
1010 1000
CQ3
CQ4
FIGURE 3.2
CQ3 and CQ4 .
ch003.tex
19/7/2008
17: 46
Page 47
Distance and Diameter
47
0000
0001 0110
0100
1001
1000
0-MQ4 1100
0101
1110
0111 0010 0011
1111
1101
1010 0001
0000 0110 1-MQ4
0100
1110
1111
1011
0101 1001
0111 0010
1000
0011 1101
FIGURE 3.3
1011
1010 1100
0-MQ4 and 1-MQ4 .
cube, denoted by 1-MQn . The Möbius cubes 0-MQ4 and 1-MQ4 are illustrated in Figure 3.3.
3.3
SHUFFLE-CUBES
Li et al. [224] present a variant of hypercubes called the shuffle-cube, SQn . SQn is obtained from Qn by changing some links of Qn . It has a diameter of around n/4. Let u = un−1 un−2 . . . u1 u0 be an n-bit string. We use pj (u) to denote the j-prefix of u; that is, pj (u) = un−1 un−2 . . . un−j , and si (u) the i-suffix of u; that is, si (u) = ui−1 ui−2 . . . u1 u0 . Let u and v be two vertices. Let ⊕ denote an addition with modulo 2. We define the following four sets: V00 = {1111, 0001, 0010, 0011}, V01 = {0100, 0101, 0110, 0111}, V10 = {1000, 1001, 1010, 1011}, and V11 = {1100, 1101, 1110, 1111}. For ease of exposition, we limit our discussion to n = 4k + 2 for k ≥ 0. We recursively defined the n-dimensional shuffle-cube, SQn , as follows: SQ2 is i1 i2 i3 i4 Q2 . For n ≥ 3, SQn consists of 16 subcubes SQn−4 , where ij ∈ {0, 1} for 1 ≤ j ≤ 4 i1 i2 i3 i4 and p4 (u) = i1 i2 i3 i4 for all vertices u in SQn−4 . The vertices u = un−1 un−2 . . . u1 u0
ch003.tex
19/7/2008
17: 46
Page 48
48
Graph Theory and Interconnection Networks
0011
0111
1011
1111
0010
0110
1010
1110
0001
0101
1001
1101
10 11 0000
0100
1000
1100
00
FIGURE 3.4
01
SQ6 .
and v = vn−1 vn−2 . . . v1 v0 in different subcubes of dimension (n − 4) are adjacent in SQn if and only if 1. sn−4 (u) = sn−4 (v) 2. p4 (u) ⊕ p4 (v) ∈ Vs2 (u) For example, the vertex 111101 in SQ6 is linked to the following vertices in different subcubes of dimension 2: 101101, 101001, 100101, and 100001. We illustrate SQ6 in Figure 3.4 by showing only edges incident at vertices in SQ20000 and omitting the others. It is easy to see that the degree of each vertex of SQn is n and the number of vertices (edges, respectively) is the same as that of Qn . j j For 1 ≤ j ≤ k, the jth 4-bit of u, denoted by u4 , is defined as u4 = 0 0 u4j+1 u4j u4j−1 u4j−2 . In particular, the 0th 4-bit of u, u4 , is defined as u4 = u1 u0 . Thus, j j u4 = v4 if and only if u4j+i = v4j+i for −2 ≥ i ≥ 1. Similar to the Hamming distance, we define the 4-bit Hamming distance between u and v, denoted by h4 (u, v), as the j j j j j number of 4-bits u4 with 0 ≤ j ≤ k such that u4 = v4 , that is, h4 (u, v) = |{ j | u4 = v4 for 0 ≤ j ≤ k}|. With the notion of h4 (u, v), we can redefine SQn as follows: the vertex u and the vertex v are adjacent if and only if one of the following conditions holds: j∗
j∗
j
j
1. u4 ⊕ v4 ∈ Vu0 for exactly one j∗ satisfying 1 ≤ j∗ ≤ k and u4 = v4 for all 4 0 ≤ j = j∗ ≤ k j j 2. u40 ⊕ v40 ∈ {01, 10} and u4 = v4 for all 1 ≤ j ≤ k For example, the ten neighbors of 1011000010 in SQ10 are given by 0011000010, 0010000010, 0001000010, 0000000010, 1011100010, 1011100110, 1011101010, 1011101110, 1011000000, and 1011000011. In other words, the vertex u is adjacent to the vertex v only if h4 (u, v) = 1. However, the converse is not necessarily true.
ch003.tex
19/7/2008
17: 46
Page 49
Distance and Diameter
49
For example, u = 0000000000 is not adjacent to v = 0000000011, though h4 (u, v) = 1. Thus, d(u, v) ≥ h4 (u, v) for any two vertices u, v of SQn . LEMMA 3.1 Assume that n = 4k + 2 with k ≥ 4. Then D(SQn ) ≥
n 4
+ 3.
Proof: Let P be any path of SQn from u to v. We can view P as a sequence of four bits changing from u to v. Assume that u = un−1 un−2 . . . u1 u0 = u4k u4k−1 . . . u40 with j u40 = 00, u41 = 1100, u42 = 1000, u43 = 0100, and u4 = 0001 if 4 ≤ j ≤ k. Assume that v = vn−1 vn−2 . . . v1 v0 with vj = 0 for 0 ≤ j < n. Note that the four bits 0001, 0100, 1000, and 1100 are only in V00 , V01 , V10 , and V11 , respectively. We can change any 4-bit 0001, 0100, 1000, or 1100 into 0000 in one step, only if the 0th 4-bit is 00, 01, 10, or 11, respectively. Therefore, d(u, v) ≥ n4 + 3. Moreover, D(SQn ) ≥ n4 + 3. Next, we propose a routing algorithm on SQn . Assume that u and v are two vertices j j j of SQn . We use h4∗ (u, v) to denote the number of u4 for 1 ≤ j ≤ k such that u4 = v4 .
3.3.1
ROUTE1(U, V)
1. Suppose that u = v. Then accept the message. 2. Find a neighbor w of u such that h4∗ (w, v) = h4∗ (u, v) − 1 if w exists. Then route into w. 3. Suppose that there is no neighbor w of u such that h4∗ (w, v) = h4∗ (u, v) − 1. Then route into the neighbor w of u that changes u1 u0 in a cyclic manner with respect to 00, 01, 11, and 10. For example, w = pn−2 (u)00 if u1 u0 = 10.
Example 3.2 Let u = 0001000101001000110000 and v = 0000000000000000000011 be two vertices of SQ18 . The path obtained from Route1(u, v) is 0001000101001000110000, 0000000001001000110001, 0000000000001000000011, 0000000000000000000000,
0000000101001000110000, 0000000000001000110001, 0000000000001000000010, 0000000000000000000001,
0000000001001000110000, 0000000000001000110011, 0000000000000000000010, 0000000000000000000011.
Note that this path is not the shortest path.
Applying the previous algorithm to any two vertices u and v on SQn , it is observed that we may apply step 3 at most three times to obtain a vertex w such that h4∗ (w, v) = 0. Hence, the algorithm will find a path—not necessarily
shortest the path—of length at most h4∗ (u, v) + 6 that joins u to v. Thus, D(SQn ) ≤ n4 + 5. The actual diameter of SQn and its generalization is discussed in Chapter 9. Actually, for
ch003.tex
19/7/2008
17: 46
Page 50
50
Graph Theory and Interconnection Networks
any positive integer g, Li et al. [224] construct an n-dimensional generalized shufflecube with 2n vertices that is n-regular and of a diameter about n/g if we consider g as a constant.
3.4
MOORE BOUND
We have seen several variations of cubes. Obviously, we prefer those variations with a lower diameter. The famous (n, d, D) problem [25] can be stated as follows: what is the largest number of vertices n that a graph (or digraph), each of whose vertices with degree (outdegree in digraph) at most d and of diameter D, can have? The following theorem gives a bound on the diameter. THEOREM 3.3 (Moore Bound) Suppose that G is a graph with diameter D and maximum degree d. Then n(G) ≤ 1 +
[(d − 1)D − 1]d d −2
Proof: Let x0 be a center of G. The number of vertices at distance 1 from x0 is at most d. The number of vertices at distance 2 from x0 is at most d(d − 1). The number of vertices at distance i with i ≤ D from x0 is at most d(d − 1)i−1 . Hence, n(G) ≤ 1 + d + d(d − 1) + · · · + d(d − 1)D−1 = 1 + The theorem is proved.
[(d − 1)D − 1]d d−2
We have a similar result for a digraph. THEOREM 3.4 (Moore Bound) Suppose that G is a digraph with diameter D and maximum degree d. Then n(G) ≤
d D+1 − 1 d−1
The (n, d, D) problem is one of the most difficult problems in graph theory [68]. It is known that only very few graphs satisfy the Moore bound. In the following discussion, we present two families of graphs (digraphs). The orders of the diameter of these families of digraphs meet the Moore bound. Let d be an integer with d ≥ 2. Let X(t) denote the set {(x1 , x2 , . . . , xt )| xi ∈ {0, 1, . . . , d − 1}}. Obviously, |X(t)| = d t . The de Bruijn digraph, proposed in Ref. 85, BRU(d, t), is the digraph with vertex set X(t) such that an edge exists from (x1 , x2 , . . . , xt ) to (y1 , y2 , . . . , yt ) if and only if xj = yj−1 for 2 ≤ j ≤ t. In Figure 3.5, we illustrate BRU(2, 2) and BRU(2, 3). We use UBRU(d, t) to denote the underlying simple graph of BRU(d, t).
ch003.tex
19/7/2008
17: 46
Page 51
Distance and Diameter
51
000 01 001
100 010
00
101
11
110
011 10
111
BRU(2,2) BRU(2,3)
FIGURE 3.5
BRU(2, 2) and BRU(2, 3).
LEMMA 3.2 There exists a path of length t joining any two vertices x and y in BRU(d, t). Proof: Suppose that x = (x1 , x2 , . . . , xt ) and y = ( y1 , y2 , . . . , yt ) are two vertices of BRU(d, t). Obviously, p0 = x = (x1 , x2 , . . . , xt ), p1 = (x2 , x3 , . . . , xt , y1 ), . . . , pi = (xi+1 , . . . , xt , y1 , . . . , yi−1 ). . . , pt = y = (y1 , y2 , . . . , yt ) forms a path of length t joining x to y. COROLLARY 3.2 D(BRU(d, t)) = D(UBRU(d, t)) = t. Proof: From Lemma 3.2, we know that D(BRU(d, t)) ≤ t. However, it is obvious that the distance between 00 · · · 00 and 11 · · · 11 in BRU(d, t) is t. Hence, D(BRU(d, t)) = t. Similarly, we have D(UBRU(d, t)) = t. Let d be an integer with d ≥ 2. Let Y (t) denote the set {(u1 , u2 , . . . , ut ) | ui ∈ {0, 1, . . . , d}, ui = ui+1 for 1 ≤ i < t}. Obviously, |Y (t)| = (d + 1)d t−1 . The Kautz digraph, proposed in [195], Kautz (d, t), is the digraph with vertex set Y (t) such that an edge exists from (x1 , x2 , . . . , xt ) to (y1 , y2 , . . . , yt ) if and only if xj = yj−1 for 2 ≤ j ≤ t. In Figure 3.6, we illustrate Kautz (2, 3). We use UKautz (d, t) to denote the underlying simple graph of Kautz (d, t). We have a similar result for Kautz digraphs. LEMMA 3.3 There exists a path of length at most t joining any two vertices x and y in Kautz(d, t). Hence, D(Kautz(d, t)) = D(UKautz(d, t)) = t. Proof: Let x = (x1 , x2 , . . . , xt ) and y = (y1 , y2 , . . . , yt ) be two vertices of Kautz(d, t). Suppose that xt = y1 . Then p0 = x = (x1 , x2 , . . . , xt ), p1 = (x2 , x3 , . . . , xt , y1 ), . . . , pi = (xi+1 , . . . , xt , y1 , . . . , yi−1 ), . . . , pt = y = (y1 , y2 , . . . , yt ) forms a path of length t joining x to y.
ch003.tex
19/7/2008
17: 46
Page 52
52
Graph Theory and Interconnection Networks 202
212 120 201
010
012
121
101
210
021
102
020
FIGURE 3.6
Kautz(2, 3).
Suppose that xt = y1 . Then p0 = x= (x1 , x2 , . . . , xt ), p1 = (x2 , x3 , . . . , xt , y2 ), . . . , pi = (xi+1 , . . . , xt , y1 , . . . , yi ), . . . , pt−1 = y = (y1 , y2 , . . . , yt ) forms a path of length (t − 1) joining x to y. Similar to the de Bruijn digraphs, D(Kautz(d, t)) = D(UKautz(d, t)) = t. With Corollary 3.4, we notice that the diameter of the de Bruijn graphs and the diameter of the Kautz digraphs are closed to the Moore bound.
3.5
STAR GRAPHS AND PANCAKE GRAPHS
Here, we introduce two important families of interconnection networks. Assume that n ≥ 2. We use n to denote the set {1, 2, . . . , n}, where n is a positive integer. A permutation of n is a sequence of n distinct element of ui ∈ n, u1 u2 . . . . . . un . An inversion of u1 u2 . . . . . . un is a pair of (i, j) such that ui < uj and i > j. An even permutation is a permutation with an even number of inversions, and an odd permutation is a permutation with an odd number of inversions. The n-dimensional star network, denoted by Sn , is a graph with the vertex set V (Sn ) = {u1 u2 . . . un | ui ∈ n and ui = uj for i = j}. The edges are specified as follows: u1 u2 . . . ui . . . un is adjacent to v1 v2 . . . vi . . . vn by an edge in dimension i with 2 ≤ i ≤ n if vj = uj for j ∈ / {1, i}, v1 = ui and vi = u1 . The star graphs S2 , S3 , and S4 are illustrated in Figure 3.7. By definition, Sn is an (n − 1)-regular graph with n! vertices. Moreover, it is vertex-transitive and edge-transitive. Furthermore, Sn is a bipartite graph with one partite set containing those vertices corresponding to odd permutations and the other partite set containing those vertices corresponding to even permutations. The star graphs are an important family of interconnection networks proposed by Akers and Krishnameurthy [3,4].
ch003.tex
19/7/2008
17: 46
Page 53
Distance and Diameter
53 a e
12
1324
f
21 g
S2
2413
321
213
3124
3214
2134
c 3142
d
4213
1234
4132
1342
4123
1243
4231
1432
4312
2143
b 312
2314
1423
132 231
b
3241
2431
2341
3421
c
3412
e
f 4321
d
g
123
S3
a
S4
FIGURE 3.7 The star graphs S2 , S3 , and S4 .
The identity permutation is denoted by I = (1, 2, 3, 4, . . . ). Because the star graph is vertex-transitive, we can always view the distance between any two arbitrary vertices as the distance between the source vertex and the identity permutation by suitably renaming the symbols representing the permutations. Hence, the destination vertex is always assumed to be the identity vertex I without loss of generality. It is known that any permutation of n elements can also be specified in terms of its unique cycle structure with respect to the identity permutation I. For example, 3, 4, 5, 2, 1, 6 = (1, 3, 5)(2, 4)(6). The maximum number of cycles in a permutation of n elements is n and the minimum number is 1. When a cycle has only one symbol, the symbol is in its correct position in the permutation with respect to the identity permutation. For the rest of the work, we omit the singletons if the number of symbols in a permutation with respect to the identity permutation is understood from the context. Thus, (1, 3, 5)(2, 4)(6) = (1, 3, 5)(2, 4). The length of a cycle is defined as the number of symbols present in the cycle. Let (u) = π1 π2 . . . πk be the cycle representation of the (vertex) permutation u where πi ’s are the individual cycles in the vertex. Without loss of generality, we assume that 1 = π11 . In Ref. 4, a general algorithm to find the shortest path to the destination vertex (the identity permutation) is proposed. The algorithm has shown that in general this shortest path is not unique; that is, there may be multiple shortest paths to the destination from the given vertex u. ALGORITHM In order for the path to be minimal in length, the moves must be restricted to two possible choices: for any vertex u = π1 π2 . . . πk with 1 = π11 , either (1) exchange π11 with π12 , thereby reducing the length of the cycle π1 by 1, or (2) exchange
ch003.tex
19/7/2008
17: 46
Page 54
54
Graph Theory and Interconnection Networks
π11 with πjl (where 2 ≤ j ≤ k and 1 ≤ l ≤ |πj |), thereby merging the two cycles π1 and πj into one cycle. A path from a vertex u to the destination is said to follow the shortest routing scheme if the moves are restricted to these two types. For example, 3, 4, 5, 2, 1, 6 = (1, 3, 5)(2, 4)(6). Applying the algorithm, we obtain (1, 3)(1, 5) × (1, 2)(1, 4)(1, 2). It is easy to confirm that (1, 3, 5)(2, 4)(6)(1, 3)(1, 5)(1, 2)(1, 4) (1, 2) = 1, 2, 3, 4, 5, 6. Thus, the product (1, 3)(1, 5)(1, 2)(1, 4)(1, 2) corresponds to a shortest path from 3, 4, 5, 2, 1, 6 to the identity 1, 2, 3, 4, 5, 6. Let d(u) denote the distance between the vertex u to the identity permutation. Let c be the number of cycles of length at least 2 in any permutation u and m be the total number of symbols in those c cycles of the permutation u. With the previous routing algorithm, D(u) is d(u) = c + m if 1 is the first symbol, and c + m − 2 if otherwise. For example, let u = 3, 2, 5, 4, 1, 6 = (1, 3, 5)(2)(4)(6) = (1, 3, 5). Then c = 1, m = 3, and d(u) = c + m − 2 = 2. Let u = 1, 4, 3, 2, 5, 6 = (1)(2, 4)(3)(5)(6) = (2, 4). Then c = 1, m = 2, and d(u) = 1 + 2 = 3. With this observation, it can be proved that the diameter of Sn is 3(n−1) . 2 The n-dimensional pancake graph, denoted by Pn , is a graph with the vertex set V (Pn ) = { p1 p2 . . . pn | pi ∈ n and pi = pj for i = j}. The adjacency is defined as follows: p1 p2 . . . pi . . . pn is adjacency to pi pi−1 . . . p1 , pi+1 . . . pn through an edge of dimension i, where 2 ≤ i ≤ n (prefix substring reversal). The pancake graphs P2 , P3 , and P4 are shown in Figure 3.8. Again, Pn is an (n − 1)-regular graph with n! vertices. Note that Pn is bipartite if and only if n = 2 and 3. The star graph and the pancake graph [3,4] are attractive alternatives to the n-cube. They have many significant advantages over the n-cube, such as a lower degree and a
1234 12
21
4321
3214
2431
3124 1324
2314
2341
3421
2134
3241
(a) 4231 2413
123 321
3142
213 4132
231
312
1432 3412
132 (b)
FIGURE 3.8
4213 1342
(a) P2 , (b) P3 , and (c) P4 .
1423 4123
4312
1243 2143 (c)
ch003.tex
19/7/2008
17: 46
Page 55
Distance and Diameter
55
smaller diameter. There are a lot of studies on the properties of these two families of graphs. We note that Gates and Papadimitriou [121] began the study on the diameter of the pancake graphs. At this point, the diameter of the pancake graphs is still unsolved [144]. The concrete values of D(Pn ) for small n are studied in Refs. 73, 144, and 205. Collective results are listed in the following table:
n D(Pn )
3.6
1 0
2 1
3 3
4 4
5 5
6 7
7 8
8 9
9 10
10 11
11 13
12 14
13 15
14 16
15 17
EDGE CONGESTION AND BISECTION WIDTH
We can advance our study on the shortest paths in a interconnection network. Let us treat a path as a directed route from a source to a destination. To distinguish different orientations of an edge (u, v), we write [u, v] and [v, u] as traversing from u to v and from v to u, respectively. A path P = x = x 0 , x 1 , . . . , x m = y is treated as a directed path from x to y consisting of [x i , x i+1 ] for 0 ≤ i ≤ m − 1. For convenience, we also treat a path as a set of edges and write [x i , x i+1 ] ∈ P to mean that [x i , x i+1 ] is in P. We say that an edge e = (u, v) is incident on P if [u, v] ∈ P or [v, u] ∈ P, that is, u = x i , v = x i+1 or v = x i , u = x i+1 for some i. When considering edge congestion, we can treat any routing algorithm A for a network G = (V , E) as a function assigning each (x, y) ∈ V × V to only one path from x to y, denoted by PA (x, y). Then we define the edge congestion of an edge e ∈ E under the routing algorithm A, denoted by cA (e), as the number of (x, y)-pairs such that e is incident on PA (x, y); that is, cA (e) = |{(x, y) | x, y ∈ V , e is incident on PA (x, y)}| Furthermore, we define the edge congestion of the network G under the routing algorithm A, denoted by cA (G), as cA (G) = max{cA (e) | for all e ∈ E} and the edge congestion of the network G, denoted by c(G), as c(G) = min{cA (G) | for all routing algorithms A for G} The following lemma is proved by Fiduccia and Hedrick [109]. LEMMA 3.4 Assume that G is an n-vertex graph such that the removal of w edges partitions G into two not necessarily subgraphs of k vertices and n − k connected
vertices, respectively. Then c(G) ≥ 2k(nw− k) . Moreover, this bound is tight.
ch003.tex
19/7/2008
17: 46
Page 56
56
Graph Theory and Interconnection Networks
Proof: Assume that A and B are the subgraphs of the partition and let π be any shortest path routing of G. Note that π contains a shortest path π(u, v) for each (u, v). It contains k(n − k) paths from A to B and same k(n − k) paths from B to A that cross
the w edges in the cut. Thus, some edge of the cut must crossed at least 2k(nw− k)
times. As this is true for every shortest path routing π of G, c(G) ≥ 2k(nw− k) . Because a shortest path may cross the cut many times, this is not an upper bound. However, the bound is tight for G if G is the complete graph Kn . The bisection width of a graph G, bw(G), is the least number of edges to be removed to partition G into two disconnected components with roughly equal number of vertices. From the previous lemma, we have the following corollary. COROLLARY 3.3 Assume that G is an n-vertices graph with edge congestion c(G) n2 − 1 n2 if n is even and c(G) ≥ 2bw(G) and bisection width bw(G). Then c(G) ≥ 2bw(G) if n is odd. Now, we compute the edge congestion and the bisection width of the hypercube Qn . THEOREM 3.5
c(Qn ) = 2n and bw(Qn ) = 2n−1 .
Proof: Let u be any vertex in Qn . It is known that exactly i from u. Thus, for any routing algorithm A, we have
cA (e) =
e∈E(Qn )
|PA (x, y)| ≥
(x,y)∈V ×V
n i
vertices are at distance
n n n n i = 2n i = 2n n2n−1 i i x∈V i=0
i=0
Note that there are exactly n 2n−1 edges in E(Qn ). We have cA (Qn ) = max{cA (e) | e ∈ E(Qn )} ≥ 2n Thus, c(Qn ) ≥ 2n . On the other hand, suppose that C is the routing strategy that routes x to y by changing the rightmost differing bit iteratively. To be precise, assume that x differs from y at k bits, say, the l1 -, l2 -, . . . , lk -th bits with 0 ≤ l1 < l2 < · · · < lk ≤ n − 1. Then PC (x, y) is given by x = x 0 , x 1 , . . . , x k = y, where x d differs from x d+1 at the ld+1 -th bit. Let e = (u, v) be an edge of Qn with u and v differing at the jth bit such that (u, v) is incident on PC (x, y). That is, either [u, v] ∈ PC (x, y) or [v, u] ∈ PC (x, y). Let us consider [u, v] ∈ PC (x, y). It follows from algorithm C that xn−1 . . . xj = un−1 . . . uj and yj . . . y1 y0 = vj . . . v1 v0 . Therefore, |{(x, y) | x, y ∈ V (Qn ), [u, v] ∈ PC (x, y)}| = 2n−j−1 2j = 2n−1 Similarly, |{(x, y) | x, y ∈ V (Qn ), [v, u] ∈ PC (x, y)}| = 2n−j−1 2j = 2n−1 Hence, c(Qn ) = 2n−1 + 2n−1 = 2n .
ch003.tex
19/7/2008
17: 46
Page 57
Distance and Diameter
57
22n . Now, we prove that bw(Qn ) = 2n−1 . By Corollary 3.3, 2n = c(Qn ) ≥ 2bw(Q n) n−1 Thus, bw(Qn ) ≥ 2 . Let V0 = {u | u = un−1 un−2 . . . u1 u0 ∈ V (Qn ) with un−1 = 0} and V1 = {u | u = un−1 un−2 . . . u1 u0 ∈ V (Qn ) with un−1 = 1}. Let X denote the edges joining vertices between V0 and V1 . Obviously, the deletion of X from Qn partitions Qn into V0 and V1 . It is observed that |V0 | = |V1 | and |X| = 2n−1 . Hence, bw(Qn ) = 2n−1 . In Section 3.2, we proposed a shortest path routing algorithm, Algorithm H, for a twisted cube. However, Algorithm H does not lead to optimum edge congestion of twisted cubes. Li et al. [223] propose another shortest path routing algorithm for twisted cubes. With this routing algorithm, it is proved that c(TQn ) = 2n and bw(TQn ) = 2n−1 [223]. In Ref. 46, Chang et al. discuss the edge congestion and the bisection width of cross cubes.
3.7 TRANSMITTING PROBLEM Assume that G = (V , E) is a graph representing the topology for a network. Let v0 be a special vertex outside G, called the host processor (abbreviated as host), which is connected to each vertex of V . The host processor is the sender or source of the message to be transmitted to all of the vertices in G. Each time unit, the host may send its message to any single vertex of the graph G, according to its choice. At the same time, each processor that has already received the message can send the message to all of its neighbors in one unit of time. For u, v ∈ V , let d(u, v) denote the shortest distance from u to v. Suppose that in the ith time unit the host sends its message to processor pi . Then after the kth time unit, k > i, all of the processors v satisfying d(pi , v) ≤ k − i can receive the message. The objective is to minimize the number of time units such that all of the vertices in G can receive the message. This minimum number of time units for graph G is called the optimal transmitting time for G, denoted by t(G). For an n-dimensional hypercube Qn , Alon [8] proves that t(Qn ) = n2 + 1 and gives a simple procedure to achieve this goal. The host processor simply sends its message to an arbitrary processor p1 in the first time unit, then to the antipodal of p1 —that is, the vertex having the Hamming distance n from p1 —in the second time unit. Afterward, the host just waits. This transmitting scheme gives the host a rather light workload. We note that even when the host sends the message to a processor in each time unit, the transmitting time remains the same. Thus, we can consider the transmitting problem as a problem to not only determine t(G) but also to minimize the workload of the host when t(G) is achieved. The workload of the host is defined as the number of time units in which the host sends the message to processors in G. Now, we give a formal description of the transmitting problem. We are given a graph G = (V , E) and a special vertex v0 as introduced before. For v ∈ V and a nonnegative integer r, the r-neighborhood of v is defined as Nr (v) = {u ∈ V | d(u, v) ≤ r}. By convention, N0 (v) = {v}. Let t be a positive integer, and V = V ∪ {v0 }. We use [t] to denote the set {1, 2, . . . , t}. Let f be a function from [t] into V defined as
ch003.tex
19/7/2008
17: 46
Page 58
58
Graph Theory and Interconnection Networks
follows: f (i) = v = v0 if the host sends its message to v at time i, and f (i) = v0 if the host is idle at time i. Let s = |{i | f (i) ∈ V }|, which is called the workload of the host. Obviously, s ≤ t. The function f is called a (t, s)-transmitting scheme if ∪f (i)∈V Nt−i ( f (i)) = V ; that is, all vertices in V can receive the message in t time units. In a (t, s)-transmitting scheme, each processor in G receives the message either from the host or from its neighbor within t time units, while the workload of the host is given by s. Such a t is called a feasible transmitting time. The cost of a (t, s)transmitting scheme f , denoted by c( f ), is defined as the ordered pair (t, s). We use TS(G) to denote the set of all possible transmitting schemes for G. Let f , g ∈ TS(G) be two transmitting schemes with c( f ) = (t1 , s1 ) and c(g) = (t2 , s2 ). We say f ≤ g if c( f ) ≤ c(g) lexicographically; that is, t1 < t2 or t1 = t2 and s1 ≤ s2 . A scheme f ∗ ∈ TS(G) is an optimal transmitting scheme for G if f ∗ ≤ g for all g ∈ TS(G). The optimal transmitting cost of G, denoted by c(G), is defined as c(G) = c( f ∗ ) = (t ∗ , s∗ ), where t ∗ = t(G) is the optimal transmitting time, and s∗ = s(G) is the optimal workload of the host. Obviously, we can always obtain a (D + 1, 1)-transmitting scheme, where D is the diameter of the underlying network. An optimal transmitting scheme is what we seek. The problem of designing an optimal transmitting scheme for a graph G is important of interconnection networks. Alon [8] proposes an to the communication optimal n2 + 1, 2 -transmitting scheme for n-dimensional hypercube Qn . In the following sections, we study the transmitting problem of some graphs. THEOREM 3.6
√ √ [149] c(Pn ) = ( n , n ).
Proof: Without loss of generality, we assume that n = m2 for some positive integer m. Assume that f is an optimal transmitting scheme with c( f ) = (t, s). Pn can be easily partitioned into m nonoverlapping intervals I1 , I2 , . . . , Im with |Ii | = 2i − 1 vertices for 1 ≤ i ≤ m. An (m, m)-transmitting scheme can be easily obtained by setting f (i) to the center of Im−i+1 . Thus, m ≥ t. On the other hand, it is observed that |Nr (v)| ≤ 2r + 1 for any vertex v and nonnegative integer r. Because f is a transmitting scheme, 2
m = | ∪f (i)∈V Nt−i ( f (i))| ≤
t−1
(2r + 1) = 1 + 3 + · · · + (2t − 1) = t 2
(3.1)
r=0
Thus, t 2 ≥ m2 ; that is, t ≥ m. Hence, t = m. Suppose that s ≤ m − 1 = t − 1. Then | ∪ f (i)∈V Nt−i (f (i))| ≤
t−1
(2r + 1) = 3 + · · · + (2t − 1) = t 2 − 1 = m2 − 1
r=1
leads to a contradiction. Consequently, the proposed (m, m)-transmitting scheme is optimal; moreover, the theorem follows. The optimal transmitting cost for Cn can be easily obtained as a corollary.
ch003.tex
19/7/2008
17: 46
Page 59
Distance and Diameter
COROLLARY 3.4
59
√ √ [149] c(Cn ) = ( n , n ).
We can also study the transmitting problem on digraphs. THEOREM 3.7 The optimal transmitting cost of BRU(d, n) is (1, 1) if d = 1, (2, 1) if n = 1, (n, 2) if d = 2, and (n + 1, 1) if d ≥ 3. Proof: It is trivial to check the cases of d = 1 or n = 1. Now we consider the cases of d ≥ 2 and n ≥ 2. Because BRU(d, n) has outdegree d, it follows that for any vertex r+1 v and a nonnegative integer r ≤ n, we have |Nr (v)| ≤ 1 + d + d 2 + · · · + d r = d d −−1 1 . Therefore, |∪f (i)∈V Nt−i ( f (i))| ≤
t−1 r+1 d −1 r=0
d−1
=
d(d t − 1) t − 2 (d − 1) d−1
(3.2)
Now we consider d ≥ 3. Because for any vertex v we have Nn (v) = V (BRU(d, n)), we can give an (n + 1, 1)-transmitting scheme as follows: the host sends a message to an arbitrary vertex in BRU(d, n) and then idles. After (n + 1) units of time, all processors in BRU(d, n) can receive the message. Assume that the optimal transmitting time is t ≤ n. It follows that |∪f (i)∈V Nt−i ( f (i))| ≤
d(d n − 1) n − < dn (d − 1)2 d−1
It means that not all of the vertices in BRU(d, n) can receive the message in n time units, which is a contradiction. Thus, the (n + 1, 1)-transmitting scheme is optimal for BRU(d, n) when d ≥ 3. Let d = 2. Assume that (t ∗ , s∗ ) is the optimal transmitting cost for BRU(2, n). For all (t, s)-transmitting schemes, it follows from (3.2) that |∪f (i)∈V Nt−i ( f (i)) | ≤ 2n − n − 1 < 2n if t ≤ n − 1. Thus we have t ≥ n, and in parthat t ∗ = n and s∗ = 1. It follows that |∪f (i)∈V Nt−i ( f (i))| = ticular, t ∗ ≥ n. Suppose |Nn−1 ( f (1)) | ≤ ni=1 2i−1 = 2n − 1 < 2n , which is a contradiction. Thus, if t ∗ = n, we must have s∗ ≥ 2. We give an (n, 2)-transmitting scheme f as follows: f (1) = 1 = (0, 0, . . . , 0, 1), f (k) = 0 = (0, 0, . . . , 0) for an arbitrary k with 2 ≤ k ≤ n, and f (i) = v0 for all i = 1, k. In other words, the host sends a message to vertex 1—that is, (0, . . . , 0, 1), at the first time unit, and then to vertex 0—that is, (0, . . . , 0) at the kth unit of time, 2 ≤ k ≤ n. For any vertex v = (vn−1 , vn−2 , . . . , v0 ), 2 ≤ v ≤ 2n − 1, it is obvious that d(1, v) ≤ n − 1, as vi = 1 for some 1 ≤ i ≤ n − 1. Thus, Nn−1 (1) = V (BRU(d, n)) − {0}. Therefore, Nn−1 (1) ∪ f (k) = Nn−1 (1) ∪ {0} = V (BRU(d, n)). Hence, the proposed (n, 2)-transmitting scheme is optimal.
ch003.tex
19/7/2008
17: 46
Page 60
ch004.tex
19/7/2008
4 4.1
17: 47
Page 61
Trees
BASIC PROPERTIES
Trees as graphs have many applications, especially in data storage and communication. A graph having no cycle is acyclic. A forest is an acyclic graph. A tree is a connected acyclic graph. A leaf (or pendant vertex) is a vertex of degree 1. A spanning subgraph of G is a subgraph with vertex set V (G). A spanning tree is a spanning subgraph that is a tree. We first prove that deleting a leaf from a tree yields a smaller tree. This implies that every tree with more than one vertex can be grown from a smaller tree by adding a vertex of degree 1. This facilitates inductive proofs for trees by allowing the induction step to grow an (n + 1)-vertex tree by adding a vertex to an arbitrary n-vertex tree without falling into the induction trap. LEMMA 4.1 Every tree with at least two vertices has at least two leaves. Moreover, deleting a leaf from a tree with n vertices produces a tree with (n − 1) vertices. Proof: Assume that T is a tree with at least two vertices. Obviously, it has an edge e because T is connected. Let P be any maximal path containing e. Obviously, the two endpoints x and y of P have only one neighbor on the path. Thus, degT (x) = degT ( y) = 1. Hence, x and y are leaves. Let v be a leaf of a tree T and let T = T − v. Suppose that u and w are any two vertices of T . Let P be a path of T from u to w. Obviously, v ∈ / P because degT (v) = 1. Thus, P is also present in T . Hence, T is connected. Because a vertex deletion cannot create a cycle, T is also acyclic. Thus, T is a tree with (n − 1) vertices. Trees have many equivalent characterizations, any of which could be taken as the definition. Such characterizations are useful because we need only to verify a graph that satisfies any one of them to prove that it is a tree. Then we can use all the other properties. THEOREM 4.1 Let T be an n-vertex graph with n ≥ 1. The following statements are equivalent: 1. 2. 3. 4.
T T T T
is connected and has no cycles. is connected and has (n − 1) edges. has (n − 1) edges and no cycles. has exactly one path from u to v for every u and v in V (T ).
Proof: We first prove that statement 1 implies statements 2 and 3. Assume that T is a connected n-vertex graph with no cycles. We use induction on n to prove 61
ch004.tex
62
19/7/2008
17: 47
Page 62
Graph Theory and Interconnection Networks
statements 2 and 3. Because any acyclic 1-vertex graph has no edge, the implication holds for n = 1. For the induction step, we assume that the implication holds for those m-vertex graphs with 1 ≤ m < n. Assume that T is a connected graph with no cycles. By Lemma 4.1, there exists a leaf v such that T = T − v is acyclic and connected. By induction hypothesis, e(T ) = n − 2. Hence, e(T ) = n − 1. We prove that statement 2 implies statements 1 and 3. Assume that T is a connected n-vertex graph with (n − 1) edges. Let us delete edges from cycles of T one by one until the resulting graph T is acyclic. As no edge of a cycle is a cut edge, T remains connected. By the previous paragraph, T has (n − 1) edges. In other words, T = T . Thus, T is acyclic. We prove that statement 3 implies statements 1 and 2. Assume that T is an n-vertex graph with (n − 1) edges and no cycles. Suppose that T has k components with orders n1 , n2 , . . . , nk . Because T has no cycles, eachcomponent has (ni − 1) edges. Summing this over all components yields e(T ) = ki=1 (ni − 1) = n − k. Because e(T ) = n − 1, k = 1. Thus, T is connected. We prove that statement 1 implies statement 4. Assume that T is a connected n-vertex graph with no cycles. Let u and v be any two vertices of V (T ). Because T is connected, T has at least one path from u to v. Suppose that G has two distinct paths P and Q from u to v. Obviously, some edge e = (x, y) appears in exactly one of them. There exists a closed walk containing e. We can delete e from T , which yields a walk W from x to y, not including e. Hence, W contains a path R from x to y. Obviously, R ∪ {e} forms a cycle of T , which contradicts the hypothesis that T is acyclic. Hence, T has exactly one path from u to v. Finally, we prove that statement 4 implies statement 1. Assume that T has exactly one path from u to v for every u and v in V (T ). Obviously, T is connected. Suppose that T has a cycle C. Then T has two paths between any pair of vertices on C. Thus, T has no cycles. With Theorem 4.1, it is easy to see that every connected graph contains a spanning tree. Moreover, every n-vertex graph with (n − k) edges has at least k components. With m components, there must be at least (n − m) edges. The next result illustrates induction using deletion of a leaf. PROPOSITION 4.1 Assume that T is a tree with k edges and G is a simple graph with δ(G) ≥ k. Then T is a subgraph of G. Proof: We prove this proposition by induction on k. Obviously, every simple graph contains K1 . The proposition holds for k = 0. Suppose that the proposition holds for trees with fewer than m edges with 0 ≤ m < k. Because k > 0, by Lemma 4.1 we can choose a leaf v with neighbor u in T . Let T = T − v. T is a tree with (k − 1) edges. Because δ(G) ≥ k > k − 1, by the induction hypothesis, G contains a copy of T as a subgraph. Let x be the vertex in this copy of T that corresponds to u (see Figure 4.1 for illustration). As T has only (k − 1) vertices other than u, x has a neighbor y in G that does not appear in this copy of T . Obviously, we can add the edge (x, y) on T to obtain a copy of T in G.
ch004.tex
19/7/2008
17: 47
Page 63
Trees
63
G
T
x y
FIGURE 4.1
Illustration of Proposition 4.1.
Because a tree has no cycle, every edge of a tree is a cut edge. Because a tree has a unique path linking each pair of vertices, adding any edge creates exactly one cycle. We apply these observations to prove results that are used by algorithms for finding spanning trees in weighted graphs. We use subtraction and addition as operations involving sets to indicate the deletion and inclusion of edges. PROPOSITION 4.2 Suppose that T and T are two spanning trees of a connected graph G such that e ∈ E(T ) − E(T ). Then there is an edge e ∈ E(T ) − E(T ) such that T − e + e is a spanning tree of G. Proof: Since e is a cut edge of T , T − e is disconnected. Let U and U be the vertex sets of the component T − e. Because T is connected, it has an edge e with endpoints in U and U. Now T − e + e is a spanning tree. PROPOSITION 4.3 Suppose that T and T are two spanning trees of a connected graph G such that e ∈ E(T ) − E(T ). Then there is an edge e ∈ E(T ) − E(T ) such that T + e − e is a spanning tree of G. Proof: Obviously, the graph T + e contains a unique cycle C. Since T is acyclic, there exists an edge e ∈ E(C) − E(T ). Since C is the only cycle in T + e, T + e − e is connected and acyclic. By Theorem 4.1, T + e − e is a spanning tree of G. The diameter of a tree is the length of its longest path, because every path in a tree is the shortest path between its endpoints. We next describe the centers of trees. The proof uses deletion of all leaves to obtain a subtree; this sometimes provides a cleaner inductive proof than deleting one leaf. THEOREM 4.2
(Jordan [187]) The center of a tree is one vertex or one edge.
Proof: We use induction on the number of vertices. The statement is trivial for trees with one or two vertices. Assume that the statement holds for trees with fewer than n vertices with n > 2. Let T be an arbitrary n-vertex tree. Form T by deleting every leaf of T . Since T contains n vertices and (n − 1) edges, T is a tree with at least one vertex. Let u be a vertex in T . It is observed that the vertex at maximum distance from u is a leaf. Since all the leaves have been removed, T (u) = T (u) − 1 for every u ∈ V (T ). Moreover, the eccentricity of a leaf in T is greater than the eccentricity of its neighbor in T . Hence, the vertices minimizing T (u) are the same vertices minimizing
ch004.tex
19/7/2008
17: 47
Page 64
64
Graph Theory and Interconnection Networks
T (u). By the induction hypothesis, for T they consist of a single vertex or two adjacent vertices.
4.2
BREADTH-FIRST SEARCH AND DEPTH-FIRST SEARCH
Many graph algorithms require a systematic method of visiting the vertices of a graph (or traversing the graph). In this section, we describe two types of spanning tree (or forest) that can be used to produce some particularly efficient algorithms. The breadthfirst search (BFS) and the depth-first search (DFS) are such methods. To discuss these two search algorithms, we introduce two basic data structures: stacks and queues. A stack is a list in which insertions and deletions are always made at one end, called the top. The top item in a stack is the one that was most recently inserted. Stacks are sometimes referred to as LIFO lists, meaning last in, first out. A queue is a list in which all insertions are made at one end, called the tail, and all deletions are made at the other end, called the head. Queues, then, are first in, first out lists (FIFO lists). ALGORITHM: (Breadth-first search.) Input. An unweighted graph (or digraph) and a start vertex u. Idea. Maintain a set R of vertices that have been reached but not searched and a set S of vertices that have been searched. The set R is maintained as a FIFO list (queue) so that the first vertices found are the first vertices explored. Initialization. R = {u}, S = ∅, d(u, v) = 0. Iteration. As long as R = ∅, we search the head vertex v of R. The neighbors of v not in R or S are added to the tail of R and assigned distance d(u, v) + 1, and then v is removed from the head of R and placed in S. It can be proved by induction that a BFS correctly computes the distance between any vertex v to the start vertex u. The longest distance from u to another vertex is (u). Hence, we can compute the diameter of a graph G by running a BFS from each vertex. In a DFS, we explore always from the most recently discovered vertex that has an unexplored edge (this is also called backtracking). In contrast, a BFS explores from the oldest vertex, so the difference between DFS and BFS is that, in a DFS, the set R is maintained as a LIFO stack rather than a queue. ALGORITHM: (Depth-first search.) Input. An unweighted graph (or digraph) and a start vertex u. Idea. Maintain a set R of vertices that have been reached but not searched and a set S of vertices that have been searched. The set R is maintained as a LIFO list (stack) so that the first vertices found are the last vertices explored. Initialization. R = {u} and S = ∅. Iteration. As long as R = ∅, we remove the top element v of R and search v. The neighbors of v not in R or S are added to the top of R.
ch004.tex
19/7/2008
17: 47
Page 65
Trees
65
A DFS that traces only one path at a time is much easier to do by hand or to program. Further, in cases where we need to find only one of the possible solutions, it pays to search all the way down a path for a solution rather than to take a long time building a large number of partial paths, only one of which in the end will actually be used. On the other hand, when we want a solution involving a shortest path or when there may be very long dead-end paths (while solution paths tend to be relatively short), then the BFS is better. DFS and BFS are common techniques for problem solving. Try to use these techniques for the following puzzles.
Example 4.1 Suppose that we are given three pitchers of water, of sizes 10, 7, and 4 quarts. Initially, the 10 quart pitcher is full and the other two empty. We can pour water from one pitcher into another, pouring until the receiving pitcher is full or the pouring pitcher is empty. Is there a way to pour among pitchers to obtain exactly 2 quarts in the 7 or 4 quart pitcher? If so, find a minimum sequence of pourings to get 2 quarts.
Example 4.2 Three jealous wives and their husbands come to a river. The party must cross the river (from near shore to far shore) in a boat that can hold at most two people. Find a sequence of boat trips that will get the six people across the river without ever letting any husband be alone (without his wife) in the presence of another wife.
Example 4.3 Find all ways to place eight nontaking queens on an 8 × 8 chessboard. Recall that one queen can capture another queen if they are both in the same row or the same column or a common diagonal.
4.3
ROOTED TREES
In this section, we change our emphasis from trees to directed trees. A directed tree is an orientation digraph whose underlying graph is a tree. A directed tree T is called a rooted tree if there exists a vertex r of T , called the root, such that for every vertex v of T , there is a path from r to v in T . Let T be a rooted tree. It is customary to draw T with root r at the top, at level 1. The vertices adjacent from r are placed one level below, at level 2. Any vertex adjacent from a vertex at level 2 is at level 3, and so on. See Figure 4.2 for illustration. In general, every vertex at level i > 1 is adjacent from exactly one vertex at level (i − 1). More formally, a vertex x in a rooted tree with root r is at level i if and only if the path from r to x in T has length (i − 1). Each arc is directed from a vertex at some level j to a vertex at level ( j + 1). The largest integer h for which there is a vertex at level h in a rooted tree is called its height.
ch004.tex
19/7/2008
17: 47
Page 66
66
Graph Theory and Interconnection Networks r
Level 1 Level 2 Level 3 Level 4
FIGURE 4.2 A rooted tree.
THEOREM 4.3 A directed tree T is a rooted tree if and only if T contains a vertex r with deg− (r) = 0, and deg− (v) = 1 for all other vertices v of T . Proof: Let T be a rooted tree with root r. Then deg− (r) = 0. Let v be any nonroot vertex of T . Suppose that v is at level i. Obviously, i > 1. Thus, v is adjacent from exactly one vertex at level (i − 1). We have deg− (v) = 1. Conversely, let G be a directed graph containing a vertex r with deg− (r) = 0 such that deg− (v) = 1 for all vertices with v = r. Let u1 be any vertex of T with u1 = r. Since deg− (u1 ) = 1, there is a vertex u2 such that u2 is adjacent to u1 . If u2 = r, then there exists a vertex u3 adjacent to u2 . These vertices u1 , u2 , and u3 are the beginning of a sequence. We continue this sequence as far as possible. First, we claim that this sequence contains only distinct vertices. Suppose that ui = uj with i < j and the vertices ui , ui+1 , . . . , uj−1 are distinct. Then in the underlying tree, ui , ui+1 , . . . , uj−1 , uj = ui is a cycle, which is impossible. Thus, the sequence is finite; say, u1 , u2 , . . . , un . Since only deg− (r) = 0, un = r. Therefore, r = un , un − 1 , . . . , u2 , u1 is a path from r to u1 . Hence, G is a rooted tree with root r. With Theorem 4.3, every rooted tree contains a unique root. Since it is common to draw the root r of a rooted tree T at the top and the remaining vertices at the appropriate level i (i = 2, 3, . . .) below r, all arcs are directed downward. Hence, the directions indicated in such a drawing are superfluous. Consequently, it is customary to draw a rooted tree in this manner, without arrows on the edges. Let T be a rooted tree. Suppose that vertex v of T is adjacent to u lies in the level below v. We say that u is called a child of v, and v is the parent of u. Suppose that there is a path from v to w in T such that w lies below v. We say that w is a descendant of v and v is an ancestor of w. Let v be a vertex of T . We consider the subtree of a rooted tree T that induces by a vertex v and all of its descendants as a rooted tree with root v. This subtree is called the maximal subtree of T rooted at v. A vertex with no children is called a leaf. All other vertices are called internal vertices. A rooted plane tree is a rooted tree with a left-to-right ordering specified for the children of each vertex. A binary tree is a rooted plane tree in which each vertex has at most two children, and each child is designated as its left child or right child. The subtree rooted at a children of the root are the left subtree and the right subtree of the tree. A k-ary tree allows each vertex up to k children. A rooted plane tree is called a full m-ary tree if every vertex of T has m children or no children. Thus, in a full binary tree every vertex has two children or no children.
ch004.tex
19/7/2008
17: 47
Page 67
Trees
67
THEOREM 4.4 A full m-ary tree with i internal vertices has order (mi + 1). Proof: Let T be a full m-ary tree with n vertices having i internal vertices. Every internal vertex of T has m children, and every child has a unique parent. Since only the root is not a child of other vertices, n = mi + 1. COROLLARY 4.1 Every full binary tree with i internal vertices has (i + 1) leaves. Proof: Suppose that T is a full binary tree with i internal vertices. By Theorem 4.4, T has (2i + 1) vertices. Since T has i internal vertices, the remaining (i + 1) vertices are leaves. THEOREM 4.5
Suppose that T is a binary tree of height h and order n. Then h ≤ n ≤ 2h − 1
Proof: For 1 ≤ k ≤ h, let pk be the number of vertices of T at level k. Obviously, h k=1 pk = n, pk ≥ 1 for each k, and pk ≤ 2pk−1 for 1 < k ≤ h. By induction, we can prove pk ≤ 2k−1 . Using the fact that h
2k−1 = 1 + 2 + · · · + 2h−1 = 2h − 1
k=1
we conclude that h=
h
1≤n=
k=1
h k=1
pk ≤
h
2k−1 = 2h − 1
k=1
which gives the desired result.
COROLLARY 4.2 Suppose that T is a binary tree of height h and order n. Then h ≥ log2 ((n + 1)/2) − 1 An hth complete m-ary tree is a full m-ary tree with (mh − 1)/(m − 1) vertices and of height h. In particular, the complete binary tree of height h, denoted by BTh , is a rooted tree given by V (BTh ) = {1, 2, . . . , 2h − 1}, and (i, j) ∈ E(BTh ) if and only if j/2 = i. The vertex 1 is the root of BTh . The level of a vertex i is log2 i + 1. The binary tree is a commonly used data structure. Three common methods are used to recover information from its inherent relationships; namely, inorder, preorder, and postorder traversal. These three algorithms are described as follows: 1. Procedure inorder(r) a. if T = ∅, then b. inorder(left child of v)
ch004.tex
19/7/2008
17: 47
Page 68
68
Graph Theory and Interconnection Networks
c. visit the present vertex d. inorder(right child of v) 2. Procedure preorder(r) a. b. c. d.
if T = ∅, then visit the present vertex preorder(left child of v) preorder(right child of v)
3. Procedure postorder(r) a. b. c. d.
if T = ∅, then postorder(left child of v) postorder(right child of v) visit the present vertex
It is worthwhile to give at least one application for each tree traversal.
4.4
COUNTING TREES
There are 2C(n;2) simple graphs with vertex set {1, 2, . . . , n}. In this section, we count the trees with this vertex set and extend this to count spanning trees in arbitrary graphs. Cayley proved that there are nn−2 trees with a fixed set of n vertices. Suppose that n = 1 or 2. It is easy to check whether there is only one tree with n vertices. Suppose that n = 3. We can check whether there is still only one isomorphic class; a path of three vertices. However, there are three trees, considering the vertex in the center. Suppose that n = 4. There are 4 stars and 12 paths. We have 16 trees in total. We use τ(G) to denote the number of spanning trees in G. Let Kn be the complete graph defined on the set n, where n denotes the set {1, 2, . . . , n}. THEOREM 4.6 (Cayley’s Formula [37]) τ(Kn ) = nn−2 . Proof: (Prüfer [274]) Let A be the set of spanning trees in the complete graph Kn defined on the set n. Let B be the set of all sequences of length (n − 2) with entries from n. Obviously, |B| = nn−2 . To prove |A| = nn−2 , we establish a bijection between A and B by computing the Prüfer sequence f (T ) for a labeled tree T as follows. We iteratively delete the leaf with smallest label and append the label of its neighbor to the sequence. After (n − 2) iterations, a single edge remains and we have produced a sequence f (T ) of length (n − 2). The sequence for the tree in Figure 4.3 is 144771, leaving the edge (1,8). Next, we define a function g that produces a tree from each sequence a. Later, we prove g = f −1 . We begin with a forest consisting of n isolated vertices 1, 2, . . . , n. At the ith step, let x be the label in position i of a. Let y be the smallest label that does not appear in later positions and has not been marked finished. Add the edge ( y, x) and mark y finished. After exhausting a in (n − 2) steps, join the two
ch004.tex
19/7/2008
17: 47
Page 69
Trees
69
2
FIGURE 4.3
1
7
4
8
6
5
3
Illustration of the Prüfer sequence.
remaining unfinished vertices by an edge. For example, g(144771) is the tree in Figure 4.3. Vertices cannot be marked finished until they no longer appear in the sequence, and we finish one at each step. Hence, we start the ith step with (n − i + 1) unfinished vertices and (n − i) remaining entries in a. This implies that y can be chosen as described and the algorithm does create a graph with (n − 1) edges. We show that it is a tree by showing that it is connected. Each step joins two unfinished vertices and marks one of them finished. With the basis remarked previously, it follows inductively that after i steps the graph has (n − i) components, each containing one unfinished vertex. The edge added at the last step, therefore, connects the graph. Hence, g(a) is a tree. We want to prove that g = f −1 . At each step in computing f (T ), we can mark the deleted leaf as finished. The labels that do not appear in the remainder of the sequence we generated are the unfinished vertices that are now leaves. Because the next leaf deleted is the least, the edge deleted at each stage in computing f (T ) from T is precisely the edge added when computing g( f (T )). Therefore, g( f (T )) = T . COROLLARY 4.3 The number of trees with vertex set n
in which vertices 1, 2, . . . , n have degrees d1 , d2 , . . . , dn , respectively, is (n − 2)!/ ni=1 (di − 1)!. Proof: As we delete the vertex x from T while constructing the Prüfer sequence, all neighbors of x except one have already been deleted. We recorded x once for each such neighbor. After the deletion of x, x never appears again. Suppose that x remains at the end. One edge incident to x also remains. Thus, x appears (deg(x) − 1) times in the sequence. Therefore, we can count trees with each i having degree di by counting sequences of length (n − 2) having (di − 1) copies of i for each i. Suppose that we assign subscripts to the copies of each i to distinguish them. There are (n − 2)! sequences. However, the copies
of each i are in fact indistinguishable. We have counted each desired arrangement ni=1 (di − 1)! times, once for each way to order the subscripts on each type of label.
Example 4.4 Let us count those trees with vertices {1, 2, 3, 4, 5, 6, 7} that have degrees (3, 1, 2, 3, 1, 1, 1), respectively. We compute (n − 2)!/ ni=1 (di − 1)! = 30. These trees are suggested in
ch004.tex
19/7/2008
17: 47
Page 70
70
Graph Theory and Interconnection Networks 1
FIGURE 4.4
3
4
1
4
3
4
1
3
Illustration of Example 4.4.
Figure 4.4. For the first figure, it corresponds to six trees by picking from the remaining four vertices where two are adjacent to vertex 1. For each of the remaining figures, it corresponds to twelve trees by picking the neighbor of vertex 3 from the remaining four and then picking the neighbor of the central vertex from the remaining three.
There is a recursive way to count spanning trees by separately counting those that contain a particular edge e and those that omit e. Let e = (u, v) be an edge of G. The contraction of e is the operation of replacing u and v by a single vertex whose incident edges are the edges other than e that were incident to u or v. The resulting graph, denoted G · e, has one fewer edge than G. Visually, we think of contracting e as shrinking e to a single point. Contraction may produce multiple edges. To count spanning trees correctly, we must keep the multiple edges. However, in other applications of contraction, the multiple edges may be irrelevant. Since no spanning tree contains a loop, we may freely discard loops that arise in contraction. The following recurrence applies for all graphs. PROPOSITION 4.4 τ(G) = τ(G − e) + τ(G · e). Proof: The spanning trees of G that omit e are precisely the spanning trees of G − e. Since there is a natural bijection between the spanning tree of G · e and spanning trees of G contain e, the number of spanning trees that contain e is τ(G · e). Thus, τ(G) = τ(G − e) + τ(G · e).
Example 4.5 It is easy to confirm that τ(G − e) = τ(G · e) = 4 in Figure 4.5. By Proposition 4.4, τ(G) = 8.
Computation using the recurrence in Proposition 4.4 requires initial conditions for graphs with no edges. Suppose that G is a graph with one vertex and no edge. Then τ(G) = 1. Suppose that G has more than one vertex and no edge. Then τ(G) = 0. However, the recursive computation is impractical for large graphs. We will introduce the following Matrix Tree Theorem to compute τ(G) using a determinant. However, we omit the proof, because it is rather difficult. Let G be a loopless graph G with the vertices set {v1 , v2 , . . . , vn }. Let aij be the number of edges of the form (vi , vj ). The Kirchoff matrix associated with G is the matrix K(G) with entry (i, j) being −aij when i = j and d(vi ) when i = j. THEOREM 4.7 (Matrix Tree Theorem, Kirchoff [201]) Let K ∗ be the matrix obtained by deleting any row s and column t of K(G). Then τ(G) = (−1)s+t det(K ∗ ).
ch004.tex
19/7/2008
17: 47
Page 71
Trees
71
Ge
G
FIGURE 4.5
Illustration of Proposition 4.4.
K(D)
2 1 1 0 0 0 0 1
FIGURE 4.6
G•e
2
1 3
1
0 1 1 K(D) 0 2 0 0 1 1
Illustration of Theorem 4.8.
Example 4.6 Let G be the graph in Example 4.5. The vertex degrees are 3,3,2,2. We can form the associated Kirchoff matrix on the left below. Take the determinant of the matrix in the middle. We obtain τ(G) = 8. ⎛
3 −1 −1 ⎜−1 3 −1 ⎜ ⎝−1 −1 2 −1 −1 0
⎞ ⎛ −1 3 −1 −1⎟ ⎟ → ⎝−1 2 0⎠ −1 0 2
⎞ −1 0⎠ → 8 2
Tutte [314] extends this theorem to directed graphs. An out-tree is an orientation of a tree having a root of in-degree 0 and all other vertices of in-degree 1. An in-tree is an out-tree with its edges reversed. Let D be a loopless digraph with the vertices set {v1 , v2 , . . . , vn }. Let D− , D+ be the diagonal matrices of in-degrees and out-degrees in G. Let A be the matrix with i and j entries as the number of edges from vi to vj . Then the Kirchoff in-matrix K − (D) is D− − A and the Kirchoff out-matrix K + (D) is D+ − A . THEOREM 4.8 (Directed Matrix Tree Theorem, Tutte [314]) The number of in-trees rooted at vi is the value of any cofactor in the ith row of K(D)+ . Similarly, the number of out-trees rooted at vi is the value of any cofactor in the ith column of K(D)− .
Example 4.7 The digraph in Figure 4.6 has two out-trees rooted at 1 and two in-trees rooted at 2. We can check these results using determinants.
ch004.tex
19/7/2008
17: 47
Page 72
72
Graph Theory and Interconnection Networks
4.5
COUNTING BINARY TREES
In the following discussion, we are going to count the number of binary trees with n vertices. However, we first study the set of well-formed sequences of parentheses. The set of well-formed sequences of parentheses is defined by the following recursive definition: 1. The empty sequence is well-defined. 2. If A and B are well-formed sequences, so is AB (the concatenation of A and B). 3. If A is well-formed, so is (A). 4. There are no other well-formed sequences. For example, ( ( ) ( ( ) ) ) is well-formed; ( ( ) ) ) ( ( ) is not. The following lemma can easily be proved by induction. LEMMA 4.2 A sequence of (left and right) parentheses is well-formed if and only if it contains an even number of parentheses, half of which are left and the other half are right, and we read the sequence from left to right, the number of right parentheses never exceeds the number of left parentheses. Let Bn denote the set of all binary tree with n nodes, Wn denote the set of all well-formedparentheses. In the following discussion, we will prove that |Bn | = |Wn | = 1 +1 n 2n . n LEMMA 4.3
|Bn | = |Wn |.
Proof: We are going to set a one-to-one correspondence between Bn and Wn . For any binary tree T in Bn , we use the following algorithm to transform T into a sequence f (T ) in Wn . Procedure transform(T) 1. 2. 3. 4. 5.
if T = ∅, then write “(” transform(left child of v) write “)” transform(right child of v)
It can be easily proved by induction that the function f has one-to-one correspondence. Hence, |Bn | = |Wn |. THEOREM 4.9 |Bn | = |Wn | = 1 +1 n 2n n . Proof: We first show a one-to-one correspondence between the non-well-formed sequences of n left and n right parentheses, and all sequences of (n − 1) left parentheses and (n + 1) right parentheses.
ch004.tex
19/7/2008
17: 47
Page 73
Trees
73
Let p1 p2 . . . p2n be a sequence of n left and n right parentheses that is not wellformed. By Lemma 4.2, there is a prefix of it that contains more right parentheses than left. Let j be the least integer such that the number of right parentheses exceeds the number of left parentheses in the subsequence p1 p2 . . . pj . Clearly, the number of right parentheses is then one larger than the number of left parentheses, or j is not the least index to satisfy the condition. Now, invert all pi ’s for i > j from left parentheses to right parentheses, and from right parentheses to left parentheses. Clearly, the number of left parentheses is now (n − 1) and the number of the right parentheses is now (n + 1). Conversely, given any sequence p1 p2 . . . p2n of (n − 1) left parentheses and (n + 1) right parentheses, let j be the first index such that p1 p2 . . . pj contains one more right parenthesis than left parentheses. If we now invert all parentheses in the section pj+1 pj+2 . . . p2n from left to right and from right to left, we get a sequence of n left and n right parentheses that is not well-formed. This transformation is the inverse of the one of the previous paragraph. Thus, the one-to-one correspondence is established. The number of sequence of (n − 1) left and (n + 1) right parentheses is 2n n−1 We can choose the places for the left parentheses, and the remaining places will have right parentheses. Thus, the number of well-formed sequences of length n is 1 2n 2n 2n − = n n−1 1+n n Hence, the theorem is proved.
These number are called Catalan numbers. There is another method for computing the number of binary trees of n vertices through the use of a generating function as follows. Let bn denote the number of binary trees with n nodes. 1. Show that b0 = 1 and that n ≥ 1, bn = n−1 k bn−1−k . k=0 b n 2. Let B(x) be the generating function √ B(x) = ∞ n=0 bn x . Show that B(x) = 1 2 xB(x) + 1 and hence B(x) = 2x (1 − 1 − 4x). 3. Using the Taylor’s expansion, show that bn = 1 +1 n 2n n .
4.6
NUMBER OF SPANNING TREES CONTAINS A CERTAIN EDGE
The concept of all-terminal network reliability, proposed by Kel’mans [198], is defined as follows: Let G be a graph that represents the topology of a network. Assume that the vertices are perfectly reliable, but the edges operate independently with the same probability, p. The network is operational if the underlying probabilistic graph is connected. Colbourn’s monograph [74] is an excellent survey of the work of this problem.
ch004.tex
74
19/7/2008
17: 47
Page 74
Graph Theory and Interconnection Networks
In computing, the all-terminal reliability of a network appears to be intractable. When the edges are very unreliable, maximizing the number of spanning trees is critical to maximizing reliability. Maximizing the number of spanning trees over all graphs with the same numbers of edges and vertices does not guarantee a network that is most reliable for all values of p. There are some studies concentrated on the problem of determining the graph on n vertices and m edges with the maximum number of spanning trees [27,55,197,199,308,338]. However, in many application, the graph topology is already given. For this situation, Tsen et al. [306] consider the problem that determines the effect of edge deletion with respect to the number of spanning trees. The digraph D associated with an undirected graph G is constructed by replacing each edge (u, v) of G with the arcs (u, v) and (v, u). The following lemma can easily be obtained. LEMMA 4.4 Assume that G is an undirected graph and D is the digraph associated with G. There is a one-to-one correspondence between the spanning trees of G and the out-tree rooted (in-tree) at any vertex of D. From the one-to-one correspondence stated in Lemma 4.4, the number of spanning trees of an undirected graph G containing a particular edge (u, v) equals the number of out-trees in the associated digraph containing (u, v) plus the number of out-trees in the associated digraph containing (v, u). To avoid treating the arcs that are incident to the root vertex r of D as a special case, we augment the original digraph D with a new vertex u, along with a new arc (u, r). Again, there is a one-to-one correspondence between the out-tree of D and those of the augmented digraph. Correspondingly, the augmented Kirchoff matrix A for the rooted digraph D is defined as the Kirchoff matrix K with one added to the diagonal entry for the root vertex (or equivalently, the matrix of the augmented digraph with the row and the column corresponding to the new root removed). We have the following corollary. COROLLARY 4.4 The number of out-tree of D rooted r equals the determinant of the corresponding augmented Kirchoff matrix. Because exactly one arc enters each nonroot vertex in an out-tree, there is a one-to-one correspondence between the out-trees of D that contain arc a and those D ◦ a, which is obtained from D by removing all arcs, except a, that enter the terminus of a. Thus, the number of spanning trees containing an arc can be computed by evaluating the determinant of the augmented Kirchoff matrix for D ◦ a. Suppose that we first compute the inverse of the augmented Kirchoiff matrix. The determinant of the augmented Kirchoff matrix for D ◦ a can be found in constant time. The classical adjoint matrix of a matrix A, adj(A) = [bij ], is det(A) · A−1 . The value of bij is (−1)i+ j · det(Aji ), where Aji is the matrix obtained from A by deleting row j and column i. The determinant of A = [αij ] is nj=1 αij · (−1)i+ j · det(Aij ). This is expansion by cofactors across row i. Thus, the determinant of A can be computed by cross-multiplying row i of A and column i of the matrix adj(A). The crucial observation
ch004.tex
19/7/2008
17: 47
Page 75
Trees
75
is that column i of adj(A) contains the cofactors of A obtained by deleting row i of A (along with one of the columns). Hence, any change to row i of A has no effect on the column i of adj(A). Let ei be the vector which is 1 in the position i but is 0 otherwise. The augmented Kirchoff matrix of D ◦ a is obtained from A by changing row j to (ej − ei ). Therefore, from the previous observations, the number of out-tree containing a is bjj − bij . We have the following theorem. THEOREM 4.10 Assume that A is the augmented Kirchoff matrix of a digraph G. For each arc (i, j), the number of out-trees containing this arc is bjj − bij . Alternatively, for the undirected case, the number of trees containing edge (i, j) is: bjj − bij + bii − bji .
Example 4.8 Let G be the graph shown in Figure 4.7a. The corresponding Kirchoff matrix of G is the matrix A in Figure 4.7d. The associated digraph D is shown in Figure 4.7b. Obviously, the corresponding Kirchoff matrix of D is again the matrix A. With Lemma 4.4, the number of spanning trees of G is the number of rooted trees rooted at the vertex 1. We add to the digraph D a root u and joining u to the vertex 1 to obtain a directed graph D as shown in Figure 4.7c. Obviously, the number of spanning rooted trees of D rooted at 1 is the number of spanning rooted roots of D rooted at u. Thus, the number of spanning rooted trees of D rooted at 1 is the determinant of the augmented Kirchoff matrix B shown in Figure 4.7e. Obviously, the number of spanning trees of G containing the edge (6, 2) is the sum of the number of spanning trees of D containing the arc (6, 2) and the number of spanning trees of D containing the arc (2, 6). Let T be any spanning rooted tree of D rooted at 1 containing the arc (6, 2). Note that the in-degree of the vertex 2 in T is 1. Obviously, T does not have any arcs in {(1, 2), (3, 2), (4, 2), (5, 2)}. Thus, the number 2
3
2
1
4
6
3
1
6
2 1 1
A
0
0
2 1
0 1 1 0 1 1 1
3 1
0 1
1
0
0
3 1
0
0 1 0
3 1
0 1
3
B
5
0 1
3 1
0 1 0 1 1 1
Illustration of Example 4.8.
(c)
5 1 1 1 1
0
0
2 1
0 1 1
(d)
FIGURE 4.7
6
(b)
5 1 1 1 1
0 1
4
5
(a)
3
1
4
5
2
u
0
0
3 1
0
0 1 0
(e)
3 1
0 1
3
C
0
0
0
0 1
1 1 1 1 1
0
0
2 1
0
0
0
0
0
0
0
3 1
0
0 1
1 1
(f)
0
3 1
0 1
3
ch004.tex
19/7/2008
17: 47
Page 76
76
Graph Theory and Interconnection Networks of spanning rooted trees of D rooted at 1 containing the arc (6, 2) is the determinant of the matrix C shown in Figure 4.7f.
4.7
EMBEDDING PROBLEM
Both the complete binary tree BTn and the hypercube Qn are widely used in computer architecture. We would like to know whether BTn is a subgraph of Qn . Obviously, BT1 is a subgraph of Q1 and BT2 is a subgraph of Q2 . THEOREM 4.11 BTn is a subgraph of Qn if and only if n = 1, 2. Proof: We note that both BTn and Qn are connected bipartite graphs. The bipartition of any connected graph is unique. It is observed that both the sizes of the bipartition for Qn are 2n−1 . However, one of the sizes of the bipartition of BTn is at least 2n−1 + 2n−3 if n ≥ 3. By the pigeonhole principle, it is easy to see that BTn is not a subgraph of Qn if n ≥ 3. Despite the preceeding argument, BTn is almost a subgraph of Qn . In particular, a very similar graph, the 2n -node double-rooted complete binary tree, denoted DRCB(n), is a subgraph of Qn . DRCB(n) is a complete binary tree with the root replaced by a path of length 2. For example, the graph DRCB(4) is shown in Figure 4.8. THEOREM 4.12 DRCB(n) is a subgraph of Qn for n ≥ 1. Proof: We prove this theorem by induction. Obviously, DRCB(1) is a subgraph of Q1. Assume that DRCB(k) is a subgraph of Qk for 1 ≤ k < n. We partition Qn into two Qn−1. Each contains 2n−1 nodes DRCB(n − 1) trees by induction. When embedding the two DRCB(n − 1) trees, we need to make sure that the trees are oriented as shown in Figure 4.9. In particular, we want to orient the two subcubes so that the right root of the left tree is matched to the left root of the right tree so that the left root of the left tree is matched to the son of the left root of the right tree, and so that the son of the right root of the left tree is matched to the right root of the right tree. By the symmetry properties of the hypercubes, we know that such an orientation is always possible. We can now complete the embedding of the DRCB(n) tree by adding the matching edges and cross-linking the trees as shown in Figure 4.9. This completes the proof that DRCB(n) is a subgraph of Qn .
FIGURE 4.8 The graph DRCB(4).
ch004.tex
19/7/2008
17: 47
Page 77
Trees
77 0100...
0000...
1000...
0010...
1100...
1010...
New roots
0100...
0000...
1000... 1100...
0010...
FIGURE 4.9
1010...
Embedding DRCB(n) into Qn .
0000
1000
1010
1110
0010 0110
0001
1001
1011 0100
0101
1101 1100
0011
0111
FIGURE 4.10 An embedding of BT4 into FQ4 .
Similarly, we would like to know whether BTn is a subgraph of the folded hypercube FQn . Note that FQn is a bipartite graph if n is odd. Using an argument similar to that in Theorem 4.11, we have the following theorem. THEOREM 4.13 BTn is not a subgraph of FQn if n is odd and n ≥ 3. So, the remaining cases are that n is even and n ≥ 4. Figure 4.10 shows an embedding of BT4 into FQ4 . In Ref. 65, Choudum and Nahdini proved that BTn is a subgraph of FQn if n is even.
ch004.tex
78
19/7/2008
17: 47
Page 78
Graph Theory and Interconnection Networks
More generally, we can consider the following terminologies. Let G = (V (G), E(G)) be a guest graph and H = (V (H), E(H)) be a host graph. A one-to-one function φ from V (G) into V (H) is an embedding of G into H. Two common measures of quality of an embedding are the dilation that measures the communication delay and the expansion that measures the processor utilization. The dilation of the embedding φ, dilation(φ), is defined as max{dH (φ(x), φ( y)) | (x, y) ∈ E(G)}. The expansion of the embedding φ, expansion(φ), is defined as |V (H)|/|V (G)|. For example, the complete binary tree BTn with n being even can be embedded into FQn with dilation 1 and expansion 2n /(2n − 1). There are some studies on the embedding problems [17,32,106,159–162,222,253,267,270].
ch005.tex
19/7/2008
5 5.1
17: 50
Page 79
Eulerian Graphs and Digraphs
EULERIAN GRAPHS
Some say that graph theory was born in the city of Königsberg, located on the banks of the Pregel. The river surrounded the island of Kneiphof, and there were seven bridges linking the four land masses of the city, as illustrated in Figure 5.1a. It seems that the residents wanted to know whether it was possible to take a stroll from home, cross every bridge exactly once, and return home. The problem reduces to traversing the graph in Figure 5.1b, where the vertices represent land masses and the edges represent bridges. We want to know when a graph contains a single closed trail traversing all its edges. The Swiss mathematician Leonhard Euler observed [100] that Königsberg had no such traversal. Because a closed trail contributes twice to the degree of a vertex for each visit, the degree of each traversed vertex is even. Moreover, the edge set generates a connected component. All vertex degrees of the graph in Figure 5.1b are odd. Thus, it fails the necessary condition. Euler stated that the condition is also sufficient. In honor of Euler, we say that a graph whose edges constitute a single closed trail is Eulerian. In fact, Euler’s paper, which appeared in 1741, gave no proof that the obvious necessary condition is sufficient. Hierholzer [145] gave the first published proof. The diagram in Figure 5.1b did not appear until 1894 (see [342] for a discussion of the historical record). We use the term circuit as another name for closed trail. A circuit containing every edge of G is a Eulerian circuit. We also use odd vertex or even vertex to indicate the parity of a vertex degree. Moreover, we say that a graph is even if all its vertices are even. Recall that a nontrivial graph is a graph having at least one edge. A graph is Eulerian if it has a Eulerian circuit. LEMMA 5.1
Nontrivial maximal trails in even graphs are closed.
Proof: Assume that T is a nontrivial maximal trail in an even graph G. Since T is maximal, T includes all edges of G incident to its final vertex v. Moreover, T has an odd number of edges incident to v if T is not closed. THEOREM 5.1 A graph G is Eulerian if and only if the degree of each vertex is even and its edge set generates a connected component. Proof: Assume that graph G is Eulerian. From the previous discussion, we know that the degree of each vertex is even and its edge set generates a connected component. Conversely, suppose that the degree of each vertex of G is even and the edge set of G generates a connected component. Let T be a trail in G of maximum length. Obviously, 79
ch005.tex
19/7/2008
17: 50
Page 80
80
Graph Theory and Interconnection Networks
(a)
(b)
FIGURE 5.1 The Königsberg seven-bridge problem.
e T
e
v
FIGURE 5.2
T′
Illustration of Theorem 5.1.
T is a maximal trail. By Lemma 5.1, T is closed. Let G = G − E(T ). Since the closed trail T has an even degree at every vertex, G is an even graph. We will claim that E(G ) = ∅. Obviously, T traverses every edge of G and is a Eulerian circuit once our claim holds. Suppose that E(G ) = ∅. Since G has one nontrivial component, G has a path from e to a vertex of T . Thus, some edge e of G is incident to some vertex v of T . Let T be any maximal trail in G beginning from v along e . See Figure 5.2 for illustration. By Lemma 5.1, T is closed. Hence, we can detour from T along T when we reach v, and then complete T to obtain a longer trail than T . However, T is the longest trail in our hypothesis. Thus, E(G ) = ∅. This proof and the resulting algorithm are basically those of Hierholzer [145]. Before discussing constructive aspects, we generalize to all connected graphs. Given a figure G to be drawn on paper, how many times must we pick up and move the pen (or plotter) to draw? This is the minimum number of pairwise edge-disjoint trails whose union is E(G). Since the number of trails needed to draw G is the sum of the number needed to draw each component, we may reduce the problem to connected graphs. Recall that every circuit is a closed trail. The graph G in Figure 5.3 has four odd vertices and we can decompose it into two trails. Adding dashed edges forms G to G , as in Figure 5.3, making it Eulerian.
ch005.tex
19/7/2008
17: 50
Page 81
Eulerian Graphs and Digraphs
G
81
G
FIGURE 5.3 The graphs G and G .
THEOREM 5.2 Let G be a connected nontrivial graph with 2k odd vertices. The minimum number of pairwise edge-disjoint trails covering the edges is max{k, 1}. Proof: A trail contributes an even degree to every vertex, except that a nonclosed trail contributes an odd degree to its endpoints. Therefore, a partition of the edges into trails must have some trail ending at each odd vertex. Note that each trail has (at most) two ends. It requires at least k trails. Since e(G) > 0, it also requires at least one trail. Thus, one trail suffices if k = 0. To prove that k trails suffice when k > 0, we can pick up the odd vertices in G arbitrarily and form G by adding a copy of each pair as an edge, as illustrated in Figure 5.3. Obviously, the resulting G is connected and even. By Theorem 5.1, G has an Eulerian circuit. As we traverse the circuit, we start a new trail in G each time we traverse an edge of G − E(G). This yields k-disjoint trails partitioning E(G). The proof of Theorem 5.1 provides an algorithm that constructs an Eulerian circuit. It iteratively merges circuits into the current circuit until all edges are absorbed. In the following, we will introduce an algorithm that approaches the draw the figure problem more directly, building a circuit one edge at a time without backtracking. An Eulerian circuit can start anywhere. However, an Eulerian trail must start at an odd vertex. We will not traverse an edge whose deletion cuts the remaining graph into two nontrivial components, because it could not return to pick up the stranded edges. Once we avoid such an edge, we can complete the traversal. ALGORITHM: (Fleury’s Algorithm—constructing Eulerian trails.) Input. A graph G with one nontrivial component and at most two odd vertices. Initialization. Start at a vertex that has an odd degree unless G is even, in which case start at any vertex. Iteration. From the current vertex, traverse any remaining edge whose deletion from the remaining graph does not leave a graph with two nontrivial components. Stop when all edges have been traversed. THEOREM 5.3 Suppose that G has one nontrivial component and at most two odd vertices. Then Fleury’s algorithm constructs an Eulerian trail. Proof: We use induction on e(G). The claim is immediate for e(G) = 1. Assume that e(G) > 1, and assume that the claim holds for graphs with e(G) − 1 edges. Suppose
ch005.tex
19/7/2008
17: 50
Page 82
82
Graph Theory and Interconnection Networks
P v
u
x
FIGURE 5.4
G
Illustration of Theorem 5.3.
that G is even. Then every edge of G is in a cycle. Thus, G has no cut edge. Hence, starting with some vertex v along an edge (u, v) leaves a graph with two odd vertices. By induction hypothesis, the algorithm completes the circuit of G by completing a trail from u to v in G − (u, v). Suppose that G has two odd vertices u and v. Assume that d(u) = 1. Then traversing (u, x) leaves one nontrivial component. Thus, we assume that d(u) > 1. Let P be a path from u to v and (u, x) be an edge incident to u but not on P. Suppose that (u, x) is a cut edge. Since u and v are connected in G − (u, x), x would be the only odd vertex in its component of G − (u, x) (see Figure 5.4). Thus, (u, x) is not a cut edge. Therefore, u has an incident edge (u, x) whose traversal leaves a graph G − (u, x) having at most one nontrivial component and at most two odd vertices. Suppose that x = v. Then G − (u, x) is even. Suppose that x = v. Then the vertices of G − (u, x) are even except for x and v. By induction, the algorithm completes an Eulerian trail of G from u to v by traversing an Eulerian trail of G − (u, x) from x to v.
5.2
EULERIAN DIGRAPHS
A circuit in a digraph traverses edges from tail to head. An Eulerian circuit traverses every edge. A digraph is Eulerian if it has an Eulerian circuit. Now, we study the necessary and sufficient condition for Eulerian digraphs. A digraph G is strongly connected or strong if there is a path from u to v in G for every ordered pair u, v ∈ V (G). Each entrance to a vertex is followed by a departure, so an Eulerian digraph satisfies deg+ (u) = deg− (v) for all u ∈ V (G). This is also sufficient, if each edge of G is reachable from every other. The proofs are similar to those of undirected graphs. We present a constructive proof, analogous to Fleury’s algorithm. It needs only one search computation to create a tree at the beginning. After that, the information needed to construct the circuit is present in the tree. ALGORITHM: (Directed Eulerian circuit.) Input. A digraph G satisfies deg+ (u) = deg− (u) for all u ∈ V (G). Step 1. We choose any vertex v ∈ V (G). Let G be the digraph obtained from G by reversing direction on each edge. Using BFS and DEF on G to construct a tree T consisting of paths from v to all other vertices.
ch005.tex
19/7/2008
17: 50
Page 83
Eulerian Graphs and Digraphs
83 5
6
1
4
2 13
3 14
y 9
15 7
10 8
12 11
FIGURE 5.5 The digraph for Example 5.1.
Step 2. Let T be the reversal of T . Thus, T contains a path from u to v in G for each u ∈ V (G). We specify an arbitrary ordering of the edges that leaves each vertex u, except that u = v and the edge leaving u in T must come last. Step 3. Construct an Eulerian circuit from u as follows: whenever u is the current vertex, exit along the next unused edge in the order specified for each edge leaving u.
Example 5.1 In the digraph in Figure 5.5, the solid edges indicate an in-tree T of paths into v. We follow the Eulerian circuit starting with edge 1. Then, we avoid using edges of T until we have no choice. Assuming that the ordering at v places 1 before 7 before 13, the algorithm traverses the edges in the order indicated.
THEOREM 5.4 Assume that G is a digraph with one nontrivial component and deg+ (u) = deg− (u) for all u ∈ V (G). Then the previous algorithm constructs a Eulerian circuit of G. Proof: First, we construct T . We must prove that T forms a spanning tree of the subgraph generated by the set of edges in G. The search (BFS) from v reaches a new vertex at each step. Otherwise, all edges between the current reached set R and the remaining vertices enter R. Note that each edge within R contributes once to the in-degree and once to the out-degree of vertices in R. Moreover, each edge entering R contributes only to the in-degree. Hence, the sum of in-degrees in R exceeds the sum of out-degrees, which contradicts our hypothesis that deg+ (u) = deg− (u) for each vertex u. Now we use T to build a trail as directed. We need to prove the trail obtained by the algorithm is indeed an Euler circuit. Since deg+ (u) = deg− (v), there exists an edge leaving v once we enter a vertex u = v. Since we cannot use an edge of T until it is the only remaining edge leaving its tail, we cannot use all edges entering v until we have finished all the other vertices. Since T contains a path from each vertex to v, the trail can end only at v. Moreover, we end at v only if we have used all edges leaving
ch005.tex
19/7/2008
17: 50
Page 84
84
Graph Theory and Interconnection Networks a
f
b
e
c
d
In-tree has: (f,a) and (d,e) (f,a) and (d,f ) (f,b) and (d,e) (f,b) and (d,f )
Circuit: (b,c,d,f,b,d,e,f,a,b) (b,c,d,e,f,b,d,f,a,b) (b,c,d,f,a,b,d,e,f,b) (b,c,d,e,f,a,b,d,f,b)
FIGURE 5.6 The digraph for Example 5.2.
v, and hence also all edges entering v. Thus, the trail obtained by the algorithm is an Euler circuit.
Example 5.2 Consider digraph in Figure 5.6. Every in-tree to b contains the edges (a, b), (e, f ), (c, d), exactly one of {( f , a), ( f , b)}, and exactly one of {(d, e), (d, f )}. Thus, there are exactly four in-trees to b. It is observed that the
number of legal sets of orderings of the edges leaving the vertices for each in-tree is (di − 1)! = (0!)3 (1!)3 = 1. Hence, we can generate one Eulerian circuit for each in-tree, starting along the edge (b, c) from b.
Two Eulerian circuits are the same if the successive pairs
of edges are the same. From each in-tree to v, the previous algorithm can generate u∈V (G) (deg+ (u) − 1)! different Eulerian circuits. The last out-edge is fixed by the tree for vertices other than v. Since we consider only the cyclic order of the edges, we may choose any particular edge e to start the ordering of edges leaving v. Any change in the exit orderings at vertices specifics at some point different choices for the next edge. Thus, these circuits are distinct.
Similarly, the circuits obtained from distinct T s are distinct. Therefore, we have c u∈V (G) (deg+ (u) − 1)! distinct Eulerian circuits where c is the number of in-trees to v. In fact, these are all Eulerian circuits. This provides a combinatorial proof that the number of in-trees to each vertex of an Eulerian digraph is the same. Since the graph obtained by reversing all the edges has the same number of Eulerian circuits, the number of out-trees from any vertex also has this same value, c. The value c can be computed using the Directed Matrix Tree Theorem. THEOREM 5.5 (van Aardenne-Ehrenfest and de Bruijn [323], Tutte and Smith + − [316]). Assume that G is a Euler
n digraph. Let di = deg (vi ) = deg (vi ). Then the number of Eulerian circuits is c i=1 (di − 1)! where c is the number of in-trees or the number of out-trees from any vertex. Proof: We have observed that the previous algorithm generates these many distinct Eulerian circuits using in-trees to v with e being the first edge in the exit ordering at v. We need only to show this produces all Eulerian circuits. To find the tree and ordering for an Eulerian circuit C, we can follow C from e and record the exit ordering of edges leaving each vertex. For each vertex w other than v, we collect in a set T the last edge leaving w. Since the last edge leaving a vertex occurs in C after all edges entering it, each edge in T extends to a path in T
ch005.tex
19/7/2008
17: 50
Page 85
Eulerian Graphs and Digraphs
85
that reaches v. With (n − 1) edges, T thus forms an in-tree to v. Furthermore, C is the circuit obtained from T and these exit orderings by the previous algorithm. By Theorem 5.5, we can compute the number of Euler circuits for directed graphs. However, we do not know how to compute the number of Euler circuits for undirected graphs.
5.3 APPLICATIONS 5.3.1
CHINESE POSTMAN PROBLEM
Suppose that a mail carrier traverses all edges in a road network, starting and ending at the same vertex. The edges have nonnegative weights representing distance or time. We seek a closed walk of minimum total length that uses all the edges. This is called the Chinese Postman Problem, in honor of the Chinese mathematician Guan Meigu [131], who proposed it. Suppose that every vertex is even. The graph G is Eulerian and the answer is the sum of the weights. Otherwise, we must repeat edges. Every traversal is an Eulerian circuit of a graph obtained by duplicating edges of G. Finding the shortest traversal is equivalent to finding the minimum total weight of edges whose duplication will make all vertices even. We say duplication because if we need not use more times in making all vertices even, then deleting two of those copies will leave all vertices even. There may be many ways to choose the duplicated edges.
Example 5.3 Let us consider the graph shown in Figure 5.7. The eight outer vertices are odd. If we match them around the outside to make the degrees even, the extra cost is 4 + 4 + 4 + 4 = 16 or 2 + 6 + 6 + 2 = 16. We can do better by using all the vertical edges, which total only 12.
The example illustrates that adding an edge from an odd vertex to an even vertex makes the even vertex odd. We must continue adding edges until we complete a trail to an odd vertex. The duplicated edges must consist of a collection of trails that pair
6 4
1 3
4
1 2
3 2
2 3
4
2 2 1
1 6
FIGURE 5.7 The graph for Example 5.3.
3 4
2
ch005.tex
19/7/2008
17: 50
Page 86
86
Graph Theory and Interconnection Networks
up the odd vertices. We may restrict our attention to paths pairing up the odd vertices, though the paths may need to intersect. Edmonds and Johnson [91] described a way to solve the Chinese Postman Problem. Suppose that there are only two odd vertices. We can find the shortest path between them and solve the problem. Suppose that there are 2k odd vertices. Then we can find the shortest paths connecting each pair of odd vertices. We use these lengths of weights as the edges of K2k . Then our problem is equivalent to finding the minimum total weight of k edges that pair up these 2k vertices. An exposition appears in Ref. 126.
5.3.2
STREET-SWEEPING PROBLEM
In traversing a road network, it may be important to consider the direction of travel along segments of road, such as when sweeping the curb. The curb must be traversed in the direction that traffic flows, so a two-way street contributes a pair of opposite directed edges, and a one-way street contributes two edges in the same direction. We consider a simple version of the street-sweeping problem, discussed in more detail in Ref. 276, following the results of Tucker and Bodin [309]. In New York City, parking is prohibited from some street curbs each weekday to allow for street sweeping. This defines a sweep subgraph G of the full digraph of curbs. G consists of the edges available for sweeping, directed to follow traffic. The question is how to sweep G while minimizing the deadheading time; that is, the time when no sweeping is being done. Suppose that the in-degree equals the out-degree at each vertex of the subgraph. Obviously, no deadheading is needed. Otherwise, we must duplicate edges or add edges from the full digraph to obtain a Eulerian superdigraph of the sweep digraph. Each edge e in the full graph H has a deadheading time t(e). Let X be the set of vertices with in-degrees exceeding out-degrees. We + set σ(x) = deg− G (x) − degG (x) for x ∈ X. Let Y be the set of vertices with out+ − degrees exceeding in-degrees. We set ρ( y) = degG ( y) − degG ( y) for y ∈ Y . Note that x∈X σ(x) = y∈Y ρ( y). The Eulerian superdigraph must add σ(x) edges with tails at x ∈ X and ρ( y) edges with heads at y ∈ Y . Since we must finish with a supergraph having degrees in balance, we can think of the additions as paths from X to Y . The cost of adding a path from x to y is the distance from x to y in H. We now have a Transportation Problem. Given supplies σ(x) for each x ∈ X and demand ρ( y) for y ∈ Y and cost c((x, y)) for sending a unit from x to y, with σ(x) = ρ( y), the problem is to satisfy the demands with the least total cost. The problem is discussed at length in Ford and Fulkerson [110].
5.3.3
DRUM DESIGN PROBLEM
There are 2n binary strings of length n. Is there a cyclic arrangement of 2n strings of n where consecutive digits are all distinct? This can be used to test the position of a rotating drum, as observed by Good [127]. Suppose that the drum has 2n rotational positions, and a strip around the surface is partitioned into 2n portions that can be coded 0 or 1. Taps reading n consecutive portions can determine the position of the drum if the specific cyclic arrangement exists. For n = 4 we can use (0000111101100101), shown in Figure 5.8.
ch005.tex
19/7/2008
17: 50
Page 87
Eulerian Graphs and Digraphs
1
0
87
0
0
0
0
1
1 0
1
0
1 1
1 1
0
000 100 11 0
001
0
011
010 0 1 1 101 0 1 1
0 0 1
0
0 110 111
1 B(2, 3)
FIGURE 5.8 The drum design.
We can construct such an arrangement by finding an Eulerian circuit of the de Bruijn digraph BRU(2, n − 1). Note that the vertex set of BRU(2, n − 1) is the set of all (n − 1)-digit binary sequences. Place an edge from sequence a to sequence b if the last (n − 2) digits of a agree with the first (n − 2) digits of b. Label the edge with the final digit of b. For each sequence a, there are two digits that we can append to obtain a new sequence, and hence there are two edges leaving each vertex. Similarly, because there are two digits that we could drop from a sequence to obtain a, there are two edges entering each vertex. Hence, BRU(2, n − 1) is Eulerian and has 2n edges. The graph BRU(2, 3) and the corresponding Euler circuit are shown in Figure 5.8. THEOREM 5.6 The edges labels in any Eulerian circuit of BRU(2, n − 1) form a cyclic arrangement in which the consecutive segments of length n are the 2n distinct binary vectors. Proof: Let us traverse an Euler circuit C in BRU(2, n − 1). Suppose that we arrive at a vertex whose sequence a = a1 a2 . . . an−1 . The previous edge (n − 1) labels, looking backward, must be an−1 an−2 . . . a1 , because the label on an edge entering a vertex agrees with the last digit of the sequence at the vertex. If C next traverses an edge with label an , then the subsequence ending there is a1 , a2 , . . . , an . As the 2n−1 vertex labels are distinct and the two edges leaving each vertex have distinct labels, we have 2n distinct subsequences determined from C.
5.3.4
FUNCTIONAL CELL LAYOUT PROBLEM
A series–parallel network (network, for short) N of type t ∈ {L, S, P} (which represent leaf, series, and parallel, respectively) defined on W is recursively constructed as follows: 1. N is a network of type L if |W | = 1. 2. Suppose that |W | > 1. Then N is a network of either type P or type S and consists of k ≥ 2 networks N1 , . . . , Nk as child subnetworks parallel or series
ch005.tex
19/7/2008
17: 50
Page 88
88
Graph Theory and Interconnection Networks
connected together where each Ni is defined on a set Wi of type ti with ti = t and the collection of Wi s forms a partition of W . A network can be expressed by a tree structure. Networks are useful in practice because they correspond to Boolean formulae with series connection (denoted by S) implementing logical-AND and parallel connection (denoted by P) implementing logical-OR. For example, the Boolean function e ∧ (a ∨ b) ∧ (c ∨ d) can be represented by the network shown in Figure 5.9. Obviously, networks can be used as a model for electrical circuits. For example, we can use the tree structure shown in Figure 5.9 to represent the network corresponding to the electrical circuit shown in Figure 5.10. In the tree representation of N, every node together with all of its descendants forms a subnetwork of N. A node together with some children and their descendants forms a partial subnetwork. The subnetwork of N formed by a child of the root is called a child subnetwork of N. The leaf node is labeled x if it is a subnetwork of type L defined on {x}. Every internal node is labeled by S or P according to the type of subnetwork it represents. Note that the order of the subtrees in the tree representation is immaterial, because different orders lead to the same Boolean formula. On the other hand, every network can also be represented by a series–parallel graph (s.p. graph, for short), which is an edge-labeled graph with two given
S P
P
e
a
b
c
d
FIGURE 5.9 Tree representation of a series–parallel network.
e
a
b
c
d
FIGURE 5.10 Electrical circuit corresponding to the network shown in Figure 5.9.
ch005.tex
19/7/2008
17: 50
Page 89
Eulerian Graphs and Digraphs
89
distinguished vertices denoted by s and t. We recursively construct an s.p. graph to represent a network as described: 1. Every network N defined on W = {x} of type L is represented by an edgelabeled graph G[N] having only one edge labeled x and having the two endpoints of this edge as distinguished vertices. 2. Assume that N is a network having child subnetworks N1 , . . . , Nk . Let G[Ni ] be an s.p. graph representing Ni with the distinguished vertices si , ti for every i. We identify ti with si+1 for 1 ≤ i ≤ k − 1. The resulting graph G[N] with the distinguished vertices s1 , tk represents the network N if N is of type S. We identify all si ’s to obtain a new vertex s and identify all ti ’s to obtain a new vertex t. The resulting graph G[N] with distinguished vertices s, t represents the network N if N is of type P. The subgraph Gi of G induced by the child subnetwork Ni of N is called a child s.p. subgraph of G. Note that a graph representation for a network is not unique, because we can vary the order of the subnetworks and the order of the two distinguished vertices to obtain different graph representations. For example, both the nonisomorphic s.p. graphs shown in Figure 5.11 represent the network in Figure 5.9. Let N be a network defined on set W . We define its dual network N on set W by interchanging the types S or P of each node. For example, the network in Figure 5.12a is the dual network of the network in Figure 5.9. Figures 5.12b and 12c show a graph representation and the corresponding circuit, respectively, of the dual network. We observe that the Boolean formula corresponding to N is the dual of the Boolean formula that corresponds to N. It is obvious that (N ) = N. If two s.p. graphs G, G represent some network N and its dual, respectively, we say that (G, G ) is an s.p. graph pair. Let N be a network. Let G[N] and G[N ] be graph representations for the network N and its dual network N , respectively. A sequence of edges e1 , . . . , em is said to form a common trail in (G[N], G[N ]) if L = v0 , e1 , v1 , e2 , . . . , em , vm and L = v0 , e1 , v1 , e2 , . . . , em , vm are trails in G[N] and G[N ], respectively. We call (L, L ) a trail pair. (We use L to denote a trail for the dual network.) Sometimes, s
s
e
a
a
b
c
d
b e
d
c
t
t
(a)
(b)
FIGURE 5.11 Two nonisomorphic series–parallel graphs representing the network in Figure 5.9.
ch005.tex
19/7/2008
17: 50
Page 90
90
Graph Theory and Interconnection Networks s P S
a
c
c
a
b
d
d
b
e
S
e
e a
c
b
d t
(a)
(c)
(b)
FIGURE 5.12 (a) The dual network of the network in Figure 5.9, (b) electrical circuit corresponding to the network in (a), and (c) a graph representation to the network in (a). e a Z b Metal Polysilicon Diffusion Contact
c
(a)
d e
a
b
d
c
VDD
VDD
e a
b
c
d
e
(b)
OUT Z
a b
c d
GND
(c)
GND
a
VDD a
b
e
c
d
VDD
b e
c
OUT
d Z
e
(d)
a b
c d GND
GND
(e)
FIGURE 5.13 CMOS functional cell: (a) Gate-level scheme, (b) electric-level scheme, (c) geometric layout corresponding to the scheme in (b), (d) another electric-level scheme, and (e) geometric layout corresponding to the scheme in (d).
ch005.tex
19/7/2008
17: 50
Eulerian Graphs and Digraphs
Page 91
91
we write (L, L ) as L for short. Suppose that e1 , e2 , . . . , em are all the edges in both G[N] and G[N ]. We say that e1 , e2 , . . . , em forms a common Euler trail (circuit) in (G[N], G[N ]). A network N has a double Euler trail (DET) if there is a common Euler trail for both some G[N] of N and some G[N ] of the dual network N . We say that (G[N], G[N ]) realizes a DET pair (L, L ) for N and N , where L and L are the corresponding Euler trails in G[N] and G[N ], respectively. We say that a network N is DET if N possesses a DET. For example, the s.p. graphs in Figures 5.11a and 5.12c do not have a common Euler trail, but the ones in Figures 5.11b and 5.12c have a common Euler trail abecd. Thus, the network in Figure 5.9 is DET. Actually, the problem of DET networks arises from a more general problem called DCT (N). Let DCT (G[N], G[N ]) be the minimum number of disjoint common trails that cover all of the edges in G[N] and G[N ]. We define DCT (N) as the minimum of DCT (G[N], G[N ]) among all possible graph representations G[N] and G[N ]. Uehara and vanCleemput [318] proposed a solution method for the layout of cells in the style shown in Figure 5.13. We assume that the height of each cell is fixed by technological considerations. The width of the cell, and therefore the area of the cell, can be minimized by ordering the transistors in the layout so that chains of transistors can share a common diffusion region. Uehara and vanCleemput [318] defined a graph model for functional cells on two dual multigraphs (G[N], G[N ]) and proposed a heuristic method for finding a small number of common trails that cover the given (G[N], G[N ]). Later, Maziasz and Hayes [249] gave a linear time algorithm for solving DCT (G[N], G[N ]) and an exponential algorithm for finding the DCT (N). Several other papers have also explored the use of graph models to find solutions for layout [35, 249, 318]. Ho et al. [154] presented a linear time algorithm to recognize DET networks. We hope that the DCT (N) problem can be solved in the near future.
ch005.tex
19/7/2008
17: 50
Page 92
ch006.tex
30/6/2008
6 6.1
10: 39
Page 93
Matchings and Factors
MATCHINGS
Many applications of graphs involve pairings of vertices. For example, among a set of people, some pairs are compatible as roommates. We want to know under what conditions we can pair them all up. In Chapter 1, we considered the case of jobs and applicants, asking whether all the jobs can be competently filled. Bipartite graphs have a natural vertex partition into two sets, and we want to know whether the edge pair can pair up the two sets. However, the graph need not be bipartite in the roommate problem. A matching of size k in a graph G is a set of k pairwise disjoint edges. The vertices belonging to the edges of a matching are saturated by the matching. The others are unsaturated. A perfect matching or 1-factor is a matching that saturates every vertex of G. To find a large matching, we could iteratively select an edge disjoint from those previously selected. This yields a maximal matching. A maximal matching cannot be enlarged, because edges are incident to all others. A maximum matching is a matching of maximum size.
Example 6.1 (Maximal = maximum.) The smallest graph having a maximal matching that is not a maximum matching is P4 . Obviously, the middle edge forms a maximal edge of size 1. But the two pendant edges form a larger matching.
Example 6.2 (Problem of the truncated chessboard.) Consider an 8 × 8 chessboard whose upperleft and lower-right corner squares have been removed. (See Figure 6.1a.) We have 31 dominoes, each domino covering exactly two adjacent squares of the chessboard. Can we cover the 62 squares of the chessboard with the 31 dominoes?
The problem is equivalent to finding a maximum matching in a graph whose vertices correspond to the squares of the truncated chessboard. In this graph, two vertices are adjacent if they represent adjacent squares in the chessboard. (See Figure 6.1b.) It is easy to see that any matching in Figure 6.1b is not perfect. A simple argument that does not use matching theory shows that no perfect matching is possible. Color the squares of the chessboard black and white (as usual). Note that the truncated chessboard does not have the same number of black and white squares, as the two missing squares must have the same color. Clearly, each arrangement of the dominoes covers the same number of black and white squares. Hence, no perfect matching can exist. 93
ch006.tex
30/6/2008
10: 39
94
Page 94
Graph Theory and Interconnection Networks
(a)
FIGURE 6.1
(b)
(a) A truncated chessboard and (b) the graph corresponding to (a).
Example 6.3 (Dating problem.) In a coeducational college, each girl has k boyfriends, and each boy has k girlfriends. Is it possible to have a dance in which all students simultaneously dance with one of their friends? Later, it will be shown that this is possible if k > 0.
Let M be a matching for graph G. An M-alternating path is a path that alternates between edges in M and edges not in M. An M-alternating path P that begins and ends at M-unsaturated vertices is an M-augmenting path. We can replace M ∩ E(P) by E(P) − M to produce a new matching M of G with one more edge than M. The absence of augmenting paths in G is used to characterize a maximum matching. We will prove this by checking the subgraph formed from the union of two matchings and deleting the common edges. We define this operation for any two graphs with the same vertex sets. Assume that G and H are graphs with vertex set V . The symmetric deference G H is the graph with vertex set V whose edges are all those edges appearing in exactly one G and H. We also use this notation for the set of edges. In particular, if M and M are matchings, then M M = (M ∪ M ) − (M ∩ M ). THEOREM 6.1 (Berge [22]) A matching M in a graph G is a maximum matching in G if and only if G has no M-augmenting path. Proof: We prove the contrapositive of each direction. We have noted that an Maugmenting path produces a larger matching. For the converse, suppose that G has a matching M larger that M. To complete the proof, we need to find an M-augmenting path. Let F = M M . Because M and M are matchings, every vertex has at most one incident edge from each of them. Thus, F can be viewed as a subgraph of G having maximum degree at most 2. Since (F) ≤ 2, F consists of disjoint paths and cycles. Furthermore, every path or cycle in F alternates between edges of M and edges of M . This implies that each cycle in F has even length. Since |M | ≥ |M|, F has a component with more edges of M than of M. See Figure 6.2 for illustration. Such a component can only be a path that starts and ends with an edge of M . Every such path is an M-augmenting path in G.
ch006.tex
30/6/2008
10: 39
Page 95
Matchings and Factors
FIGURE 6.2
6.2
95
Illustration of Theorem 6.1.
BIPARTITE MATCHING
In the example of jobs and applicants, there may be many more applicants than jobs. In this case, we want to fill the jobs without using all the applicants. Hence, when G is a bipartite graph with bipartition X and Y , we may ask whether G has a matching that saturates X. We call such matching a matching of X into Y. Let S be any subset of X. We use NG (S) or simply N(S) to denote the set of vertices having a neighbor in S. Suppose that M saturates X. Then |N(S)| ≥ |S|, because the vertices matches to S are in N(S). Thus, |N(S)| ≥ |S| is a necessary condition for M saturating X. Hall proved that this obvious necessary condition is also sufficient. THEOREM 6.2 (Hall [137]) Suppose that G is a bipartite graph with bipartition X and Y . Then G has a matching of X into Y if and only if |N(S)| ≥ |S| for all S ⊆ X. Proof: Necessity was observed previously. For sufficiency, suppose that G satisfies the condition |N(S)| ≥ |S| for all S ⊆ X. Let M be a maximum matching of G. Suppose that M does not saturate S. We want to find a set X that violates the hypothesis. Suppose that u ∈ X is unsaturated. Let S and T be the subsets of X and Y , respectively, that are reachable from u by M-alternating paths. We claim that M matches T with S − {u}. The M-alternating paths from u reach Y along edges not in M and reach X along edges in M. Hence, every vertex of S − {u} is reached along an edge in M from a vertex in T . Since there is no M-augmenting path, every vertex of T is saturated. Thus, an M-alternating path reaching y ∈ T extends via M to a vertex of S. Hence, these edges of M establish a bijection between T and S − {u}. Thus, |T | = |S − {u}|. The matching between T and S − {u} implies that T ⊆ N(S). In fact, T = N(S). (See Figure 6.3.) An edge between S and a vertex y ∈ Y − T is an edge not in M. Then we can find an M-alternating path to y that contradicts y ∈ / T . With T = N(S), we have |N(S)| = |T | = |S| − 1 < |S|. This contradicts the hypothesis of the theorem.
ch006.tex
30/6/2008
10: 39
Page 96
96
Graph Theory and Interconnection Networks S u
T=N(S)
FIGURE 6.3
Illustration of Theorem 6.2.
When the sets of bipartition have the same size, Hall’s Theorem is known as the Marriage Theorem. The name arises from the scenario of a symmetric compatibility relation between a set of n men and a set of n women. If every man is also compatible with k women and every woman is compatible with k men, then there must be a perfect matching using compatible pairs. The proof applies also to bipartite graphs with multiple edges, which enlarges the scope of applications. COROLLARY 6.1 For k > 0, every k-regular bipartite graph has a perfect matching. Proof: Suppose that the bipartition is X and Y . Counting the edges by endpoints in X and endpoints in Y shows that k|X| = k|Y |. Since k > 0, |X| = |Y |. Suppose that Hall’s condition holds. By Theorem 6.2, a matching saturating X is obtained. As |X| = |Y |, this matching is a perfect matching. Now, we check Hall’s condition. Consider S ⊆ X, and suppose that there are m edges between S and N(S). Since G is k-regular, we have m = k|S|. Since these m edges are adjacent to N(S), we have m < k|N(S)|. Hence, k|S| ≤ k|N(S)|, which yields |N(S)| ≥ |S|. Having chosen S ⊆ X arbitrarily, we have established Hall’s condition. Thus, the corollary is proved. With Corollary 6.1, we solved the dating problem in Example 6.3. Let A = {A1 , A2 , . . . , Am } be a collection of sets such that ∪m i=1 Ai = X. A set {x1 , x2 , . . . , xm } is a system of distinct representatives (SDR) if xi = xj if i = j and xi ∈ Ai for 1 ≤ i ≤ m. THEOREM 6.3 Let A = {A1 , A2 , . . . , Am } be a collection of sets such that ∪m i=1 Ai = X. A has an SDR if and only if | ∪i∈J Ai | ≥ |I| for all I ⊆ [m]. Proof: We build a bipartite graph with one partite set corresponding to {A1 , A2 , . . . , Am } and the other partite set corresponding to the set X. We join an edge between x ∈ X and Aj if and only if x ∈ Aj . It is easy to see the condition | ∪i∈J Ai | ≥ |I| for all I ⊆ [m] is actually Hall’s condition. Hence, the theorem is proved. Suppose that a graph G does not have a perfect matching. We can prove that a matching M is a maximum matching by proving that G has no M-augmenting path. However, exploring all M-alternating paths to seek an augmentation would take a long
ch006.tex
30/6/2008
10: 39
Page 97
Matchings and Factors
97
time. Instead, we find an explicit structure in G that forbids a matching larger than M. A dual optimization problem provides a short proof that the answer is optimal. A vertex cover of a graph G = (V , E) is a subset S of V such that S contains at least one endpoint of every edge in E. The vertices in S cover the edges of G. A road network can be modeled into a graph. The problem of finding a minimum vertex cover of a graph is the problem of installing the minimum number of policemen that can watch the entire road network. Since no edges of a matching can be covered by a single vertex, the size of every vertex cover is at least the size of every matching. Therefore, exhibiting a matching and a vertex cover of the same size proves that each is optimal. Actually, such equality holds for every bipartite graph. However, the equality may not be true for general graphs.
Example 6.4 (Matchings and vertex covers.) Let G and H be the graph shown in Figure 6.4. The graph G has a matching and a vertex cover of size 2. The vertex cover of size 2 prohibits matchings with more than two edges. Moreover, the matching of size 2 prohibits vertex covers with fewer than 2 vertices. In graph H, these sizes differ by one for an odd cycle. The difference can be arbitrarily large in general graphs.
A min–max relation is a theorem stating equality between the answers to a minimization problem and a maximization problem over a class of instances. The König-Egerváry Theorem is such a relation for matching and vertex covering in bipartite graphs: THEOREM 6.4 (König [203], Egerváry [95]) Assume that G is a bipartite graph. Then the maximum size of a matching in G equals the minimum size of a vertex cover of G (see Figure 6.5). Proof: Suppose that G has bipartition X and Y . Since distinct vertices must be used to cover the edges of a matching, we have |U| ≥ |M| whenever U is a vertex cover and M is a matching in G. Let U be a minimum vertex cover U of G. To prove that equality can always be achieved, we need to construct a matching of size |U|. Let R = U ∩ X and T = U ∩ Y . Moreover, let H and H be the subgraphs of G induced by R ∪ (Y − T ) and T ∪ (X − R). We use Hall’s Theorem to show that H has a matching of R into Y − T and H has a matching of T into X − R. Since H and H are disjoint, the two matchings together form a matching of size |U| in G.
G
FIGURE 6.4
Graphs for Example 6.4.
H
ch006.tex
30/6/2008
10: 39
Page 98
98
Graph Theory and Interconnection Networks R S
X
H
H Y T
FIGURE 6.5
NH(S )
Illustration of Theorem 6.4.
FIGURE 6.6 The independent number of a bipartite graph does not always equal the size of a partite set.
Since R ∪ T is a vertex cover, G has no edge from Y − T to X − R. Let S be a subset of R. We consider NH (S) ⊆ Y − T . Suppose that |NH (S)| < |S|. Since NH (S) covers all edges incident to S that are not covered by T , we can substitute NH (S) for S in U to obtain a smaller vertex cover of G. We get a contradiction. Thus, the minimality of U yields Hall’s condition in H. Hence, H has a matching of R into Y − T . Applying the same argument to H yields the rest of the matching. We now change the study of independent sets of edges into independent sets of vertices. The independence number of a graph is the maximum size of an independent set of vertices. From the graph in Figure 6.6, it is observed that the independent number of a bipartite graph is not always equal to the size of a partite set.
6.3
EDGE COVER
Just as no vertex can cover two edges of a matching, no edge can contain two vertices of an independent set. Again, we have a dual covering problem for an independent number. An edge cover of G is a set of edges that cover the vertices of G. Obviously, only graphs without isolated vertices have edge covers. For the independence and covering problems, the following notations are used: maximum size of independent set maximum size of matching
α(G) α (G)
ch006.tex
30/6/2008
10: 39
Page 99
Matchings and Factors
99
minimum size of vertex cover β(G) minimum size of edge cover β (G) In this notation, the König–Egerváry Theorem states that α (G) = β(G) for every bipartite graph G. We will prove that α(G) = β (G) for bipartite graphs without isolated vertices. We have already observed that β (G) ≥ α(G). LEMMA 6.1 In a graph G, S ⊆ V (G) is an independent set if and only if S is a vertex cover. Hence α(G) + β(G) = n(G). Proof: Suppose that S is an independent set. Then there are no edges within S. Hence, every edge is incident to at least one vertex of S. Thus, S is a vertex cover. Conversely, suppose that S is a vertex cover. Then there are no edges between vertices of S. Hence any maximum independent set is the complement of a minimum vertex cover. Moreover, α(G) + β(G) = n(G). Since the edges of G omitted by a matching need not form an edge cover of G, the relationship between matchings and edge covering is more complicated. Nevertheless, we have a similar formula. THEOREM 6.5 (Galli [120]) Assume that G is a graph without isolated vertices. We have α (G) + β (G) = n(G) (see Figure 6.7). Proof: Suppose that we use a maximum matching M to construct an edge cover of size n(G) − M. Then the smallest edge cover is no bigger than n(G) − M. We conclude that β (G) ≤ n(G) − α (G). On the other hand, suppose that we use a minimum edge cover L to construct a matching of size n(G) − L. Then the largest matching is no smaller than n(G) − L. We conclude that α (G) ≥ n(G) − β (G). These two inequalities complete the proof. Let M be a maximum matching in G. We can construct an edge cover of G by using M and adding one edge incident to each unsaturated vertex. The total number of edges used is n(G) − |M|, as desired. Thus, we save |M| edges because each edge of the matching covers two vertices instead one. For the other inequality, let L be the minimum edge cover. Suppose that the two endpoints of some edge e in L belong to other edges in L. Then L − e is also an edge cover. Hence, L is not a minimum edge cover. Therefore, L consists of k disjoint stars, for some k. (Note that stars are the trees with a diameter of 2). Since L has one edge for each vertex that is not a center of its stars, we have |L| = n(G) − k. We can form a matching of size k = n(G) − |L| by choosing one edge arbitrarily from each star in L.
|M| 4
FIGURE 6.7
Illustration of Theorem 6.5.
|L| 9
n(G) 13
ch006.tex
30/6/2008
10: 39
100
Page 100
Graph Theory and Interconnection Networks
COROLLARY 6.2 (König [204]) Assume that G is a bipartite graph with no isolated vertices. Then α(G) = β (G). Thus, max |independent set| = min |edge cover|. Proof: The two proceeding results imply α(G) + β(G) = α (G) + β (G). By subtracting the König-Egerváry min–max relation α (G) = β(G), we obtain α(G) = β (G).
6.4
PERFECT MATCHING
A factor of G is a spanning subgraph of G. A k-factor is a spanning k-regular subgraph (a perfect matching is a 1-factor). An odd component of a graph is a component of odd order. The number of odd components of H is denoted by o(H). Tutte found a necessary and sufficient condition for an arbitrary graph to have a 1-factor. Suppose that G has a 1-factor. Let S be a subset of V (G). Obviously, every odd component of G − S has a vertex matched to something outside it, which can only belong to S. See Figure 6.8 for illustration. As these must be distinct vertices of S, we conclude that o(G − S) ≤ |S|. Tutte proved that this obvious necessary condition is also sufficient. Many proofs of this have appeared. We present the proof by Lovász using the ideas of symmetric difference and extremality. THEOREM 6.6 (Tutte [315]) A graph G has a 1-factor if and only if o(G − S) ≤ |S| for every S ⊆ V (G). Proof: (Lovász [242]) As noted previously, Tutte’s condition is necessary. We need to prove only that Tutte’s condition is also sufficient. We note that Tutte’s condition is preserved by addition of edges. Suppose that G = G + e. Let S ⊆ V (G). Because the addition of e combines two components of G − S into one, the number of components that have an odd order does not increase. Thus, o(G − S) ≤ o(G − S). Therefore, it suffices to consider a simple graph G such that G satisfies Tutte’s condition, G has no 1-factor, and adding any edge to G creates a 1-factor. We will obtain a contradiction in every case by constructing a 1-factor in G. This implies that every graph satisfying Tutte’s condition has a 1-factor. Let S = ∅. Then o(G) = 0. Then n(G) is even, because a graph of odd order must have a component of odd order. Let U = {x ∈ V (G) | N(x) = V (G) − {x}}.
Even
FIGURE 6.8
Illustration of G − S.
S
Even
ch006.tex
30/6/2008
10: 39
Page 101
Matchings and Factors
101
Suppose that G − U consists of disjoint complete graphs. We build a 1-factor for such a G as follows. The vertices in each component of G − U can be paired up arbitrarily, with one left over in the odd components. As o(G − U) ≤ |U| and each vertex of U is adjacent to all of G − U, we can match these leftover vertices arbitrarily to vertices of U to complete a 1-factor (see Figure 6.9). This leaves the case where G − U is not a disjoint union of cliques. Here G − U contains two nonadjacent vertices x, z, and a common neighbor y. Since y ∈ / U, y is not adjacent to some vertex w in G − U. By the maximality of G, adding any edge to G produces a 1-factor. Let M1 and M2 be 1-factors in G + (x, z) and G + ( y, w). Using M1 ∪ M2 , we will find a 1-factor avoiding (x, z) and ( y, w). This contradicts the fact that G has no 1-factor. Let F be the set of edges that belong to exactly one of M1 and M2 . Obviously, F contains (x, z) and ( y, w). Since every vertex of G has degree 1 in each of M1 and M2 , every vertex of G has degree 0 or 2 in F. Hence, F is a collection of disjoint even cycles and isolated vertices. Let C be the cycle of F containing (x, z). Suppose that C does not also contain ( y, w). Let M ∗ = {e | e ∈ M2 ∩ C} ∪ {e | e ∈ M1 − C}. Obviously, M ∗ is a 1-factor of G. Thus, we consider the case that C contains both ( y, w) and (x, z). We can write C as
y, P1 , x, z, P2 , y. Suppose that dC ( y, x) is even, as shown in Figure 6.10a. Obviously, ( y, w) is an edge in P2 . Let M ∗ = {e | e ∈ M1 ∩ P2 } ∪ {(x, z)} ∪ {e | e ∈ M1 ∩ P1 or e ∈ M2 − C}. Obviously, M ∗ forms a 1-factor of G. Suppose that dC ( y, x) is odd, as shown in Figure 6.10b. Obviously, ( y, w) is an edge in P1 . Let M ∗ = {e | e ∈ M1 ∩ P1 } ∪ {( y, x)} ∪ {e | e ∈ M2 ∩ P2 or e ∈ M2 − C}. Obviously, M ∗ forms a perfect matching of G. Again, we have a 1-factor of G.
GU
U
FIGURE 6.9
Illustration of G − U.
M1
M2 M1
y M2 w
P1 M2 x
P2 M1
w M2 y M1
z M2
(a)
FIGURE 6.10 Illustration of M1 and M2 .
M1
M1
P1
M2 x
M2 P2
M1 z M 2 (b)
M1
ch006.tex
30/6/2008
10: 39
Page 102
102
Graph Theory and Interconnection Networks
REMARK: For any graph G and S ⊆ V (G), the difference o(G − S) − |S| has the same parity as n(G). Hence, o(G − S) exceeds |S| by at least two for some S if n(G) is even and G has no 1-factor. COROLLARY 6.3 (Berge [21]) Let d(S) = o(G − S) − |S|. Then the largest number of vertices in a matching in G is min {n − d(S)}.
S ⊆V (G)
Proof: Let S be a subset of V (G). Obviously, at most |S| edges can match vertices of S to vertices in odd components of G − S. Thus, every matching has at least o(G − S) − |S| unsaturated vertices. We want to achieve this bound. Let d = max{o(G − S) − |S| | S ⊆ V (G)}. The case S = ∅ implies d ≥ 0. Let G = G ∨ Kd . Since d(S) has the same parity as n(G) for each S, we know that n(G ) is even. Suppose that G satisfies Tutte’s condition. Deleting the d-added vertices eliminates edges that saturate at most d vertices of G, and so we can obtain a matching of the desired size in G from a perfect matching in G (see Figure 6.11). The condition o(G − S ) ≤ |S | holds for S = ∅, because n(G ) is even. Suppose that S is nonempty but does not contain all of Kd . Then G − S has only one component. We have 1 = o(G − S ) ≤ |S |. Suppose that Kd ⊆ S . Let S = S − V (Kd ). We have G − S = G − S, so o(G − S ) = o(G − S) ≤ |S| + d = |S |. Thus, G indeed satisfies Tutte’s condition. This corollary guarantees that there is a proof that a maximum matching is maximum by exhibiting a vertex set S whose deletion leaves the appropriate number of odd components. This is a short proof, but finding S may be hard. Most applications of Tutte’s Theorem involving showing that some other condition implies Tutte’s condition and hence guarantees a 1-factor. Some applications were proved by other means long before Tutte’s Theorem. COROLLARY 6.4 1-factor.
(Petersen [272]) Every 3-regular graph with no cut edge has a
Proof: Let G be a 3-regular graph with no cut edge. To prove this corollary, we can prove that each edge set S ⊆ V (G) satisfies Tutte’s condition. Let us count the edges between S and the odd component of G − S. Since G is 3-regular, each vertex of S is incident to at most three edges between S and the odd component of G − S. Suppose that each odd component H of G − S is incident to at least three such edges. Then, 3o(G − S) ≤ 3|S|. Hence, o(G − S) ≤ |S|. Since G has
G
FIGURE 6.11 The graph G .
Kd
ch006.tex
30/6/2008
10: 39
Page 103
Matchings and Factors
103
no cut edge, the number of edges between S and H cannot be 1. Moreover, the number of edges between S and H cannot be even, because then the sum of degrees in H would be odd. Hence, there are at least three edges from H to S, as desired.
6.5
FACTORS
Petersen also found a sufficient condition for 2-factors, which can be proved using only Eulerian circuits and bipartite matching. Note that every connected 2k-regular graph is Eulerian. Thus, the edge set can be partitioned into edge-disjoint cycles. Yet, we prove a stronger result that these cycles can be organized into 2-factors. THEOREM 6.7
(Petersen [272]) Every regular graph of even degree has a 2-factor.
Proof: Let G be a 2k-regular with vertices v1 , v2 , . . . , vn . Obviously, every component of G has an Eulerian circuit C. For each component, define a bipartite graph H with vertices u1 , u2 , . . . , un and w1 , w2 , . . . , wn by putting ui ↔ wj if vj immediately follows vi somewhere on C. Because C leaves and enters each vertex k times, H is k-regular. Every regular bipartite graph has a 1-factor. A 1-factor in H designates one edge leaving vi (incident to ui in H) and one entering vi (incident to wi in H). Combining these edges for each component of G yields a 2-regular spanning subgraph of G.
Example 6.5 Let G be the graph K5 . Obviously, 1, 2, 3, 4, 5, 3, 1, 4, 2, 5, 1 forms an Euler circuit of G. The corresponding bipartite graph H is shown in Figure 6.12. Obviously, {(1, 2), (2, 3), (3, 4), (4, 5), (5, 1)} forms a 1-factor of H. The corresponding 2-factor in G is the cycle 1, 2, 3, 4, 5. The remaining edges of H form another 1-factor. Again, it corresponds to the remaining 2-factor 1, 3, 5, 2, 4, 1 in G.
Note that a factor is an arbitrary spanning subgraph of G. We would like to ask about the existence of factors of special types. For example, a k-factor is a k-regular factor. We have studied 1-factor and 2-factors. More generally, we can specify the degree at each vertex. Let f be a function from V (G) into N ∪ {0}. We ask whether G has a subgraph H such that dH (v) = f (v) for all v ∈ V (G). Such a subgraph H is an f-factor of G.
U
1 2
5
4
3 G
FIGURE 6.12 Illustration of Example 6.5.
W
1
1
2
2
3
3
4 5
4 5 H
ch006.tex
30/6/2008
10: 39
Page 104
104
Graph Theory and Interconnection Networks
3
G
1
2
2
H
0
0
FIGURE 6.13 Graphs G and H.
Multiple edges don’t affect the existence of 1-factors. However, they do affect the existence of an f -factor. Tutte [315] proved a necessary and sufficient condition for a graph to have an f -factor. The original proof was quite difficult. Later Tutte reduced it to checking for a 1-factor in a related graph. We describe the construction of this related graph. This is a beautiful example of transforming a graph problem into a previously solved problem. We assume that f (w) ≤ d(w) for all w. Otherwise, immediately G has no f -factor. We construct a graph H that has a 1-factor if and only if G has an f -factor as follows. Let e(w) = d(w) − f (w) ≥ 0 be the excess degree at w. To construct H, we replace each vertex v by a bipartite graph graph Kd(v),e(v) , with partite sets A(v) of size d(v) and B(v) of size e(v). For each edge (v, w) in G, we join one vertex of A(v) to one vertex of A(w) so that each A-vertex participates in one such edge. In Figure 6.13, we illustrate a graph G with the indicated function f and the corresponding simple graph H. The dashed edges in H form a 1-factor that translates back into an f -factor of G. THEOREM 6.8 A graph G has an f -factor if and only if the graph H constructed previously from the pairs G, f has a 1-factor. Proof: Suppose that G has an f -factor. Then the corresponding edges in H leave e(u) vertices of A(v) unmatched. We match them arbitrarily to the vertices of B(v) to obtain a 1-factor of H. Similarly, we first delete the matched edges involving B-vertices in a 1-factor of H. The remaining matched edges of H will correspond to the edges of 1-factor of G. Hence, H has a 1-factor if and only if G has an f -factor.
ch007.tex
30/6/2008
7 7.1
10: 31
Page 105
Connectivity
CUT AND CONNECTIVITY
A good communications network is hard to disrupt. We want to preserve network service by ensuring that the graph (or digraph) of possible transmissions remains connected, even when some vertices or edges fail. When communication links are expensive, we want to achieve these goals with few edges. Loops are irrelevant for connection, so we may assume that the graphs and digraphs of this chapter have no loops. A separating set or vertex cut of a graph G is a set S ⊆ V (G) such that G − S has more than one component. A graph is k-connected if every vertex cut has at least k vertices. The connectivity of G, written κ(G), is the minimum size of a vertex cut. In other words, κ(G) is the maximum k such that G is k-connected. Hence, a graph has connectivity 0 if and only if it is disconnected. A clique has no separating set. We adopt the convention that κ(Kn ) = n − 1, so that most results about connectivity will extend to cliques. Obviously, κ(G) ≤ n(G) − 1 for all G.
Example 7.1 (Connectivity of the n-dimensional cubes Qn .) The cube Qn is n-regular. We can cut Qn by deleting the neighbors of a vertex, so κ(Qn ) ≤ n. To prove that κ(Qn ) = n, we show that every vertex cut of Qn has at least n vertices. We use induction on n. Obviously, Qn is a clique with connectivity n for n = 0, 1. This completes the basis. Suppose that κ(Qn−1 ) = n − 1 with n ≥ 2. We know that Qn is obtained from two copies Q, Q of Qn−1 by adding a matching joining corresponding vertices in Q and Q . Let S be an arbitrary vertex cut in Qn . Suppose that Q − S is connected and Q − S is connected. Then Qn − S is also connected unless S deletes at least one endpoint of every matched pair. This requires that |S| ≥ 2n−1 . However, 2n−1 ≥ n for n ≥ 2. Hence, we may assume that Q − S is disconnected. By induction hypothesis, S contains at least n − 1 vertices in Q. Suppose that S contains no vertices of Q . Then Q − S is connected and all vertices of Q − S have neighbors in Q − S. Thus, Qn − S is connected. Hence, S must also contain a vertex of Q . Therefore, |S| ≥ n.
Suppose that G is not a clique. Deleting the neighbors of a vertex separates G. Thus, κ(G) ≤ δ(G). Equality need not hold. For example, 2Km has a minimum degree of m − 1 but connectivity 0. Let G be a k-connected graph. From the previous discussion, δ(G) ≥ k. Thus, G contains at least kn/2 edges. This is achievable. 105
ch007.tex
30/6/2008
106
10: 31
Page 106
Graph Theory and Interconnection Networks
FIGURE 7.1 The Harary graphs H4,8 , H5,8 , and H5,9 .
Example 7.2 (The k-connected Harary graph Hk,n .) Let k < n. Place n vertices, {x0 , x1 , . . . , xn−1 }, in circular order. Suppose that k = 2r. Form Hk,n by making each vertex adjacent to the nearest r vertices in each direction around the circle. Suppose that k = 2r + 1 and n is even. Form Hk,n by making each vertex adjacent to the nearest r vertices in each direction and to the vertex opposite it on the circle. In each case, Hk,n is k-regular. Suppose that k = 2r + 1 and n is odd. Construct Hk,n from H2r,n by adding the edges xi ↔ xi+(n+1)/2 for 0 ≤ i ≤ (n − 1)/2. The graphs H4,8 , H5,8 , and H5,9 are shown in Figure 7.1.
THEOREM 7.1 (Harary [138]) κ(Hk,n ) = k. Hence, the minimum number of edges in a k-connected graph on n vertices is kn/2. Proof: We prove only the case that k = 2r. Let G = H2r,n . From the symmetric of G, it suffices to prove that x0 and xj , j = 1, 2, . . . , n − 1, cannot be disconnected by less than 2k vertices. Suppose that x0 and xj can be disconnected by 2k − 1 vertices, xi1 , xi2 , . . . , xi2k−1 , where 1 ≤ i1 < i2 < · · · < i2k−1 ≤ n − 1. One of the two intervals [0, j] and [ j, n] contains at most (k − 1) of these indices. Suppose it is interval [0, j]. Note that the difference between their indices is less than (k − 1). Two consecutive vertices of the sequence obtained by removing xi1 , xi2 , . . . from x0 , x1 , . . . , xj , are joined by an edge. Consequently, there is a path from x0 to xj , which is a contradiction. The remaining cases can be proved similarly. Perhaps our transmitters are secure and never fail. However, our communication links are subject to noise or other disruptions. In this situation, we want to make it hard to disconnect our graph by deleting edges. A disconnecting set of edges is a set F ⊆ E(G) such that G − F has more than one component. A graph is k-edge-connected if every disconnecting set has at least k edges. The edge-connectivity of G, written κ (G), is the minimum size of a disconnecting set. In other words, κ (G) is the maximum k such that G is k-edge-connected. Let S and T be two subsets of V (G). We use [S, T ] to denote the edge set having one endpoint in S and the other in T . An edge cut is an edge set of the form [S, S] where S is a nonempty proper subset of V (G). The notation for edge-connectivity continues our convention of using a prime for an edge parameter analogous to a vertex parameter. Using the same base
ch007.tex
30/6/2008
10: 31
Page 107
Connectivity
107
letter emphasizes the analogy and avoids the confusion of using many different letters. Since there is no path of G − [S, S] from S to S, every edge cut is a disconnecting set. However, the converse is false. In K3 , the set of all edges is a disconnecting set but is not an edge cut. In K3,3 , every set of seven edges is a disconnecting set, but none of them is an edge cut. Suppose that n(G) > 1. Then every minimal disconnecting set of edges is an edge cut. Suppose that G − F has more than one component for some F ⊆ E(G). Then we can delete all edges having one endpoint in some component H of G − F. Thus, F contains the edge cut [V (H), V (H)]. Therefore, F is not a minimal disconnecting set unless F = [V (H), V (H)]. Deleting one endpoint of each edge in an edge cut F will delete every edge of F. Hence, we expect that κ(G) ≤ κ (G) always holds. To prove this, we must be careful not to delete the only vertex of a component of G − F and thereby produce a connected subgraph. The inequality κ(Kn ) ≤ κ (Kn ) holds by our convention that κ(Kn ) = n − 1. THEOREM 7.2 (Whitney [340]) κ(G) ≤ κ (G) ≤ δ(G). Proof: The edges incident to a vertex v of minimum degree form a disconnecting set. Hence, κ (G) ≤ δ(G). It remains to show κ(G) ≤ κ (G). Let G be a graph with n(G) > 1 and [S, S] be a minimum edge cut having size k = κ (G). Suppose that every vertex of S is adjacent to every vertex of S. Obviously, k ≥ |S||S| ≥ n(G) − 1. Thus, the inequality holds. Hence, we assume that there exists x ∈ S and y ∈ S such that x is not adjacent to y. Now, let T be the vertex set consisting of all neighbors of x in S and all vertices of S − {x} that have neighbors in S (illustration in Figure 7.2). Since x and y belong to different components of G − T , T is a separating set. Since T consists of one endpoint of each edge in [S, S], we have |T | ≤ |[S, S]| = k. Hence, κ(G) ≤ κ (G). Because connectivity equals minimum degree for cliques, complete bipartite graphs, hypercubes, and Harary graphs, the inequality of the previous theorem implies also that edge-connectivity equals minimum degree for these graphs. Although the set of edges incident to a vertex of minimum degree is always an edge cut, it need not be a minimum edge cut. The situation κ (G) < δ(G) is precisely the situation in which there is no minimum edge cut that disconnects a single vertex from the rest of the graph.
x S
FIGURE 7.2
T T T
Illustration of Theorem 7.2.
T T S y
ch007.tex
30/6/2008
10: 31
108
Page 108
Graph Theory and Interconnection Networks
FIGURE 7.3 A graph G with κ(G) = 1, κ (G) = 2, and δ(G) = 3.
Example 7.3 (Possibility of κ < κ < δ.) κ(G) = 2, and δ(G) = 3.
Let G be the graph in Figure 7.3. Obviously, κ(G) = 1,
An edge cut may contain another edge cut as a subset. For example, K1,2 has three edge cuts. However, one of them contains the other two. The minimal nonempty edge cut of a graph have useful structural properties and a special name: a bond is a minimal nonempty edge cut. Here minimal means that no proper nonempty subset of these edges is also an edge cut. Bonds in connected graphs are the edge cuts that leave only two components. PROPOSITION 7.1 Suppose that G is a connected graph and S is a nonempty proper subset of V (G). Then the edge cut F = [S, S] is a bond if and only if G − F has two components. Proof: Suppose that G − F has two components. Let F be a proper subset of F. Obviously, G − F contains the two components of G − F plus at least one edge between the two components. Hence, G − F is connected. Thus, F is a bond. Suppose that G − F has more than two components. By symmetric, we may assume that S = A ∪ B with no edges between A and B. Now the edge cuts [A, A] and [B, B] are a proper subset of F. Thus, F is not a bond. In Chapter 1, we introduced the terms cut vertex and cut edge for vertex cuts and edge cuts of size 1. Some authors have used articulation point to mean cut vertex, and some authors have used isthmus or bridge to mean cut edge. Every graph with connectivity 1 other than K2 has a cut vertex. These graphs are sometimes called separable graphs. Obviously, K1 and K2 have no cut vertex. Assume that G is a connected graph with no cut vertex and G is neither K1 nor K2 . Then G is 2-connected. Connected subgraphs without cut-vertices provide a useful decomposition of a graph into subgraphs. A block of a graph G is a maximal connected subgraph of G that has no cut vertex. Suppose that G itself is connected and has no cut vertex. Then G is a block. Suppose that H is a block of G. Then H is a graph has no cut vertex. However, H may contain vertices that are cut vertices of G. For example, the graph drawn in Figure 7.4 has seven blocks.
ch007.tex
30/6/2008
10: 31
Page 109
Connectivity
109
FIGURE 7.4 A graph with seven blocks.
An edge of a cycle cannot itself be a block, because it belongs to a larger subgraph having no cut vertex. Hence, an edge is a block of G if and only if it is a cut edge of G. The blocks of a tree are its edges. Suppose that a block has more than two vertices. It is 2-connected. The blocks of a graph are its isolated vertices, its cut edges, and its maximal 2-connected subgraphs. PROPOSITION 7.2 Two blocks in a graph share at most one vertex. Proof: Suppose that the statement is not true. There are two blocks B1 and B2 of some graph G sharing two vertices. Let x be any vertex in V (B1 ∪ B2 ). Note that deleting one vertex cannot disconnect a block. Deleting x leaves a path within Bi from every vertex remaining in Bi to each vertex of (B1 ∩ B2 ) − {x}. Since B1 ∩ B2 − {x} = ∅, (B1 ∪ B2 ) − {x} is connected. Therefore, B1 ∪ B2 is a subgraph with no cut vertex. This contradicts the maximality of B1 and B2 .
7.2
2-CONNECTED GRAPHS
It is believed that a communication network is fault-tolerant if it has alternative paths between vertices. The more disjoint paths exist, the more reliable the network is. In this section, we prove that this alternative measure of connection is essential the same as k-connectedness. Obviously, a graph G is 1-edge-connected if and only if every pair of vertices is connected by a path. In the following, we generalize this characterization to k-edge-connected graphs and to k-connected graphs. We begin by characterizing 2-connected graphs. Let P = x1 , x2 , . . . , xk be a path of a graph G joining x1 to xk . We use V (P) to denote the set {x1 , x2 , . . . , xk } and I(P) to denote the set V (P) − {x1 , xk }.
ch007.tex
30/6/2008
10: 31
Page 110
110
Graph Theory and Interconnection Networks
Let P1 and P2 be two paths of a graph G. We say that P1 and P2 are internally disjoint if I(P1 ) ∩ I(P2 ) = ∅. THEOREM 7.3 (Whitney [340]) A graph G having at least three vertices is 2-connected if and only if each pair u and v in V (G) is connected by a pair of internally disjoint paths from u to v in G. Proof: Suppose that each pair u, v ∈ V (G) is connected by a pair of internally disjoint paths from u to v in G. Thus, we cannot separate u from v by deleting one vertex of G. Thus, G is 2-connected. For the converse, suppose that G is 2-connected. We prove by induction on d(u, v) that G has two internally disjoint paths from u to v. Suppose that d(u, v) = 1. As κ (G) ≥ κ(G) = 2, G − (u, v) is connected. There exists a path from u to v P1 in G − (u, v) joining u to v. Let P2 be the path u, v. Obviously, P1 and P2 forms two internally disjoint paths from u to v. Assume that G has internally disjoint paths from x to y whenever 1 ≤ d(u, v) < k. Assume that u and v are two vertices with d(u, v) = k. Let w be the vertex before v on a shortest path from u to v. Thus, d(u, w) = k − 1. By the induction hypothesis, G has internally disjoint paths P and Q from u to w. Since G − w is connected, G − w contains a path R from u to v. Let z be the last vertex of R belonging to P ∪ Q. By symmetry, we may assume that z ∈ P. We combine the subpath from u to z of P with the subpath from z to v of R to obtain a path from u to v internally disjoint from Q ∪ {(w, v)}. See Figure 7.5 for illustration. LEMMA 7.1 (Expansion Lemma.) Suppose that G is a k-connected graph. Let G be a graph obtained from G by adding a new vertex y adjacent to at least k vertices of G. Then G is k-connected. Proof: Suppose that S is a separating set of G . Suppose that y ∈ S. Then S − {y} separate G. Thus, |S| ≥ k + 1. Suppose that y ∈ / S and N( y) ⊆ S. Then |S| ≥ k. Otherwise, S must separate G. Again, |S| ≥ k. THEOREM 7.4 Suppose that G is a graph with at least three vertices. Then the following statements are equivalent (and characterize 2-connected graphs): A. G is connected and has no cut vertex. B. There exist two internally disjoint paths between any two vertices x and y of G.
P u
w Q
FIGURE 7.5
Illustration of Theorem 7.3.
R
z
v
ch007.tex
30/6/2008
10: 31
Page 111
Connectivity
111
w u
FIGURE 7.6
v
u
v
Subdividing the edge (u, v).
C. There exists a cycle through any two vertices x and y of G. D. δ(G) ≥ 1 and every pair of edges in G lies on a common cycle. Proof: By Theorem 7.3, A is equivalent to B. The existence of a cycle between x and y is equivalent to the existence of two internally disjoint paths from x to y. Thus, B is equivalent to C. D ⇒ C: Suppose that G is a graph such that δ(G) ≥ 1 and every pair of edges in G lies on a common cycle. Let x and y be any two vertices of G. Since δ(G) ≥ 1, there exists an edge e1 incident to x. Similarly, there exists an edge e2 incident to y. By assumption, e1 and e2 lie on a common cycle C. Obviously, C is a cycle through x and y. A, C ⇒ D: Suppose that G is a 2-connected graph and (u, v) and (x, y) are two edges of G. Add to G the vertices w with neighborhood {u, v} and z with neighborhood {x, y}. By Lemma 7.1, the resulting graph G is 2-connected. Hence, w and z lie on a common cycle C in G . Obviously, degG (w) = degG (z) = 2. The cycle must contain the paths
u, w, x and x, z, y but not u, v or x, y. Replace the paths u, w, v and x, z, y in C by the edges (u, v) and (x, y) to obtain the desired cycle in C. Subdividing an edge (u, v) of a graph G is the operation of deleting (u, v) and adding a path u, w, v through a new vertex w. See Figure 7.6. COROLLARY 7.1 Suppose that G is 2-connected. Then the graph G obtained by subdividing an edge of G is 2-connected. Proof: Suppose that G is formed from G by adding w to subdivide (u, v). We will use condition D in Theorem 7.4 to prove that G is 2-connected. Thus, we need to find a cycle through the arbitrary edges e and f of G . Suppose that e and f are edges in G. By condition D in Theorem 7.4, there exists a cycle C through these edges. If this cycle uses the edge (u, v), we will modify this cycle to pass through w between u and v. Suppose that e ∈ E(G) and f ∈ {(u, w), (w, v)}. We modify a cycle passing through e and (u, v). Suppose that {e, f } = {(u, w), (w, v)}. We modify a cycle through (u, v).
7.3
MENGER THEOREM
We have introduced two measures for connectivity: invulnerability to deletions and multiplicity of alternative communication paths. Here, we will extend Whitney’s Theorem by showing that the two notions of k-connected graphs are the same. We have similar results for k-edge-connected and digraphs. We need some definitions.
ch007.tex
30/6/2008
10: 31
Page 112
112
Graph Theory and Interconnection Networks t
u
d
x
w
z
c a
b
v
y
FIGURE 7.7 The graph for Example 7.4.
Let x and y be two vertices of G. A set S ⊆ V (G) − {x, y} is an x,y-separator or x,y-cut if G − S has no path from x to y. Let κ(x, y) be the minimum size of an x, y-cut. Let λ(x, y) be the maximum size of a set of pairwise internally disjoint paths from x to y. Let λ(G) be the largest k such that λ(x, y) ≥ k for all x, y ∈ V (G). Let X and Y be two subsets of V (G). An X,Y-path is a path having its first vertex in X and its last vertex in Y .
Example 7.4 The graph in Figure 7.7 has four pairwise internally disjoint paths from x to y. Thus, λ(x, y) ≥ 4. It can be confirmed that S = {b, c, z, d} is an x, y-cut of size 4. Thus, κ(x, y) ≤ 4. Note that every path from x to y intersects S and every x, y-cut has a vertex from each path. We have κ(x, y) = λ(x, y) = 4. We can further check that κ(a, z) = λ(a, z) = 3. Moreover, {y, u, w} is an a, z-cut. Actually, this graph is 3-connected. We can find three pairwise internally disjoint paths for every pair u, v ∈ V (G). Yet we find five pairwise edge-disjoint paths from w to z and a set {(w, a), (w, b), (w, c), (w, u), (w, x)} of five edges whose deletion breaks all paths from w to z.
Menger’s original theorem states the local equality κ(x, y) = λ(x, y). The global equality κ(G) = λ(G) and the analogous results for edge-connectivity and digraphs were observed by others. All are considered forms of Menger’s Theorem. THEOREM 7.5 (Menger [252]) Let x, y be any two vertices of a graph G with (x, y) ∈ / E(G). Then the minimum size of an x, y-cut equals the maximum number of pairwise internally disjoint paths from x to y. Proof: It is observed that any x, y-cut must contain an internal vertex from each path in a set of pairwise internally disjoint paths from x to y. These vertices must be distinct. Thus, κ(x, y) ≥ λ(x, y). To prove equality, we use induction on n(G). Suppose that n = 2. Then (x, y) ∈ / E(G) implies κ(x, y) = λ(x, y) = 0. The theorem holds for n = 2. Assume that the theorem holds for any graph with less than n vertices with n > 2. Let G be any graph containing two vertices x and y with k = κG (x, y). We need to construct k pairwise internally disjoint paths from x to y in G. Case 1. G has a minimum x, y-cut S such that S − ( N(x) ∪ N( y)) = ∅. Let V1 be the set of vertices on x, S-paths and let V2 be the set of vertices on S, y-paths.
ch007.tex
30/6/2008
10: 31
Page 113
Connectivity
113
We claim that S = V1 ∩ V2 . As S is a minimal x, y-cut, every vertex of S lies on a path from x to y. Hence S ⊆ V1 ∩ V2 . Suppose S = V1 ∩ V2 . There exists a vertex v ∈ (V1 ∩ V2 ) − S. The portion from x to v of some x, S-path followed by the portion from v to y of some S, y-path yields a path from x to y that avoids the x, y-cut S. This is impossible. Thus, S = V1 ∩ V2 . Now, we claim that V1 ∩ (N( y) − S) = ∅. Suppose that there exists a vertex v ∈ V1 ∩ (N( y) − S). The portion from x to v of some x, S-path followed by v, y yields a path from x to y that avoids the x, y-cut S. This is impossible. Thus, V1 ∩ (N( y) − S) = ∅. Similarly, V2 ∩ (N(x) − S) = ∅. Now, we splice the graph G into H1 and H2 as follows. Form H1 by adding to the induced subgraph G[V1 ] a vertex y with each edge from S. Form H2 by adding to the induced subgraph G[V2 ] a vertex x with each edge to S. Every path from x to y in G that starts with an x, S-path is contained in H1 . Thus, every x, y -cut in H1 is an x, y-cut in G. Hence, κH1 (x, y ) = k. Similarly, κH2 (x , y) = k. As V1 ∩ (N( y) − S) = ∅ and V2 ∩ (N(x) − S) = ∅, both H1 and H2 have fewer vertices than G. By induction, λH1 (x, y ) = k = λH2 (x , y). Since V1 ∩ V2 = S, deleting y from the k-paths in H1 and deleting x from the k-paths in H2 yields the desired x, S-paths and the S, y-paths in G. Combining these paths, we obtain k pairwise internally disjoint paths from x to y in G. See Figure 7.8 for an illustration. Case 2. Every minimum x, y-cut S of G satisfies S − (N(x) ∪ N( y)) = ∅. Thus, S ⊆ N(x) ∪ N( y). Again, we need to construct k pairwise internally disjoint paths from x to y in G. Suppose that G has a vertex v ∈ / {x, y} ∪ N(x) ∪ N( y). Then v is not in any minimum x, y-cut. Hence, κG−v (x, y) = k. By induction, G − v contains k internally disjoint paths from x to y. Suppose that N(x) ∩ N( y) = ∅. Let v be any vertex in N(x) ∩ N( y). Obviously, v appears in every x, y-cut. Hence, κG−v (x, y) = k − 1. By induction, G − v contains (k − 1) internally disjoint paths from x to y. Adding the path x, v, y, we obtain k internally disjoint paths from x to y of G.
Case 1
v1
v2 S
S
y x
x
Case 2 x
y
G
FIGURE 7.8
Illustration of Theorem 7.5.
y
x H1
G
S
y
H2
ch007.tex
30/6/2008
10: 31
Page 114
114
Graph Theory and Interconnection Networks
Thus, we assume that N(x) and N( y) are disjoint and exhaust V (G) − {x, y}. Let G be the bipartite graph with bipartition N(x), N( y) and edge set [N(x), N( y)]. Every path from x to y in G uses some edge from N(x) to N( y). Therefore, x, y-cuts in G are precisely the vertex covers of G . Hence, β(G ) = k. By the König–Egerváry Theorem, there is a matching of size k from N(x) to N( y). These edges yield k pairwise internally disjoint paths from x to y of length 3. See Figure 7.8 for an illustration. The following global version for k-connected graphs, observed by Whitney [340], is also referred to as the Menger Theorem. THEOREM 7.6 The connectivity of G equals the maximum k such that λ(x, y) ≥ k for all x, y ∈ V (G). Proof: By Theorem 7.5, κ(x, y) = λ(x, y) when (x, y) ∈ / E(G). By definition, κ(G) = min{κ(x, y) | (x, y) ∈ / E(G)}. Thus, we need to show that λ(x, y) ≥ κ(G) if (x, y) ∈ E(G). We first claim that κ(G) ≤ κ(G − (x, y)) + 1. Suppose that G is the complete graph Kn . Obviously, κ(G − (x, y)) = n − 2 = κ(G) − 1. Suppose that G is not a clique. Then κ(G) ≤ n − 2. Let S be a minimum separating set of G − (x, y). Suppose that S is also a disconnecting set of G. Then κ(G) = κ(G − (x, y)) = |S|. Thus, we assume that S is not a minimum separating set of G. Since G = Kn , |S| < n − 2. Moreover, G − (x, y) − S consists of two components: one contains x and the other contains y. Thus, one of these components has at least two vertices. Without loss of generality, we assume that x is in a component with at least two vertices. Obviously, S ∪ {x} is a separating set of G. Thus, κ(G) ≤ κ(G − (x, y)) + 1. By definition, λG (x, y) = 1 + λG − (x,y) (x, y). Thus, λG (x, y) = 1 + λG−(x,y) (x, y) = 1 + κG−(x,y) (x, y) ≥ 1 + κ(G − (x, y)) ≥ κ(G) The theorem is proved.
The line graph of a graph G, written L(G), is the graph whose vertices are edges of G, with ef ∈ E(L(G)) if e = (u, v) and f = (v, w) in G. For graphs in Figure 7.9, e and f share a vertex. We use the notation λ (x, y) to be the maximum size of a set of pairwise edge-disjoint paths from x to y, and κ (x, y) to be the minimum number of edges whose deletion makes y unreachable from x.
f e
f
h
g
i
h
e g G
FIGURE 7.9 The graph and its line graph.
L(G)
i
ch007.tex
30/6/2008
10: 31
Page 115
Connectivity
115
THEOREM 7.7 Suppose that x and y are distinct vertices of a graph G. Then the minimum size of an x, y-disconnecting set of edges equals the maximum number of pairwise edge-disjoint paths from x to y; that is, κ (x, y) = λ (x, y). Proof: We modify G by adding two new vertices s, t and two new edges (s, x) and (x, y) and λ (x, y) = λ (x, y). ( y, t) to obtain G . It is easy to see that κ (x, y) = κG G We extend each path from x to y by starting from the edge (s, x) and ending with the edge ( y, t). A set of edges disconnects y from x in G if and only if the corresponding vertices of L(G ) form an (s, x), ( y, t)-cut. Similarly, edge-disjoint paths from x to y in G become internally disjoint paths from (s, x) to ( y, t) in / E(L(G )). By Menger’s Theorem, L(G ), and vice versa. Since x = y, ((s, x), ( y, t)) ∈ (x, y) = κ κG ((s, x), ( y, t)) = λ ((s, x), ( y, t)) = λG (x, y). L(G ) L(G ) There are similar Menger-type results for edge connectivity and for digraphs. Dirac extended Menger’s theorem to other families of paths. An (x, U)-fan is a set of (x, U)-paths such that any two of them share only the vertex x. THEOREM 7.8 (Fan Lemma, Dirac [87]) A graph is k-connected if and only if it has at least k + 1 vertices and there is an (x, U)-fan for every choice of x and U with |U| ≤ k and x ∈ / U. Proof: Suppose that G is k-connected. We construct G from G by adding a new vertex y to all of U. By Lemma 7.1, G also is k-connected. By Menger’s Theorem, there exist k pairwise internally disjoint paths from x to y in G . Deleting y from these paths produces an (x, U)-fan of size k in G. Conversely, suppose that G has at least k + 1 vertices and there is an (x, U)-fan for every choice of x and U with |U| ≤ k and x ∈ / U. Obviously, the statement holds for for every choice of x and U with |U| = k and x ∈ / U. Thus, deg (x) ≥ k for every vertex in G. Let x and y be any two different vertices of G. Let U = {y1 , y2 , . . . , yk−1 } be a set of (k − 1) neighbors of y not containing x. We set U = U ∪ {y}. Obviously, we can extend the (x, U)-fan by adding the edges {( yi , y) | yi ∈ U } to obtain k internally disjoint paths from x to y. Hence, G is k-connected. Using a similar augment, we have the following theorem. THEOREM 7.9 A graph G = (V , E) is k-connected if and only if it has at least (k + 1) vertices and there exist k disjoint path joining any two vertex sets A and B with |A| = |B| = k.
7.4 AN APPLICATION—MAKING A ROAD SYSTEM ONE-WAY Given a road system, how can it be converted to one-way operation so that traffic may flow as smoothly as possible? This is clearly a problem of the orientations of graphs. We consider, for example, the two graphs G1 and G2 , representing road networks, in Figures 7.10a and 7.10b. No matter how G1 is oriented, the resulting orientation cannot be strongly connected, so that the network will not be able to flow freely through the system. The
ch007.tex
30/6/2008
10: 31
Page 116
116
Graph Theory and Interconnection Networks
(a)
(b)
(c)
FIGURE 7.10 (a) G1 , (b) G2 , and (c) D2 .
trouble is that G1 has a cut edge. On the other hand, G2 has the balanced orientation D2 , shown in Figure 7.10c, in which each vertex is reachable from each other vertex in at most two steps; in particular, D2 is strongly connected. Certainly, a necessary condition for G to have a strongly connected orientation is that G is 2-edge-connected. Robbins [275] showed that this condition is also sufficient. THEOREM 7.10 If G is 2-edge-connected, then G has a strong orientation. Proof: Let G be a 2-edge-connected graph. Then G contains a cycle G1 . We define inductively a sequence G1 , G2 , . . . of connected subgraphs of G as follows. Suppose that Gi (i = 1, 2, . . .) is not a spanning subgraph of G. Let vi be a vertex of G not in G. Then there exist edge-disjoint paths Pi and Qi from vi to Gi . Define Gi+1 = Gi ∪ Pi ∪ Qi . As the number of vertices of Gi+1 is larger than that of Gi , this sequence must terminate in a spanning subgraph Gn of G. We now orient Gn by orient G1 as a directed cycle, each path Pi as a directed path with origin vi , and each path Qi as a directed path as terminus vi . Suppose that Gn = G. All the edges of G − Gn are oriented arbitrarily. Clearly every Gi —and hence in particular Gn —is thereby given a strong orientation. Since Gn is a spanning subgraph of G, G has a strong orientation. Nash-Williams [259] has generalized Robbins’ theorem by showing that every 2k-edge-connected graph G has a k-arc-connected orientation. Although the proof of this theorem is difficult, the special case in which G has an Euler trail carries a simple proof. THEOREM 7.11 Let G be a 2k-edge-connected graph with an Euler trail. Then G has a k-arc-connected orientation. Proof: Let v0 e1 v1 , . . . em , vm be an Euler trail of G. Orient G into a digraph D by converting the edge ei with ends vi−1 and vi to an arc ai with tail vi−1 and head vi for 1 ≤ i ≤ m. Let [S, S] be an r-edge cut of G. The number of times that the directed trail (v0 , a1 , v1 , . . . , am , vm ) crosses from S to S differs from the number of times it crosses
ch007.tex
30/6/2008
10: 31
Page 117
Connectivity
117
from S by at most one. Since it includes all arcs of D, both [S, S] and [S, S] contain at least r/2 arcs. The result follows.
7.5
CONNECTIVITY OF SOME INTERCONNECTION NETWORKS
An interesting problem in network designs is as follows. Let n and d be positive integers. We want to find a graph (or digraph) with n vertices, each of which has degree (or outdegree) at most d, to minimize the diameter and to maximize the connectivity. In Example 7.1, we prove that κ(Qn ) = n. In Chapter
introduced twisted cubes 3, we TQn . We also proved that the diameter of TQn is n +2 1 in Chapter 3. It is proved in [1] that κ(TQn ) = n. In Chapter 3, we also introduced another variation of cubes, namely, shuffle cubes SQn . The diameter of SQn is proved to be about n/4. Here, we prove that the connectivity of SQn is still n. THEOREM 7.12
SQn is n-connected.
Proof: We prove this theorem by induction. Since SQ2 = Q2 , SQ2 is 2-connected. Since SQn is n-regular, it suffices to show that after removing arbitrary f vertices from SQn for 1 ≤ f ≤ n − 1, the remaining graph is still connected. Assume that F is an arbitrary set of f vertices removed from SQn . Now consider n = 6. By definition, SQ6 consists of 16 SQ2 subcubes. We decompose SQ6 into two subgraphs H1 and H2 , where H1 consists of those SQ2 subcubes containing vertices in F, and H2 consists of the remaining SQ2 subcubes. Thus, H2 is connected and H1 − F is not necessarily connected. We distinguish the following two cases: Case 1. Each SQ2 subcube has at most one vertex in F. It follows that each subcube of SQ6 − F is still connected and has at least three vertices. Furthermore, H1 contains at most five subcubes, since |F| ≤ 5. Let Q be a subcube in H1 − F. Note that Q contains three vertices. Q has 12 edges connected with another 11 or 12 subcubes in SQ6 − F. Since there are at most five subcubes in H1 − F, Q is connected to some subcubes in H2 . Since H2 is connected and each subcube in H1 − F is also connected to H2 , SQ6 − F is connected. Case 2. There is a subcube containing at least two vertices of F. Suppose that v is a vertex in H1 − F. Then v is connected to other four subcubes. Since |F| ≤ 5, H1 contains at most four subcubes. Therefore, v is connected to a subcube in H2 . Since H2 is connected, it follows that each vertex in H1 − F is connected to some vertices in H2 . Therefore, SQ6 − F is connected. Hence, SQ6 is 6-connected. Now, we assume that SQ4k−2 is (4k − 2)-connected for k ≥ 2. Consider SQn for n = 4k + 2 and k ≥ 2, and there are at most 4k + 1 vertices in F. Each subcube of SQ4k+2 is an SQ4k−2 . We distinguish the following two cases of F: Case 1. Each subcube contains at most 4k − 3 vertices in F. By induction hypothesis, each subcube is still connected. Consider two arbitrary subcubes j1 j2 j3 j4 j1 j2 j3 j4 i1 i2 i3 i4 i1 i2 i3 i4 SQ4k−2 and SQ4k−2 . The edges (u, v) between SQ4k−2 and SQ4k−2 satisfy
ch007.tex
118
30/6/2008
10: 31
Page 118
Graph Theory and Interconnection Networks
s4k−2 (u) = s4k−2 (v), and p4 (u) ⊕ p4 (v) = i1 i2 i3 i4 ⊕ j1 j2 j3 j4 ∈ Vs2 (u) . Therefore, the j1 j2 j3 j4 i1 i2 i3 i4 and SQ4k−2 is 24k−4 , which is greater number of edges in SQn between SQ4k−2 i1 i2 i3 i4 than |F|. As a consequence, each subcube SQ4k−2 − F is connected to every subj1 j2 j3 j4 − F. Furthermore, it follows from the induction hypothesis that each cube SQ4k−2 i1 i2 i3 i4 subcube SQ4k−2 − F is connected. Hence, SQ4k+2 − F is connected. Case 2. There is a subcube containing at least 4k − 2 vertices in F. It follows that H1 contains at most four subcubes. The proof is similar to Case 2 for SQ6 . Hence, SQ4k+2 is 4k + 2 connected. The theorem follows. Li et al. [224] also generalize shuffle cubes into generalized shuffle cubes by lowering the diameter and keeping both the connectivity and the number of edges. The problem of finding a graph (or digraph) with n vertices each of which has degree (or outdegree) at most d to minimize the diameter and to maximize the connectivity by giving n and d is a multiobjective optimization problem. Usually, for such a problem, a solution is selected based on a tradeoff between two objective functions. However, for this problem, it is different; that is, there exist solutions that are nearly optimal to both. In the following, we present some solutions to this problem. As discussed in Chapter 3 the de Bruijn digraph BRU(d, t) contains d t vertices of diameter t and with the outdegree of each vertex being d. The diameter is very closed to the Moore bound. It is proved that the connectivity of BRU(d, t) is d − 1, which is one less than the degree bound d. The Kautz digraph Kautz(d, t) contains (d + 1)d t−1 vertices of diameter t and with the outdegree of each vertex being d. The diameter is very closed to the Moore bound. It is proved that the connectivity of Kautz(d, t) is d, which is the best possible connectivity. The maximum degree of the undirected de Bruijn graph UBRU(d, t) is 2d. Hence, the diameter of UBRU(d, t) is bounded by a constant times the Moore bound. The connectivity of UBRU(d, t) is shown to be 2d − 2. Similarly, the maximum degree of the undirected Kautz graph UKautz(d, t) is 2d. Hence, its diameter is again bounded by a constant times the Moore bound. The connectivity of UKautz(d, t) is shown to be 2d − 1.
7.6 WIDE DIAMETERS AND FAULT DIAMETERS Assume that G = (V , E) is a graph with κ(G) = κ. For any pair of vertices, say u and v, by the Menger Theorem we can find κ internally disjoint paths such that the longest path length of κ disjoint paths is minimum, denoted by dκ (u, v), among all possible choice of κ internally disjoint paths. The wide diameter is defined as the maximum of dκ (u, v) over all u, v ∈ V . A small wide diameter is preferred, since it enables fast multipath communication. Fault diameter estimates the impact on diameter when faults occur; that is, the removal of vertices from G. For a pair of vertices u and v, we find the maximum of shortest path length between u and v over all possible (κ − 1) faults, f f denoted by dκ−1 (u, v). The (κ − 1) fault diameter is the maximum of dκ − 1 (u, v) for all u, v ∈ V ; that is, the maximum transmission delay of (κ − 1) faults. A small (κ − 1) fault diameter is also desirable to obtain a small communication delay when a fault occurs.
ch007.tex
30/6/2008
10: 31
Page 119
Connectivity
119
We here formally define the wide diameter and the fault diameter of an underlying network G = (V , E). Let u and v be two distinct vertices in G, and let κ(G) = κ. Let C(u, v) denote the set of all α internally disjoint paths between u and v. An element in C(u, v) is called a container between u and v. Each element i of C(u, v) consists of α internally disjoint paths, and the longest length among these α paths is denoted by li (u, v). The number of elements in C(u, v) is denoted by |C(u, v)|. We define dα (u, v) as the minimum over all li ; that is, dα (u, v) = min1≤i≤|C(u,v)| {li (u, v)}. We write d1 (u, v) as d(u, v), which means the shortest distance between u and v. Dα (G) is called the α-diameter of G and is given by Dα (G) = max {dα (u, v)} i,v∈V
By the Menger Theorem, Dα (G) = ∞ if α ≥ κ + 1. We usually write D1 (G) as D(G) and call D(G) the diameter of G. In particular, the wide diameter of G is defined as Dκ (G). The wide diameter, proposed by Hsu [164], measures the performance of multipath communication. f For a positive integer β, dβ (u, v), is given by f
dβ (u, v) =
max
F⊂V , |F|=β
{dG−F (u, v) | u, v ∈ / F}
f
The β-fault diameter, denoted by Dβ (G), is given by f f Dβ (G) = max dβ (u, v) u,v∈V
f
By the Menger Theorem, Dβ (G) = ∞ if β ≥ κ. In particular, the fault diameter of G f is defined as Dκ−1 (G). The fault diameter, proposed by Krishnamoorthy and Krishnamurthy [206], estimates the impact of the diameter when a fault occurs. Fault diameters and wide diameters are important measures for interconnection networks. f Obviously, we have D(G) ≤ Dκ−1 (G) ≤ Dκ (G). f
THEOREM 7.13 (Saad and Shultz [279]) Dn (Qn ) = Dn−1 (Qn ) = n + 1. Proof: Each vertex u of Qn can be expressed as an n-bit string u = un−1 un−2 . . . u0 . We use uk to denote the string un−1 un−2 . . . uk+1 uk uk−1 . . . u0 . Assume that u and v are two different nodes in the n-dimensional hypercube. We use H(u, v) to denote the set of indices such that ui = vi . Obviously, |H(u, v)| = h(u,v)−1 be the decreasing sequence of indices in H(u, v) and {αj }n−1 h(u, v). Let {αi }i=0 j=h(u,v) be the decreasing sequence of indices such that uαj = vαj . For 1 ≤ i ≤ h(u, v), we set αh(u,v)−1+i α = v with the addition of Pi = u, xi,1 = uα0+i , xi,2 = xi,11+i , . . . , xi,h(u,v) = xi,h(u,v)−1 superscripts being performed under modulo h(u, v); and for h(u, v) ≤ j ≤ n − 1, we α α αj set Pj = u, uαj , x0,1j , x0,2j , . . . , x0,h(u,v)−1 , vαj , v. For example, let n = 5, u = 00000, and v = 00111. Then P1 = 00000, 00100, 00110, 00111, P2 = 00000, 00010, 00011, 00111, P3 = 00000, 00001, 00101,
ch007.tex
30/6/2008
10: 31
Page 120
120
Graph Theory and Interconnection Networks
00111, P4 = 00000, 10000, 10100, 10110, 10111, 00111, and P5 = 00000, 01000, 01100, 01110, 01111, 00111. Obviously, P1 , P2 , . . . , Pn form n disjoint paths joining u to v. With this construction, dn (u, v) ≤ 2 + h(u, v) if h(u, v) = n and dn (u, v) ≤ n if h(u, v) = n. Hence Dn (Qn ) ≤ n + 1. n
n−1
Let u = 00 . . . 0 and v = 0 11 . . . 1. Assume that F = {ui | 0 ≤ i ≤ n − 2}. Obviously, un−1 is the only fault-free node that is adjacent to u. Let P = u = x0 , x1 , . . . , xk = v be any path in Qn − F joining u to v. Obviously, x1 = un . f Since h(x1 , v) = n, the length of P is at least n + 1. Therefore, Dκ−1 (Qn ) ≥ n + 1. f
f
Since D(G) ≤ Dκ−1 (G) ≤ Dκ (G) holds for any graph G, Dn (Qn ) = Dn−1 (Qn ) = n + 1 is obtained. It is interesting to study the wide diameter and the fault diameter of other interconnection networks. There are some studies on the fault diameter and wide diameter for the other interconnection networks [130,217].
7.7
SUPERCONNECTIVITY AND SUPER-EDGE-CONNECTIVITY
Assume that G is a k-regular graph with connectivity κ and edge-connectivity λ. We say that G is maximum-connected if κ = k; and G is super-connected if it is a complete graph, or it is maximum-connected and every minimum vertex cut is NG (v) for some vertex v. We say that G is maximum-edge-connected if λ = k; and G is super-edgeconnected if it is maximum-edge-connected and every minimum edge disconnecting cut is NEG (v) for some vertex v where NEG (v) = {(v, x) | x ∈ E}. It has been shown that a network is more reliable if it is super-connected [59,61, 351]. Some important families of interconnection networks have been proven to be super-connected [59,61,351]. Here, we present three schemes, proposed in Ref. 52, to construct super-connected and super-edge-connected graphs. Assume that t is a positive integer. Suppose that G0 = (V0 , E0 ) and G1 = (V1 , E1 ) are two disjoint graphs with t vertices. A 1-1 connection between G0 and G1 is defined as an edge set Er = {(v, φ(v)) | v ∈ V0 , φ(v) ∈ V1 and φ : V0 → V1 is a bijection}. We use G0 ⊕ G1 to denote the graph G = (V0 ∪ V1 , E0 ∪ E1 ∪ Er ). The operation ⊕ may generate different graphs depending on the bijection. Sometimes, G can also be expressed as G(G0 , G1 , M) where M is the perfect matching generated by φ. See Figure 7.11, for an illustration of G0 ⊕ G1 . We note that the Cartesian product of a graph H and a complete graph K2 can be viewed as a H ⊕ H. Let x be any vertex of G0 ⊕ G1 . We use x as the vertex matched under φ. THEOREM 7.14 Assume that t is a positive integer. Suppose that G0 and G1 are two k-regular maximum-connected graphs with t vertices, and φ is a 1-1 connection between G0 and G1 . Then, G0 ⊕ G1 is (k + 1)-regular super-connected if and only if (1) t > k + 1 or (2) t = k + 1 with k = 0, 1, 2. Proof: Since G0 and G1 are k-regular-connected graphs, t ≥ k + 1. By definition, G0 ⊕ G1 is a (k + 1)-regular graph. In order to prove that G0 ⊕ G1 is super-connected,
ch007.tex
30/6/2008
10: 31
Page 121
Connectivity
121 A perfect matching
G0
G1
FIGURE 7.11 Illustration of G0 ⊕ G1 .
we need to check whether G0 ⊕ G1 − F is connected for any F ⊂ V (G0 ⊕ G1 ) such that |F| = k + 1 and F = NG0 ⊕G1 (v) for any vertex v ∈ V (G0 ⊕ G1 ). Suppose that t = k + 1. Then, G0 and G1 are isomorphic to the complete graph Kk+1 . Moreover, G0 ⊕ G1 is isomorphic to the Cartesian product of Kk+1 and K2 . Without loss of generality, we assume that V (G0 ) = {a0 , a1 , . . . , ak } and V (G1 ) = {a0 , a1 , . . . , ak }. By brute force, we can check whether G0 ⊕ G1 is superconnected for k = 0, 1, 2. Suppose that k ≥ 3. We set F = {a0 , a1 } ∪ {ai | 2 ≤ i ≤ k}. It is easy to see that |F| = k + 1, F = NG0 ⊕G1 (v), and F is a vertex cut of G0 ⊕ G1 . Therefore, G0 ⊕ G1 is not super-connected. Now, assume that t > k + 1. Note that K1 is the only connected 0-regular graph and K2 is the only connected 1-regular graph. Let k ≥ 2. We set X0 = F ∩ V (G0 ) and X1 = F ∩ V (G1 ). Case 1. |X0 | < k and |X1 | < k. Thus, both G0 − X0 and G1 − X1 are connected. Since t = |M| > k + 1 and |F| = k + 1, there exists a ∈ V (G0 ) − F and a ∈ V (G1 ) − F. Therefore, G0 ⊕ G1 − F is connected. Case 2. Either k ≤ |X0 | ≤ k + 1 or k ≤ |X1 | ≤ k + 1. Without loss of generality, we assume that k ≤ |X0 | ≤ k + 1. Hence, |X1 | ≤ 1. Since k ≥ 2, G1 − X1 is connected. Let C be any connected component of G0 − X0 . We will claim that there exists a ∈ C and a ∈ V (G1 ) − F. With this claim, G0 ⊕ G1 − F is connected. First, suppose that C consists of only one vertex a. Then NG0 (a) ⊂ F. Since F = NG0 ⊕G1 (a), a ∈ V (G1 ) − F. Thus, the claim holds. Now, suppose that C contains at least two vertices a and b. Since at most one vertex of {a, b} is in F, we may assume that a ∈ / F. Thus, our claim holds. Therefore, the theorem is proved. A similar argument leads to the following theorem for super-edge-connected graphs, and the following corollary.
ch007.tex
30/6/2008
122
10: 31
Page 122
Graph Theory and Interconnection Networks
THEOREM 7.15 Assume that t is a positive integer. Suppose that G0 and G1 are two k-regular maximum-edge-connected graphs with t vertices, and φ is a 1-1 connection between G0 and G1 . Then, G0 ⊕ G1 is (k + 1)-regular super-edge-connected if and only if (1) t > k + 1 or (2) t = k + 1 with k = 0. COROLLARY 7.2 Assume that t is a positive integer. Suppose that G0 and G1 are two k-connected and k -edge-connected graphs with t vertices, and φ is a 1-1 connection between G0 and G1 . Then, G0 ⊕ G1 is (k + 1)-connected and (k + 1)edge-connected. As noted in Chapter 3, the hypercube does not have the smallest diameter for its resources. Various networks are proposed by twisting some pairs of links in hypercubes [1,76,92,93]. Because of the lack of the unified perspective on these variants, results of one topology are hard to extend to others. To make a unified study of these variants, Vaidya et al. introduced the class of hypercube-like graphs [322]. We denote their graphs as H -graphs. The class of H -graphs, consisting of simple, connected, and undirected graphs, contains most of the hypercube variants. Now, we can define the set of n-dimensional H -graph, Hn , as follows: 1. H1 = {K2 }, where K2 is the complete graph with two vertices. , where N is any 2. Assume that G0 , G1 ∈ Hn . Then G0 ⊕ G1 is a graph in Hn+1 perfect matching between V (G0 ) to V (G1 ). COROLLARY 7.3 Every graph in Hn is both super-connected and super-edgeconnected if n ≥ 2. Assume that n is a positive integer. The alternating graph An [59] is another attractive interconnection graph topology. V (An ) = {p | p = p1 p2 . . . pn−2 with pi ∈ {1, 2, . . . , n} for 1 ≤ i ≤ n − 2 and pi = pj if i = j} and E(An ) = {(p, q) | there exists a unique i ∈ n − 2 such that pi = qi }. In Ref. 59, split-star Sn2 is proposed as an attractive interconnection network. V (Sn2 ) = {p | p = p0 p1 p2 . . . pn−2 with p0 ∈ {0, 1}, pi ∈ {1, 2, . . . , n} for 1 ≤ i ≤ n − 2, and pi = pj if i = j = 0} and E(Sn2 ) = {(p, q) | there exists a unique i with 0 ≤ i ≤ n − 2 such that pi = qi }. It is pointed out in Ref. 59 that Sn2 can be viewed as An ⊕ An . Moreover, it is proved that An is super-connected unless n = 4 and is super-edge-connected for any n. By Theorems 7.1 and 7.2, we can easily prove the result in Ref. 59 that Sn2 is super-connected for any n and super-edge-connected unless n = 3. Suppose that r and t are positive integers with r ≥ 3. Assume that G0 , G1 , . . . , Gr−1 are graphs with |V (Gi )| = t for 0 ≤ i ≤ r − 1. We define H = G(G0 , G1 , . . . , Gr−1 ; M) as the graph with V (H) = V (G0 ) ∪ V (G1 ) ∪ · · · ∪ V (Gr−1 ) such that every subgraph of H induced by V (Gi ) ∪ V (Gi+1 mod r ) with 0 ≤ i < r can be viewed as Gi ⊕ Gi+1 mod r for some 1-1 connection. See Figure 7.12 for an illustration of G(G0 , G1 , . . . , Gr−1 ; M). The following results are proved in Ref. 52.
ch007.tex
30/6/2008
10: 31
Page 123
Connectivity
123
G0
Gr-1
A perf e matc ct hing
ct rfe g pe chin A at m
G1
rfect A pe hing matc
G2
FIGURE 7.12 Illustration of G(G0 , G1 , . . . , Gr−1 ; M).
THEOREM 7.16 Suppose that r and t are positive integers with r ≥ 3. Assume that G0 , G1 , . . . , Gr−1 are k-regular maximum-connected graphs with |V (Gi )| = t for 0 ≤ i ≤ r − 1. Then, H = G(G0 , G1 , . . . , Gr−1 ; M) is (k + 2)-regular super-connected if and only if (1) k ≥ 1 or (2) k = 0 and r = 3, 4, 5. THEOREM 7.17 Suppose that r and t are positive integers with r ≥ 3. Assume that G0 , G1 , . . . , Gr−1 are k-regular maximum-edge-connected graphs with |V (Gi )| = t for 0 ≤ i ≤ r − 1. Then, H = G(G0 , G1 , . . . , Gr−1 ; M) is (k + 2)-regular super-edgeconnected if and only if (1) k ≥ 2, (2) k = 1 and r = 3, or (3) k = 0 and r = 3. COROLLARY 7.4 Suppose that r and t are positive integers with r ≥ 3. Assume that G0 , G1 , . . . , Gk−1 are k-connected and k -edge-connected graphs with |V (Gi )| = t for 0 ≤ i ≤ r − 1. Then, H = G(G0 , G1 , . . . , Gr−1 ; M) is (k + 2)-connected and (k + 2)-edge-connected. Let t be an integer with t ≥ 2. Let G1 and G2 be two graphs with t vertices such that V (G1 ) = {ai | 0 ≤ i < t} and V (G2 ) = {bi | 0 ≤ i < t}. Let C be a set of edges given by C = {(ai , bi ) | 0 ≤ i < t} ∪ {(bi , ai+1 (mod t) ) | 0 ≤ i < t}. The graph G(G1 , G2 ; C) is defined as the graph with the vertex set V (G(G1 , G2 ; C)) = V (G1 ) ∪ V (G2 ), and edge set E(G(G1 , G2 ; C)) = E(G1 ) ∪ E(G2 ) ∪ C. THEOREM 7.18 Let t be an integer with t ≥ 2. Let G1 and G2 be two k-regular maximum-connected graphs with t vertices such that V (G1 ) = {ai | 0 ≤ i < t} and V (G2 ) = {bi | 0 ≤ i < t}. Let C be a set of edges given by C = {(ai , bi ) | 0 ≤ i < t} ∪ {(bi , ai+1 (mod t) ) | 0 ≤ i < t}. Then, G(G1 , G2 ; C) is (k + 2)-regular superconnected if (1) t > k + 1 with k ≥ 3 or (2) t = k + 1 with k = 1, 2, 3.
ch007.tex
124
30/6/2008
10: 31
Page 124
Graph Theory and Interconnection Networks
THEOREM 7.19 Let t be an integer with t ≥ 2. Let G1 and G2 be two k-regular maximum-edge-connected graphs with t vertices such that V (G1 ) = {ai | 0 ≤ i < t} and V (G2 ) = {bi | 0 ≤ i < t}. Let C be a set of edges given by C = {(ai , bi ) | 0 ≤ i < t} ∪ {(bi , ai+1 (mod t) ) | 0 ≤ i < t}. Then, G(G1 , G2 ; C) is (k + 2)-regular super-edge-connected if (1) t > k + 1 with k ≥ 2 or (2) t = k + 1 with k ≥ 1. Let c, d, r be integers with r ≥ 0, d > 1, and 1 ≤ c < d. The recursive circulant r graph RC(c, d, r), defined as the circulant graph G(cd r ; {1, d, . . . , d logd cd −1 }), is proposed in Ref. 269. For 0 ≤ i < d, let Vir denote the set { j | 0 ≤ j < cd r , j = i(mod d)}. We use RCi (c, d, r) to denote the subgraph of RC(c, d, r) induced by Vir . For a positive integer N, let ZN be the additive group of residue classes modulo N. We can recursively describe RC(c, d, r) as follows: Suppose that r = 0. Then RC(c, d, 0) is the graph with V (RC(c, d, 0)) = {0} and E(RC(c, d, 0)) = ∅ if c = 1, V (RC(c, d, 0)) = {0, 1} and E(RC(c, d, 0)) = {(0, 1)} if c = 2, and V (RC(c, d, 0)) = Zc and E(RC(c, d, 0)) = {(i, i + 1) | i ∈ Zc } if c ≥ 3. Suppose that r ≥ 1. The induced subgraph RCi (c, d, r) is isomorphic to RC(c, d, r − 1) for 0 ≤ i < d. More precisely, let fir be the function from Zcd r−1 into Vir defined by fir (x) = dx + i. Then, fir induces an isomorphism from RC(c, d, r − 1) into RCi (c, d, r). Let H(c, d, r) denote the set of edges r of RC(c, d, r) not in ∪d−1 i=0 (E(RCi (c, d, r))). Then, H(c, d, r) = {(i, i + 1) | i ∈ Zcd }. Suppose d ≥ 3. Obviously, RC(c, d, r) can be expressed as G(H, H, . . . , H; M), with d Hs, where H is RC(c, d, r − 1) for some M = ∪d−1 i=0 Mi,i+1 (mod d) . Suppose d = 2. Obviously, RC(c, d, r) can be expressed as G(H, H; C), where H is RC(c, d, r − 1). Recursively applying Theorems 7.3 through 7.6, we can easily prove that RC(c, d, r) is super-connected unless (1) r = 0 and c ≥ 5 or (2) r = 1, c = 1, and d ≥ 5; and super-edge-connected unless (1) r = 0 and c ≥ 4, (2) r = 1, c = 1, and d ≥ 4, or (3) r = 1, c = 2, and d = 3. COROLLARY 7.5 Suppose that t is an integer with t ≥ 2. Assume that G1 and G2 are two k-connected and k -edge-connected graphs with t vertices. Then, G(G1 , G2 ; C) is (k + 2)-connected and (k + 2)-edge-connected.
ch008.tex
30/6/2008
8
10: 50
Page 125
Graph Coloring
8.1 VERTEX COLORINGS AND BOUNDS Coloring problems arise in many contexts. The committee-scheduling example in Chapter 1 has other settings: Assume that G is the graph with the set of courses given in a university as a vertex set. We join an edge between two courses if some students take both courses. The chromatic number is the minimum number of time periods needed to schedule examinations without conflicts. The problem of 4-coloring the regions of maps such that regions with common boundaries receive different colors is another example. A k-coloring of G is a labeling f : V (G) → {1, 2, . . . , k}. The labels are colors. The vertices with color i are a color class. A k-coloring f is proper if x ↔ y implies f (x) = f ( y). A graph G is k-colorable if it has a proper k-coloring. The chromatic number χ(G) is the minimum k such that G is k-colorable. A graph G is k-chromatic if χ(G) = k. Suppose that χ(G) = k but χ(H) < k for every proper subgraph H of G. We say G is color-critical or k-critical. We call the labels colors because their numerical value is usually unimportant. We may interpret them as elements of any set. Discarding loops and copies of multiple edges does not change chromatic number. Therefore, in this chapter—except for the final section—all graphs mentioned are simple graphs, even though we say only graph.
Example 8.1 Each color class in a proper coloring is an independent set. Thus, G is k-colorable if and only if G is k-partite. In Figure 8.1, we illustrate optimal colorings of the 5-cycle and the Petersen graph. These two graphs have chromatic number 3.
Example 8.2 Every k-colorable graph is a k-partite graph. Thus, K1 and K2 are the only 1-critical and 2-critical graphs. By the characterization of bipartite graphs, the 3-critical graphs are odd cycles. We can test 2-colorability by using breadth-first search (BFS) from a vertex in each component. A graph is bipartite if and only if G[X] and G[Y ] are independent sets where X = {u ∈ V (G) | d(u, x) is even} and Y = {u ∈ V (G) | d(u, x) is odd}. Beyond this, we have no characterization of 4-critical graphs and no good algorithm to test 3-colorability.
Let ω(G) denote the order of the largest complete subgraph of G. Obviously, χ(G) ≥ ω(G). Since each color class is an independent set, χ(G) ≥ n(G)/α(G). With Example 8.1, we have examples with χ(G) > ω(G). 125
ch008.tex
30/6/2008
10: 50
Page 126
126
Graph Theory and Interconnection Networks b a
c
c
b
c
a
b a
b
FIGURE 8.1
a
c
c a
b
Optimal colorings of the 5-cycle and the Petersen graph.
We may study the behavior of the chromatic number under various graph operations. It is easy to obtain the following theorem. THEOREM 8.1 1. 2. 3. 4.
χ(G + H) = max{χ(G), χ(H)} χ(G ∨ H) = χ(G) + χ(H) χ(G × H) = max{χ(G), χ(H)} χ(G · H) ≤ min{χ(G), χ(H)}
It is interesting to point out that Hedetniemi conjectured that the equality holds for all graphs in the equation 4 in 1966. This conjecture remains open. CONJECTURE 8.1
8.2
(Hedetniemi [143]) χ(G · H) = min{χ(G), χ(H)}.
PROPERTIES OF k -CRITICAL GRAPHS
It is helpful when dealing with colorings to study the properties of k-critical graphs. An easy consequence of the definition is that every k-critical graph is connected. LEMMA 8.1 Suppose that H is a k-critical graph. Then δ(H) ≥ k − 1. Proof: Suppose that H is a k-critical graph and x is a vertex of H. Since H is k-critical, H − x is (k − 1)-colorable. Suppose that dH (x) < k − 1. The (k − 1) colors used on H − x do not all appear on N(x). We can assign a missing color to x to extend the coloring to H. This contradicts our hypothesis that H has no proper (k − 1)-coloring. Hence every vertex of H has a degree of at least k − 1. COROLLARY 8.1 Every k-chromatic graph has at least k vertices of degree at least k − 1. Proof: Suppose that G is a k-chromatic graph. Let H be a k-critical subgraph of G. By Lemma 8.1, each vertex has a degree of at least (k − 1) in H. Obviously, these vertices have a degree of at least (k − 1) in G. Since H contains at least k vertices, G contains at least k vertices of degree of at least (k − 1).
ch008.tex
30/6/2008
10: 50
Page 127
Graph Coloring
127
Suppose that S is a vertex cut of a connected graph H. Let V1 , V2 , . . . , Vn be the vertex set of the components of H − S. The subgraphs Hi = G[Vi ∪ S] are called the S-components of H. See Figure 8.2 for illustration. We say that the colorings of H1 , H2 , . . . , Hn , agree on S if vertex v is assigned the same color in each coloring for every v ∈ S. THEOREM 8.2 No vertex cut is a clique in a critical graph. Proof: Assume that the statement is false. Let G be a k-critical graph such that G has a vertex cut S that is a clique. Let G1 , G2 , . . . , Gn be the S-components of G. Since G is k-critical, each Gi is (k − 1)-colorable. Since S is a clique, the vertices in S must receive distinct colors in any (k − 1)-coloring of Gi . It follows that there are (k − 1)-colorings of G1 , G2 , . . . , Gn that agree on S. But these colorings together yield a (k − 1) coloring of G. We get a contradiction. Hence, the theorem is proved. COROLLARY 8.2 Every critical graph is a block. Proof: Suppose that v is a cut vertex. Then {v} is a clique. It follows from Theorem 8.2 that no critical graph has a cut vertex. Thus, every critical graph is a block. Let G be a k-critical graph G with a 2-vertex cut {u, v}. By Theorem 8.2, u and v cannot be adjacent. A {u, v}-component Gi of G is of type 1 if every (k − 1)-coloring of Gi assigns the same color to u and v. A {u, v}-component Gi of G is of type 2 if every (k − 1)-coloring of Gi assigns different colors to u and v. See Figure 8.3 for illustration.
H3 H2 H1
FIGURE 8.2
S
Illustration of S-component.
u
u
v
u
v Type 1
v Type 2
FIGURE 8.3 A 4-critical graph with a 2-vertex cut {u, v} and its two {u, v}-components.
ch008.tex
30/6/2008
128
10: 50
Page 128
Graph Theory and Interconnection Networks
THEOREM 8.3 (Dirac [89]) Let G be a k-critical graph with a 2-vertex cut {u, v}. Then 1. G = G1 ∪ G2 , where Gi is a {u, v}-component of type i, (i = 1, 2) 2. Both G1 + (u, v) and G2 · (u, v) are k-critical Proof: 1. Since G is critical, each {u, v}-component of G is (k − 1)-colorable. There cannot exist (k − 1)-colorings of these {u, v}-components all of which agree on {u, v}, because such colorings would together yield a (k − 1)-coloring of G. Therefore there are two {u, v}-components G1 and G2 such that no (k − 1)-coloring of G1 agrees with any (k − 1)-coloring of G2 . Clearly one, say G1 , must be of type 1 and the other, G2 , of type 2. Since G1 and G2 are of different types, the subgraph G1 ∪ G2 of G is not (k − 1)-colorable. Since G is critical, there are exactly two {u, v}-component of G. Hence G = G1 ∪ G2 . 2. Let H1 = G1 + (u, v). Since G1 is of type 1, H1 is k-chromatic. We shall prove that H1 is critical by showing that H1 − e is (k − 1)-colorable for every edge e of H1 . Suppose that e = (u, v). Since H1 − e = G1 , H1 − e is (k − 1)colorable. Suppose that e is some other edge of H1 . Since G2 is a subgraph of G − e, the vertices u and v must receive different colors in any (k − 1)coloring of G − e. The restriction of such coloring to the vertices of G1 is a (k − 1)-coloring of H1 − e. Thus, G1 + (u, v) is k-critical. 3. Let H2 = G2 · (u, v). Since χ(G2 ) = k − 1, H2 is k-chromatic. We shall prove that H2 is critical by showing that H2 − e is (k − 1)-colorable for every edge e of H1 . Since G1 is a subgraph of G − e, the vertices u and v must receive same colors in any (k − 1)-coloring of G − e. The restriction of such coloring to the vertices of G2 is a (k − 1)-coloring of G2 − e such that the vertices u and v receive same colors. Thus, H2 − e is (k − 1)-colorable for every edge e of H1 . COROLLARY 8.3 Assume that G is a k-critical graph with a 2-vertex cut {u, v}. Then degG (u) + degG (v) ≥ 3k − 5. Proof: Let G1 be the {u, v}-component of type 1 and G2 be the {u, v}-component of type 2. Set H1 = G1 + (u, v) and H2 = G2 · (u, v). By Theorem 8.3 and Lemma 8.1, we have degH1 (u) + degH2 (v) ≥ 2k − 2 and degH2 (w) ≥ k − 1 where w is the new vertex obtained by identifying u and v. It follows that degG1 (u) + degG1 (v) ≥ 2k − 4 and degG2 (u) + degG2 (v) ≥ k − 1. Hence, degG (u) + degG (v) ≥ 3k − 5.
8.3
BOUND FOR CHROMATIC NUMBERS
There are some upper bounds on χ(G) coming from the following coloring algorithm.
ch008.tex
30/6/2008
10: 50
Page 129
Graph Coloring
129
ALGORITHM: (Greedy coloring.) The greedy coloring with respect to a vertex ordering v1 , v2 , . . . , vn of V (G) is obtained by coloring vertices in the order v1 , v2 , . . . , vn by the following rule: use the smallest index color not already used on its lower-indexed neighbors to color vi . PROPOSITION 8.1 χ(G) ≤ (G) + 1. Proof: In greedy coloring, each vertex has at most (G) earlier neighbors. Thus, the greedy coloring cannot be forced to use more than (G) + 1 colors. This proves χ(G) ≤ (G) + 1. PROPOSITION 8.2 (Welsh and Powell [337]) Suppose that G is a graph with degree sequence d1 ≥ d2 ≥ · · · ≥ dn . Then χ(G) ≤ 1 + max{min{di , i − 1} | 1 ≤ i ≤ n}. Proof: We apply the greedy coloring with vertices in nonincreasing order of degree. As we color the ith vertices, there at most min {di , i − 1} of its neighbors already have colors. Thus, the index of its color is at most 1 + min{di , i − 1}. Maximizing this over i yields the upper bound. THEOREM 8.4 (Szekeres and Wilf [296]) χ(G) ≤ 1 + maxH⊆G δ(H) for any graph G. Proof: Suppose that k = χ(G) and H is a k-critical subgraph of G. By Lemma 8.1, χ(G) − 1 ≤ δ(H ) ≤ maxH⊆G δ(H). The next bound involves orientations. THEOREM 8.5 (Gallai [119], Roy [278], Vitaver [325]) Suppose that D is an orientation of G. We use l(D) to denote its longest path. Then χ(G) ≤ 1 + l(D). Furthermore, there exists an orientation of G to make the equality hold. (See Figure 8.4). Proof: Suppose that D is an orientation of G. Let D be a maximal acyclic subdigraph of D. Obviously, D is an orientation of a spanning subgraph H of G. Color V (G) by assigning f (v) to be the length of the longest path in D that ends at v plus 1. Since D has no cycle, f is strictly increasing along each path in D .
2
2
4
3
1
3 5 v
1
6 1
u D and D
FIGURE 8.4
Illustration of Theorem 8.5.
5
4 D*
ch008.tex
130
30/6/2008
10: 50
Page 130
Graph Theory and Interconnection Networks
The coloring f uses 1 through 1 + l(D ) on V (D) = V (G). We claim that f is a proper coloring of G. Suppose that (u, v) is in D . Obviously, f (u) = f (v). Suppose (u, v) is not in D . Then the addition of (u, v) to D creates a cycle. Again, f (u) = f (v). Thus, f is a proper coloring of G. To proof the second statement, we construct an orientation D∗ such that ∗ l(D ) ≤ χ(G) − 1. Let f be an optimal coloring of G. For each edge (u, v) in G, we orient the edge as u → v in D∗ if and only if f (u) < f (v). Since f is a proper coloring, this defines an orientation. Since the labels used by f increase along each path in D∗ and there are only χ(G) label in f , we have l(D∗ ) ≤ χ(G) − 1. The bound χ(G) ≤ 1 + (G) is tight for cliques and odd cycles. Using the greedy algorithm with a proper vertex ordering, we can show that these are essentially the only graphs with χ(G) > (G). With this result, the Petersen graph is 3-colorable. To avoid unimportant complications, we phrase the statement only for connected graphs. It can be extended to all graphs, because the chromatic number of a graph is the maximum chromatic number of its components. We present the proof by Lovász [242]. THEOREM 8.6 (Brooks [33]) Suppose that G is a connected graph other than a clique or an odd cycle. Then χ(G) ≤ (G). Proof: Suppose that G is a k-chromatic connected graph other than a clique or an odd cycle. Without loss of generality, we may assume that G is k-critical. By Corollary 8.2, G is a block. Since 1-critical and 2-critical graphs are complete and 3-critical graphs are odd cycles, we have k ≥ 4. Suppose that G has a 2-vertex cut {u, v}. By Corollary 8.3, 2(G) ≥ degG (u) + degG (v) ≥ 3k − 5 ≥ 2k − 1. Since 2(G) is even, χ(G) = k ≤ (G). Assume that G is 3-connected. Since G is not complete, there are three vertices u, v, and w in G such that (u, v) ∈ E(G) and (v, w) ∈ E(G) but (u, w) ∈ / E(G). Set u = v1 and w = v2 and let v3 , v4 , . . . , vn(G) = v be any ordering of the vertices of G − {u, w} such that each vi is adjacent to some vj with j > i. This can be achieved by arranging the vertices of G − {u, w} in nonincreasing order of their distance from v; using, say, BFS. We can now describe a (G)-coloring of G. Assign color 1 to v1 = u and v2 = w. Then successively color v3 , v4 , . . . , vn(G) , each with the first available color in the list 1, 2, . . . , (G). By the construction of the sequence v1 , v2 , . . . , vn(G) , each vertex vi , 1 ≤ i ≤ n(G) − 1, is adjacent to some vertex vj with j > i. Therefore, vi is adjacent to at most (G) − 1 vertices vj with j < i. It follows that, when its turn comes to be colored, vi is adjacent to at most (G) − 1 colors, and, thus, that one of the colors 1, 2, . . . , (G) will be available. As vn(G) is adjacent to two vertices of color 1 (namely v1 and v2 ), vn(G) is adjacent to at most (G) − 2 other colors. Hence vn(G) can be assigned one of the colors 2, 3, . . . , (G).
8.4
GIRTH AND CHROMATIC NUMBER
The bound χ(G) ≥ ω(G) can be tight, but it can also be arbitrarily bad. There have been many constructions of graphs having arbitrarily large chromatic numbers, even though they do not contain K3 .
ch008.tex
30/6/2008
10: 50
Page 131
Graph Coloring
131
w
FIGURE 8.5 The Grötzsch graph.
Example 8.3 (Mycielski’s construction.) Mycielski [257] found a construction scheme that builds from any k-chromatic triangle-free graph G a (k + 1)-chromatic triangle-free supergraph G . Let G be a k-chromatic triangle-free graph with vertex set V = {v1 , v2 , . . . , vn }. Let U = {u1 , u2 , . . . , un }. Then V (G ) = V ∪ U ∪ {w}. Let the subgraph of G induced by V , G [V ], is G. We add edges to make ui adjacent to all of NG (vi ), and then make N(w) = U. The resultant graph is G . Note that U is an independent set in G . From the 2-chromatic graph K2 , the first iteration of Mycielski’s construction yields the 3-chromatic C5 . The second iteration yields the 4-chromatic Grötzsch graph, shown in Figure 8.5. These graphs are the trianglefree k-chromatic graphs with fewest vertices for k = 2, 3, 4.
THEOREM 8.7 Mycielski’s construction produces a (k + 1)-chromatic trianglefree graph from a k-chromatic triangle-free graph. Proof: Suppose that V (G) = {v1 , v2 , . . . , vn } and V (G ) = {vi | 1 ≤ i ≤ n} ∪ {ui | 1 ≤ i ≤ n} ∪ {w} as described previously. Since {ui | 1 ≤ i ≤ n} is independent in G , the other two vertices—say, x and y—of any triangle containing ui belong to V (G). These two vertices are neighbors of vi . Thus, {x, y, vi } forms a triangle in G. Since G is triangle-free, G is also triangle-free. We can extend a proper k-coloring f of G to a proper (k + 1)-coloring of G by setting f (ui ) = f (vi ) and f (w) = k + 1. Thus, χ(G ) ≤ χ(G) + 1. We prove that χ(G) < χ(G ) to obtain equality. Suppose that G has a proper k-coloring g. We may assume that g(w) = k. Thus, g(U) ⊆ {1, 2, . . . , k − 1}. Suppose that g(V ) ⊆ {1, 2, . . . , k − 1}. Suppose that A = {vi | g(vi ) = k} = ∅. For each vi ∈ A, we change the color of vi to g(ui ). We need to check whether it remains a proper coloring. Since A is contained in one color class of g, A is an independent set. We need only to check edges of the form (vi , v ) with v ∈ V (G) − A. Since (vi , v ) ∈ E(G ), then the construction of G yields (ui , v ) ∈ E(G). Thus, g(v ) = g(ui ). Hence, our alternation does not violate edges with G. Thus, we obtain a proper coloring of G with f (w) = k and A = ∅. We now delete U ∪ {w} to obtain a proper (k − 1)-coloring of G. We got a contradiction. Thus, χ(G ) = χ(G) + 1.
8.5
HAJÓS’ CONJECTURE
Hajós [134] conjectured that every k-chromatic graph contains a subdivision of Kk (a graph obtained from Kk by a sequence of edge subdivisions). The statement is trivial
ch008.tex
30/6/2008
10: 50
Page 132
132
Graph Theory and Interconnection Networks
for k ≤ 3. For k = 2, it states that every 2-chromatic graph contains a nontrivial path. For k = 3, it states that every 3-chromatic graph contains a cycle. Dirac [86] proved that the conjecture holds for k = 4. If F is a subdivision of H, then we call F is an H-subdivision. THEOREM 8.8 (Dirac [86]) Every graph with chromatic number of at least 4 contains a K4 -subdivision. Proof: Let G be a 4-chromatic graph. Without loss of generality, we may assume that G is critical. Hence, G is a block and δ(G) ≥ 3. We proceed by induction on n(G). Suppose that n(G) = 4. Then G is K4 and the theorem holds trivially. Assume that the theorem is true for all 4-chromatic graphs with fewer than n(G) vertices. Suppose that G has a 2-vertex cut {u, v}. By Theorem 8.3, G has two {u, v}components G1 and G2 , where G1 + (u, v) is 4-critical. Since n(G1 + (u, v)) < n(G), by induction G1 + (u, v) contains a subdivision of K4 . Let P be a path from u to v in G2 . Then G1 ∪ P contains a subdivision of K4 . Hence, G contains a subdivision of K4 . Now, suppose that G is 3-connected. Since δ ≥ 3, G has a cycle C of length at least four. Let u and v be nonconsecutive vertices on C. Since G − {u, v} is connected, there is a path P in G − {u, v} connecting the two portions of C − {u, v}. We may assume that the origin x and the terminus y are the only vertices of P on C. Similarly, there is a path Q in G − {x, y}. Suppose that P and Q have no vertex in common. Then C ∪ P ∪ Q is a subdivision of K4 . See Figure 8.6a for illustration. Otherwise, let w be the first vertex of P on Q and let P denote the section from x to w of P. Then C ∪ P ∪ Q is a subdivision of K4 . See Figure 8.6b for illustration. Hence, in both cases, G contains a subdivision of K4 . Catlin [36] proved that Hajós’ conjecture fails for k ≥ 7. Hadwiger [133] proposed a weaker conjecture: every k-chromatic graph contains a subgraph contractible to Kk . It means that a subgraph of a k-chromatic graph becomes Kk after a sequence of edge contractions. This is a weaker conjecture because a Kk -subdivision is a special type of subgraph contractible to Kk . Hadwiger’s conjecture is still open.
x
x C
C P' Q
w P
(a)
FIGURE 8.6
y
Illustration of Theorem 8.8.
(b)
y
ch008.tex
30/6/2008
10: 50
Page 133
Graph Coloring
8.6
133
ENUMERATIVE ASPECTS
Sometimes we can shed light on a difficult problem by considering a more general problem. Up to now, there has been no good algorithm to compute the minimum k such that G has a proper k-coloring. However, we define χ(G; k) as the number of proper k-colorings of G. Suppose that we know χ(G, k) for all k. We can compute χ(G) by finding the minimum k such that χ(G, k) is positive. Birkhoff [26] introduced this function as a possible way to attack the Four Color Problem. The function χ(G; k) is defined to be the number of functions f : V (G) → [k] that properly color G from the set [k] = {1, 2, . . . , k}. In this definition, the k colors need not all be used. Moreover, permuting the colors used produces a different coloring.
Example 8.4 (Elementary examples.) Suppose that we are coloring the vertices of an independent set. We can independently choose one of the k colors at each vertex. Each of the k n functions to [k] is a proper coloring. Hence, χ(K n ; k) = k n . We can color the vertices of Kn in some order. The colors chosen earlier cannot be used on the ith vertex. There remain (k − i + 1) choices available for the ith vertex, no matter how the earlier colors were chosen. Hence, χ(Kn ; k) = k(k − 1) · · · (k − n + 1). Thus, χ(Kn ; k) = 0 if k < n, as it should be, because Kn is k-chromatic. Suppose that we want color a tree with k coloring. We can choose any vertex as a root. We can color this vertex in k ways. Along with a coloring, we grow the tree from the root. At every stage, only the color of the parent is forbidden. Thus, we have (k − 1) choices for the color of the new vertex. Furthermore, we can see inductively that every proper k-coloring arises in this way by deleting a leaf. Hence, χ(T ; k) = k(k − 1)n − 1 for every n-vertex tree.
All examples of χ(G, k) are polynomials in k of degree n(G). This holds for every graph. For this reason, we call χ(G; k) the chromatic polynomial of G. PROPOSITION 8.3 Let x(r) = x(x − 1) · · · (x − r + 1). Let pr (G) denote the number of partitions of V (G) into exactly r independent sets. Then χ(G; k) = n(G) r=1 pr (G)k(r) , which is a polynomial of degree n(G). Proof: Suppose that r colors are actually used in a proper coloring. The coloring classes partition V (G) into exactly r independent sets. Suppose that k colors are available. The number of ways to assign colors to a partition when exactly r colors are used is k(r) . This accounts for all colorings. Thus, the formula for χ(G; k) holds. Since k(r) is a polynomial in k and pr (G) is a constant for each r, this formula implies that χ(G; k) is a polynomial function of k. Suppose that G has n vertices. There is exactly one partition of G into n independent sets and no partition using more sets. The leading term is k n . n(G) Computing the chromatic polynomial using χ(G; k) = r=1 pr (G)k(r) is not feasible, because listing partitions into independent sets is no easier than finding the
ch008.tex
30/6/2008
134
10: 50
Page 134
Graph Theory and Interconnection Networks
smallest such partition (chromatic number). There is also a recurrence, which is similar to counting the numbers of spanning trees. Again G · e denotes the graph obtained by contracting the edge e in G. However, since we are counting colorings, we can discard multiple copies of edges that arise from the contraction. THEOREM 8.9 (Chromatic recurrence.) Suppose that G is a simple graph and e is an edge in G. Then χ(G; k) = χ(G − e; k) − χ(G · e; k). Proof: Let e = (u, v). Obviously, every proper k-coloring of G is a proper k-coloring of G − e. Moreover, any proper k-coloring of G − e is a proper k-coloring of G if and only if it gives distinct colors to the endpoints u and v of e. Hence, we can count the proper k-colorings of G by substracting from χ(G − e; k) the number of proper k-colorings of G − e that give u and v the same color. The colorings of G that give u and v the same color correspond directly to proper k-colorings of G · e, in which the color of the contracted vertex is the common color of u and v.
Example 8.5 Deleting an edge from C4 produces P4 . Contracting an edge of C4 produces K3 . Since P4 is a tree, χ(P4 ; k) = k(k − 1)3 . Since K3 is a clique, χ(K3 ; k) = k(k − 1)(k − 2). Using the chromatic recurrence, we obtain χ(C4 ; k) = χ(P4 ; k) − χ(K3 ; k) = k(k − 1)(k 2 − 3k + 3).
Since both G − e and G · e have fewer edges than G, we can use the chromatic recurrence inductively to compute χ(G; e). The initial conditions are graphs with no edges. We have already computed χ(K n ; k) = k n .
Example 8.6 (Near-complete graphs.) Suppose that a graph G has many edges. We may compute its chromatic polynomial by working up to cliques instead of down to their components. For example, we want to compute χ(Kn − e; k). We can write χ(G − e; k) = χ(G; k) + χ(G · e; k) instead of χ(G; k) = χ(G − e; k) − χ(G · e; k). We let G be Kn in this alternative formula and obtained χ(Kn − e) = χ(Kn ; k) + χ(Kn−1 ; k) = (k − n + 2)2
n−3 !
(k − i)
i=0
THEOREM 8.10 χ(G; k) is a polynomial in k of degree n(G) with integer coefficients. Moreover, the leading coefficient is 1, next coefficient −e(G), and its coefficients alternate in sign. Proof: We proof this theorem by induction on e(G). These claims hold trivially when e(G) = 0, because χ(K n ; k) = k n . Suppose that G is an n-vertex graph with e(G) ≥ 1. Obviously, G − e has e(G) − 1 edges and n vertices and G · e has (n − 1) vertices. By the induction hypothesis, there are nonnegative integers {ai } and {bi }
ch008.tex
30/6/2008
10: 50
Page 135
Graph Coloring
such that χ(G − e; k) = chromatic recurrence,
135
n
i=0 (−1)
ia
ik
n−i
and χ(G · e; k) =
n−1 i=0
bi k n−1−i . By the
χ(G − e; k) : k n − [e(G) − 1]k n−1 + a2 k n−2 − · · · + (−1)i ai k n−i · · · − χ(G · e; k) : −(k n−1 − b1 k n−2 + · · · + (−1)i−1 bi−1 k n−i · · · ) = χ(G; e) : k n − e(G)k n−1 + (a2 + b1 )k n−2 − · · · + (−1)i (ai + bi−1 )k n−i · · · Hence, χ(G; k) is a polynomial with leading coefficient a0 = 1 and next coefficient −e(G), and its coefficients alternate in sign. The following result with regard to χ(G; k) is very interesting, because χ(G; k) has meaning when evaluated at negative integers. THEOREM 8.11 (Stanley [286]) χ(G; − 1) is (−1)n(G) times the number of acyclic orientations of G. Proof: We use induction on e(G). Let a(G) be the number of acyclic orientations of G. Suppose that G has no edges. Obviously, a(G) = 1 and χ(G; − 1) = (−1)n(G) . So the claim holds. We will prove that a(G) = a(G − e) + a(G · e) for e ∈ E(G). Suppose this recurrence, a(G) = a(G − e) + a(G · e) for e ∈ E(G), holds. Combined with the induction hypothesis, a(G) = (−1)n(G) χ(G − e; −1) + (−1)n(G)−1 χ(G · e; −1) = (−1)n(G) χ(G; −1) Now, we discuss the recurrence. Let e = (u, v) and D be an acyclic orientation of G − e. We can use u → v or v → u to obtain an acyclic orientation of G. Suppose that D has no path from u to v. We can choose the orientation v → u to get an acyclic orientation of G. Suppose that D has no path from v to u. We can choose the orientation u → v to get an acyclic orientation of G. It is possible to use both orientation u → v and v → u. In this case, D has two possible ways to obtain an acyclic orientation of G. Since D is acyclic, D cannot have both a path from u to v and a path from v to u. Hence, at least one possible orientation for e is to extend D into an acyclic orientation of G. Thus, a(G) equals a(G − e) plus the number of orientations that extend in both ways. Thus, those extending in both ways are the acyclic orientations of G − e with no path from u to v and no path from v to u. Since a path from u to v or a path from v to u in the orientation of G − e becomes a cycle in G · e, there are exactly a(G · e) such orientations. Thus, the theorem is proved.
Example 8.7 There are exactly 4 edges in C4 . Thus, there are 16 orientations for C4 . Of these, 14 are acyclic. We know that χ(C4 ; k) = k(k − 1)(k 2 − 3k + 3). Obviously, χ(C4 ; − 1) = 14.
ch008.tex
136
8.7
30/6/2008
10: 50
Page 136
Graph Theory and Interconnection Networks
HOMOMORPHISM FUNCTIONS
Let G = (X, E) and H = (Y , F) be two graphs. A function φ from X into Y is a homomorphism from G into H if (u, v) ∈ E implies (φ(u), φ(v)) ∈ F. For a fixed graph G, we can define the function hG from G into R by setting hG (H) to be the number of homomorphisms from G into H. It can be checked that χ(G; k) = hG (Kk ) for any graph G. Thus, a homomorphism is a generalization of coloring. Recently, there are a lot of studies on homomorphism. The following theorem is proved in Refs 168 and 169. THEOREM 8.12 Assume that G, H, and K are graphs. Then hG (H · K) = hG (H) × hG (K). Moreover, hG (H + K) = hG (H) + hG (K) if G is connected. Furthermore, hG (H) ≤ hG (K) is H is a subgraph of K. Proof: We only prove that hG (H · K) = hG (H) × hG (K). The statement that hG (H + K) = hG (H) + hG (K) if G is connected follows from the statement that the homomorphic image of a connected graph is still connected. The statement that hG (H) ≤ hG (K) is H is a subgraph of K follows from the definition of homomorphism. Let α : G → H and β : G → K be homomorphisms. We can define γ : G → H · K by letting γ(v) = (α(v), β(v)) for and v ∈ V (G). Let (v1 , v2 ) be an edge of G. We have (α(v1 ), α(v2 )) ∈ E(H) and (β(v1 ), β(v2 )) ∈ E(K). Thus, γ is a homomorphism from G into H · K. Conversely, let γ be a homomorphism from G into H · K. We can define γH : G → H and γK : G → K by γH (v) = a and γK (v) = b if and only if γ(v) = (a, b). Thus, γ(v) = (γH (v), γK (v)). Hence, hG (H · K) = hG (H) × hG (K). A function f from the set of natural numbers N into the set of real numbers R is additive if f (m + n) = f (m) + f (n) for all m, n ∈ N , f is multiplicative if f (m · n) = f (m) · f (n) for all m, n ∈ N , and f is increasing if f (m) ≤ f (n) whenever m ≤ n. The following theorem can easily be obtained. THEOREM 8.13 If f is a multiplicative increasing on N , then either f (n) = 0 for all n ∈ N or f (n) = nα for some α ≥ 0. From the mathematical point of view, the previous theorem is very good. It classifies all multiplicative increasing functions on N . We also observed that all multiplicative increasing functions are generated by additive multiplicative increasing functions. It is very natural to study similar results on other algebraic systems. Let f be a real-valued function defined on the set of all graphs, G. The function f is additive if f (G + H) = f (G) + f (H) for any G, H ∈ G. The function f is multiplicative if f (G · H) = f (G) × f (H) for any G, H ∈ G. The function f is increasing if f (G) ≤ f (H) when G is a subgraph of H. A graph function f is MI if it is multiplicative and increasing. A graph function f is AMI if it is additive, multiplicative, and increasing. Note that MI is closed, undertaking the nonnegative power, finite product, and pointwise convergence. Let S ⊆ MI. We use S to denote the set of functions obtained by
ch008.tex
30/6/2008
10: 50
Page 137
Graph Coloring
137
taking nonnegative power, finite product, and pointwise convergence from elements of S. In other words, the following functions are elements in S: 1. f α , α ≥ 0, and f ∈ S 2. ki=1 fiαi , αi ≥ 0, and fi ∈ S 3. limm→∞ fm , where fm is of type 1 or 2 Lovász observed this fact in Theorem 8.12 and asked if the set of multiplicative increasing functions (with respect to a weak product) is generated by {hG | G is a graph}; that is, it is conjectured that MI = {hG | G is a graph}. Although the conjecture is disproved by Hsu [168,169], we present some interesting examples of multiplicative increasing graph functions. Let f1 (G) be defined as the number of vertices of G. Obviously, f1 = hK1. Moreover, it is proved in Ref. 168 that f = hKα 1 for some α ≥ 0 if f is an MI function with f (K1 ) = 0. Let f2 (G) be defined as 2|E(G)|. It can be checked that f2 = hK2 . Let f3 (G) 1/m be defined as max{deg(v) | v ∈ G}. It is proved in Ref. 168 that f3 = limm→∞ hK1,m . Let f4 (G) be defined as max{|λ| | λ is an eigenvalue of A(G)}. It is proved in Ref. 168 that 1/m f4 = limm→∞ hPm . Let f5 (G) be defined as f5 (G) = limn→∞ α (Gn )1/n , where α (G) is the maximum size of matching in G. It is proved in Ref. 49 that f5 is an MI function but f5 is not in {hG | G is a graph}. Some interesting multiplicative increasing graph functions can be found in [39, 49,165–171]. The classification of all multiplicative increasing functions on graph is still unsolved [39].
8.8 AN APPLICATION—TESTING ON PRINTED CIRCUIT BOARDS Let G = (V , E) be a graph. For subsets S and S of V , we denote by [S, S ] the set of edges with one end in S and the other end in S . A cut of G is a subset of E of the form [S, S], where S is a nonempty proper subset of V and S = V − S. A cut cover of G is a family of cuts, F = {[Si , S i ] | 1 ≤ i ≤ m}, such that each edge e in E belongs to [Si , S i ] for some i. We use cc(G) to denote the minimum cardinality of all possible cut covers of G. Loulou [241] formulates the problem of minimizing the test for printed circuit boards into finding cc(G) for some graph G. THEOREM 8.14 (Ho and Hsu [147]) cc(G) = log2 χ(G). Proof: Assume that cc(G) = r, 2r = s, and χ(G) = t. For any integer k, we use ki to denote the ith bit for the binary representation of k. Assume that F = {[Si , S i ] | i = 1, 2, . . . , r} is a cut cover of G. We define an s-coloring of G, π : V → {1, 2, . . . , s} by assigning π(v) = k such that for every i (1 ≤ i ≤ r), ki = 0 if v ∈ Si and ki = 1 otherwise. Let (u, v) be any edge of G. Since F is a cut cover, e ∈ [Sj , S j ] for some j. We have π(u)j = π(v)j and hence π(u) = π(v). Thus, π is a proper s-coloring of G. We have s ≥ t and cc(G) ≥ log2 χ(G).
ch008.tex
30/6/2008
10: 50
138
Page 138
Graph Theory and Interconnection Networks
On the other hand, suppose that π : {1, 2, . . . , t} is a proper t-coloring of G. For 1 ≤ i ≤ log2 t, let Si = {v ∈ V | π(v)i = 0}. Then F = {[Si , S i ] | 1 ≤ i ≤ log2 t} forms a cut cover of G. We have cc(G) ≤ log2 t = log2 χ(G). The theorem is proved.
8.9
EDGE-COLORINGS
We want to schedule games for a league with 2n teams so that each pair of teams plays each other. However, each team plays at most once a week. Since each team must play with (2n − 1) other teams, the season lasts at least (2n − 1) weeks. The games of each week must form a matching. We can schedule the season in (2n − 1) weeks if and only if we can partition E(K2n ) into (2n − 1) disjoint matchings. Since K2n is (2n − 1) regular, the games for each week forms a perfect matching. We use Figure 8.7 to describe a solution. Arrange (2n − 1) vertices cyclically. The solid line indicates a matching for a week. Rotating the picture as indicated by the dashed matching yields another matching. The (2n − 1) rotations of the figure yield the desired matchings. A k-edge-coloring of G is a labeling f : E(G) → [k]. The labels are colors, and the set of edges with one color is a color class. A k-edge-coloring is proper if edges sharing a vertex have different colors. Thus, each color class is a matching. A graph is k-edge-colorable if it has a proper k-edge-coloring. The edge-chromatic number χ (G) of a loopless graph G is the least k such that G is k-edge-colorable. The multiplicity of an edge is the number of times its vertex pair appears in the edge set. Chromatic index is another name used for χ (G). In contrast to χ(G), multiple edges greatly affect χ (G). Obviously, a graph with a loop has no proper edge-coloring. The word loopless excludes loops but allows multiple edges. The bound χ (G) ≤ 2(G) − 1 follows easily for all loopless graphs. We use the greedy algorithm to color the edges of G in some order. Always assign the current edge the least-indexed color different from those already appearing on edges incident to it. Since no edge is incident to more than 2(G) − 1 colors, we have χ (G) ≤ 2(G) − 1. Since any proper edge-coloring assigns different colors for the edges incident to any vertex, χ (G) ≥ (G). For bipartite graphs, χ (G) achieves the trivial lower bound.
FIGURE 8.7
Illustration of edge-coloring of K2n .
ch008.tex
30/6/2008
10: 50
Page 139
Graph Coloring
139
FIGURE 8.8 A multigraph with χ (G) = 3(G)/2.
THEOREM 8.15 (König [204]) Let G be a bipartite graph with multiple edges allowed. We have χ (G) = (G). Proof: By Corollary 6.1, every regular bipartite graph H has a 1-factor. By induction on (H), this yields a proper (H)-edge-coloring. It therefore suffices to show that every bipartite graph G with maximum degree k has a k-regular bipartite supergraph H. We construct such a supergraph. Add vertices to the smaller partite set of G, if necessary, to equalize the sizes. If the resulting G is not regular, then each partite set has a vertex with a degree of less than (G ) = (G). Add an edge consisting of this pair. Continue adding such edges until the graph becomes regular. Vizing proved that χ ≤ (G) + 1 for any loopless simple graph G. The proof is omitted. THEOREM 8.16 (Vizing [326,327]) Every simple graph with maximum degree has a proper (G) + 1-edge-coloring. For loopless graphs with multiple edges, χ (G) may exceed (G) + 1. Shannon [283] proved that the maximum of χ (G) in terms of (G) alone is 3(G)/2. Vizing proved that χ (G) + µ(G), where µ(G) is the maximum edge multiplicity. The edges of the graph in Figure 8.8 are pairwise-intersecting and require distinct colors: χ (G) = 3(G)/2 = (G) + µ(G).
ch008.tex
30/6/2008
10: 50
Page 140
ch009.tex
30/6/2008
9 9.1
10: 34
Page 141
Hamiltonian Cycles
HAMILTONIAN GRAPHS
A Hamiltonian cycle is a spanning cycle in a graph (a cycle through every vertex). Introduced by Kirkman in 1855, Hamiltonian cycles are named for Sir William Hamilton, who described a game on the graph of the dodecahedron, in which one player would specify a 5-vertex path and the other would have to extend it to a cycle. The game was marketed as the Traveler’s Dodecahedron, a wooden version, in which the vertices were named for 20 important cities. Here, we use a, b, c, . . . , t to represent these vertices as illustrated in Figure 9.1. It was not commercially successful. Another variation of the Hamiltonian cycle problem is a Hamiltonian path problem. A Hamiltonian path is a spanning path. Every graph with a spanning cycle has a spanning path, but Pn shows that the converse is not true. Until the 1970s, the interest in Hamiltonian cycles had been centered on their relationship to the 4-color problem. More recently, the study of Hamiltonian cycles in general graphs has been fueled by practical applications and by the issue of complexity. A graph with a spanning cycle is called a Hamiltonian graph. No easily testable characterization is known for Hamiltonian graphs. We will study necessary conditions and sufficient conditions. Loops and multiple edges are irrelevant to the existence of a spanning cycle. A graph is Hamiltonian if and only if the simple graph obtained by keeping one copy of each edge is Hamiltonian. We focus on simple graphs, particularly when discussing degree conditions.
9.2
NECESSARY CONDITIONS
Since deleting a vertex from a Hamiltonian graph leaves a subgraph with a spanning path, every Hamiltonian graph is 2-connected. Bipartite graphs suggest a way to strengthen this necessary condition.
Example 9.1 A spanning cycle in a bipartite graph visits the two partite sets alternately. Thus, there can be no such cycle unless the parts have the same size. Hence Km,n is Hamiltonian only if m = n. Alternatively, we can argue that the cycle returns to different vertices of one part after each visits the other part.
THEOREM 9.1 Let G = (V , E) be a Hamiltonian graph and S be a subset of V . Then the graph G − S has at most |S| components. 141
ch009.tex
30/6/2008
10: 34
Page 142
142
Graph Theory and Interconnection Networks r
n t
s
m
a f
e
g q
l
b
k
c
d
o
j
h i
p
FIGURE 9.1 Traveler’s Dodecahedron.
G
FIGURE 9.2
H
Graphs G and H for Example 11.2.
Proof: When leaving a component of G − S, a Hamiltonian cycle can go only to S, and the arrivals in S must visit different vertices of S. Hence S must have at least as many vertices as G − S has components. We use c(H) to denote the number of components of H. The necessary condition in Theorem 9.1 can be written as c(G − S) ≤ |S| for all ∅ = S ⊆ V . This condition guarantees that G is 2-connected. However, this condition does not guarantee a Hamiltonian cycle.
Example 9.2 The graph G in Figure 9.2 fails this necessary condition, even though it is bipartite with partite sets of equal size. Hence it is not Hamiltonian. The graph G is 3-regular but not 3-connected. Tutte [312] conjectured that every 3-connected 3-regular bipartite graph is Hamiltonian. Horton [158] found a counterexample with 96 vertices, and the smallest known counterexample now has 50 vertices (Georges [122]). The graph H in Figure 9.2 shows that the necessary condition is not sufficient. This graph satisfies the condition but no spanning cycle. All edges incident to 2-valent vertices must be used in a Hamiltonian cycle. In graph H, it uses three edges incident to the central vertex. Thus, H is not Hamiltonian. The Petersen graph also satisfies the condition but is not Hamiltonian. A spanning cycle is a connected 2-factor. However, 2C5 is the only 2-factor of the Petersen graph.
ch009.tex
30/6/2008
10: 34
Page 143
Hamiltonian Cycles
9.3
143
SUFFICIENT CONDITIONS
The number of edges needed to guarantee an n-vertex graph to be Hamiltonian is quite large. Under conditions that spread out the edges, we can reduce the number of edges that guarantee Hamiltonian cycles. The simplest such condition is a lower bound on the minimum degree: δ(G) ≥ n(G)/2 suffices. We first note that this bound is tight.
Example 9.3 Let G be a graph that consists of two cliques, one of order (n + 1)/2 and the other of order (n + 1)/2. Moreover, these two cliques share a vertex. Obviously, δ(G) = (n − 1)/2. Since G is not 2-connected, it is not Hamiltonian.
THEOREM 9.2 (Dirac [88]) Suppose that G is a graph with at least three vertices and δ(G) ≥ n(G)/2. Then G is Hamiltonian. Proof: Since K2 is not Hamiltonian but satisfies δ(K2 ) = n(K2 )/2, the condition n(G) ≥ 3 is needed. Suppose that there is a non-Hamiltonian graph satisfying the condition δ(G) ≥ n(G)/2 and n(G) ≥ 3. Adding edges to G cannot reduce δ(G). Thus, we may restrict our attention to maximal non-Hamiltonian graphs with a minimum degree of at least n/2. Thus, no proper supergraph of G is also non-Hamiltonian. Hence, G + (u, v) is Hamiltonian if u is not adjacent to v. Since every spanning cycle in G + (u, v) contains the new edge (u, v), G has a spanning path from u = v1 to v = vn . Suppose that some neighbor of u immediately follows a neighbor of v on the path; say, u ↔ vi+1 and v ↔ vi . Then G has the spanning cycle u = v1 , vi+1 , vi+2 , . . . , v, vi , vi−1 , . . . , v2 , v1 = u shown in Figure 9.3. To prove that such a cycle exists, let S = {vi | u ↔ vi+1 } and T = {vi | v ↔ vi }. Summing the sizes of these sets yields |S ∪ T | + |S ∩ T | = |S| + |T | = deg(u) + deg(v) ≥ n Obviously, vn ∈ / S ∪ T . Thus, |S ∪ T | < n. Hence, |S ∩ T | ≥ 1. We have established a contradiction by finding a spanning cycle in G. Hence, there is no maximal nonHamiltonian graph satisfying the hypotheses. Ore observed that the proof uses δ(G) ≥ n(G)/2 only to show deg(u) + deg(v) ≥ n. Therefore, we can weaken the requirement of minimum degree n/2 to require only that deg(u) + deg(v) ≥ n whenever u is not adjacent to v. We also did not need the
u
FIGURE 9.3
vi
Illustration of Theorem 9.2.
vi1
v
ch009.tex
30/6/2008
144
10: 34
Page 144
Graph Theory and Interconnection Networks
fact that G was a maximal non-Hamiltonian graph. We only need that G + (u, v) was Hamiltonian and thereby provided a spanning path from u to v. THEOREM 9.3 (Ore [262]) Suppose that G is a graph and u, v are distinct nonadjacent vertices of G with deg(u) + deg(v) ≥ n(G). Then G is Hamiltonian if and only if G + (u, v) is Hamiltonian. Proof: One direction is trivial. The proof of the other direction is the same as the previous theorem. With the previous theorem, we have the following theorem. THEOREM 9.4 (Ore [262]) Suppose that G is a graph with n vertices such that degG (x) + degG ( y) ≥ n for every pair of nonadjacent vertices x, y in G. Then G is Hamiltonian. Proof: Obviously, we can repeatedly join any two nonadjacent vertices u and v with deg(u) + deg(v) ≥ n(G) by an edge to obtain a complete graph. Applying Theorem 9.3, we prove the theorem. Bondy and Chvátal [30] observed the essence of Ore’s argument in a much more general form that yields sufficient conditions for cycles of length l and other graphs. Here, we discuss only the case of spanning cycles. Using the previous theorem to add edges, we can test whether G is Hamiltonian by testing whether the larger graph is Hamiltonian. The (Hamiltonian) closure of a graph G, denoted as C(G), is the supergraph of G on V (G) obtained by iteratively adding edges between pairs of nonadjacent vertices whose degree sum is at least n until no such pair remains. See Figure 9.4 for illustration. Ore’s lemma yields the following theorem. THEOREM 9.5 An n-vertex graph is Hamiltonian if and only if its closure is Hamiltonian. Mathematically, we need to check whether the closure does not depend on the order we choose to add edges when more than one is available. Otherwise, a graph may have two closures. LEMMA 9.1 The closure of G is well-defined. Proof: Suppose that adding e1 , e2 , . . . , er in sequence yields G1 and that adding f1 , f2 , . . . , fs yields G2 . Each addition joins vertices with degrees summing to at least
FIGURE 9.4
Illustration of Hamiltonian closure.
ch009.tex
30/6/2008
10: 34
Page 145
Hamiltonian Cycles
145
n(G). Suppose that in either sequence a pair (u, v) become addable. Then it must eventually be added before the sequence ends. Hence, f1 , being initially addable to G, must belong to G1 . Similarly, if f1 , f2 , . . . , fi−1 ∈ E(G1 ), then fi become addable to G1 . Therefore it belongs to G1 . Hence, neither sequence contains a first edge omitted by the other sequence. We have G1 ⊆ G2 and G2 ⊆ G1 . Now, we have a necessary and sufficient condition to test for Hamiltonian cycles in graphs. However, this necessary and sufficient condition does not help much. It requires us to test whether another graph is Hamiltonian. Yet, it does furnish a method for proving sufficient conditions. Any condition that forces C(G) to be Hamiltonian implies a Hamiltonian cycle in G. For example, C(G) = Kn . Chvátal used this method to prove the following sufficient condition on vertex degrees. THEOREM 9.6 (Chvátal [70]) Suppose that G is a graph with vertex degrees d1 ≤ d2 ≤ . . . , dn . If i < n/2 implies that di > i or dn−i ≥ n − i, then G is Hamiltonian. Proof: Note that adding edges to form the closure reduces no entry in the degree sequence. It suffices to consider the special case where G is closed. Here, we prove that the condition implies G = Kn . Suppose that G = C(G) = Kn . We need to find a value of i less than n/2 such that the Chvátal’s condition is not satisfied; that is, at least i vertices have degree at most i and at least n − i vertices have degree less than n − i. Since G = Kn , among all pairs of nonadjacent vertices we can choose a pair u and v with a maximum degree sum. Since G is closed, (u, v) ∈ / E(G) implies deg(u) + deg(v) < n. Without loss of generality, we may assume that deg(u) ≤ deg(v). As deg(u) + deg(v) < n, deg(u) < n/2. We set i = deg(u) (see Figure 9.5). Since we choose a nonadjacent pair with maximum degree sum, every vertex of V − {v} that is not adjacent to v has degree at most deg(u) = i. Moreover, there are at least n − 1 − deg(v) ≥ deg(u) = i of these vertices. Similarly, every vertex of V − {u} that is not adjacent to u has degree at most deg(v) < n − deg(u) = n − i. Again, there are n − 1 − deg(u) of these vertices. Since deg(u) ≤ deg(v), we can also add u to the set of vertices with degree at most deg(v). Thus, we obtain n − i vertices with degree less than n − i. Hence, we have proved di ≤ i and dn−i < n − i for this specially chosen i. We get a contradiction to the hypothesis. A sequence of real numbers ( p1 , p2 , . . . , pn ) is said to be majorized by another such sequence (q1 , q2 , . . . , qn ) if pi ≤ qi for 1 ≤ i ≤ n. A graph G is degree-majorized by a
u N(v) N(u)
FIGURE 9.5
Illustration of Theorem 9.6.
v
ch009.tex
30/6/2008
10: 34
Page 146
146
Graph Theory and Interconnection Networks
c Km
Km
Kn2m
Cm,n
FIGURE 9.6
C1,5
C2,5
Illustration of Cm,n .
graph H if n(G) = n(H) and the nondecreasing degree sequence of G is majorized by that of H. For instance, the 5-cycle is degree-majorized by K2,3 because (2, 2, 2, 2, 2) is majorized by (2, 2, 2, 3, 3). For 1 ≤ m < n/2, let Cm,n denote the graph (K m + Kn−2m )∨ Km . See Figure 9.6 for illustration. We claim that Cm,n is non-Hamiltonian. Let S be the set of m vertices of degree n − 1 in Cm,n . We have c(Cm,n − S) = m + 1 > |S|. By Theorem 9.1, Cm,n is not Hamiltonian. Chvátal [70] points out that the family of degree-maximal non-Hamiltonian graphs (those that are degree-majorized by no others) are exactly Cm,n . THEOREM 9.7 (Chvátal [70]) Suppose that G is a non-Hamiltonian graph with n(G) = n ≥ 3. Then G is degree-majorized by some Cm,n . Proof: Let G be a non-Hamiltonian graph with degree sequence (d1 , d2 , . . . , dn ), where d1 ≤ d2 ≤ · · · ≤ dn and n ≥ 3. By Theorem 9.6, there exists m < n/2 such that dm ≤ m and dn−m < n − m. Therefore (d1 , d2 , . . . , dn ) is majorized by the sequence (m, m, . . . , m, n − m − 1, n − m − 1, . . . , n − m − 1, n − 1, n − 1, . . . , n − 1) where m terms equal m, n − 2m terms equal n − m − 1, and m terms equal n − 1. The latter sequence is the degree sequence of Cm,n . THEOREM 9.8 Suppose that G is a graph with n ≥ 3 and e > C(n − 1, 2) + 1. Then G is Hamiltonian. Moreover, the only non-Hamiltonian graphs with n vertices and C(n − 1, 2) + 1 edges are C1,n and C2,5 for n = 5. Proof: Let G be a non-Hamiltonian graph with n ≥ 3. By Theorem 9.7, G is degreemajorized by Cm,n for some integer m < n/2. Therefore 1 2 (m + (n − 2m)(n − m − 1) + (m(n − 1)) 2 1 = C(n − 1, 2) + 1 − (m − 1)(m − 2) − (m − 1)(n − 2m − 1) 2 ≤ C(n − 1, 2) + 1
e ≤ e(Cm,n ) =
Furthermore, equality can hold if G has the same degree sequence as Cm,n , and if either m = 2 and n = 5, or m = 1. Hence, e(G) can equal C(n − 1, 2) + 1 only if G has
ch009.tex
30/6/2008
10: 34
Page 147
Hamiltonian Cycles
147
uj ai H
uj aj
FIGURE 9.7
Illustration of Theorem 9.9.
the same degree sequence as C1,n or C2,5 , which is easily seen to imply that G ∼ = C1,n or G ∼ = C2,5 . There is another sufficient condition for Hamiltonian cycles that involves connectivity and independence, but not degrees. The proof gives a good algorithm to construct a Hamiltonian cycle or disprove the hypothesis. THEOREM 9.9 (Chvátal-Erdös [71]) Suppose that G is a graph with κ(G) ≥ α(G). Then G has a Hamiltonian cycle or G = K2 . Proof: Suppose that G is a graph with κ(G) ≥ α(G) such that G = K2 . Suppose that κ(G) = 1. Then, G = Kn and hence G is Hamiltonian. Thus, we assume κ(G) > 1. Let k = κ(G) ≥ α(G) and let C be a longest cycle in G. Obviously, C forms a Hamiltonian cycle of G if we can prove that C spans G. Suppose that C is not a Hamiltonian cycle of G. Let H be a component of G − C. Since δ(G) ≥ κ(G) and every graph with δ(G) ≥ 2 has a cycle of length at least δ(G) + 1, C has at least k + 1 vertices. Moreover, C has at least k vertices with edges to H. Otherwise, the vertices of C with edges to H contradicts κ(G) = k. Let u1 , u2 , . . . , uk be k vertices of C with edges to H, in clockwise order. For i = 1, 2, . . . , k, let ai be the vertex immediately following ui on C. Suppose that any two of these vertices are adjacent; say, ai ↔ aj . Then we can construct a longer cycle by using the edge (ai , aj ), the portions of C from ai to uj and aj to ui , and a path from ui to uj through H. See Figure 9.7 for illustration. This argument holds for the case ai = ui+1 . Thus, we can conclude that no ai has a neighbor in H. Hence {a1 , a2 , . . . , ak } plus a vertex of H form an independent set of size k + 1. This contradiction implies that C is a Hamiltonian cycle.
9.4
HAMILTONIAN-CONNECTED
A graph G is Hamiltonian-connected if there exists a Hamiltonian path joining any two different vertices of G. A Hamiltonian-connected graph G is optimal if G contains the least number of edges among all the Hamiltonian-connected graphs with the same number of vertices as that of G.
ch009.tex
30/6/2008
10: 34
148
Page 148
Graph Theory and Interconnection Networks
LEMMA 9.2 Assume that G is Hamiltonian-connected with at least four vertices. Then deg(v) ≥ 3 for any vertices v of G. Proof: Suppose that the lemma is false. Then there exists a vertex v in G such that deg(v) ≤ 2. Suppose that deg(v) = 1. Obviously, there is no Hamiltonian path joining x to y if x = v and y = v. Suppose that deg(v) = 2. Let x and y be the two neighbors of v. Obviously, there is no Hamiltonian path joining x to y. We get a contradiction. Hence, the lemma is proved. With this lemma, we have the following theorem. THEOREM 9.10 (Moon [255]) Every optimal Hamiltonian-connected graph has 3n(G)/2 edges if n(G) > 3. Proof: From the previous lemma, we know that any optimal Hamiltonian-connected graph with at least four vertices has at least 3n(G)/2 edges. Assume that n is even. It can be checked whether the graph G in Figure 9.8 is Hamiltonian-connected. Assume that n is odd; it can be checked that the graph H in Figure 9.8 is Hamiltonian-connected. Hence, the theorem is proved. It is known that any bipartite graph with at least three vertices is not Hamiltonianconnected. The counterpart of Hamiltonian-connected graphs in bipartite graphs is known as Hamiltonian-laceable graphs. A bipartite graph with bipartition (X, Y ) is Hamiltonian-laceable if there exists a Hamiltonian path joining any two vertices from different partite sets; that is, one in X and one in Y . This concept is proposed by Simmons [285]. It is easy to check whether every hypercube Qn is Hamiltonian-laceable if n ≥ 1. The following lemma can be obtained easily. LEMMA 9.3 Suppose that m is an odd integer. Then Cm × K2 is optimalHamiltonian-connected. Suppose that m is an even integer. Then (Cm × K2 ) − e Hamiltonian-laceable for any edge e in Cm × K2 . Comparing Lemma 9.3 with Theorem 9.10, we do not know how to prove that a Hamiltonian-laceable graph is optimal; that is, containing the least number of edges among all Hamiltonian-laceable graphs with the same number of vertices.
G
FIGURE 9.8
Examples of Hamiltonian-connected graphs.
H
ch009.tex
30/6/2008
10: 34
Page 149
Hamiltonian Cycles
149
THEOREM 9.11 Suppose that G is a graph and u, v are distinct nonadjacent vertices of G with deg(u) + deg(v) ≥ n(G) + 1. Then G is Hamiltonian-connected if and only if G + (u, v) is Hamiltonian-connected. Proof: Obviously, G + (u, v) is Hamiltonian-connected if G is Hamiltonianconnected. Suppose that G + (u, v) is Hamiltonian-connected. Let x and y be any two distinct vertices of G. We need to find a Hamiltonian path of G between x and y. Let P be a Hamiltonian path of G + (u, v) between x and y. Obviously, P is a Hamiltonian path of G if (u, v) is not in P. Thus, we consider that (u, v) is in P. Without loss of generality, P can be written as x = z1 , . . . , zi , zi+1 , . . . , zn(G) = y with {zi , zi+1 } = {u, v}. Let H1 be the subgraph of G induced by {z1 , z2 , . . . , zi+1 } and H2 be the subgraph of G induced by {zi , zi+1 , . . . , zn(G) }. We have degH1(u) + degH2(u) + degH1(v) + degH2(v) = degG(u) + degG (v) We claim that there is an index j ∈ {1, 2, . . . , n} − {i, i + 1} such that (zi , zj ) and (zi+1 , zj+1 ) are edges of G. Suppose that the claim is not true. Then degHj (u) + degHj (v) ≤ n(Hj ) − 1 for j ∈ {1, 2}. As degG (u) + degG (v) = degH1 (u) + degH2 (u) + degH1 (v) + degH2 (v), degG (u) + degG (v) ≤ n(H1 ) − 1 + n(H2 ) − 1 = n(G). We obtain a contradiction. Hence, our claim holds. Suppose that j < i. Then x = z1 , . . . , zj , zi , zi−1 , . . . , zj+1 , zj+1 , . . . , zn(G) = y forms a Hamiltonian path of G joining x and y. Suppose that j > i + 1. Then
x = z1 , . . . , zi , zj , zj−1 , . . . , zi+1 , zj+1 , . . . , zn(G) = y forms a Hamiltonian path of G joining x and y. We find the required Hamiltonian path and the theorem is proved. THEOREM 9.12 (Erdös [99]) Suppose that G is a graph such that any two nonadjacent vertices of G satisfying deg(u) + deg(v) ≥ n(G) + 1. Then G is Hamiltonianconnected. Proof: Obviously, we can repeatedly join any two nonadjacent vertices u and v with deg(u) + deg(v) ≥ n(G) + 1 by an edge to obtain a complete graph. Applying Theorem 9.11, we prove the theorem. The following theorem is a consequence of the previous theorem. THEOREM 9.13 Suppose that G is a graph with at least four vertices and δ(G) ≥ n(G)/2 + 1. Then G is Hamiltonian-connected. Let G = (V , E) be a graph. We use E to denote the edge set of the complement of G. Let e = |E|. The following theorem can be easily proved. THEOREM 9.14 (Ore [262]) Assume that G = (V , E) is a graph with n vertices with n ≥ 4. Then G is Hamiltonian if e ≤ n − 3 and Hamiltonian-connected if e ≤ n − 4.
ch009.tex
150
30/6/2008
10: 34
Page 150
Graph Theory and Interconnection Networks
Proof: With Theorem 9.8, G is Hamiltonian if e ≤ n − 3. With Theorem 9.12, G is Hamiltonian-connected if e ≤ n − 4. We can construct a Hamiltonian-connected graph using the operation G0 ⊕ G1 discussed in Chapter 7. Here, we recall the definition of G0 ⊕ G1 . Suppose that G0 = (V0 , E0 ) and G1 = (V1 , E1 ) are two disjoint graphs with |V0 | = |V1 |. A 1-1 connection between G0 and G1 is defined as an edge set Er = {(v, φ(v)) | v ∈ V0 , φ(v) ∈ V1 and φ : V0 → V1 is a bijection}. G0 ⊕ G1 denotes the graph G = (V0 ∪ V1 , E0 ∪ E1 ∪ Er ). Thus, φ induces a perfect matching in G0 ⊕ G1 . For convenience, G0 and G1 are called components. Let x be any vertex of G0 ⊕ G1 . We use x to denote the vertex matched under φ. THEOREM 9.15 G0 ⊕ G1 is Hamiltonian-connected if both G0 and G1 are Hamiltonian-connected and |V (G0 )| = |V (G1 )| ≥ 3. Proof: Assume that x and y are any two different vertices of G0 ⊕ G1 . Without loss of generality, we have the following two cases: (1) both x and y are in G0 or (2) x is in G0 and y is in G1 . Assume that both x and y are in G0 . Since G0 is Hamiltonian-connected, there exists a Hamiltonian path P of G0 joining x and y. Obviously, P can be written as x, P1 , w, z, P2 , y. Note that x = w if l(P1 ) = 0 and z = y if l(P2 ) = 0. Obviously, w = z and there exists a Hamiltonian path Q of G1 joining w and z. Thus,
x, P1 , w, w, Q, z, P2 , y forms a Hamiltonian path of G0 ⊕ G1 . Assume that x is in G0 and y is in G1 . Since |V (G0 )| = |V (G1 )| ≥ 3, there exists a vertex z in G0 such that x = z and z = y. Thus, there exists a Hamiltonian path P of G0 joining x to z and there exists a Hamiltonian path Q of G1 joining z to y. Obviously,
x, P, z, z, Q, y forms a Hamiltonian path of G0 ⊕ G1 . Thus, the theorem is proved. Similarly, we can easily obtain the following theorem. THEOREM 9.16 Assume that r ≥ 3 and k ≥ 5. Let G0 , G1 , . . . , Gr−1 be r Hamiltonian-connected graphs with the same number of vertices. Then graph G(G0 , G1 , . . . , Gr−1 ; M) is Hamiltonian-connected. Similarly, we can construct a Hamiltonian-laceable graph from two Hamiltonianlaceable graphs G0 and G1 with the same number of vertices and a 1-1 connection φ between G0 and G1 with the operation G0 ⊕ G1 . For i = 0, 1, let Gi be a graph in Bn with bipartition V0i and V1i . To keep G0 ⊕ G1 a bipartite graph, it is required that 1 if v ∈ V 0 . For the discussion of Hamiltonian φ map vertices in Vi0 to vertices in V1−i i j i properties, we assume that |V0 | = |V1 | for i, j ∈ {0, 1}. In the following discussion, we keep this assumption as we study the Hamiltonian-laceability of G0 ⊕ G1 . Thus, G0 ⊕ G1 is a bipartite graph with bipartition V00 ∪ V10 and V01 ∪ V11 . With similar proof as Theorem 9.15, we have the following theorem.
ch009.tex
30/6/2008
10: 34
Page 151
Hamiltonian Cycles
151
THEOREM 9.17 Assume that G0 , G1 , and G0 ⊕ G1 are bipartite graphs such that |V (G0 )| = |V (G1 )| ≥ 2. Moreover, G0 ⊕ G1 is bipartite. Then G0 ⊕ G1 is Hamiltonianlaceable if both G0 and G1 are Hamiltonian-laceable. Proof: By the symmetric property of G0 ⊕ G1 , without loss of generality we can assume the following two cases: Case 1. x ∈ V00 and y ∈ V01 . Since G0 is Hamiltonian-laceble, there exists a Hamiltonian path P of G0 joining x and y. Obviously, P can be written as x, P1 , w, z, P2 , y with w ∈ V00 and z ∈ V01 . Note that it is possible that l(P1 ) = 0 and l(P2 ) = 0. Obviously, w ∈ V11 and z ∈ V10 . Thus, there exists a Hamiltonian path Q of G1 joining w and z. Thus, x, P1 , w, w, Q, z, P2 , y forms a Hamiltonian path of G0 ⊕ G1 . Case 2. x ∈ V00 and y is in G11 . Since |V (G0 )| = |V (G1 )| ≥ 2, there exists a vertex z in V01 . Obviously z ∈ V10 . Thus, there exists a Hamiltonian path P of G0 joining x to z and there exists a Hamiltonian path Q of G1 joining z to y. Obviously, x, P, z, z, Q, y forms a Hamiltonian path of G0 ⊕ G1 . Thus, the theorem is proved. Similarly, we have the following theorem. THEOREM 9.18 Assume that r ≥ 3 and k ≥ 5. Assume that G0 , G1 , . . . , Gr−1 are bipartite with |V (Gi )| = t for 1 ≤ i < r with t ≥ 2. Then G(G0 , G1 , . . . , Gr−1 ; M) is Hamiltonian-laceable if Gi is Hamiltonian-laceable for 0 ≤ i < r. THEOREM 9.19 G0 ⊕ G1 is Hamiltonian-connected if G0 is Hamiltonianconnected and G1 is Hamiltonian-laceable and |V (G0 )| = |V (G1 )| ≥ 4. Proof: Let V10 and V11 be the bipartition of G1 . We have the following cases. Case 1. x ∈ V (G0 ) and y ∈ V1i . Since |V (G0 )| ≥ 4, there exists a vertex z ∈ V (G0 ) − {x} such that z ∈ V11−i . Obviously, there exists a Hamiltonian path P of G0 joining x to z and there exists a Hamiltonian path Q of G1 joining z to y. Obviously,
x, P, z, z, Q, y forms a Hamiltonian path of G0 ⊕ G1 . Case 2. {x, y} ⊂ V (G0 ). Obviously, there exists a Hamiltonian path P of G0 joining x to y. We can write P as x, P1 , w, z, P2 , y such that w ∈ V1i but w ∈ V11−i . Thus, there exists a Hamiltonian path Q of G1 joining w to z. Obviously, x, P1 , w, w, Q, z, z, P2 , y forms a Hamiltonian path of G0 ⊕ G1 . Case 3. x ∈ V10 and y ∈ V11 . Obviously, there exists a Hamiltonian path P of G1 joining x to y. We can write P as x, P1 , w, z, P2 , y. Again, there exists a Hamiltonian path Q of G0 joining w to z. Obviously, x, P1 , w, w, Q, z, z, P2 , y forms a Hamiltonian path of G0 ⊕ G1 . Case 4. x ∈ V10 and y ∈ V10 . Let z be any vertex in V11 . Obviously, there exists a Hamiltonian path P of G1 joining x to z. We can write P as x, P1 , w, y, P2 , z for some
ch009.tex
30/6/2008
10: 34
152
Page 152
Graph Theory and Interconnection Networks
w in V11 . Again, there exists a Hamiltonian path Q of G0 joining w to z. Obviously,
x, P1 , w, w, Q, z, z, (P2 )−1 , y forms a Hamiltonian path of G0 ⊕ G1 . Thus, the theorem is proved.
9.5
MUTUALLY INDEPENDENT HAMILTONIAN PATHS
Suppose that P1 = v1 , v2 , v3 , . . . , vn and P2 = u1 , u2 , u3 , . . . , un are two Hamiltonian paths of G. We say that P1 and P2 are independent if u1 = v1 , un = vn , and ui = vi for 1 < i < n. We say a set of Hamiltonian paths P1 , P2 , . . . , Ps of G are mutually independent if any two distinct paths in the set are independent. The concept of mutually independent Hamiltonian paths arises from the following application. Suppose that there are k pieces of data that need to be sent from u to v. The data need to be processed at every node (and the process takes time). We need mutually independent Hamiltonian paths so that there will be no waiting time at a processor. The existence of mutually independent Hamiltonian paths is useful for communication algorithms. LEMMA 9.4 Suppose that u and v are two distinct vertices of G. There are at most min{degG (u), degG (v)} mutually independent Hamiltonian paths between u and v if (u, v) ∈ / E(G), and there are at most min{degG (u), degG (v)} − 1 mutually independent Hamiltonian paths between u and v if (u, v) ∈ E(G). Let [i] denote i mod(n − 2). THEOREM 9.20 Suppose that n is a positive integer with n ≥ 3. There are n − 2 mutually independent Hamiltonian paths between every two distinct vertices of Kn . Proof: Let s and t be two distinct vertices of Kn . We can relabel the remaining (n − 2) vertices of Kn as 0, 1, 2, . . . , n − 3. For 0 ≤ i ≤ n − 3, we set Pi as
s, [i], [i + 1], [i + 2], . . . , [i + (n − 3)], t. It is easy to see that P0 , P1 , . . . , Pn−3 form (n − 2) mutually independent Hamiltonian paths joining s and t. Teng et al. [297] propose the following interesting result. LEMMA 9.5 Suppose that G is a graph with n ≥ 4 and e = n − 4. Then there are two independent Hamiltonian paths between any two distinct vertices of G except n = 5. Proof: Assume that n = 4. Obviously, G is isomorphic to K4 . By Theorem 9.20, there are two independent Hamiltonian paths between any two distinct vertices of G. Assume that n = 5. Then G is isomorphic to K5 − { f } for some edge f . Without loss of generality, we assume that V (G) = {1, 2, 3, 4, 5} and f = (1, 2). It is easy to check whether P1 = 3, 2, 5, 1, 4 and P2 = 3, 1, 5, 2, 4 are the only two Hamiltonian paths between 3 and 4, but P1 and P2 are not independent.
ch009.tex
30/6/2008
10: 34
Page 153
Hamiltonian Cycles
153
Now, we assume that n ≥ 6. Suppose that s and t are two distinct vertices of G. Let H be the subgraph of G induced by the remaining (n − 2) vertices of G. We have the following two cases. Case 1. H is Hamiltonian. We can relabel the vertices of H with {0, 1, 2, . . . , n − 3} so that 0, 1, 2, . . . , n − 3, 0 forms a Hamiltonian cycle of H. We use Q to denote the set {i | (s, [i+1]) ∈ E(G) and (i, t) ∈ E(G)}. Since e = n − 4, |Q| ≥ n − 2 − (n − 4) = 2. There are at least two elements in Q. Let q1 and q2 be the two elements in Q. For j = 1, 2, we set Pj as s, [qj + 1], [qj + 2], . . . , [qj ], t. Then P1 and P2 are two independent Hamiltonian paths between s and t. Case 2. H is non-Hamiltonian. There are exactly (n − 2) vertices in H. By Theorem 9.8, there are exactly (n − 4) edges in the complement of H and H is isomorphic to C1,n−2 or C2,5 . Since e = n − 4, (s, v) ∈ E(G) and (t, v) ∈ E(G) for every vertex v in H. We can construct two independent Hamiltonian paths between s and t as the following cases. Case 2.1. H is isomorphic to C2,5 . We label the vertices of C2,5 with {0, 1, 2, 3, 4} as shown in Figure 9.9a. We set P1 = s, 0, 1, 2, 3, 4, t and P2 = s, 2, 3, 4, 1, 0, t. Obviously, P1 and P2 form the required independent paths. Case 2.2. H is isomorphic to C1,n−2 . We label the vertices of C1,n−2 with {0, 1, . . . , n − 3} as shown in Figure 9.9b. We set P1 = s, 0, 1, 2, . . . , n − 3, t and P2 = s, 2, 3, . . . , n − 3, 1, 0, t. Obviously, P1 and P2 form the required independent paths. Teng et al. [297] further strengthen Lemma 9.5.
0
1
2
4
3 (a) 2 3 n3
0
4
1
n4 (b)
FIGURE 9.9
(a) C2,5 and (b) C1,n−2 .
ch009.tex
154
30/6/2008
10: 34
Page 154
Graph Theory and Interconnection Networks
THEOREM 9.21 Suppose that G is a graph with n ≥ 4 and e ≤ n − 4. Then there are n − 2 − e mutually independent Hamiltonian paths between every two distinct vertices of G except n = 5 and e = 1. Proof: By Lemma 9.5, the theorem holds for e = n − 4. Now, we need to prove the theorem for e = n − 4 − r with 1 ≤ r ≤ n − 4. Suppose that s and t are two distinct vertices of G. Let H be the subgraph of G induced by the remaining (n − 2) vertices of G. Then there are exactly (n − 2) vertices in H, and there are at most n − 4 − r edges in the complement of H with 1 ≤ r ≤ n − 4. By Theorem 9.8, H is Hamiltonian. We can label the vertices of H with {0, 1, 2, . . . , n − 3} so that
0, 1, 2, . . . , n − 3, 0 forms a Hamiltonian cycle of H. We use Q to denote the set {i | (s, [i + 1]) ∈ E(G) and (t, i) ∈ E(G)}. Since e = n − 4 − r with 1 ≤ r ≤ n − 4, |Q| ≥ n − 2 − (n − 4 − r) = n − 2 − e for 1 ≤ r ≤ n − 4. Hence, there are at least n − 2 − e elements in Q. Let q1 , q2 , . . . , qn−2−e be the elements in Q. For j = 1, 2, . . . , n − 2 − e, we set Pj = s, [qj + 1], [qj + 2], . . . , [qj ], t. It is not difficult to see that P1 , P2 , . . . , Pn−2−e are mutually independent paths between s and t. The following result, in a sense, generalizes that of Theorem 9.12. THEOREM 9.22 Let G be a graph such that degG (x) + degG ( y) ≥ n + 2 for any two vertices x and y with (x, y) ∈ / E(G). Suppose that u and v are two distinct vertices of G. Then there are degG (u) + degG (v) − n mutually independent Hamiltonian paths between u and v if (u, v) ∈ E(G), and there are degG (u) + degG (v) − n + 2 mutually independent Hamiltonian paths between u and v if (u, v) ∈ / E(G). Proof: Suppose that s and t are two distinct vertices of G, and H is the subgraph of G induced by the remaining (n − 2) vertices of G. Let u and v be any two distinct vertices in H. Obviously, degH (u ) + degH (v ) ≥ n + 2 − 4 = n − 2 = |V (H)|. By Theorem 9.3, H is Hamiltonian. We can label the vertices of H with {0, 1, . . . , n − 3} so that 0, 1, 2, . . . , n − 3, 0 forms a Hamiltonian cycle of H. Let S denote the set {i | (s, [i + 1]) ∈ E(G)} and T denote the set {i | (i, t) ∈ E(G)}. Clearly, |S ∪ T | ≤ n − 2. We have the following two cases: Case 1. (s, t) ∈ E(G). Assume that |S ∩ T | ≤ degG (s) + degG (t) − n − 1. Then degG (s) + degG (t) − 2 = |S| + |T | = |S ∪ T | + |S ∩ T | ≤ degG (s) + degG (t) − n − 1 + n − 2. This is a contradiction. Thus, there are at least w = degG (s) + degG (t) − n elements in S ∩ T . Let q1 , q2 , . . . , qw be the elements in S ∩ T . For j = 1, 2, . . . , w, we set Pj = s, [qj + 1], [qj + 2], . . . , [qj ], t. So P1 , P2 , . . . , Pw are mutually independent paths between s and t. Case 2. (s, t) ∈ / E(G). Suppose that |S ∩ T | ≤ degG (s) + degG (t) − n + 2 − 1. Then degG (s) + degG (t) = |S| + |T | = |S ∪ T | + |S ∩ T | ≤ degG (s) + degG (t) − n + 2 − 1 + n − 2. This is a contradiction. Thus, there are at least w = degG (s) + degG (t) − n + 2 elements in S ∩ T . Let q1 , q2 , . . . , qw be the elements in S ∩ T . For j = 1, 2, . . . , w, we set Pj = s, [qj + 1], [qj + 2], . . . , [qj ], t, and P1 , P2 , . . . , Pw are mutually independent paths between s and t.
ch009.tex
30/6/2008
10: 34
Page 155
Hamiltonian Cycles
155
Example 9.4 Let G be the graph (K1 + Kn−d−1 ) ∨ Kd where d is an integer with 4 ≤ d < n − 1. Obviously, e = n − 1 − d ≤ n − 4. Let x be the vertex corresponding to K1 , y be an arbitrary vertex in Kd , and z be a vertex in Kn−d−1 . Then degG (x) = d, degG ( y) = n − 1, degG (z) = n − 2, (x, y) ∈ E(G), ( y, z) ∈ E(G), and (x, z) ∈ / E(G). By Theorem 9.21, there are n − 2 − e = n − 2 − (n − 1 − d) = d − 1 mutually independent Hamiltonian paths between any two distinct vertices of G. By Lemma 9.4, there are at most (d − 1) mutually independent Hamiltonian paths between x and y. Therefore, the result in Theorem 9.21 is optimal. Let us consider the same example as previously. It is easy to check whether any two vertices u and v in G, degG (u) + degG (v) ≥ n + 2. Let x and y be the same vertices as described earlier. By Theorem 9.22, there are degG (x) + degG ( y) − n = d + (n − 1) − n = d − 1 mutually independent Hamiltonian paths between x and y. By Lemma 9.4, there are at most d − 1 mutually independent Hamiltonian paths between x and y. Hence, the result in Theorem 9.22 is also optimal.
Combining Theorems 9.12 and 9.22, we have the following corollary. COROLLARY 9.1 Suppose that r is a positive integer. Let G be a graph such that degG (x) + degG ( y) ≥ n + r for any two distinct vertices x and y. Then there are at least r mutually independent Hamiltonian paths between any two distinct vertices of G. However, we would like to make the following conjecture. Assume that r > 1 and G is a graph such that degG (u) + degG (v) ≥ n + r for any two distinct vertices u and v in G. Then there are at least r + 1 mutually independent Hamiltonian paths between any two distinct vertices of G.
9.6
DIAMETER FOR GENERALIZED SHUFFLE-CUBES
In Chapter 3, we introduced shuffle cubes, SQn . We only discuss the upper bound of the diameter of SQn . In Chapter 7, we discuss the connectivity of SQn . We only discuss the exact value of D(SQn ) after we introduce the concept of generalized shuffle-cubes. In this section, the graph K1 is also denoted by Q0 . For any positive integer l, we use S(l) to denote the set of all binary strings of length l and we use S ∗ (l) to denote S(l) − {00 · · · 0}. Assume that b and g are any positive integers satisfying l
2b ≥ (2g − 1)/g. For each i1 i2 · · · ib ∈ S(b), we associate it with a subset Ai1 i2 ···ib of S ∗ (g) with the following properties: (1) | Ai1 i2 ···ib | = g and (2) ∪i1 i2 ···ib ∈S(b) Ai1 i2 ···ib = S ∗ (g). A family A = {Ai1 i2 ···ib | i1 i2 · · · ib ∈ S(b)} is a normal (g, b) family if it satisfies these properties. For example, {A00 , A01 , A10 , A11 } is the normal (4,2) family where A00 , A01 , A10 , and A11 are defined in SQn . DEFINITION 9.1: Suppose that B is a b-regular graph with vertex set S(b) and A is any normal (g, b) family. We can recursively define the n-dimensional generalized
ch009.tex
30/6/2008
10: 34
Page 156
156
Graph Theory and Interconnection Networks
shuffle-cube GSQ(n, A, B) for any n = kg + b for k ≥ 0 with its vertex set being S(n) as follows: 1. Suppose that n = b. We set GSQ(n, A, B) = B. 2. Suppose that n = kg + b for k ≥ 1. Any two vertices u and v in GSQ(n, A, B) are adjacent if and only if (a) sn−g (u) and sn−g (v) are adjacent in GSQ(n − g, A, B), and pg (u) = pg (v) or (b) sn−g (u) = sn−g (v) and pg (u) ⊕ pg (v) ∈ Aub−1 ub−2 ···u0 . For example, Qn is GSQ(n, A, B), where A = {A0 } is a normal (1,0) family with A0 = {1} and B = Q0 . Moreover, SQn is GSQ(n, A, B), where A = {A00 , A01 , A10 , A11 } is a normal (4,2) family and B is Q2 . Assume that GSQ(n, A, B) is a generalized shuffle-cube. Obviously, GSQ(n, A, B) is an n-regular graph with 2n vertices. Suppose that u and v are two verj j tices in GSQ(n, A, B). For 1 ≤ j ≤ k, the jth g-bit of u, denoted by ug , is ug = 0 ugj+b−1 ugj+b−2 · · · ugj+b−g . In particular, the 0th g-bit of u is ug = ub−1 ub−2 · · · u0 . The g-bit Hamming distance between u and v, denoted by hg (u, v), is the number of gj j j j j bits ug with 0 ≤ j ≤ k such that ug = vg ; that is, hg (u, v) = |{ j | ug = vg for 0 ≤ j ≤ k} |. j j j We also use hg∗ (u, v) to denote the number of ug for 1 ≤ j ≤ k such that ug = vg . Applying a similar argument of Theorem 7.12, we have the following theorem. THEOREM 9.23 κ(GSQ(n, A, B)) = n if κ(B) = b. Now, we discuss the diameter of a generalized shuffle-cube GSQ(n, A, B). We assume that B has some Hamiltonian properties. Assume that B is Hamiltonian. Let C = x0 , x1 , . . . , xk = x0 be a Hamiltonian cycle of B. The cycle 00, 01, 11, 10, 00, for example, is a Hamiltonian cycle of Q2 . We propose the routing algorithm Route2(u, v) for GSQ(n, A, B) as follows: Route2(u, v) 1. Suppose that u = v. Then accept the message. 2. Find a neighbor w of u such that hg∗ (w, v) = hg∗ (u, v) − 1 if w exists. Then route into w. 3. Suppose that hg∗ (u, v) > 0 and there is no neighbor w of u such that hg∗ (w, v) = hg∗ (u, v) − 1. Then route into the neighbor w of u that changes ug0 in a cyclic manner with respect to C. 4. Suppose that hg∗ (u, v) = 0. Find a neighbor z of sb (u) in B such that the distance between z and sb (v) is the distance between sb (u) and sb (v) minus 1. Then route into pn−b (u)z. So, we have the following theorem.
ch009.tex
30/6/2008
10: 34
Page 157
Hamiltonian Cycles
157
THEOREM 9.24 Suppose that B is Hamiltonian. Then D(GSQ(n, A, B)) ≤ [(n − b)/g] + 2b − 1 + D(B). The upper bound for D(GSQ(n, A, B)) can be further reduced if B is Hamiltonianconnected or Hamiltonian-laceable. Suppose that B is Hamiltonian-laceable. To route u to v, we first find a vertex sequence Z(u, v) of S(b) as follows: suppose that sb (u) and sb (v) are in different parts. We set Z(u, v) to be any Hamiltonian path from sb (u) to sb (v). Suppose that sb (u) and sb (v) are in the same part. Find a neighborhood sb (z) of sb (v) in B. Let P be a Hamiltonian path from sb (u) to sb (z). We set Z(u, v) to be the vertex sequence P, sb (v). Then the path of GSQ(n, A, B) from u to v can be determined by the following algorithm: Route3(u, v) 1. Suppose that u = v. Then accept the message. 2. Find a neighbor w of u such that hg∗ (w, v) = hg∗ (u, v) − 1 if w exists. Then route into w. 3. Suppose that there is no neighbor w of u such that hg∗ (w, v) = hg∗ (u, v) − 1. Then route into the neighbor w of u that changes ug0 in the order of Z(u, v).
Example 9.5 As noted before, SQn is a generalized shuffle-cube GSQ(n, A, B) with B = Q2 . It is known that Q2 is Hamiltonian-laceable. Suppose that u = 0001000101001000110000 and v = 0000000000000000000011 are two vertices of SQ18 . Obviously, 00 and 11 are in the same part and 10 is a neighbor of 11. Hence, 00, 01, 11, 10 is a Hamiltonian path from 00 to 10 in Q2 . We can set Z(u, v) as 00, 01, 11, 10, 11. The path obtained from Route3(u, v) is 0001000101001000110000, 0000000101001000110000, 0000000001001000110000, 0000000001001000110001, 0000000000001000110001, 0000000000001000110011, 0000000000001000000011, 0000000000001000000010, 0000000000000000000010, 0000000000000000000011. We note that this path is shorter than the path obtained in Example 3.2.
Note that we should apply Step 3 exactly 2b − 1 times to obtain a vertex w such that either w = v or w is a neighbor of v. Thus, we have the following theorem. THEOREM 9.25 Suppose that B is Hamiltonian-laceable. Then (n − b)/g ≤ D(GSQ(n, A, B)) ≤ [(n − b)/g] + 2b . Suppose that B is Hamiltonian-connected. To avoid a trivial case, we assume that b ≥ 1. To route from u to v in GSQ(n, A, B), we compute a vertex sequence Z(u, v) of S(b) as follows: suppose that sb (u) = sb (v). Set Z(u, v) to be any Hamiltonian path from sb (u) to sb (v). Suppose that sb (u) = sb (v). Find a neighborhood sb (z) of sb (v) in
ch009.tex
158
30/6/2008
10: 34
Page 158
Graph Theory and Interconnection Networks
B. Let P be a Hamiltonian path from sb (u) to sb (z). We set Z(u, v) to be the vertex sequence P, sb (v). We can also apply Route3(u, v) to obtain a path from u to v. So we have the following theorem. THEOREM 9.26 Suppose that B is Hamiltonian-connected. Then D(GSQ (n, A, B)) ≤ n − b/g + 2b . Now, we can determine the diameter of SQn for n = 4k + 2. THEOREM 9.27 Assume that n = 4k + 2. The diameter of SQn is 2 if n = 2; 4 if n = 6; or n4 + 3 if n ≥ 10. Proof: Using breadth-first search (BFS), we can easily determine D(SQ2 ) = 2, D(SQ6 ) = 4, D(SQ10 ) = 6, and D(SQ14 ) = 7. Combining Lemma 3.1 and Theorem 9.25, we can conclude that D(SQn ) = n4 + 3 if n ≥ 18. The theorem is proved.
9.7
CYCLES IN DIRECTED GRAPHS
The theory of cycles in digraphs is similar to that of cycles in graphs. For a digraph G, let δ− (G) = min{deg− (v) | v ∈ G} and δ+ (G) = min{deg+ (v) | v ∈ G}. Here, we consider spanning cycles in digraphs. Although cliques are trivially Hamiltonian, the question becomes interesting for tournaments. The orientation of a complete graph is called a tournament. THEOREM 9.28 Every tournament has a Hamiltonian path. Proof: Let D be a tournament. Obviously, the underlying graph of D is the complete graph with n vertices. Hence, χ(D) = n. By Theorem 8.5, D has a Hamiltonian path. THEOREM 9.29 Assume that D is a strongly connected tournament with n ≥ 3 vertices. D contains a directed k-cycle for any 3 ≤ k ≤ v that includes any vertex u. In particular, D is Hamiltonian. Proof: Let D be a strongly connected tournament with n ≥ 3. Let u be any vertex of D. Set S = N + (u) and T = N − (u). We first show that u is in a directed 3-cycle. Since D is strongly connected, neither S nor T can be empty. For the same reason, (S, T ) must be nonempty; that is, there is a certain arc (v, w) in D with v ∈ S and w ∈ T . See Figure 9.10 for illustration. Hence, u is in the directed 3-cycle u, v, w, u. The theorem is now proved by induction on k. Suppose that u is in a directed cycle of all lengths between 3 to k with k ≤ n. We shall show that u is in a directed (k + 1)-cycle. Let C = u = v0 , v1 , . . . , vk = u be a directed k-cycle in D. Suppose that there is a vertex v in V (D) − V (C) that is both the head of an arc with tail in C and the tail of an arc with head in C. Then there are adjacent vertices vi and vi+1 on C such that both (vi , v) and (v, vi+1 ) are arcs of D. In this case, u is in the directed (k + 1)-cycle
v0 , v1 , . . . , vi , v, vi+1 , . . . , vk .
ch009.tex
30/6/2008
10: 34
Page 159
Hamiltonian Cycles
159 u
T w
S v
FIGURE 9.10 A 3-cycle in a strongly connected tournament.
S v
uv0 v1
C v2
w T
FIGURE 9.11 A directed (k + 1)-cycle in a strongly connected tournament.
Otherwise, let S be the set of vertices in V (D) − V (C) that are heads of arcs joined to C, and let T be the set of vertices in V (D) − V (C) that are tails of arcs joined to C. See Figure 9.11 for illustration. Since D is strongly connected, S, T , and (S, T ) are all nonempty. Thus, there is some (v, w) in D with v ∈ S and w ∈ T . Obviously, u is in the directed (k + 1)-cycle
v0 , v, w, v2 , . . . , vk . The theorem is proved. For arbitrary digraphs, we consider degree conditions. The basic result is analogous to Dirac’s Theorem. By applying it to the digraph obtained from a graph G by replacing every edge by a pair of opposed edges with the same endpoints, we obtained Dirac’s Theorem as a special case. A digraph is strict if it has no loops and has at most one copy of ordered pair as an edge. THEOREM 9.30 (Ghouila-Houri [124]) Let D be a strict digraph with min{δ− (G), δ+ (G)} ≥ n(D)/2. Then D is Hamiltonian. Proof: Suppose this theorem is not true. Thus, there exists an n-vertex counterexample D. Let C be a longest cycle in D. Let the length of C be l. Obviously, l < n. Moreover, the length of l is at least max{δ− , δ+ } + 1 ≥ n/2. Let P be a longest path in D − V (C). In P, let u be the beginning vertex, w be the ending vertex, and m be the length. Obviously, m ≥ 0. In summary, we have l > n/2, n ≥ |V (C)| + |V (P)| = l + m + 1, and m < n/2. Let S be the set of predecessors of u on C and T be the set of successors of w on C. (See Figure 9.12). By the maximality of P, all predecessors of u are a subset of V (C) ∪ V (P). Thus |S| ≥ min{δ+ , δ− } − m ≥ n/2 − m > 0. Similarly, all successors of w are a subset of V (C) ∪ V (P) and |T | ≥ n/2 − m > 0.
ch009.tex
30/6/2008
10: 34
Page 160
160
Graph Theory and Interconnection Networks
u S P
C T
w
FIGURE 9.12 Illustration of Theorem 9.30.
Suppose that C contains a vertex x in S and a vertex y in T such that dC (x, y) ≤ m. Then we can form a longer cycle in G by using E(C) ∪ E(P) and deleting the edges in the section of C joining x to y. Thus, the distance along C from a vertex u ∈ S to a vertex w ∈ T must exceed m + 1. Hence, we may assume that every vertex of S is followed on C by more than m vertices not in T . Since both S and T are nonempty, we may thus assume that there is a vertex of S followed on C by at least m + 1 vertices not in S. These vertices cannot be a vertex in T . Thus, |V (C − T )| ≥ |S| − 1 + m + 1 ≥ n/2. As |T | ≥ n/2 − m, l = |V (C)| = |V (T − C)| + |T | ≥ (n/2) + (n/2) − m = n − m. However, this contradicts l ≤ n − m + 1.
ch010.tex
30/6/2008
10 10.1
10: 30
Page 161
Planar Graphs
PLANAR EMBEDDINGS
The study of planar graphs is motivated by the famous Four Color Problem. Can the regions of any map on the globe be colored with four colors so that regions sharing a nontrivial boundary have different colors? Recently, the study of circuit layouts on silicon chips provides another motivation for such a study. Crossings cause problems in a layout. We want to know which circuits have layouts without crossings. Recently, the study of planar graphs is generalized into topological graph theory: layout graphs on different surfaces. The following brain teaser appeared as early as Dudeney [90].
Example 10.1 In the woods, there live three sworn enemies A, B, C. We must find paths to install three utilities: gas, water, and electricity. In order to avoid confrontations, we want to avoid having any of these paths cross each other. It turns out that we cannot solve the problem. This question is equivalent to draw K3,3 in the plane without edge crossings. (See Figure 10.1.) Later, we will give the reason why there is no solution.
A graph is said to be embeddable in the plane, or planar, if it can be drawn in the plane so that its edges intersect only at their ends. Such a drawing of a plane graph G is ˆ of G can itself be regarded as called a planar embedding of G. A planar embedding G ˆ a graph isomorphic to G. The vertex set of G is the set of points representing vertices ˆ is the set of lines representing edges of G. A vertex of G ˆ is of G. The edge set of G ˆ incident to all the edges of G that contain it. We therefore sometimes refer to a planar embedding of a planar graph as a plane graph. The graph in Figure 10.2b shows a planar embedding of the planar graph Figure 10.2a. From this definition, the study of planar graphs necessarily involves the topology of the plane. However, we shall not attempt here to be strictly rigorous in topological matters. Instead, we use a naïve point of view toward them. This is done so as not to obscure the combinatorial aspect of the theory, which is our main interest. The results of topology that are essentially relevant in the study of planar graphs are those that deal with Jordan curves. A Jordan curve is a continuous non-selfintersecting curve whose origin and terminus coincide. The union of the edges in a cycle of a plane graph constitutes a Jordan curve. This is the reason why properties of Jordan curves come into play in planar graph theory. We need a well-known theorem about Jordan curves and use it to demonstrate the nonplanarity of K5 and K3,3 . 161
ch010.tex
30/6/2008
10: 30
Page 162
162
Graph Theory and Interconnection Networks A
B
C
G
W
E
FIGURE 10.1 Gas–water–electricity graph.
(a)
(b)
FIGURE 10.2 (a) A planar graph and (b) its planar embedding.
int J
ext J
FIGURE 10.3 Illustration of the Jordan Curve Theorem.
Let J be a Jordan curve in the plane. The rest of the plane is partitioned into two disjoint open sets called the interior and exterior of J. We denote the interior and the exterior of J, respectively, by int J and ext J. The closure of int J is denoted by Int J and the closure of ext J is denoted by Ext J. Clearly, Int J ∩ Ext J = J. The Jordan Curve Theorem states that any line joining a point in int J to a point in ext J must meet J in some point. See Figure 10.3 for an illustration. It seems that this theorem is intuitively obvious. However, a formal proof of it is quite difficult. Let G be any planar graph. We draw G in the plane. Suppose that C is a spanning cycle of G. Then C is drawn as a closed curve. Suppose that the drawing is an embedding of G. Chords of C must be drawn inside or outside this curve. Two chords conflict if their endpoints on C occur in alternating order. By the Jordan Curve Theorem, conflicting chords must embed in opposite faces of C.
Example 10.2 K5 and K3,3 are two important examples of nonplanar graphs. Let us draw K3,3 in the plane. Let C be a 6-cycle from K3,3 . Obviously, three pairwise conflicting chords are left. We can put at most one inside and one outside. Hence K3,3 is not planar. Now, we draw K5 in the plane. Let C be a 5-cycle from K5 . Obviously, five chords are left. However, at most two chords can go inside or outside. Hence K5 is not planar.
ch010.tex
30/6/2008
10: 30
Page 163
Planar Graphs
163 v1 v7 e13
e11 v8
v6
e3
e1
f6
e12 f7
e2
f1 v4
e10 e7
e9 f5
v5
f3
f2 v2 e5 e6
f4
e4
v3
e8
FIGURE 10.4 A plane graph with seven faces.
A plane graph G partitioned the rest of the plane into a number of connected regions. The closures of these regions are called the faces of G. A plane graph with seven faces, f1 , f2 , f3 , f4 , f5 , f6 , and f7 is shown in Figure 10.4. We shall denote by F(G) and φ(G), respectively, the set of faces and the number of faces of a plane graph. Each plane graph has exactly one unbounded face, called the exterior face. The face f1 of the graph in Figure 10.4 is the exterior face. The family of planar graphs and the family of graphs embeddable on the sphere are actually the same. Given an embedding of a graph G on the sphere, we can puncture the sphere within any face and project from there onto a plane tangent to the antipodal point to obtain a planar embedding of G. The punctured face on the sphere becomes the exterior face in the plane, and the process is reversible. Thus, any planar graph can be embedded in the plane so that any vertex v is on the exterior face of the embedding. Let us view a geographic map on the plane or the sphere as a plane graph, in which the faces are the territories of the map, the vertices are places where several boundaries meet, and the edges are the portions of the boundaries that join two vertices. Here, we allow graphs with loops and multiple edges. From any plane graph G, we can build another plane graph called its dual. Suppose that G is a plane graph. The dual graph G∗ of G is a plane graph having a vertex for each region in G. The edges of G∗ correspond to the edges of G as follows: suppose that e is an edge of G that has region X on one side and region Y on the other side. Then the corresponding dual edge e∗ ∈ E(G∗ ) is an edge joining the vertices x and y of G∗ that correspond to the faces X and Y of G.
Example 10.3 In Figure 10.5, we have a plane graph G with dashed edges and its dual G∗ with solid edges. Since G has five vertices, seven edges, and four faces, G∗ has five faces, seven edges, and four vertices. As in this example, a simple plane graph may have loops and multiple edges in its dual. A cut edge of G becomes a loop in G∗ , because the faces on both sides of it are the same. Multiple edges arise in the dual when distinct regions of G have more than one common boundary edge. With this example, we know the reason why we allow graphs with loops and multiple edges as we discuss planar graphs.
A statement about a connected plane graph becomes a statement about the dual graph when we interchange the roles of vertices and faces. Edges incident to a vertex
ch010.tex
30/6/2008
10: 30
Page 164
164
Graph Theory and Interconnection Networks
FIGURE 10.5 A plane graph G with dashed edges and its dual G∗ with solid edges.
FIGURE 10.6 The plane graph with four faces of lengths 3,4,4,7.
(a)
(b)
FIGURE 10.7 Different embeddings of a planar graph.
become edges bounding a face, and vice versa. For example, let us consider the degreesum formula say about edges and faces instead of edges and vertices. The length of a face in a plane graph G is the length of the walk in G that bounds it. Note that a cut edge belongs to the boundary of only one face. Yet it contributes twice to the boundary of the face as we traverse the boundary. The plane graph in Figure 10.6 has four faces, with lengths 3,4,4,7. The sum of the lengths is 18, which is twice that of the number of edges. Note that different embeddings of a planar graph may have nonisomorphic duals. For example, the plane graph in Figure 10.7a has faces of lengths 6,4,3,3. And the plane graph in Figure 10.7b has faces of lengths 5,5,3,3. It is easy to check whether these two graphs are isomorphic. However, their duals have degree sequences 6,4,3,3 and 5,5,3,3, respectively. Hence, the duals are not isomorphic. However, it can be proved that every 3-connected planar graph has essentially one embedding.
ch010.tex
30/6/2008
10: 30
Page 165
Planar Graphs
165
PROPOSITION 10.1 Let l(Fi ) denote the length of face Fi in the plane graph G. Then 2e(G) = l(Fi ). Proof: It is observed that bounding edges for a face X correspond to dualedges incident to the dual vertex x. Since e(G) = e(G∗ ), the statement 2e(G) = l(Fi ) is the same as the degree-sum formula 2e(G∗ ) = degG∗ (x) for G∗ . Alternatively, adding up the face lengths counts each edge twice.
10.2
EULER’S FORMULA
Euler’s formula is the basic computational tool for planar graphs. THEOREM 10.1 (Euler [99]) If a connected plane graph G has n vertices, e edges, and f faces, then n − e + f = 2. Proof: We prove this theorem by induction on n. Suppose that n = 1. Then G is a bouquet of loops, each being a closed curve in the embedding. Assume that e = 0. Then we have one face. Obviously, the formula holds. By the Jordan Curve Theorem, each added loop passes through a region and partitions it into two regions. Thus, the formula holds for n = 1 and any e ≥ 0. Now suppose that the theorem holds for any connected plane graph G with k vertices for 1 ≤ k < n(G). Since G is connected, we can find an edge that is not a loop. When we contract such an edge, we obtain a plane graph G with n vertices, e edges, and f faces. The contraction does not change the number of faces, but it reduces the number of edges and vertices by one. Applying the induction hypothesis, we find n − e + f = n + 1 − (e + 1) + f = 2. REMARK: 1. Euler’s formula implies that all planar embeddings of a connected graph G have the same number of faces. Thus, although the dual depends on the emdedding chosen for G, the number of vertices in the dual does not. 2. Deleting an edge of G has the effect of contracting an edge in G∗ because two faces of G merge into a single face in G − e. Similarly, contracting an edge of G has the effect of deleting an edge in G∗ . 3. Euler’s formula fails for disconnected graphs. The general formula for a plane graph with k components is n − e + f = k + 1. THEOREM 10.2 Suppose that G is a simple planar graph with at least three vertices. Then e(G) ≤ 3n(G) − 6. Moreover, e(G) ≤ 2n(G) − 4 if G is triangle-free. Proof: It suffices to consider connected graphs, as otherwise we could add all the edges in each connected component. We can use Euler’s formula to relate n(G) and e(G) if we can dispose of f . Note that n(G) ≥ 3 and loopless. Every face boundary in a simple graph contains at least three edges. Let { fi } be the sequence of face-lengths. By Proposition 10.1, 2e = fi ≥ 3f . Since n − e + f = 2,
ch010.tex
30/6/2008
10: 30
Page 166
166
Graph Theory and Interconnection Networks
2 = n − e + f ≤ n − e + (2e/3) = n − (e/3). Thus, e ≤ 3n − 6. Suppose that G is triangle-free. The faces have a length of at least 4. Thus, 2e = fi ≥ 4f . Using a similar argument, we obtain e ≤ 2n − 4. We can also use Euler’s formula to show that K5 and K3,3 are nonplanar. For K5 , we have e = 10 > 9 = 3n − 6. Since K3,3 is triangle-free, we have e = 9 > 8 = 2n − 4. The following corollary is a direct consequence of Theorem 10.2. COROLLARY 10.1 Every simple planar graph has a vertex of degree at most 5. The proof of Theorem 10.2 shows that having (3n − 6) edges in a simple n-vertex planar graph requires 2e = 3f . Moreover, every face is a triangle. Suppose that G has some face that is not a triangle. We can add an edge between nonadjacent vertices on the boundary of this face to obtain a larger planar graph. Here, the family of simple plane graphs with 3n − 6 edges, the family of triangularations, and the family of maximal plane graphs all belong to the same family. Informally, we think of a regular polyhedron as a solid, whose boundary consists of regular polygons of same length, with same number of faces meeting at each vertex. When we lay the surface out in the plane, we obtain a regular planar graph with faces of the same length. Hence, the dual is also regular. We can prove that there are only five regular polyhedra by proving that there are only five regular planar graphs whose duals are also simple and regular. Suppose that G is a plane graph with n vertices, e edges, and f faces. Suppose also that G is regular of degree k and that G∗ is regular of degree l. Thus, G has faces of length l. By the degree-sum formula for G and G∗ , we have kn = 2e = lf . Substituting for n and f into Euler’s formula, we have e[(2/k) − 1 + (2/l)] = 2. Since e and 2 are positive, (2/k) − 1 + (2/l) > 0. Hence, 2l + 2k > kl. This is equivalent to (k − 2)(l − 2) < 4. Because the dual of a 2-regular graph is not simple, we conclude that k, l ≥ 3. By Corollary 10.1, k, l ≤ 5. There are only five solution pairs for (k, l): (3,3), (3,4), (3,5), (4,3), (5,3). Once we specify k and l, there is only one way to lay out the plane graph when we start with any face. Hence, there are no more than five known Platonic solids.
10.3
k
l
(k − 2)(l − 2)
e
n
f
3 3 4 3 5
3 4 3 5 3
1 2 2 3 3
6 12 12 30 30
4 8 6 20 12
4 6 8 12 20
Name Tetrahedron Cube Octahedron Dodecahedron Icosahedron
CHARACTERIZATION OF PLANAR GRAPHS
Before 1930, the most actively sought result in graph theory was the characterization of planar graphs. We have proved that K5 and K3,3 are not planar. In a natural sense, these are critical graphs and yield a characterization of planarity. It was Kuratowski who finally characterized the set of planar graphs using K5 and K3,3 .
ch010.tex
30/6/2008
10: 30
Page 167
Planar Graphs
167
Note that subdividing an edge or performing an elementary subdivision means replacing the edge with a path of length 2. A subdivision of G is a graph obtained from G by a sequence of elementary subdivisions; that is, turning edges into paths through new vertices of degree 2. It is observed that subdividing edges does not affect planarity. For this reason, we seek a characterization by finding a topologically minimal nonplanar graphs—those that are not subdivisions of other nonplanar graphs. We already know that a graph containing any subdivision of K5 or K3,3 is nonplanar. Kuratowski [213] proved the following theorem. We omit the proof because it is very complicated. THEOREM 10.3 A graph G is planar if and only if G contains no subdivision of K5 or K3,3 . Wagner [329] proved another characterization. It is observed that deletion and contraction of edges preserve planarity. Again, we seek the minimal nonplanar graphs using these operations. Wagner proved the following theorem. THEOREM 10.4 A graph G is planar if and only if it has no subgraph contractible to K5 or K3,3 . Mathematicians expand the study of planar embedding by putting additional requirements. For example, the straight line embedding requires that all edges embedded are straight line segments. Wagner [328], Fáry [105], and Stein [287] show that every finite planar graph has a straight line embedding. This is known as Fáry’s Theorem. The convex embedding requiring each face boundary, including the unbounded face, is a convex polygon. Tutte [310,311] proved that every 3-connected planar graph has a convex embedding. This is the best possible result, in the sense that the 2-connected planar graph K2,n does not have a convex embedding if n ≥ 4. Computer scientists characterize planar graphs using algorithms. There are lineartime planarity-testing algorithms due to Hopcroft and Tarjan [157] and due to Booth and Lueker [31], but these are very complicated.
10.4
COLORING OF PLANAR GRAPHS
Sometimes, it is very difficult to study a property or a parameter on general graphs. We can restrict our attention to some families of graphs. Thus, every property and parameter we have studied for general graphs can be studied for planar graphs. The chromatic number of planar graphs is one of the greatest historical interests. By Corollary 10.1, every simple planar graph has a vertex of degree at most 5. We can easily prove that every planar graph is 6-colorable by induction. Heawood improved this result. THEOREM 10.5 (Heawood [142]) Every planar graph is 5-colorable. Proof: Obviously, the theorem holds for K1 . Suppose that the theorem is not true. Then there is a minimal counterexample G. Let v be the vertex of degree at most 5 in G. The choice of G implies that G − v is 5-colorable. Let f : V (G − v) → [5]
ch010.tex
168
30/6/2008
10: 30
Page 168
Graph Theory and Interconnection Networks
be a 5-coloring of G − v. Since G is not 5-colorable, each color appears at one of the neighbors of v. Hence, deg(v) = 5. We may label the colors to assume that the neighbors of v in a planar embedding of G are v1 , v2 , v3 , v4 , v5 in clockwise order around v with f (vi ) = i. Let Gij denote the subgraph of G induced by the vertices of colors i and j. We can exchange the two colors on any component of Gij to obtain another 5-coloring of G − v. Hence, the component of Gij that contains vi must also contain vj . Otherwise, we could make the interchange on the component of Gij containing vi to remove color i from N(v). Then we could assign color i to v to extend f to be a 5-coloring of G. Let Pij be the path in Gij from vi to vj . Consider the cycle C completed with P1,3 by v. Then C separates v2 from v4 . By the Jordan Curve Theorem, the path P2,4 must cross C. Since G is planar, such a crossing can happen only at a shared vertex. This is impossible, because the vertices of P1,3 all have color 1 or 3, and the vertices of P2.4 all have color 2 or 4. In October 23, 1852, Sir William Hamilton received a letter from Augustus de Morgan at University College in London. In this letter, the Four Color Problem first appeared. The problem was asked by de Morgan’s student Frederick Guthrie, who later attributed it to his brother Francis Guthrie. The problem was phrased in terms of map coloring, in which the faces of a planar graph are to be colored. In 1878, Cayley announced the problem to the London Mathematical Society. Within a year, Kempe [200] published a solution. Soon, Kempe was elected a Fellow of the Royal Society. In 1890, Heawood posed a refutation. Yet Kempe’s idea was the alternating paths in the previous Five Color Theorem. Eventually, Appel and Haken [12–14] solved the Four Color Problem. In 1878, Tait proved a theorem relating face-coloring of planar maps to proper edge-colorings of planar graphs. He used this in an approach to the Four Color Problem. THEOREM 10.6 (Tait [295]) A simple 2-edge-connected 3-regular planar graph is 3-edge-colorable if and only if it is 4-face-colorable. Proof: Let G be a 2-edge-connected 3-regular planar simple graph. Suppose that G is 4-face-colorable. Let the four face colors be denoted by binary ordered pairs: c0 = 00, c1 = 01, c2 = 10, and c3 = 11. We obtain a proper 3-edge-coloring of G by assigning to the edge between faces with colors ci and ci the coloring obtained by adding ci and cj as vectors of length 2, using coordinate-wise addition modulo 2. We need to check whether such coloring is proper. Since G is 2-edge-connected, each edge bounds two different faces. Hence the color 00 never occurs as a sum. It suffices to prove that the three edges at a vertex receive distinct colors. At vertex v the faces bordering the three incident edges are pairwise-adjacent. These three faces must have three distinct colors {ci , cj , ck }. See Figure 10.8 for illustration. Suppose that color 00 is not in this set. Then the sum of any two of these is the third. Hence, {ci , cj , ck } is the set of colors on the three edges. Suppose that ck = 00. Then ci and cj appear on two of the edges, and the third receives color ci + cj , which is the color not in {ci , cj , ck }.
ch010.tex
30/6/2008
10: 30
Page 169
Planar Graphs
169
01
01
10 01
10
11
11
10 01
01
01
10
00
11 11
11
c
00 01
00
11 00
01 b
01 a
FIGURE 10.8 Illustration of Theorem 10.6.
Now, suppose that G has a proper 3-edge-coloring using colors a, b, c on the subgraphs Ea , Eb , and Ec . Since G is 3-regular, each color appears at every vertex. Thus, the union of any two of Ea , Eb , and Ec is 2-regular, which makes it a union of disjoint cycles. Each face of this subgraph is a union of faces of the original graph. Let H1 = Ea ∪ Eb and H2 = Eb ∪ Ec . For i ∈ {1, 2}, we assign the color fi to each face of G the parity of the number of cycles in Hi that contain it (0 for even, 1 for odd). Then, we set the function f as ( f1 , f2 ). We claim that f is a proper 4-face-coloring, as illustrated previously. Suppose that two faces F and F are separated by an edge e. Since G is 2-edgeconnected, they are different faces. This edge belongs to a cycle C in at least one of H1 or H2 . By the Jordan Curve Theorem, one of F and F is inside C and the other is outside. In other words, f1 (F) = f1 (F ) if e ∈ Ea ∪ Eb and f2 (F) = f2 (F ) if e ∈ Eb ∪ Ec . Hence, f (F) = f (F ). Due to this theorem, a proper 3-edge-coloring of a 3-regular graph is called a Tait coloring. Let G be a Hamiltonian 3-regular graph. Since G is 3-regular, n(G) is even. We can alternatively color the edges on a Hamiltonian cycle C with two colors. Then all of the remaining edges are colored with the third color. We obtain a proper edge coloring of G. Hence, every Hamiltonian 3-regular graph has a Tait coloring. Tait believed that this gave a proof of the Four Color Theorem, because he assumed that every 3-connected 3-regular planar graph is Hamiltonian. Although the gap was noticed earlier, an explicit counterexample was found in 1946. Yet, the proof that a 3-connected 3-regular planar graph is not Hamiltonian is very tedious. Later, Grinberg [127] discovered a simple necessary condition that led to many 3-regular 3-connected non-Hamiltonian planar graphs. THEOREM 10.7 (Grinberg [127]) Suppose that G is a loopless plane graph having Hamiltonian cycle fi faces of length i inside C and fi faces of length i C, and G has outside C. Then i (i − 2)( fi − fi ) = 0. Proof: First, we prove that i (i − 2)fi = n − 2 by induction on the number of edges inside C. Suppose that there are no edges insideC. Obviously, fi = 0 if i = n and fn = 1. Hence, i (i − 2)fi = n − 2. Suppose that i (i − 2) fi = n − 2 for any graph with k
ch010.tex
30/6/2008
10: 30
Page 170
170
Graph Theory and Interconnection Networks
G
H
H
FIGURE 10.9 Graphs G, H , and H .
edges inside C. Assume that G is a loopless plane graph having a Hamiltonian cycle C and having (k + 1) edges inside C. We can delete an edge e from the inside of C. Obviously, G − e is a loopless planegraph having C as its Hamiltonian cycle and having k edges inside C. By induction, i (i − 2)gi = n − 2, where gi is the number of faces of length i for G − e inside C. Now, we add e back to G − e to obtain G. The edge addition cuts a face of some length r into two faces of lengths s and t. Then s + t = r + 2, because the new edge contributes to each face and each of the edges on the old face contributes to one of the new faces. All other contributions to the sum remain unchanged. From this equality we obtain (s − 2) + (t − 2) = (r − 2), so that the total contribution from these faces is also the same as before. Thus, i (i − 2)fi = n − 2. Since the inside and outside are symmetric with respect to C, i (i − 2)fi = n − 2. Thus, i (i − 2)( fi − fi ) = 0. Grinberg’s condition is used to show that graphs are not Hamiltonian. The arguments can often be simplified by using modular arithmetic. We apply such arguments to the first known non-Hamiltonian 3-connected 3-regular planar graph (Tutte [313]). Originally, Tutte used an ad hoc argument to prove that this graph is not Hamiltonian. For many years, this graph was the only known example. The Tutte graph G is shown in Figure 10.9. Let H denote each component of the subgraph obtained by deleting the central vertex and the three long edges. Any Hamiltonian cycle must visit the central vertex of G. Thus, it must contain a Hamiltonian path in one copy of H between the two other entrances to that graphs. By adding a path of length 2 between the desired endpoints of the Hamiltonian path in H we obtain the graph H , shown in Figure 10.9. Obviously, H has a Hamiltonian path with the desired entrance if and only if H is Hamiltonian. Furthermore, H is Hamiltonian if and only if the graph H shown in Figure 10.9 is Hamiltonian. Obviously, there are seven 5-faces, one 4-face, and one 11-face in H . Grinberg’s condition becomes 2a4 + 3a5 + 9a9 = 0, where ai = fi − fi . Thus, 2a4 ≡ 0 mod 3. Since there is only one 4-face, a4 = ±1. However, the equation 2 × (±1) ≡ 0 mod 3 is impossible. Thus, G is not Hamiltonian.
ch011.tex
30/6/2008
11 11.1
18: 45
Page 171
Optimal k -Fault-Tolerant Hamiltonian Graphs
INTRODUCTION
An interconnection network connects the processors of the parallel computer. Its architecture can be represented as a graph in which the vertices correspond to the processors and the edges to the communication links. Hence, we use graph and network interchangeably. There are a lot of mutually conflicting requirements in designing the topology of computer networks. It is almost impossible to design a network that is optimal from all aspects. One has to design a suitable network depending on the requirements and their properties. The Hamiltonian properties are one of the major requirements in designing the topology of a network. For example, the Token ring approach is used in some distributed operation systems. An interconnection network requires the presence of Hamiltonian cycles in the structure to meet this approach. Fault-tolerance is also a desirable feature in massive parallel systems that have a relatively high probability of failure. A number of fault-tolerant designs for specific multiprocessor architectures have been proposed based on graph-theoretic models, in which the processor-to-processor interconnection structure is represented by a graph. When faults occur in a network, it corresponds to removing edges and vertices from the graph. Let G = (V , E) be a graph and let V ⊆ V and E ⊆ E. We use G − V to denote the subgraph of G induced by V − V , and G − E the subgraph obtained by removing E from G. Faults can be in the combination of vertices and edges. Let F ⊆ V ∪ E. We use G − F to denote the subgraph induced by V − F and deleting the edges in F from the induced subgraph. Suppose that G − V is Hamiltonian for any V ⊆ V and |V | ≤ k. Then G is called a k-vertex fault-tolerant Hamiltonian graph. An n-vertex k-vertex fault-tolerant Hamiltonian graph is optimal if it contains the least number of edges among all n-vertex k-vertex fault-tolerant Hamiltonian graphs. Obviously, every k-vertex fault-tolerant Hamiltonian graph has at least k + 3 vertices. Moreover, the degree of every vertex in a k-vertex fault-tolerant Hamiltonian graph is at least k + 2. The vertex fault-tolerant Hamiltonicity, Hv (G), is defined as the maximum integer l such that G − F remains Hamiltonian for every F ⊂ V (G) with |F| ≤ l if G is Hamiltonian, and undefined if otherwise. Obviously, Hv (G) ≤ δ(G) − 2. Moreover, a r-regular graph G is optimal vertex-fault-tolerant Hamiltonian if Hv (G) = r − 2. Suppose that G − E is Hamiltonian for any E ⊆ E and |E | ≤ k. Then G is called a k-edge fault-tolerant Hamiltonian graph. An n-vertex k-edge fault-tolerant Hamiltonian graph is optimal if it contains the least number of edges among all n-vertex k-edge fault-tolerant Hamiltonian graphs. Obviously, every k-edge fault-tolerant Hamiltonian 171
ch011.tex
172
30/6/2008
18: 45
Page 172
Graph Theory and Interconnection Networks
graph has at least k + 3 vertices. Moreover, the degree of every vertex in a k-edge fault-tolerant Hamiltonian graph is at least k + 2. The edge fault-tolerant Hamiltonicity, He (G), is defined as the maximum integer l such that G − F remains Hamiltonian for every F ⊂ E(G) with |F| ≤ l if G is Hamiltonian, and undefined if otherwise. Obviously, He (G) ≤ δ(G) − 2. Moreover, a r-regular graph G is optimal edge-fault-tolerant Hamiltonian if He (G) = r − 2. Suppose that G − F is Hamiltonian for any F ⊆ V ∪ E and |F| ≤ k; then G is called a k-fault-tolerant Hamiltonian graph. An n-vertex k-fault-tolerant Hamiltonian graph is optimal if it contains the least number of edges among all n-vertex k-fault-tolerant Hamiltonian graphs. Obviously, every k-fault-tolerant Hamiltonian graph has at least k + 3 vertices. Moreover, the degree of every vertex in a k-faulttolerant Hamiltonian graph is at least k + 2. The fault-tolerant Hamiltonicity, Hf (G), is defined as the maximum integer l such that G − F remains Hamiltonian for every F ⊂ V (G) ∪ E(G) with |F| ≤ l if G is Hamiltonian, and undefined if otherwise. Obviously, Hf (G) ≤ min {Hv (G), He (G)} ≤ δ(G) − 2. Moreover, a r-regular graph G is optimal fault-tolerant Hamiltonian if Hf (G) = r − 2. The design of k-fault-tolerant Hamiltonian graph is equivalent to k-fault-tolerant design for token rings. Previous results have been focused mostly on the construction of either optimal k-vertex fault-tolerant Hamiltonian graph or k-edge fault-tolerant Hamiltonian graphs. Several families of optimal 1-fault-tolerant Hamiltonian graphs are proposed in Refs 139, 140, 234, and 256. Let n and k be positive integers with n ≥ k + 3. Obviously, the complete graph Kn is k-fault-tolerant Hamiltonian. Thus, there exists an n-vertex k-fault-tolerant Hamiltonian graph for any integer n with n ≥ k + 3. Suppose that n and k are positive integers such that nk is even. Let G = (V , E) be an n-vertex (k + 2)-regular k-fault-tolerant Hamiltonian graph. From the previous discussion, G is an optimal k-fault-tolerant Hamiltonian graph. However, we have difficulty showing that any optimal k-faulttolerant Hamiltonian graph is (k + 2)-regular for k ≥ 3. Similarly, suppose that n and k are positive integers such that nk is odd. Let G = (V , E) be an n-vertex k-fault-tolerant Hamiltonian graph such that there is exactly one vertex y ∈ V such that degG (y) = k + 3 and degG (x) = k + 2 for any x ∈ V − {y}. Since the number of vertices with odd degree in any graph is even, G is an optimal k-fault-tolerant Hamiltonian graph. Again, we cannot conclude that there is exactly one vertex of degree k + 3 and all the remaining vertices are of degree k + 2 in any optimal k-fault-tolerant Hamiltonian graph for k ≥ 3. These two problems can be solved once we prove that every Harary graph Hk,n is an optimal (k − 2)-fault-tolerant Hamiltonian graph for k ≥ 3. Wong and Wong [345] and Paoli et al. [263] proved that the Harary graph Hk,n , introduced in Example 7.2, is optimal (k − 2)-vertex fault-tolerant Hamiltonian and optimal (k − 2)-edge fault-tolerant Hamiltonian for n being even and odd, respectively. Although the graph Hk,n is both optimal (k − 2)-vertex fault-tolerant Hamiltonian and optimal (k − 2)-edge fault-tolerant Hamiltonian, it is not necessary for Hk,n to be optimal (k − 2)-fault-tolerant Hamiltonian. Sung et al. [291] showed that Hk,n is optimally (k − 2)-fault-tolerant Hamiltonian for k = 4, 5 and conjectured that the same is true for all k ≥ 6. Now, we concentrate on the construction of k-fault-tolerant Hamiltonian graphs. To make it simple, we concentrate only on the regular k-fault-tolerant Hamiltonian graphs. Thus nk is even, where n is the number of vertices.
ch011.tex
30/6/2008
18: 45
Page 173
Optimal k -Fault-Tolerant Hamiltonian Graphs
11.2
173
NODE EXPANSION
The following theorem is proved by Ore [261]. THEOREM 11.1 (Ore [261]) Assume that G is an n-vertex graph with n ≥ 4. Then G is Hamiltonian if e ≤ n − 3. LEMMA 11.1 Assume that n ≥ 4. Then Kn is (n − 3)-fault-tolerant Hamiltonian. Proof: Suppose that F is any subset of V (Kn ) ∪ E(Kn ). We use FV to denote F ∩ V (Kn ). Then Kn − F is isomorphic to Kn−f − F where f = |FV | and F is a subset of edges in the subgraph of Kn induced by n − FV . Obviously, |F | ≤ |F| − f . Thus, if |F| ≤ n − i then E(Kn−f − F ) = |F | ≤ |F| − f ≤ (n − f ) − i. Note that n − f is the number of vertices of Kn−f − F . The lemma follows from Theorem 11.1. COROLLARY 11.1 The graph Kn − F has a Hamiltonian path for F ⊂ E(Kn ) with |F| ≤ n − 2. Proof: Choose any f ∈ F. We set F = F − {f }. Obviously, |F | ≤ n − 3. Thus, Kn − F has a Hamiltonian cycle C. Suppose that f ∈ C. We delete f from C to obtain a path P. Obviously, P is a Hamiltonian path of Kn − F. Suppose f ∈ / C, we delete any edge of C to obtain a path P. Again, P is a Hamiltonian path of Kn − F. The corollary is proved. THEOREM 11.2 Let Kn = (V , E) be the complete graph with n vertices and F ⊂ V ∪ E be a faulty set with |F| ≤ n − 2. There exists a set V ⊆ V (Kn − F) with |V | = n − |F| such that every pair of vertices in V can be joined by a Hamiltonian path of Kn − F. Proof: We prove this theorem by induction on n. This statement can be easily verified for n = 3 and 4. Assume that the statement holds for all Kj with 3 ≤ j ≤ n − 1 and n ≥ 5. First, we consider that |F ∩ V (Kn )| = i > 0. Then the graph Kn − F is isomorphic to Kn−i − F for some |F | ≤ |F| − i. By induction hypotheses, there exists a set V ⊆ V with |V | = n − i − |F | ≥ n − |F| such that every pair of vertices in V can be joined by a Hamiltonian path of Kn−i − F . Thus, the statement is also true for the graph Kn − F, since Kn−i − F is isomorphic to Kn − F. Next, we consider that F ⊂ E. Suppose that |F| = n − 2. It follows from Corollary 11.1 that the graph Kn − F has a Hamiltonian path. Thus, there exists a set V ⊂ V with |V | = 2 such that the pair of vertices in V can be joined by a Hamiltonian path of Kn − F. Now consider that F ⊂ E and |F| ≤ n − 3. Let H denote the subgraph of Kn given by (V , F). Since v ∈ V degH (v) ≤ 2(n − 3), there exists a vertex v ∈ V with degH (v) ≤ 1. We distinguish the following two cases: Case 1. There exists a vertex v with degH (v) = 0. In other words, all of the edges in Kn − F incident at v are not in F. Thus, the graph Kn − v − F is isomorphic to Kn−1 − F. By induction hypotheses, there exists a subset V ⊆ (V − {v}) with |V | = n − 1 − |F| such that every two distinct vertices x and y in V can be joined by a Hamiltonian path of Kn − v − F. Let P be a Hamiltonian path of Kn − v − F
ch011.tex
30/6/2008
18: 45
Page 174
174
Graph Theory and Interconnection Networks
joining x to y, which is written as x, x , P , y, where x is a vertex adjacent to x and P is a path from x to y. Then x, v, x , P , y and v, x, x , P , y form two Hamiltonian paths of Kn − F from x to y and from v to y, respectively. Since x and y are arbitrary vertices in V , there always exists a Hamiltonian path of Kn − F joining every pair of vertices in V ∪ {v}. Thus, this statement is true. Case 2. There exists a vertex v with degH (v) = 1. Since there is exactly one edge of Kn − F incident at v which is also in F, it follows that the graph Kn − v − F is isomorphic to the graph Kn−1 − F ∗ where |F ∗ | = |F| − 1. By induction hypotheses, there exists a subset V ⊆ (V − {v}) with |V | = n − |F| such that every pair of vertices x and y in V can be joined by a Hamiltonian path of Kn − v − F. Let P∗ be a Hamiltonian path of Kn − v − F joining x and y, which is written as x = u0 , u1 , . . . , un−2 = y. Since n ≥ 5, there exists uj , 0 ≤ j ≤ n − 3, such that (v, uj ) ∈ / F and (v, uj + 1 ) ∈ / F. Then
x = u0 , u1 , . . . , uj , v, uj + 1 , . . . , un−2 = y forms a Hamiltonian path of Kn − F joining x to y. Hence, every pair of vertices in V can be joined by a Hamiltonian path of Kn − F. Thus, the theorem is proved. Let G = (V , E) be any graph with x be a vertex in V with degree t and the set {x1 , x2 , . . . , xt } consists of the neighborhood vertices of x. The t-node expansion X(G, x) of G on x is the graph obtained from G by replacing x by the complete graph Kt , where V (Kt ) = {k1 , k2 , . . . , kt }, with the edges (x, xi ), i = 1, 2, . . . , t deleted from G and the edges (ki , xi ), i = 1, 2, . . . , t added to X(G, x). More precisely, V (X(G, x)) = (V − {x}) ∪ {k1 , k2 , . . . , kt } and E(X(G, x)) = (E − {(x, xi ) | 1 ≤ i ≤ t}) ∪ {(ki , xi ) | 1 ≤ i ≤ t} ∪ {(ki , kj ) | 1 ≤ i = j ≤ t}. Note that degX(G,x) (v) = degG (x) = t for all v ∈ V (Kt ) and degX(G,x) (u) = degG (u) for all u ∈ (V − {x}). In particular, X(G, x) is also t-regular if G is t-regular. The graphs G and X(G, x) are illustrated in Figure 11.1. Let NG∗ (x) be the subgraph induced by {x} ∪ {(x, xi ) | for all 1 ≤ i ≤ t} of G and MG (x) be the set of V (Kt ) ∪ E(Kt ) ∪ {(ki , xi ) | i = 1, 2, . . . , t} of G. LEMMA 11.2 Let G = (V , E) be any graph with x be a vertex in V with degree t and F1 ⊂ (V (G − x) ∪ E(G − x)). Suppose that we delete any f edges of NG∗ (x) from
x2
x2
x3
x1
x1
x3 k3
x G
FIGURE 11.1 The graphs G and X(G, x).
k1
k2 X(G, x)
ch011.tex
30/6/2008
18: 45
Page 175
Optimal k -Fault-Tolerant Hamiltonian Graphs
175
the graph G − F1 such that the remaining graph is Hamiltonian for f + |F1 | ≤ t − 2. Then the graph X(G, x) − (F1 ∪ F3 ) is Hamiltonian where F3 is a subset of MG (x) and |F3 | = f . Proof: Since F3 ⊂ MG (x) and |F3 | ≤ t − 2, there exists a set V ⊂ V (Kt ) of size t − f such that every two distinct vertices in V can be joined by a Hamiltonian path of the graph Kt − F3 for f = |F3 ∩ (V (Kt ) ∪ E(Kt ))|. We define a faulty set F2 of G as follows: F2 = {(x, xi ) | ki ∈ / V or (xi , ki ) ∈ F3 , 1 ≤ i ≤ t} Thus, |F2 | ≤ (|V (Kt )| − |V |) + (|F3 | − f ) = t − (t − f ) + (f − f ) = f ≤ t − 2. The graph (G − F1 ) − F2 is Hamiltonian because we delete any f edges of NG∗ (x) from G − F1 such that the remaining graph is Hamiltonian. Thus, there is a Hamiltonian cycle C = xi , x, xj , P, xi in the graph G − (F1 ∪ F2 ) where P is a path from xj to xi . By the definition of F2 , ki and kj are in V and (xi , ki ), (xj , kj ) are not in F3 . Thus, there exists a Hamiltonian path P joining ki and kj in the graph Kt − F3 . Therefore,
xi , ki , P , kj , xj , P, xi forms a Hamiltonian cycle in the graph X(G, x) − (F1 ∪ F3 ). This lemma is proved. THEOREM 11.3 Let x be a vertex of G = (V , E) with degG (x) = k + 2. Then X(G, x) is k-fault-tolerant Hamiltonian if G is k-fault-tolerant Hamiltonian. Proof: Let F be any faulty set of the graph X(G, x) where |F| ≤ k. We set F1 = F ∩ (V (G − x) ∪ E(G − x)) and F3 = F − F1 . Since G is k-fault-tolerant Hamiltonian, the graph G − (F1 ∪ F2 ) is Hamiltonian for every F2 ⊂ E(NG∗ (x)) with |F2 | = |F| − |F1 | = |F3 |. Applying Lemma 11.2, the graph X(G, x) − (F1 ∪ F3 ) is Hamiltonian. Therefore, X(G, x) is k-fault-tolerant Hamiltonian. The theorem is proved. COROLLARY 11.2 Let G = (V,E) be an n-vertex (k + 2)-regular k-fault-tolerant Hamiltonian graph. Then X(G, x) is optimal k-fault-tolerant Hamiltonian for any vertex x ∈ V . Applying Theorem 11.3, we can obtain other optimal k-fault-tolerant Hamiltonian graphs from some known optimal k-fault-tolerant Hamiltonian graphs by (k + 2)-node expansion. The node expansion of G = (V , E) on the set U ⊂ V , denoted by X(G, U), is a graph that is obtained from G by a sequence of node-expansion operations on every vertex u ∈ U. LEMMA 11.3 Let G = (V , E) be a (k + 2)-regular and k-edge fault-tolerant Hamiltonian. Then X(G, U) − F is Hamiltonian if F ⊂ ((V (X(G, U)) ∪ E(X(G, U)) − V ) with U ⊆ V and |F| ≤ k. Proof: Let v be a vertex of U and U = U − {v}. Assume that the graph X(G, U ) − F is Hamiltonian for every F ⊂ ((V (X(G, U )) ∪ E(X(G, U )) − V ) for |F | ≤ k. Let F3 = F ∩ MX(G,U ) (v) and F1 = F − F3 . Therefore, the graph which is deleted any |F3 |
ch011.tex
176
30/6/2008
18: 45
Page 176
Graph Theory and Interconnection Networks
∗ edges, denoted by F2 , of NX(G,U ) (v) from the graph G − F1 is Hamiltonian because F1 ∪ F2 is a subset of (V (X(G, U )) ∪ E(X(G, U )) − V and |F1 ∪ F2 | = |F| ≤ k. By Lemma 11.2, the graph X(G, U) − (F1 ∪ F3 ) is Hamiltonian because F = F1 ∪ F3 is an arbitrary subset of (V (X(G, U)) ∪ E(X(G, U)) − V and |F| ≤ k. Thus, this lemma is proved.
THEOREM 11.4 Suppose that the graph G = (V , E) is (k + 2)-regular and optimal k-edge fault-tolerant Hamiltonian. Then the graph X(G, V ) is (k + 2)-regular and optimal k-fault-tolerant Hamiltonian. Proof: By Lemma 11.3, X(G, V ) − F is Hamiltonian for every F ⊂ ((V (X(G, V )) ∪ E (X(G, V )) − V ) for |F| ≤ k. In fact, (V (X(G, X)) ∪ E(X(G, X))) ∩ V = ∅. Thus, (V (X(G, X)) ∪ E(X(G, X))) − V = V (X(G, X)) ∪ E(X(G, X)). Therefore, X(G, V ) is k-fault-tolerant Hamiltonian. Moreover, X(G, V ) is optimal k-fault-tolerant Hamiltonian, since it is (k + 2)-regular. Hence, this theorem is proved. The following theorem is proved in Refs 51 and 281. THEOREM 11.5 The n-dimensional hypercube Qn is (n − 2)-edge fault-tolerant Hamiltonian for n ≥ 2. By Theorem 11.4, we have the following corollary. COROLLARY 11.3 The graph X(Qn , V ) is an optimal (n − 2)-fault-tolerant Hamiltonian and vertex symmetric graph with n · 2n vertices, degree n, and diameter 2n for n ≥ 2. The following theorem is proved in Ref. 307. THEOREM 11.6 The star graph Sn is (n − 3)-edge fault-tolerant Hamiltonian for n ≥ 3. Again, we have the following corollary. COROLLARY 11.4 The graph X(Sn , V ) is an optimal (n − 3)-fault-tolerant Hamiltonian and vertex-symmetric graph with n · n! vertices, degree (n − 1), and diameter 23(n − 1)/2 for n ≥ 3. With Corollary 11.2, we can easily obtain other optimal k-fault-tolerant Hamiltonian graphs from an known optimal k-fault-tolerant Hamiltonian graph by (k + 2)node expansions on a vertex of degree k + 2. Note that the complete graph Kk+3 of k + 3 vertices is (k + 2)-regular and is the smallest optimal k-fault-tolerant Hamiltonian graph. The graphs obtained by a sequence of (k + 2)-node expansions from Kk+3 are also (k + 2)-regular, and thus optimal k-fault-tolerant Hamiltonian. One
ch011.tex
30/6/2008
18: 45
Page 177
Optimal k -Fault-Tolerant Hamiltonian Graphs r
177
r
r
B(1, 1)
B(1, 2)
B(1, 3)
FIGURE 11.2 The graphs B(1, 1), B(1, 2), and B(1, 3).
possible sequence of (k + 2)-node expansions to construct the optimal k-fault-tolerant Hamiltonian graphs B(k, s) is as follows: Procedure B(k, s) 1. 2. 3. 4. 5. 6.
G = Kk+3 pick any vertex r as the root of G for i = 1 to s − 1 do B = {v | d(v, r) = i} For all v ∈ B G = X(G, v)
The graphs B(1, 1), B(1, 2), and B(1, 3) are shown in Figure 11.2. The vertex labeled r indicates the root assigned by Procedure B(k, s). It can be verified that the number of vertices in B(k, s) is [(k + 2)(k + 1)s − 2]/k. Moreover, the distance between a vertex v to the root r is at most s. Therefore, the diameter of B(k, s) is at most 2s. Thus, we have constructed a family of optimal k-fault-tolerant Hamiltonian graphs with diameter 2 logk+1 n − c. Now, we concentrate on k = 1 and present some examples of cubic 1-Hamiltonian graphs. Let m be an even integer. Harary and Hayes [139,140] proposed a family of cubic 1-fault-tolerant Hamiltonian graphs, denoted by H(m) for m ≥ 4, where V (H(m)) = {0, 1, 2, . . . , m − 1} and E(H(m)) = {(i, i + 1) | 0 ≤ i ≤ m − 1} ∪ {(0, m/2), (0, m − 1)} ∪ {(i, m − i) | 1 ≤ i ≤ m/2 − 1}. Examples of H(4) and H(8) are shown in Figure 11.3. Note that H(4) is indeed a complete graph K4 , which is the smallest 1-fault-tolerant Hamiltonian graph. Mukhopadhyaya and Sinha [256] proposed another family of cubic 1-fault-tolerant Hamiltonian graphs, denoted by M(m) with m even and m ≥ 4. Let m ≥ 4 be an integer and t be a nonnegative integer. To define M(m), we first introduce MS(i, t), as illustrated in Figure 11.4, which is defined as follows: r l V (MS(i, t)) = xi,j | 1 ≤ j ≤ t ∪ xi,j | 1 ≤ j ≤ t ∪ {yi , zi } l l r r | 1 < j ≤ t ∪ xi,j |1≤j ≤t−1 , xi,j−1 , xi,j+1 E(MS(i, t)) = xi,j l r l r ∪ xi,j , xi,j , yi , (yi , zi ) , yi , xi,1 | 1 ≤ j ≤ t ∪ xi,1
ch011.tex
30/6/2008
18: 45
Page 178
178
Graph Theory and Interconnection Networks 0
0 1
1
3
7
6
2
5
3 2
4
H(4)
H(8)
FIGURE 11.3 The graphs H(m).
zi
yi MS(i, 0)
zi
r xi,3l x i,2l x l y xi,1r xi,2r xi,3 i,1 i
MS(i, 3)
FIGURE 11.4 The graphs MS(i, t).
It can be verified that MS(i, t), for t ≥ 2, is isomorphic to the graph obtained from performing a 3-node expansion on the vertex yi of MS(i, t − 1). The graph l = xr M(m) for m even is constructed as follows (for convenience, we write yi = xi,0 i,0 if t = 0): 1. Suppose that m = 6t + 4. Then M(m) is constructed from three MS(i, t) for all 0 ≤ i ≤ 2 by identifying z1 , z2 , and z3 into a single vertex z and adding the l , x r ), (x l , x r ), and (x l , x r ). edges (x0,t 1,t 1,t 2,t 2,t 0,t 2. Suppose that m = 6t + 6. Then M(m) is constructed from MS(0, t + 1), MS(1, t), and MS(2, t) by identifying z1 , z2 , and z3 into a single vertex z l r ), (x l , x r ), and (x l , x r and adding the edges (x0,t+1 , x1,t 1,t 2,t 2,t 0,t+1 ). 3. Suppose that m = 6t + 8. Then M(m) is constructed from MS(0, t + 1), MS(1, t + 1), and MS(2, t) by identifying z1 , z2 , and z3 into a single verl r l r ), and (x l , x r tex z and adding the edges (x0,t+1 , x1,t+1 ), (x1,t+1 , x2,t 2,t 0,t+1 ). See Figure 11.5. Note that M(4) is indeed a complete graph K4 . Wang et al. [333] also presented a family of 1-fault-tolerant Hamiltonian graphs W (m), as illustrated in Figure 11.6, which is constructed from MS(i, m) for 0 ≤ i ≤ 2m l r ) by joining all zi with a cycle z0 , z1 , . . . , z2m , z0 and adding edges (x2m,m , x0,m l , xr and (xi,m i+1,m ) for all 0 ≤ i ≤ 2m − 1. Let D(m) denote the graph obtained from
ch011.tex
30/6/2008
18: 45
Page 179
Optimal k -Fault-Tolerant Hamiltonian Graphs
179
y0 r x0,2
y0
r x 0,1
l x 0,1 l x 0,2
r x 0,3
l x 0,3
l x2,2
z
r x 1,2
z
l x 2,1
y1
y2
r x1,1
y1
y2 r x 2,1
l x1,2
r x 2,2
M(4)
x l1,1
M(18)
FIGURE 11.5 The graphs M(m).
r y0 x l x 0,1 r 0,1 l x 0,2 x0,2 l x4,2 l x 4,1 y4 r x4,1
x r4,2 l x3,2 l x3,1 y3
z0 z4
r x 1,2 r x1,1 y1
z1 z2
z3
r x 3,1
x
l x1,1 l x1,2
r 3,2
l l 2,1 2,2
x x
r 2,2 r 2,1
x
y2
x
W(2) FIGURE 11.6 The graph W (2).
MS(i, 0) for 0 ≤ i ≤ 2m by joining all zi to yi with cycles z0 , z1 , . . . , z2m , z0 and
y0 , y1 , . . . , y2m , y0 , respectively. Note that H(m) with m even and m ≥ 4 can be constructed from K4 by a sequence of node expansion as illustrated in Figure 11.7b; M(m) with m even and m ≥ 4 can be constructed from K4 by a sequence of node expansions as illustrated in Figure 11.7d; and W (m) with any integer m can be constructed from Dm = C2m+1 × K2 by a sequence of node expansions as illustrated in Figure 11.7f. The family of 1-fault-tolerant Hamiltonian graphs {B(1, s) | s is a positive integer} is called Christmas tree [182]. Obviously, B(1, 1) = K4 and B(1, s) can be constructed from K4 by a sequence of node expansions. Let n be the number of vertices in a graph. We note that the diameter of H(m) is n n4 + 1 if n ≥ 6 and H(4) = 1, the diameter √ of M(m) is 6 + 2 if n ≥ 8, M(6) = 2, and M(4) = 1, the diameter of W (m) is O( n), and diameter for B(1, s) is 2 log2 n − c. It is interesting to find other cubic 1-fault-tolerant Hamiltonian graphs with smaller diameters.
ch011.tex
30/6/2008
18: 45
Page 180
180
Graph Theory and Interconnection Networks
G1
X(G41,v0)
X(K4,v0)
y0
(a1)
2
G11
K4
H8
v1
v2
(a2)
M16
z0
2
1
K4
G2
G2
z1
y0
X(K4,v0)
W30
x1 (b2)
G30
x2 G32
G31
a0
a2
a1 b0
e0
b1
e1
X(G30, U0)
d0
(c1 )
y2
X(G21,v1)
x0
(b1)
z2
y1
c0
X(G31, U1)
d1
c1
b2
e2
d2
c2
(c2)
FIGURE 11.7 Illustrations of sequences of node expansions.
11.3
OTHER CONSTRUCTION METHODS
The operations G0 ⊕ G1 and G(G0 , G1 , . . . , Gr−1 ; M) can be used in the construction of optimal fault-tolerant Hamiltonian graphs. As we have seen in Chapter 7 twisted cubes, crossed cubes, and Möbius cubes are recursively constructed with this scheme. Yet, we need another concept called fault-tolerant Hamiltonian-connected. A graph G is called l-fault-tolerant Hamiltonian-connected if it remains Hamiltonianconnected after removing at most l vertices or edges. The fault-tolerant Hamiltonian connectivity, Hfκ (G), is defined to be the maximum integer l such that G − F remains Hamiltonian-connected for every F ⊂ V (G) ∪ E(G) with |F| ≤ l if G is Hamiltonianconnected, and undefined if otherwise. Obviously, Hfκ (G) ≤ δ(G) − 3. A r-regular graph G is optimal fault-tolerant Hamiltonian-connected if Hfκ (G) = r − 3. The following theorem is proved by Ore [261]. THEOREM 11.7 (Ore [261]) Assume that G is an n-vertex graph with n ≥ 4. Then G is Hamiltonian-connected if e ≤ n − 4.
ch011.tex
30/6/2008
18: 45
Page 181
Optimal k -Fault-Tolerant Hamiltonian Graphs
181
LEMMA 11.4 Assume that n ≥ 4. Then Kn is (n − 4)-fault-tolerant Hamiltonianconnected. We say a k-regular graph is super fault-tolerant Hamiltonian if Hf (G) = k − 2 and Hfκ (G) = k − 3. Twisted cubes [180], crossed cubes [178], and Möbius cubes [179] are proved to be super fault-tolerant Hamiltonian. Chen et al. [54] observed the insight of the proofs of the aforementioned results and proposed the following result. A vertex v is healthy if a vertex v is not faulty. An edge e (respectively, a matching edge e) is healthy if both edge e and its two endpoints are not faulty. We use Fi to denote the set of faults in Gi for i = 0, 1. Let fi = |Fi | for i = 0, 1. Consider an interconnection network G, and suppose that there are faults in it. Let FG be the set of faults in G, and fG = |FG |. Suppose that G is k-fault-tolerant Hamiltonian (k-fault-tolerant Hamiltonian-connected, respectively) and fG ≤ k. Suppose that u is a healthy vertex in G. It is clear that some of the edges incident to u are on a Hamiltonian cycle (Hamiltonian path, respectively) of G − FG , but not every edge incident to u is on some Hamiltonian cycle (Hamiltonian path, respectively) of G − FG . LEMMA 11.5 Suppose that G is a k-fault-tolerant Hamiltonian graph, FG is a set of faults in G with |FG | = fG ≤ k, and u is a healthy vertex in G. Then there are at least k − fG + 2 edges incident to vertex u, such that each one of them is on some Hamiltonian cycle in G − FG . Proof: Since G is k-fault-tolerant Hamiltonian and there are fG faults in G, G − FG is still Hamiltonian even if we add k − fG more faults to G − FG . Suppose fG < k. Let C be a Hamiltonian cycle in G − FG , and let e be an edge on C incident to vertex u. Deleting edge e, G − FG − {e} still contains a Hamiltonian cycle. Repeating this process k − fG times, we find k − fG + 2 edges incident to vertex u, and each one of them is on some Hamiltonian cycle in G − FG . LEMMA 11.6 Suppose that G is a k-fault-tolerant Hamiltonian-connected graph, FG is a set of faults in G with |FG | = fG ≤ k, and {x, y, u} are three distinct healthy vertices in G. Then there are at least k − fG + 2 edges incident to vertex u, such that each one of them is on some Hamiltonian path from x to y in G − FG . Proof: Since G is k-fault-tolerant Hamiltonian-connected and there are fG faults in G, G − FG is still Hamiltonian-connected even if we add k − fG more faults to G − FG . Suppose that fG < k. Let P be a Hamiltonian path of G − FG joining x to y, and let e be an edge on P and incident to vertex u. Deleting edge e, G − FG − {e} still contains a Hamiltonian path joining x to y. Repeating this process k − fG times, we find k − fG + 2 edges incident to vertex u, and each one of them is on some Hamiltonian path of G − FG joining x to y. LEMMA 11.7 Suppose that G0 and G1 are two k-regular graphs with the same number of vertices. Suppose that the total number of faults in G0 ⊕ G1 is not greater than k. There exists at least one healthy matching edge (z, z) between G0 and G1 .
ch011.tex
30/6/2008
18: 45
Page 182
182
Graph Theory and Interconnection Networks
LEMMA 11.8 Suppose that G0 and G1 are two k-regular graphs with the same number of vertices. Let x and y be two healthy vertices in G0 ⊕ G1 . Suppose that the total number of faults in G0 ⊕ G1 is not greater than k − 2. There exists at least one healthy matching edge (z, z) between G0 and G1 such that {x, y} ∩ {z, z} = ∅. The Lemmas 11.7 and 11.8 result immediately from the fact that |V (G0 )| = |V (G1 )| ≥ k + 1. OBSERVATION: To prove that a graph G is l-fault-tolerant Hamiltonian (respectively l-fault-tolerant Hamiltonian-connected), it suffices to show that G − FG is Hamiltonian (respectively Hamiltonian-connected) for any faulty set FG ⊂ V (G) ∪ E(G) with |FG | = l. Suppose that the total number of faults |FG | is strictly less than l. We may arbitrarily designate l − |FG | healthy edges as faulty to make exactly l faults. THEOREM 11.8 Assume that k ≥ 4. Suppose that G0 and G1 are two (k − 2)-faulttolerant Hamiltonian and (k − 3)-fault-tolerant Hamiltonian-connected graphs with |V (G0 )| = |V (G1 )|. Then the graph G = G0 ⊕ G1 is (k − 1)-fault-tolerant Hamiltonian. Proof: Obviously, δ(G) ≥ (k + 1). To prove that G0 ⊕ G1 is (k − 1)-fault-tolerant Hamiltonian, it suffices to show that G − F is Hamiltonian for any faulty set F ⊂ V (G) ∪ E(G) with |F| = k − 1. Case 1. All (k − 1) faults are in the same component. We may assume without loss of generality that all faults are in G0 . Since G0 is (k − 2)-fault-tolerant Hamiltonian and f0 = k − 1, there exists a Hamiltonian path P0 of G0 − F0 joining x to y. Since f1 = 0 and G1 is (k − 3)-fault-tolerant Hamiltonian-connected, there exists a Hamiltonian path P1 on G1 joining y to x. Therefore, x, P0 , y, y, P1 , x, x forms a Hamiltonian cycle of G − F. See Figure 11.8a. Case 2. Not all k − 1 faults are in the same component. Without loss of generality, we may assume that f1 ≤ f0 ≤ k − 2. Since k ≥ 4, G1 − F1 is Hamiltonian-connected. By Lemma 11.7, there exists a healthy matching edge between G0 and G1 ; say, (x, x). Now, we claim that there exists a vertex y incident to x such that (x, y) is on a Hamiltonian cycle in G0 − F0 , and the edge (y, y) is healthy. Obviously, such a Hamiltonian cycle can be written as x, P0 , y, x. By Lemma 11.5, among all the healthy vertices in G0 − F0 incident to x, there are at least (k − 2) − f0 + 2 = k − f0 edges, which are on some Hamiltonian cycle in G0
G1 x– y–
x y (a)
FIGURE 11.8 Illustrations of Theorem 11.8.
G0
G1 x– y–
x y (b)
ch011.tex
30/6/2008
18: 45
Page 183
Optimal k -Fault-Tolerant Hamiltonian Graphs
183
G0 − F0 . Of all these k − f0 edges, there is at least one edge—say, (x, y)—such that y, y, and (y, y) are healthy. Otherwise, G would contain at least f0 + (k − f0 ) = k faults, which would contradict the fact that the total number of faults is k − 1. Thus, our claim holds. Since G1 − F1 is Hamiltonian-connected, there exists a Hamiltonian path P1 joining y to x. Obviously, x, P0 , y, y, P1 , x, x forms a Hamiltonian cycle of G − F. See Figure 11.8b. This completes the proof of this theorem. THEOREM 11.9 Assume that k ≥ 5. Suppose that G0 and G1 are two (k − 2)-faulttolerant Hamiltonian and (k − 3)-fault-tolerant Hamiltonian-connected graphs with |V (G0 )| = |V (G1 )|. Then the graph G = G0 ⊕ G1 is (k − 2)-fault-tolerant Hamiltonianconnected. Proof: Let F be a set of faults with F ⊂ V (G) ∪ E(G) and |F| = k − 2. Let x and y be two healthy vertices in G. To prove this theorem, we need to find a Hamiltonian path of G − F joining x and y. The proof is classified into the following two cases: Case 1. x and y are not in the same component. Without loss of generality, we may assume that x is in G0 , and y is in G1 . This case can be further divided into two subcases. Case 1.1. All k − 2 faults are in the same component. Without loss of generality, we may assume that all k − 2 faults are in G0 . Thus, there is a Hamiltonian cycle in G0 − F0 . On this cycle, there are two vertices incident to x. One of these two vertices is not y; say, z. Obviously, this cycle can be written as x, P0 , z, x. Since G1 is Hamiltonian-connected, there is a Hamiltonian path P1 of G1 joining z to y. Thus,
x, P0 , z, z, P1 , y forms a Hamiltonian path of G − F joining x to y. See Figure 11.9a. Case 1.2. Not all k − 2 faults are in the same component. By Lemma 11.8, we can find a healthy matching edge (z, z) between G0 and G1 where z ∈ V (G0 ) − {x} and z ∈ V (G1 ) − {y}. Since G0 and G1 are (k − 3)-fault-tolerant Hamiltonian-connected, there is a Hamiltonian path P0 of G0 − F0 joining x to z, and there is a Hamiltonian path P1 of G1 − F1 joining z to y. Obviously, x, P0 , z, z, P1 , y forms a Hamiltonian path of G − F joining x to y. See Figure 11.9b. G0
G1
G0
G1
G1
x
y
x
y
y
w
w–
z
z–
z
z–
x
z
z–
(a)
(b)
G0 x
G0
G1 y
y–
z
z–
(d)
G0
(c) G1
x
G0
G1
w
– w
y
z
z
z–
x
w
z– – w
y
(e)
FIGURE 11.9 Illustrations of Theorem 11.9.
(f)
ch011.tex
184
30/6/2008
18: 45
Page 184
Graph Theory and Interconnection Networks
Case 2. x and y are in the same component. Without loss of generality, we may assume that x and y are in G0 . We divide this case into three subcases. Case 2.1. All k − 2 faults are in G0 . Thus, G0 is (k − 3)-Hamiltonian-connected and f0 = k − 2. Let g be a faulty edge or a faulty vertex. In G0 − (F0 − {g}), there is a Hamiltonian path P of G0 − (F0 − {g}) joining x and y. Removing the fault g, this Hamiltonian path is separated into two subpaths; say, x, P01 , z and w, P02 , y, which cover all the vertices of G0 − F0 . Obviously, there exists a Hamiltonian path P1 of G1 joining z to w. Thus, x, P01 , z, z, P1 , w, w, P02 , y forms a Hamiltonian path of G − F joining x to y. See Figure 11.9c. Case 2.2. All k − 2 faults are in G1 . This subcase can be further divided into two subcases. Case 2.2.1. At least one of x and y is healthy. Without loss of generality, we may assume that y is healthy. Since f1 = k − 2, there exists a Hamiltonian cycle C of G1 − F1 . On this cycle C, there are two vertices incident to vertex y. At least one of these two vertices is not x; say, z. We can write C as z, P1 , y, z. Since k ≥ 5, there exists a Hamiltonian path P0 of G0 − {y} joining x to z. Obviously, x, P0 , z, z, P1 , y, y forms a Hamiltonian path of G − F joining x to y. See Figure 11.9d. Case 2.2.2. Both x and y are faulty. In G0 , the number of healthy edges incident to y is k and f1 = k − 2. There exists a healthy vertex z incident to y such that z = x and z is healthy. Since f1 = k − 2, there exists a Hamiltonian cycle of G1 − F1 . Let w be a vertex on this cycle incident to z. Obviously, C can be written as w, P1 , z, w. Since k ≥ 5, there exists a Hamiltonian path P0 of G0 − {z, y} joining x to w. Obviously, x, P0 , w, w, P1 , z, z, y forms a Hamiltonian path of G − F joining x to y. See Figure 11.9e. Case 2.3. Neither F ⊂ V (G0 ) ∪ E(G0 ) nor F ⊂ V (G1 ) ∪ E(G1 ). Since |F| = k − 2 and not all faults are in one component, we have f0 ≤ k − 3 and f1 ≤ k − 3. Consequently, both G0 − F0 and G1 − F1 are Hamiltonian-connected. By Lemma 11.8, there is at least one healthy matching edge between G0 and G1 —say, (z, z)—such that z ∈ V (G0 ) − {x, y}. By Lemma 11.6, there are at least (k − 3) − f0 + 2 = k − 1 − f0 edges of G0 − F0 incident to vertex z such that each one of them is on some Hamiltonian path in G0 − F0 joining x to y. Among these k − 1 − f0 edges, we claim that there is at least one—say, (z, w)—such that w, w, and (w, w) are healthy. If this is not true, |F| = f0 + (|F| − f0 ) ≥ f0 + (k − 1 − f0 ) = k − 1, which contradicts the fact that |F| = k − 2. Thus, this Hamiltonian path can be written as x, P01 , z, w, P02 , y. Since f1 ≤ k − 3, there is a Hamiltonian path P1 of G1 − F1 joining z to w. Therefore, x, P01 , z, z, P2 , w, w, P02 , y forms a Hamiltonian path of G − F joining x to y. See Figure 11.9f. Thus, this theorem is proved. With Theorems 11.8 and 11.9, we have the following corollary. COROLLARY 11.5 Assume that G0 and G1 are k-regular and super fault-tolerant Hamiltonian where k ≥ 5 and |V (G0 )| = |V (G1 )|. Then G0 ⊕ G1 is (k + 1)-regular super fault-tolerant Hamiltonian.
ch011.tex
30/6/2008
18: 45
Page 185
Optimal k -Fault-Tolerant Hamiltonian Graphs
185
Some recursive circulant graphs [302] and some k-ary n-cubes [349] are proved to be super fault-tolerant Hamiltonian. These graphs can be recursively constructed using the operation G(G0 , G1 , . . . , Gr−1 ; M) discussed in Chapter 7. Again, Chen et al. [53] observed that the insight of the proofs of the aforementioned results can be summarized as follows. THEOREM 11.10 Assume that G0 , G1 , . . . , Gr−1 are (k − 2)-fault-tolerant Hamiltonian and (k − 3)-fault-tolerant Hamiltonian graphs with the same number of vertices, where r ≥ 3 and k ≥ 5. Then graph G(G0 , G1 , . . . , Gr−1 ; M) is k-fault-tolerant Hamiltonian. THEOREM 11.11 Assume that G0 , G1 , . . . , Gr−1 are (k − 2)-fault-tolerant Hamiltonian and (k − 3)-fault-tolerant Hamiltonian graphs with the same number of vertices, where r ≥ 3 and k ≥ 5. Then G(G0 , G1 , . . . , Gr−1 ; M) is a (k − 1)-fault-tolerant Hamiltonian-connected graph. COROLLARY 11.6 Assume that G0 , G1 , . . . , Gr−1 are k-regular and super faulttolerant Hamiltonian with the same number of vertices, where r ≥ 3 and k ≥ 5. Then G(G0 , G1 , . . . , Gr−1 ; M) is (k + 2)-regular super fault-tolerant Hamiltonian.
11.4
FAULT-TOLERANT HAMILTONICITY AND FAULT-TOLERANT HAMILTONIAN CONNECTIVITY OF THE FOLDED PETERSEN CUBE NETWORKS
The Petersen graph is a 3-regular graph with 10 vertices of diameter 2. Compared to this graph, the three-dimensional hypercube is a 3-regular graph with 8 vertices and of diameter 3. It has more vertices as compared to the three-dimensional hypercube and a smaller diameter. We call it the simple Petersen graph. As an extension, Öhring and Das [260] introduce the k-dimensional folded Petersen graph, FPk , to be Pk . It is observed that FPk possesses qualities of a good network topology for distributed systems with large number of sites, as it accommodates 10k vertices and is a symmetric, 3k-regular graph of diameter 2k. Being an iterative Cartesian product on the Petersen graph, it is scalable. Moreover, Öhring and Das [260] define the folded Petersen cube networks FPQn,k as Qn × Pk . In particular, FPQ0,k = Pk and FPQn,0 = Qn . The graph FPQ0,2 = P2 is shown in Figure 11.10b. In Ref. 260, it is proved that a number of standard topologies, such as linear arrays, rings, meshes, hypercubes, and so on, can be embedded into it. Recently, many studies on the folded Petersen cube networks have been published due to its favorite properties [79,260,280]. Lin et al. [228] prove that Hf (FPQn,k ) = n + 3k − 2 and Hfκ (FPQn,k ) = n + 3k − 3 if (n, k) ∈ / {(0, 1)} ∪ {(n, 0) | n is a positive integer}. Moreover, FPQ0,1 is neither Hamiltonian nor Hamiltonian-connected. Furthermore, FPQn,0 is Hamiltonian but not Hamiltonian-connected if n > 1; FPQ1,0 is Hamiltonian-connected but not Hamiltonian. The basic idea is applying Theorems 11.8 through 11.11.
ch011.tex
30/6/2008
18: 45
Page 186
186
Graph Theory and Interconnection Networks
(b)
(a)
FIGURE 11.10 (a) The Petersen graph P and (b) a schematic representation of P2 .
(a)
(b)
(c)
(d)
FIGURE 11.11 (a) A copy of C5 , (b) another copy of C5 , (c) the matching M, and (d) the Petersen graph P.
We begin with the following observation. The Petersen graph P can be viewed as C5 ⊕ C5 as shown in Figure 11.11. Moreover, C5 × C5 can be viewed as G(C5 , C5 , C5 , C5 , C5 ; M). Furthermore, P × C5 can be viewed as (C5 × C5 ) ⊕ (C5 × C5 ). (See Figure 11.12 for illustration.) Thus, P2 can be viewed as (P × C5 ) ⊕ (P × C5 ). Theorems 11.8 through 11.11 are useful to construct super fault-tolerant Hamiltonian graphs. However, the drawback of these theorems are the restriction of k being rather high.Yet, we have some difficulty in improving upon Theorem 11.9 by including the case k = 4. For this reason, we introduce the concept of the extendable 4-regular super fault-tolerant Hamiltonian graph. A 4-regular super fault-tolerant Hamiltonian graph H is extendable if H − {x, y} remains Hamiltonian-connected for any x and y such that (x, y) ∈ E(H). By brute force, we can prove the following lemma. LEMMA 11.9 Both P × Q1 and C5 × C5 are extendable 4-regular super faulttolerant Hamiltonian graphs. Yet, C5 × C4 is 4-regular super fault-tolerant Hamiltonian but not extendable. THEOREM 11.12 Suppose that G0 and G1 are extendable 4-regular super faulttolerant Hamiltonian graphs with |V (G0 )| = |V (G1 )|. Then G0 ⊕ G1 is 5-regular super fault-tolerant Hamiltonian.
ch011.tex
30/6/2008
18: 45
Page 187
Optimal k -Fault-Tolerant Hamiltonian Graphs
(a)
(c)
187
(b)
(d)
FIGURE 11.12 (a) A copy of C5 × C5 , (b) another copy of C5 × C5 , (c) the matching M, and (d) P × C5 .
Proof: Since Gi is 4-regular, |V (Gi )| ≥ 5. Thus G0 ⊕ G1 is a 5-regular graph. By Theorem 11.8, G0 ⊕ G1 is 3-fault-tolerant Hamiltonian. Then, we need to prove G0 ⊕ G1 is 2-fault-tolerant Hamiltonian-connected. Let F be any subset of V (G0 ⊕ G1 ) ∪ E(G0 ⊕ G1 ) with |F| ≤ 2. We need to find a Hamiltonian path in G0 ⊕ G1 − F between any two different vertices u and v in V (G0 ⊕ G1 ) − F. We can easily follow the proof of Theorem 11.9 to find the corresponding Hamiltonian path except for Case 2.2.2. However, the Hamiltonian path in this case is guaranteed by the term of extendable. LEMMA 11.10 Pk is (3k)-regular super fault-tolerant Hamiltonian if and only if k ≥ 2. Proof: It is known that P is not Hamiltonian. Hence, it is not Hamiltonian-connected. We have observed that P2 can be viewed as (P × C5 ) ⊕ (P × C5 ). Moreover, P × C5 can be viewed as (C5 × C5 ) ⊕ (C5 × C5 ). By Lemma 11.9, C5 × C5 is extendable 4-regular super fault-tolerant Hamiltonian. Applying Theorem 11.12, P × C5 is 5-regular super fault-tolerant Hamiltonian. By Corollary 11.5, P2 is 6-regular super fault-tolerant Hamiltonian. Let k be a positive integer with k ≥ 3. Obviously, Pk can
ch011.tex
30/6/2008
18: 45
Page 188
188
Graph Theory and Interconnection Networks
be viewed as (Pk−1 × C5 ) ⊕ (Pk−1 × C5 ). By Corollary 11.6, Pk−1 × C5 is (3k − 1)regular super fault-tolerant Hamiltonian. By Corollary 11.5, Pk is (3k)-regular super fault-tolerant Hamiltonian. Thus, the lemma is proved. THEOREM 11.13 Hf (FPQn,k) = n +3k −2 and Hfκ (FPQn,k ) = n + 3k −3 if (n, k) ∈ / {(0, 1)} ∪ {(n, 0) | n is a positive integer}. Moreover, FPQ0,1 is neither Hamiltonian nor Hamiltonian-connected. Furthermore, FPQn,0 is Hamiltonian but not Hamiltonianconnected if n > 1; FPQ1,0 is Hamiltonian-connected but not Hamiltonian. Proof: Applying Lemma 11.10, Hf (FPQ0,k ) = 3k − 2 and Hfκ (FPQ0,k ) = 3k − 3 if k ≥ 2. By Lemma 11.9, Hf (FPQ1,1 ) = 2 and Hfκ (FPQ1,1 ) = 1. By Lemma 11.9 and Theorem 11.12, Hf (FPQ2,1 ) = 3 and Hfκ (FPQ2,1 ) = 2. By Corollary 11.5, Hf (FPQn,k ) = n + 3k − 2 and Hfκ (FPQn,k ) = n + 3k − 3 if n ≥ 3 and k ≥ 1. Therefore, / {(0, 1)} ∪ {(n, 0) | n Hf (FPQn,k ) = n + 3k − 2 and Hfκ (FPQn,k ) = n + 3k − 3 if (n, k) ∈ is a positive integer}. FPQ0,1 is the Petersen graph. It is known that P is not Hamiltonian. Thus FPQ0,1 is not Hamiltonian-connected. Note that FPQn,0 is isomorphic to Qn . It is known that Q1 is Hamiltonian-connected but not Hamiltonian. Moreover, Qn is Hamiltonian and there is no Hamiltonian path of Qn joining any two vertices in the same partite set if n ≥ 2. Hence, FPQn,0 is Hamiltonian but not Hamiltonian-connected if n > 1 and FPQ1,0 is Hamiltonian-connected but not Hamiltonian. We believe that our approach in this section can be applied to the same problem on other interconnection networks. Definitely, we can repeatedly apply Theorems 11.8 through 11.11 to obtain the result in this section. However, we need a lot of efforts to check the base cases for the requirement k ≥ 5 in Theorems 11.9 through 11.11. By introducing the concept of the extendable 4-regular super fault-tolerant Hamiltonian graph, all difficulties are solved immediately. Thus, it would be a great improvement if Theorems 11.8 through 11.11 remain true for smaller k. For this reason, Kueng et al. prove that Theorems 11.10 and 11.11 also hold for k = 4 [210]. Let H be the graph shown in Figure 11.13a. Obviously, H is a 3-regular graph. We can confirm that H is 3-regular super fault-tolerant Hamiltonian by brute force. Let G1 and G2 be two copies of H. Let G be the graph shown in Figure 11.13b. Obviously,
5
1
7
4
10
6
3
8
(a)
FIGURE 11.13 (a) The graph H and (b) the graph G.
11
12 9
2 (b)
ch011.tex
30/6/2008
18: 45
Page 189
Optimal k -Fault-Tolerant Hamiltonian Graphs
189
G = G1 ⊕ G2 for some 1-1 connection φ. Again, we can prove that G − {2, 12} is not Hamiltonian by brute force. Thus, G is not 2-fault-tolerant Hamiltonian. Therefore, the bound of k in Theorem 11.8 is optimal.
11.5
FAULT-TOLERANT HAMILTONICITY AND FAULT-TOLERANT HAMILTONIAN CONNECTIVITY OF THE PANCAKE GRAPHS
With the construction schemes of k-fault-tolerant Hamiltonian graphs, we can prove that several interconnection networks are optimal fault-tolerant Hamiltonian. However, we cannot use these construction schemes to construct all the known interconnection networks. However, the idea of combining fault-tolerant Hamiltonian and fault-tolerant Hamiltonian-connected together with the mathematical induction to discuss the fault-tolerant Hamiltonicity of some families of interconnection networks can be used to discuss the fault-tolerant Hamiltonicity of other families of interconnection networks. In this section, we discuss the fault-tolerant Hamiltonicity of the pancake graphs, presented by Hung et al. [181], as an example to illustrate this concept. We will use boldface to denote a vertex of Pn . Hence, u1 , u2 , . . . , un denote a sequence of vertices in Pn . In particular, e denotes the vertex 12 . . . n. Let u = u1 u2 . . . un be any vertex of Pn . We use (u)i to denote the ith component ui of u, and {i} use Pn to denote the ith subgraph of Pn induced by those vertices u with (u)n = i. {i} Obviously, Pn can be decomposed into n vertex disjoint subgraphs Pn for every {i} i ∈ n such that each Pn is isomorphic to Pn−1 . Thus, the pancake graph can be constructed recursively. Let I ⊆ n; we use PnI to denote the subgraph of Pn induced {i} by ∪i ∈ I V (Pn ). By definition, there is exactly one neighbor v of u such that u and v are adjacent through an i-dimensional edge with 2 ≤ i ≤ n. For this reason, we use {(u) } (u)i to denote the unique i-neighbor of u. We have ((u)i )i = u and (u)n ∈ Pn 1 . For {j} {i} 1 ≤ i, j ≤ n and i = j, we use E i,j to denote the set of edges between Pn and Pn . Obviously, we have the following lemmas. LEMMA 11.11 |E i,j | = (n − 2)! for any 1 ≤ i = j ≤ n. LEMMA 11.12 Let u and v be two distinct vertices of Pn with (u)n = (v)n such that d(u, v) ≤ 2. Then ((u)n )n = ((v)n )n . Moreover, {((u)i )1 | 2 ≤ i ≤ n − 1} = n − {(u)1 , (u)n } if n ≥ 3. Let F ⊂ V (Pn ) ∪ E(Pn ) be any faulty set of Pn . We use F i to denote the set {i} {i} F ∩ (V (Pn ) ∪ E(Pn )). Then we set F 0 to denote the set F − ∪ni=1 F i . An edge (u, v) is F-fault if (u, v) ∈ F, u ∈ F, or v ∈ F; and (u, v) is F-fault free if (u, v) is not F-fault. Let H = (V , E ) be a subgraph of Pn . We use F(H) to denote the set (V ∪ E ) ∩ F. LEMMA 11.13 Assume that n ≥ 5 and I = {i1 , i2 , . . . , im } is a subset of n {i} such that |I| = m ≥ 2. Let F ⊂ V (Pn ) ∪ E(Pn ) be any faulty set such that Pn − F i is Hamiltonian-connected for any i ∈ I and there are at least three F-fault free edges in E ij ,ij+1 for any 1 ≤ j < m. Then there exists a Hamiltonian path P = u = x1 , Q1 , y1 , x2 , Q2 , y2 , . . . , xm , Qm , ym = v of PnI − F joining any two
ch011.tex
30/6/2008
18: 45
Page 190
190
Graph Theory and Interconnection Networks {i }
{i }
vertices u and v with u ∈ V (Pn 1 ) − F and v ∈ V (Pn m ) − F such that Qi is a {a } Hamiltonian path of Pn i − F i joining xi to yi for every 1 ≤ i ≤ m. Proof: Let u1 = u and v = vm . Since there are at least three F-fault free edges in E ij ,ij+1 for any 1 ≤ j < m, we can easily choose two different vertices uij and vij+1 {i }
{i }
in Pn j such that (vij , uij+1 ) is F-fault free. Obviously, uij = vij . Since Pn j − F ij is {i }
Hamiltonian-connected for all ij ∈ I, there is a Hamiltonian path Qj of Pn j − F ij joining uij and vij . Thus, ui1 , Q1 , vi1 , ui2 , Q2 , . . . , vim−1 , uim , Qm , vim forms a Hamiltonian path of PnI − F joining u and v. The lemma is proved. LEMMA 11.14 P4 is 1-fault-tolerant Hamiltonian and Hamiltonian-connected. Proof: To prove that P4 is 1-fault-tolerant Hamiltonian we need to prove that P4 − F is Hamiltonian for any F = {f } with f ∈ V (P4 ) ∪ E(P4 ). Without loss of generality, we may assume that f = 1234 if f is a vertex, or f ∈ {(1234, 2134), (1234, 3214), (1234, 4321)} if f is an edge. The corresponding Hamiltonian cycles of P4 − F are listed as follows:
3214, 2314, 4132, 1432, 2341, 4321, 3421, 2431, 1342, 3142, 2413, 4213, 1243, 2143, 3412, 4312, 2134, 3124, 1324, 4231, 3241, 1423, 4123, 3214
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 3142, 4132, 1432, 3412, 2143, 4123, 1423, 2413, 4213, 1243, 3421, 2431, 4231, 3241, 2341, 4321, 1234
1234, 4321, 3421, 2431, 4231, 3241, 2341, 1432, 4132, 3142, 1342, 4312, 3412, 2143, 1243, 4213, 2413, 1423, 4123, 3214, 2314, 1324, 3124, 2134, 1234
1234, 3214, 2314, 4132, 1432, 3412, 4312, 1342, 3142, 2413, 4213, 1243, 2143, 4123, 1423, 3241, 2341, 4321, 3421, 2431, 4231, 1324, 3124, 2134, 1234
To prove that P4 is Hamiltonian-connected, we have to find the Hamiltonian path joining any two vertices u and v. By the symmetric property of P4 , we may assume that u = 1234 and v is any vertex in V (P4 ) − {u}. The corresponding Hamiltonian paths are listed as follows:
1234, 3214, 2314, 1324, 4231, 3241, 2341, 4321, 3421, 2431, 1342, 3142, 4132, 1432, 3412, 4312, 2134, 3124, 4213, 2413, 1423, 4123, 2143, 1243
1234, 3214, 2314, 4132, 3142, 2413, 4213, 1243, 3421, 4321, 2341, 1432, 3412, 2143, 4123, 1423, 3241, 4231, 2431, 1342, 4312, 2134, 3124, 1324
1234, 3214, 2314, 4132, 3142, 2413, 4213, 1243, 2143, 4123, 1423, 3241, 4231, 1324, 3124, 2134, 4312, 3412, 1432, 2341, 4321, 3421, 2431, 1342
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 2431, 4231, 3241, 2341, 4321, 3421, 1243, 4213, 2413, 3142, 4231, 1432, 3412, 2143, 4123, 1423
1234, 3214, 2314, 1324, 3124, 2134, 4312, 3412, 2143, 4123, 1423, 2413, 4213, 1243, 3421, 4321, 2341, 2141, 4231, 2431, 1342, 3142, 4132, 1432
1234, 3214, 2314, 1324, 3124, 4213, 2413, 1423, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 3142, 4132, 1432, 3412, 4312, 2134
1234, 3214, 2314, 1324, 3124, 2134, 4312, 3412, 4132, 4132, 3142, 1342, 2431, 4231, 3241, 2341, 4321, 3421, 1243, 4213, 2413, 1423, 4123, 2143
1234, 3214, 4123, 2143, 1243, 4213, 2413, 1423, 3241, 4231, 1324, 3124, 2134, 4312, 3412, 1432, 2341, 4321, 3421, 2431, 1342, 3142, 4132, 2314
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 2431, 4231, 3241, 1423, 4123, 2143, 3412, 1432, 4132, 3142, 2413, 4213, 1243, 3421, 4321, 2341
1234, 3214, 2314, 1324, 3124, 2134, 4312, 3412, 2143, 4123, 1423, 3241, 4231, 2431, 1342, 3142, 4132, 1432, 2341, 4321, 3421, 1243, 4213, 2413
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 3142, 4132, 1432, 3412, 2143, 4123, 1423, 2413, 4213, 1243, 3421, 4321, 2341, 3214, 4231, 2431
1234, 3214, 4123, 2143, 1243, 4213, 2413, 1423, 3241, 4231, 1324, 2314, 4132, 3142, 1342, 2431, 3421, 4321, 2341, 1432, 3412, 4312, 2134, 3124
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 2431, 4231, 3241, 2341, 4321, 3421, 1243, 4213, 2413, 1423, 4123, 2143, 3412, 1432, 4132, 3142
1234, 2134, 3124, 1324, 2314, 4132, 3142, 1342, 4312, 3412, 1432, 2341, 4321, 3421, 2431, 4231, 3241, 1423, 2413, 4213, 1243, 2143, 4123, 3214
1234, 3214, 2314, 1324, 3124, 2134, 4312, 3412, 2143, 4123, 1423, 2413, 4213, 1243, 3421, 4321, 2341, 1432, 4132, 3142, 1342, 2431, 4231, 3241
1234, 3214, 2314, 1324, 4231, 3241, 2341, 4321, 3421, 2431, 1342, 4312, 2134, 3124, 4213, 1243, 2143, 4123, 1423, 2413, 3142, 4132, 1432, 3412
1234, 3214, 2314, 4132, 1432, 3412, 4312, 2134, 3124, 1324, 4231, 2431, 1342, 3142, 2413, 4213, 1243, 2143, 4123, 1423, 3241, 2341, 4321, 3421
1234, 3214, 2314, 1324, 4231, 3241, 2341, 4321, 3421, 2431, 1342, 4312, 2134, 3124, 4213, 1243, 2143, 3412, 1432, 4132, 3142, 2413, 1423, 4123
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 2431, 4231, 3241, 1423, 4123, 2143, 3412, 1432, 2341, 4321, 3421, 1243, 4213, 2413, 3142, 4132
1234, 3214, 2314, 1324, 3124, 2134, 4312, 3412, 1432, 4132, 3142, 1342, 2431, 4231, 3241, 2341, 4321, 3421, 1243, 2143, 4123, 1423, 2413, 4213
1234, 4321, 3421, 2431, 1342, 3142, 4132, 2314, 3214, 4123, 2143, 1243, 4213, 2413, 1423, 3241, 2341, 1432, 3412, 4312, 2134, 3124, 1324, 4231
1234, 3214, 2314, 4132, 1432, 3412, 2143, 4123, 1423, 3241, 2341, 4321, 3421, 1243, 4213, 2413, 3142, 1342, 2431, 4231, 1324, 3124, 2134, 4312
1234, 3214, 2314, 1324, 3124, 2134, 4312, 1342, 3142, 4132, 1432, 3412, 2143, 4123, 1423, 2413, 4213, 1243, 3421, 2431, 4231, 3241, 2341, 4321
Thus, the lemma is proved.
ch011.tex
30/6/2008
18: 45
Page 191
Optimal k -Fault-Tolerant Hamiltonian Graphs
{i }
Pn 1
n
uf ' v
(u)
n
(v )
z {i } Pn 1 wu
191
y
{i2}
{i }
Pn 1
u
n Pn
(u)
(x)n
n
(w)
(a)
n
(u) P {i2} n x
(b)
(c)
FIGURE 11.14 Illustrations for Lemma 11.15.
LEMMA 11.15 Suppose that n ≥ 5. If Pn−1 is (n − 4)-fault-tolerant Hamiltonian and (n − 5)-fault-tolerant Hamiltonian-connected, then Pn is (n − 3)-fault-tolerant Hamiltonian. Proof: Assume that F is any faulty set of Pn with |F| ≤ n − 3. Since n ≥ 5, |E i,j − F| ≥ (n − 2)! − (n − 3) ≥ 4 for any 1 ≤ i, j ≤ n. Thus, there are at least four {j} {i} F-fault free edges between Pn and Pn for any 1 ≤ i = j ≤ n. We may assume that |F i1 | ≥ |F i2 | ≥ . . . ≥ |F in |. {i }
{i }
Case 1. |F i1 | = n − 3. Thus, F ⊂ Pn 1 . Choose any element f in F(Pn 1 ). By the {i } assumption of this lemma, there exists a Hamiltonian cycle Q of Pn 1 − F + {f }. We may write Q as u, Q1 , v, f , u where f = f if f is incident with Q or f is any edge of Q if otherwise. Obviously, d(u, v) ≤ 2. By Lemma 11.2, ((u)n )n = ((v)n )n . Then by
n − {i1 } joining (u)n and (v)n . Lemma 11.13, there exists a Hamiltonian path Q2 of Pn n n Then u, (u) , Q2 , (v) , v, Q1 , u forms a Hamiltonian cycle of Pn − F. See Figure 11.14a for illustration. Case 2. |F i1 | = n − 4. Thus, |F − F i1 | ≤ 1. Hence, there exists an index i2 such that
n − {i1 ,i2 } )| = 0. Since |E i1 ,i2 − F| ≥ (n − 2)! − (n − 3), there exists an F-fault free |F(Pn {i } n edge (u, (u) ) in E i1 ,i2 such that u ∈ V (Pn 1 ). By the assumption of this lemma, there {i1 } exists a Hamiltonian cycle C1 of Pn − F and there exists a Hamiltonian cycle C2 of {i } Pn 2 − F. We may write C1 as u, w, Q1 , z, u and C2 as (u)n , y, Q2 , x, (u)n . Since d(x, y) ≤ 2 and d(w, z) ≤ 2, by Lemma 11.12 ((x)n )n = ((y)n )n and ((w)n )n = ((z)n )n . Thus, we can choose a vertex from x and y, say x, and we can choose a vertex from w and z, say w, such that ((w)n )n = ((x)n )n and (w, (w)n ) and (x, (x)n ) are F-fault free.
n − {i1 ,i2 } − F joining (w)n By Lemma 11.13, there exists a Hamiltonian path Q3 of Pn n n n n and (x) . Hence, u, (u) , y, Q2 , x, (x) , Q3 , (w) , w, Q1 , u forms a Hamiltonian cycle of Pn − F. See Figure 11.14b for illustration. Case 3. |F i1 | ≤ n − 5. We can choose any F-fault free edge (u, (u)n ) in E i1 ,i2 such {i} that u ∈ V (Pn (i1 )). By the assumption of this lemma, any Pn − F is Hamiltonianconnected for i ∈ n. Then by Lemma 11.13, there exists a Hamiltonian path Q1 of Pn − F joining u and (u)n . Then u, Q1 , (u)n , u forms a Hamiltonian cycle of Pn − F. See Figure 11.14c for illustration.
ch011.tex
30/6/2008
18: 45
Page 192
192
Graph Theory and Interconnection Networks
LEMMA 11.16 Suppose that n ≥ 5. If Pn−1 is (n − 4)-fault-tolerant Hamiltonian and (n − 5)-fault-tolerant Hamiltonian-connected, then Pn is (n − 4)-fault-tolerant Hamiltonian-connected. Proof: Assume that F is any faulty set of Pn with |F| ≤ n − 4. Let u and v be any two arbitrary vertices of Pn − F. We want to construct a Hamiltonian path of Pn − F joining u and v. Obviously, |E i,j − F| ≥ (n − 2)! − (n − 4) ≥ 5 for any 1 ≤ i, j ≤ n with {j} {i} n ≥ 5. Thus, there are at least five F-fault free edges between Pn and Pn for any i i i 2 n 1 1 ≤ i = j ≤ n. We assume that |F | ≥ |F | ≥ . . . ≥ |F |. Case 1.
{i }
|F i1 | = n − 4. Hence, F ⊂ Pn 1 . {i }
Case 1.1. (u)n = (v)n = i1 . Choose any element f in F(Pn 1 ). By the assumption of {i } this lemma, there exists a Hamiltonian path Q of Pn 1 − F + {f } joining u and v. We may write Q as u, Q1 , x, f , y, Q2 , v where f = f if f is incident to Q or f is any edge of Q if otherwise. Obviously, d(x, y) ≤ 2. By Lemma 11.12, ((x)n )n = ((y)n )n . By
n − {i1 } joining (x)n and (y)n . Lemma 11.13, there exists a Hamiltonian path Q3 of Pn n n Then u, Q1 , x, (x) , Q3 , (y) , y, Q2 , v forms a Hamiltonian path of Pn − F joining u to v. See Figure 11.15a for illustration. Case 1.2. (u)n = i1 and (v)n = ij with j = 1. By the assumption of this lemma, there {i } exists a Hamiltonian cycle C1 of Pn 1 − F. We may write C1 as u, y, Q1 , x, u. Since n d(x, y) ≤ 2, by Lemma 11.12 ((x) )n = ((y)n )n . Thus, we can choose a vertex from x and y, say x, such that ((x)n )n = (v)n . By Lemma 11.13, there exists a Hamiltonian path
n − {i1 } joining (x)n and v. Then u, y, Q1 , x, (x)n , Q2 , v forms a Hamiltonian Q2 of Pn path of Pn − F joining u to v. See Figure 11.15b for illustration. Case 1.3. (u)n = (v)n = ij with j = 1. Since there are at least five F-fault free edges in E i1 ,ij , there exists an F-fault free edge (w, (w)n ) in E i1 ,ij such that (w)n = i1 and (w)n = v. By the assumption of this lemma, there exists a Hamiltonian cycle C1 of (a) u v
(b) {i1}
Pn
x
(c)
n
(x)
y u x
f'
y
x w z
{i }
Pn 1
v
n
n
n
(x)
(y)
(d) u
v
(e) {i1}
Pn
x
n
(x)
{i } Pn 1 w z
y
n
n
(w) y n
(z)
(y)
u
v
(f)
y (y)
v
u
u {i }
n
Pn 1
(w)
n
(y)
FIGURE 11.15 Illustrations for Lemma 11.16.
v
{i }
Pn 1
ch011.tex
30/6/2008
18: 45
Page 193
Optimal k -Fault-Tolerant Hamiltonian Graphs
193
{i }
{i }
Pn 1 − F and a Hamiltonian path Q1 of Pn j joining u and v. We may write Q1 as u, Q2 , (w)n , y, Q3 , v and C1 as w, x, Q4 , z, w. Since d(z , z) ≤ 2, by Lemma 11.12 ((z)n )n = ((x)n )n . Thus, we can choose a vertex from z and x, say z, such that
n − {i1 ,ij } ((z)n )n = ((y)n )n . By Lemma 11.13, there exists a Hamiltonian path Q5 of Pn joining (y)n and (z)n . Then u, Q2 , (w)n , w, x, Q4 , z, (z)n , Q5 , (y)n , y, Q3 , v forms a Hamiltonian path of Pn − F joining u and v. See Figure 11.15c for illustration. Case 1.4. (u)n = ij and (v)n = ik with ij , ik and i1 are all distinct. Since there are at least five F-fault free edges in E i1 ,ij , there exists an F-fault free edge (w, (w)n ) in E i1 ,ij such that (w)n = i1 and (w)n = u. By the assumption of this lemma, there {i } {i } exists a Hamiltonian cycle C1 of Pn 1 − F and a Hamiltonian path Q1 of Pn j − F joining u and (w)n . We may write C1 as w, z, Q2 , y, w. Since d(y, z) ≤ 2, by Lemma 11.12, ((y)n )n = ((z)n )n . Thus, we can choose a vertex from y and z, say y, such that
n − {i1 ,ij } ((y)n )n = (v)n . By Lemma 11.13, there exists a Hamiltonian path Q3 of Pn n n n joining (y) and v. Thus, u, Q1 , (w) , w, z, Q2 , y, (y) , Q3 , v forms a Hamiltonian path of Pn − F joining u and v. See Figure 11.15d for illustration. {i}
Case 2. |F i1 | ≤ n − 5. By the assumption of this lemma, Pn is Hamiltonianconnected for every 1 ≤ i ≤ n. Case 2.1.
(u)n = (v)n = ij . By the assumption of this lemma, there exists a Hamilto{i }
nian path Q1 of Pn j − F joining u to v. We claim that there exists an F-fault free edge (x, y) in Q1 such that (x, (x)n ) and (y, (y)n ) are F-fault free. Suppose there is no such {i } {i } {i } edge, |F| ≥ |V (F(Pn j ))| + |(V (Pn j ) − V (F(Pn j ))|/2 ≥ (n − 1)!/2 > n − 3 for n ≥ 5. However, |F| ≤ n − 3. We get a contradiction. Hence, such an edge exists. Write Q1 as u, Q2 , x, y, Q3 , v. Since d(x, y) = 1, by Lemma 11.12 ((x)n )n =
n − {ij } n joining (x)n ((y) )n . By Lemma 11.13, there exists a Hamiltonian path Q4 of Pn n n n to (y) . Then u, Q2 , x, (x) , Q4 , (y) , y, Q3 , v forms a Hamiltonian path of Pn − F joining u to v. See Figure 11.15e for illustration. Case 2.2. (u)n = (v)n . By Lemma 11.13, there exists a Hamiltonian path of Pn − F joining u to v. See Figure 11.15f for illustration. THEOREM 11.14 Let n be a positive integer with n ≥ 4. Then Pn is (n − 3)-faulttolerant Hamiltonian and (n − 4)-fault-tolerant Hamiltonian-connected. Proof: We prove this theorem by induction. The induction base, n = 4, is proved in Lemma 11.14. With Lemmas 11.15 and 11.16, we prove the induction step. Since δ(Pn ) = n − 1, we have the following theorem. THEOREM 11.15 Hf (Pn ) = n − 3 and Hfκ (Pn ) = n − 4 for any positive integer n with n ≥ 4. With a similar but much difficult argument, as for pancake graphs, we can discuss the fault-tolerant Hamiltonicity and the fault-tolerant Hamiltonian-connectivity of the (n, k)-star graph Sn,k .
ch011.tex
30/6/2008
18: 45
Page 194
194
Graph Theory and Interconnection Networks
The (n, k)-star graph is an attractive alternative to the n-star graph [2]. However, the growth of vertices is n! for an n-star graph. In order to remedy this drawback, the (n, k)-star graph is proposed by Chiang and Chen [60]. The (n, k)-star graph is a generalization of the n-star graph. It has two parameters n and k. When k = n − 1, an (n, n − 1)-star graph is isomorphic to an n-star graph, and when k = 1, an (n, 1)-star graph is isomorphic to a complete graph Kn . Let n and k be positive integers with n > k. Let n denote the set {1, 2, . . . , n}. The (n, k)-star graph, denoted by Sn,k , is a graph with the vertex set V (Sn,k ) = {u1 u2 . . . uk | ui ∈ n and ui = uj for i = j}. Adjacency is defined as follows: a vertex u1 u2 . . . ui . . . uk is adjacent to (1) the vertex ui u2 u3 . . . u1 . . . uk , where 2 ≤ i ≤ k (that is, we swap ui with u1 ) and (2) the vertex xu2 u3 . . . uk , where x ∈ n − {ui | 1 ≤ i ≤ k}. The graph S4,2 is shown in Figure 11.16. The edges of type 1 are referred to as i-edges, and the edges of type 2 are referred to as 1-edges. By definition, Sn,k is an (n − 1)-regular graph with n!/(n − k)! vertices. Moreover, it is vertex-transitive. The following theorem is proved by Hsu et al. [172]. THEOREM 11.16 Suppose that n and k are two positive integers with n > k ≥ 1. Then 1. Hf (Sn,k ) = n − 3 and Hfκ (Sn,k ) = n − 4 if n − k ≥ 2 2. Hf (S2,1 ) is undefined and Hfκ (S2,1 ) = 0 3. Hf (Sn,n − 1 ) = 0 and Hfκ (Sn,n − 1 ) is undefined if n > 2 Similarly, we can discuss the fault-tolerant Hamiltonicity and the fault-tolerant Hamiltonian-connectivity of the arrangement graphs. 14
41
4
24
42
34
21
2
12
43
S3,1
32
FIGURE 11.16 S4,2 .
1
S3,1
S3,1
31
3
13
S3,1
23
ch011.tex
30/6/2008
18: 45
Page 195
Optimal k -Fault-Tolerant Hamiltonian Graphs
195
42
12
32
14
34 14
13
31 24
43
41 23
21
FIGURE 11.17 A4,2 .
The arrangement graph [83] was proposed by Day and Tripathi as a generalization of the star graph. It is more flexible in its size than the star graph. Let n and k be positive integers with n > k, the (n, k)-arrangement graph An,k is the graph (V , E) where V = {p | p is an arrangement of k elements out of the n symbols: 1, 2 . . . , n} and E = {(p, q) | p, q ∈ V and p, q differ in exactly one position}. By definition, An,k is a regular graph of degree k(n − k) with n!/(n − k)! vertices. An,1 is isomorphic to the complete graph Kn , and An,n − 1 is isomorphic to the n-dimensional star graph. Moreover, An,k is vertex-symmetric and edge-symmetric [83]. Figure 11.17 illustrates A4,2 . The following theorem is proved by Hsu et al. [173]. THEOREM 11.17 Hf (An,k ) = k(n − k) − 2 and Hfκ (An,k ) = k(n − k) − 3 for any two positive integers with n − k ≥ 2.
11.6
FAULT-TOLERANT HAMILTONICITY AND FAULTTOLERANT HAMILTONIAN CONNECTIVITY OF AUGMENTED CUBES
We have discussed the fault-tolerant Hamiltonicity of several families of interconnection networks through the aid of fault-tolerant Hamiltonian connectivity. Yet we may need other properties to discuss the fault-tolerant Hamiltonicity for other interconnection networks. Hsu et al. [171] discussed the fault-tolerant Hamiltonicity of augmented cubes by adding other properties. The augmented cube AQn , proposed by Choudum and Sunitha [66], is one of the variations of hypercubes. Assume that n ≥ 1 is an integer. The graph of the n-dimensional augmented cube, denoted by AQn , has 2n vertices, each labeled by an n-bit binary string V (AQn ) = {u1 u2 . . . un | ui ∈ {0, 1}}. AQ1 is the graph K2 with vertex set {0, 1}. For n ≥ 2, AQn can be recursively constructed by two copies of AQn−1 ,
ch011.tex
30/6/2008
18: 45
Page 196
196
Graph Theory and Interconnection Networks
0 1 , and by adding 2n edges between AQ0 1 denoted by AQn−1 and AQn−1 n−1 and AQn−1 as follows: 0 ) = {0u u . . . u | u = 0 or 1 for 2 ≤ i ≤ n} and V (AQ1 ) = {1v Let V (AQn−1 2 3 n i 2 n−1 0 is adjacent to v3 . . . vn | vi = 0 or 1 for 2 ≤ i ≤ n}. A vertex u = 0u2 u3 . . . un of AQn−1 1 a vertex v = 1v2 v3 . . . vn of AQn−1 if and only if one of the following cases holds.
1. ui = vi , for 2 ≤ i ≤ n. In this case, (u, v) is called a hypercube edge. We set v = uh . 2. ui = vi , for 2 ≤ i ≤ n. In this case, (u, v) is called a complement edge. We set v = uc . The augmented cubes AQ1 , AQ2 , AQ3 , and AQ4 are illustrated in Figure 11.18. It is proved in Ref. 66 that AQn is a vertex-transitive, (2n − 1)-regular, and (2n − 1)-connected graph with 2n vertices for any positive integer n. Let 0 )} and E c = {(u, uc ) | u ∈ V (AQ0 )}. Obviously, E h and Enh = {(u, uh ) | u ∈ V (AQn−1 n n n−1 0 1 . Let i Enc are two perfect matchings between the vertices of AQn−1 and AQn−1 be any index with 1 ≤ i ≤ n and u = u1 u2 u3 . . . un be a vertex of AQn . We use ui to denote the vertex v = v1 v2 v3 . . . vn such that uj = vj with 1 ≤ j = i ≤ n and ui = vi . Moreover, we use ui∗ to denote the vertex v = v1 v2 v3 . . . vn such that uj = vi for j < i and uj = vj for i ≤ j ≤ n. Obviously, un = un∗ , u1 = uh , uc = u1∗ , and NbdAQn (u) = {ui | 1 ≤ i ≤ n} ∪ {ui∗ | 1 ≤ i < n}. Let En2∗ = {(u, u2∗ ) | u ∈ V (AQn )}. The following lemmas are derived directly from the definition. 0 LEMMA 11.17 Let x and y be any two vertices in AQn−1 with n ≥ 4. Assume that 2∗ h c h c (x, y) ∈ / En . Then x , x , y , and y are all distinct. 0 ). Then (uh , vh ) ∈ E(AQ1 ) and LEMMA 11.18 Suppose that (u, v) ∈ E(AQn−1 n−1 1 c c (u , v ) ∈ E(AQn−1 ).
00 0
(a)
01 0000
0001
0100
0101
0010
0011
0110
0111
1
AQ1 10
(b)
11
AQ2
000
001
100
101
1000
1001
1100
1101
010
011
110
111
1010
1011
1110
1111
(c)
AQ3
(d)
FIGURE 11.18 The augmented cubes AQ1 , AQ2 , AQ3 , and AQ4 .
AQ4
ch011.tex
30/6/2008
18: 45
Page 197
Optimal k -Fault-Tolerant Hamiltonian Graphs
197
0 . Let A(u) = {v | (u, v) ∈ E(AQ0 )} and LEMMA 11.19 Let u be a vertex in AQn−1 n−1 B(u) = {xh | x ∈ A(u)} ∪ {xc | x ∈ A(u)}. Then |A(u)| = 2n − 3 and |B(u)| = 4n − 8.
To discuss the fault-tolerant Hamiltonicity and the fault-tolerant Hamiltonianconnectivity of AQn , we need the following two terms for graphs. A graph G satisfies property 2H if it processes the following condition: Let {w, x} and {y, z} be any two pairs of four distinct vertices of G. There exist two disjoint paths P1 and P2 of G such that (1) P1 joins w to x, (2) P2 joins y to z, and (3) P1 ∪ P2 span G. A Hamiltonian-connected graph G = (V , E) is said to be 1-vertex fault-tolerant Hamiltonian-connected if G − {u} is still Hamiltonian-connected after removing any vertex u ∈ V . LEMMA 11.20 Any 1-vertex fault-tolerant Hamiltonian-connected graph is Hamiltonian-connected. Proof: Assume that G is a 1-vertex fault-tolerant Hamiltonian-connected graph. Obviously, the lemma is true if G has two or three vertices. Assume that G has at least three vertices. Then κ(G) ≥ δ(G) ≥ 3. Let x and y be any two vertex of G. Let z be a neighbor of x such that y = z. Since G is 1-vertex fault-tolerant Hamiltonianconnected, there exists a Hamiltonian path P of G − x joining z to y. Obviously,
x, z, P, y forms a Hamiltonian path between x and y. Hence, G is Hamiltonianconnected. Furthermore, we say a graph G is k-vertex fault-tolerant Hamiltonian-connected if G − F is Hamiltonian-connected for any F ⊂ V with |F| = k. COROLLARY 11.7 Assume that G is a k-vertex fault-tolerant Hamiltonianconnected graph. Then G is r-vertex fault-tolerant Hamiltonian-connected for 0 ≤ r ≤ k. Let F ⊂ V (AQn ) ∪ E(AQn ) be any faulty set of AQn . An edge (u, v) is F-fault free if (u, v) ∈ F, u ∈ F, and v ∈ F; otherwise, it is F-fault. Let H = (V , E ) be a subgraph of AQn . We use F(H) to denote the set (V ∪ E ) ∩ F. By brute force, we have the following three lemmas. LEMMA 11.21 Hf (AQ3 ) = 2. LEMMA 11.22
Hfk (AQ3 ) = 1.
LEMMA 11.23 Hf (AQ4 ) = 5 and Hfk (AQ4 ) = 4. Moreover, AQ4 has property 2H. LEMMA 11.24 Assume that n ≥ 4. Suppose that AQn−1 is 1-vertex fault-tolerant Hamiltonian-connected and has property 2H. Then AQn also has property 2H.
ch011.tex
30/6/2008
18: 45
Page 198
198
Graph Theory and Interconnection Networks
Proof: Suppose that {w, x} and {y, z} are two pairs of four distinct vertices of AQn . We are going to construct two disjoint spanning paths R1 and R2 of AQn such that R1 joins w and x and R2 joins y and z. We consider the following four cases: 0 ). With the assumption of this lemma, AQ Case 1. {w, x, y, z} ⊂ V (AQn−1 n−1 has 0 . property 2H. There exist two disjoint paths w, P1 , x and y, P2 , z spanning AQn−1 Without loss of generality, we can assume that l(P1 ) ≤ l(P2 ). Since n ≥ 4, l(P2 ) ≥ 4. 1 ). Then P2 can be written as y, P4 , u, v, z. By Lemma 11.18, (uh , vh ) ∈ E(AQn−1 1 With the assumption of this lemma, AQn−1 is 1-vertex fault-tolerant Hamiltonian1 connected. Then AQn−1 is Hamiltonian-connected. Thus, there exists a Hamiltonian 1 . Then R = w, P , x and R = y, P , u, uh , P , vh , v, z h h path u , P3 , v in AQn−1 1 1 2 4 3 form the desired disjoint spanning paths of AQn . See Figure 11.19a for illustration. 0 ) and z ∈ V (AQ1 ). Let y∗ be a vertex in {yh , yc } − {z}. Case 2. {w, x, y} ⊂ V (AQn−1 n−1 With the assumption of this lemma, there exists a Hamiltonian path y∗ , P2 , z in 1 0 AQn−1 and there exists a Hamiltonian path w, P1 , x in AQn−1 − {y}. Obviously, ∗ R1 = w, P1 , x and R2 = y, y , P2 , z form the desired disjoint spanning paths of AQn . See Figure 11.19b for illustration. 0 ) and {y, z} ⊂ V (AQ1 ). With the assumption of this Case 3. {w, x} ⊂ V (AQn−1 n−1 0 , and there is a Hamiltolemma, there is a Hamiltonian path R1 = w, P1 , x in AQn−1 1 . Then R and R form the desired disjoint spanning nian path R2 = y, P2 , z in AQn−1 1 2 paths of AQn . See Figure 11.19c for illustration. 0 ) and {x, z} ⊂ V (AQ1 ). Case 4. {w, y} ⊂ V (AQn−1 n−1
Suppose that {(w, x), (y, z)} ∩ E(AQn ) = ∅. Without loss of generality, we can 0 ) − {y, zh }. assume that (w, x) ∈ E(AQn ). Obviously, there exists a vertex u in V (AQn−1 With the assumption of this lemma, there exists a Hamiltonian path y, P1 , u of 0 1 − {w} and there exists a Hamiltonian path uh , P2 , z of AQn−1 − {x}. Then AQn−1 h R1 = w, x and R2 = y, P1 , u, u , P2 , z form the desired disjoint spanning paths of AQn . See Figure 11.19d for illustration.
w
y
w u
x
y*
y
y
w
uh x
x
vh
z v
z
z (c)
(b)
(a) w
uh
u
y
x
w*
w z*
z (d)
FIGURE 11.19 Illustrations for Lemma 11.24.
z x
y (e)
ch011.tex
30/6/2008
18: 45
Page 199
Optimal k -Fault-Tolerant Hamiltonian Graphs
199
Suppose that {(w, x), (y, z)} ∩ E(AQn ) = ∅. Let w∗ be a vertex in {wh , wc } − {z} and z∗ be a vertex in {zh , zc } − {z∗ }. Again, there exists a Hamiltonian path w∗ , P1 , x 0 1 − {z}, and there exists a Hamiltonian path y, P2 , z∗ in AQn−1 − {w}. Obviin AQn−1 ∗ ∗ ously, R1 = w, w , P1 , x and R2 = y, P2 , z , z form the desired disjoint spanning paths of AQn . See Figure 11.19e for illustration. Hence, the lemma is proved. LEMMA 11.25 Let n ≥ 5. Assume that AQn−1 is (2n − 5)-fault-tolerant Hamiltonian, (2n − 6)-fault-tolerant Hamiltonian-connected, and has property 2H. Then AQn is (2n − 3)-fault-tolerant Hamiltonian. Proof: Let F be any subset of V (AQn ) ∪ E(AQn ) with |F| ≤ 2n − 3. Without loss 0 )| ≥ |F(AQ1 )|. We are going to construct a of generality, we assume that |F(AQn−1 n−1 Hamiltonian cycle of AQn − F depending on the following cases: 0 )| ≤ 2n − 6. Then AQ0 0 1 1 Case 1. |F(AQn−1 n−1 − F(AQn−1 ) and AQn−1 − F(AQn−1 ) are Hamiltonian-connected. Note that |Enh ∪ Enc | − |F| ≥ 2n − (2n − 3) ≥ 25. There are two distinct F-fault free edges (u, v) and (x, y) such that u and x are in 0 0 ), and v and y are in AQ1 1 AQn−1 − F(AQn−1 n−1 − F(AQn−1 ). By assumption, 0 0 ) and v, P , y in there exist Hamiltonian paths u, P1 , x in AQn−1 − F(AQn−1 2 1 ). Obviously, u, v, P , y, x, P , u forms a Hamiltonian cycle of 1 AQn−1 − F(AQn−1 1 2 AQn − F. See Figure 11.20a for illustration. 0 )| = 2n − 5. Obviously, |F − F(AQ0 )| ≤ 2. Since AQ Case 2. |F(AQn−1 n−1 is n−1 0 (2n − 5)-fault-tolerant Hamiltonian, there is a Hamiltonian cycle C in AQn−1 − 0 n−1 F(AQn−1 ). Note that l(C)/2 ≥ (2 − 2n + 5)/2 > 5. There exists an edge (u, v) in C such that (u, uh ) and (v, vh ) are F-fault free. We can write C as u, P1 , v, u. Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, there is a Hamiltonian 1 1 ). Obviously, u, uh , P , vh , v, P , u forms a path uh , P2 , vh of AQn−1 − F(AQn−1 2 1 Hamiltonian cycle of AQn − F. See Figure 11.20b for illustration.
u
ui
uh
u
v
uih
fi
v
y
x
f1
vh
uh
u
v f1
w f2
x
c u xu
f2
uh
xh
w
w (d)
v hi
(c)
(b)
(a) v
vi
vh
h
(e)
FIGURE 11.20 Illustrations for Lemma 11.25.
vh
v f1
ux f2
wh
uh
vh
uc w h
w (f)
ch011.tex
200
30/6/2008
18: 45
Page 200
Graph Theory and Interconnection Networks
0 )| = 2n − 4. Suppose that there exists a Hamiltonian cycle C of Case 3. |F(AQn−1 0 0 AQn−1 − F(AQn−1 ). As in Case 2, there exists an edge (u, v) in C such that (u, uh ) and (v, vh ) are F-fault free. We can write C as u, P1 , v, u. Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, there is a Hamiltonian path P2 1 ) joining uh and vh . Then u, uh , P , vh , v, P , u forms a 1 of AQn−1 − F(AQn−1 2 1 Hamiltonian cycle of AQn − F. Suppose that there is no Hamiltonian cycle of 0 0 ). Since AQ − F(AQn−1 AQn−1 n−1 is (2n − 5)-fault-tolerant Hamiltonian, there exists 0 0 ) − {f }) for every f ∈ F(AQ0 ). We a Hamiltonian cycle Ci of AQn−1 − (F(AQn−1 i i n−1 0 )| ≥ 6 and |F − F(AQ0 )| ≤ 1, there can write Ci as ui , Pi , vi , fi , ui . Since |F(AQn−1 n−1 exists an index i such that (ui , uih ) and (vi , vih ) are F-fault free. Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, there is a Hamiltonian path Q1 in 1 1 ) joining uh and vh . Obviously, u , uh , Q , vh , v , P , u forms a − F(AQn−1 AQn−1 i i 1 i i i i i i Hamiltonian cycle in AQn − F. See Figure 11.20c for illustration. 0 )| = 2n − 3. Thus, |F − F(AQ0 )| = 0. Let f and f be any two Case 4. |F(AQn−1 1 2 n−1 0 ). Since AQ elements in F(AQn−1 n−1 is (2n − 5)-fault-tolerant Hamiltonian, there 0 0 )− exists a Hamiltonian cycle C = u,f1 , v, P1 , w, f2 , x, P2 , u in AQn−1 − (F(AQn−1 {f1 , f2 }) where f1 = f1 if f1 is on C or f1 is an arbitrary edge of C otherwise and f2 = f2 if f2 is on C or f2 is an arbitrary edge of C otherwise. Without loss of generality, we assume that l(P2 ) ≤ l(P1 ).
Case 4.1. l(P2 ) ≥ 1. Then uh , vh , wh , and xh are distinct. Since AQn−1 has property 1 . 2H, there exist two disjoint spanning paths uh , P3 , vh and wh , P4 , xh in AQn−1 Obviously, u, uh , P3 , vh , v, P1 , w, wh , P4 , xh , x, P2 , u forms a Hamiltonian cycle of AQn − F. See Figure 11.20d for illustration. Case 4.2. l(P2 ) = 0. Then u = x. Moreover w, u, and v are distinct. Obviously, one of the following cases holds: (1) {wh , wc , uh , uc , vh , vc } are all distinct, (2) (wh = vc and wc = vh ), (3) (wh = uc and wc = uh ), and (4) (vh = uc and vc = uh ). Suppose that (1) {wh , wc , uh , uc , vh , vc } are all distinct or (2) (wh = vc and c w = vh ). Since AQn−1 has property 2H, there exist two disjoint spanning paths 1 . Then u, uc , P , vh , v, P , w, wh , P , uh , u
wh , P5 , uh and uc , P6 , vh in AQn−1 6 1 5 forms a Hamiltonian cycle of AQn − F. See Figure 11.20e for illustration. Suppose that (3) (wh = uc and wc = uh ) or (4) (vh = uc and vc = uh ). Without loss of generality, we assume that wh = uc and wc = uh . Since AQn−1 is (2n − 6)fault-tolerant Hamiltonian-connected, there is a Hamiltonian path uh , P7 , vh in 1 − {wh }. Thus u, uh , P7 , vh , v, P1 , w, wh , u forms a Hamiltonian cycle of AQn−1 AQn − F. See Figure 11.20f for illustration. This completes the proof of the lemma. LEMMA 11.26 Let n ≥ 5. Assume that AQn−1 is (2n − 5)-fault-tolerant Hamiltonian, (2n − 6)-fault-tolerant Hamiltonian-connected, and has property 2H. Then AQn is (2n − 4)-fault-tolerant Hamiltonian-connected. Proof: Let F be any subset of V (AQn ) ∪ E(AQn ) with |F| ≤ 2n − 4. Without loss 0 )| ≥ |F(AQ1 )|. We need to construct a of generality, we can assume that |F(AQn−1 n−1
ch011.tex
30/6/2008
18: 45
Page 201
Optimal k -Fault-Tolerant Hamiltonian Graphs
201
Hamiltonian path joining u and v in AQn − F for any two different vertices u and v ∈ V (AQn ) − F. 0 )| ≤ 2n − 6. Since AQ Case 1. |F(AQn−1 n−1 is (2n − 6)-fault-tolerant Hamiltonian1 0 0 ) and AQ1 connected, both AQn−1 − F(AQn−1 n−1 − F(AQn−1 ) are Hamiltonianconnected. By symmetric property of AQn , we have the following two sub cases: 0 ). Since AQ0 0 Case 1.1. {u, v} ⊂ V (AQn−1 n−1 − F(AQn−1 ) is Hamiltonian-connected, 0 0 ) joining u and v. We there exists a Hamiltonian path P of AQn−1 − F(AQn−1 claim that there exists an edge (w, x) on P such that both (w, wh ) and (x, xh ) are F-fault free. Assume that there is no such edge. Then at least l(P)/2 0 )|, |F| = |F(AQ0 )| + edges in Enh ∪ Enc are F-fault. Since l(P) ≥ 2n−1 − |F(AQn−1 n−1 0 0 n−2 n−1 (2 − |F(AQn−1 )|)/2 ≥ 2 + |F(AQn−1 )|/2 > 2n − 4. We get a contradiction. Hence, such an edge exists as claimed. We can write P as u, P1 , w, x, P2 , v. 1 1 ) is also Hamiltonian-connected, there is a Hamiltonian path Since AQn−1 − F(AQn−1 1 1 ). Obviously, u, P , w, wh , P , xh , x, P , v forms a h h
w , P3 , x in AQn−1 − F(AQn−1 1 3 2 Hamiltonian path of AQn − F joining u and v. See Figure 11.21a for illustration. 0 1 . Since |F| ≤ 2n − 4 < 2n−1 , there exists an Case 1.2. u ∈ AQn−1 and v ∈ AQn−1 0 ), w = u, and wh = v. Since h F-fault free edge (w, w ) such that w ∈ V (AQn−1 AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, there is a Hamiltonian path 0 ) and there is a Hamiltonian path wh , P , v in 0 − F(AQn−1
u, P1 , w in AQn−1 2 1 1 ). Obviously, u, P , w, wh , P , v forms a Hamiltonian path of AQn−1 − F(AQn−1 1 2 AQn − F joining u and v. See Figure 11.21b for illustration.
Case 2.
0 )| = 2n − 5. Thus, |F − F(AQ0 )| ≤ 1. |F(AQn−1 n−1
0 ). Assume that there exists a Hamiltonian path P of Case 2.1. u, v ∈ V (AQn−1 0 0 ) joining u and v. Since (l(P) − |F(AQ0 )|)/2 ≥ 2n − 4, there AQn−1 − F(AQn−1 n−1 exists an edge (w, x) in P such that (w, wh ) and (x, xh ) are F-fault free. We can write P as u, P1 , w, x, P2 , v. Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian1 1 ) joining wh and − F(AQn−1 connected, there exists a Hamiltonian path P3 of AQn−1 xh . Therefore, u, P1 , w, wh , P3 , xh , x, P2 , v forms a Hamiltonian path of AQn − F 0 ) 0 joining u and v. Suppose that there is no Hamiltonian path of AQn−1 − F(AQn−1 joining u and v. Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected,
u
v
w
wh
x
xh
wh
w
u (a)
FIGURE 11.21 Illustrations for Case 1 of Lemma 11.26.
v (b)
ch011.tex
30/6/2008
18: 45
Page 202
202
Graph Theory and Interconnection Networks u
v
xi
xih
fi
wi
wih
y* si f
y
v
shi r hi
i
ri
u v w xi i
zih x ih y ih
yi
u (a)
(b)
(c)
FIGURE 11.22 Illustrations for Case 2 of Lemma 11.26.
0 0 ) − {f }) joining u and − (F(AQn−1 there exists a Hamiltonian path Qi of AQn−1 i 0 ). We can write Q as u, P 1 , w , f , x , P 2 , v. Since v for every fi ∈ F(AQn−1 i i i i i i 0 )| = 2n − 5 ≥ 5 and |F − F(AQ0 )| ≤ 1, there exists an index i such |F(AQn−1 n−1 1 is (2n − 6)-fault-tolerant that (wi , wih ) and (xi , xih ) are F-fault free. Since AQn−1 1 1 ) joining Hamiltonian-connected, there is a Hamiltonian path R1 of AQn−1 − F(AQn−1 h h 1 h h 2 wi and xi . Thus, u, Pi , wi , wi , R1 , xi , xi , Pi , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.22a for illustration. 0 ) and v ∈ V (AQ1 ). Let A(v) = {x | (x, v) ∈ E(AQ ) and Case 2.2. u ∈ V (AQn−1 n n−1 1 x ∈ V (AQn−1 )}. Then |A(v)| = 2n − 3. Let B(v) = {yh | y ∈ A(v)} ∪ {yc | y ∈ A(v)}. By Lemma 11.19, |B(v)| = 4n − 8. Since |F| ≤ 2n − 4, there exists a y ∈ A(v) such that either (y, yh ) or (y, yc ), say (y, y∗ ), is F-fault free and y∗ = u. Assume that 0 0 ) joining u and y∗ . Since there exists a Hamiltonian path P of AQn−1 − F(AQn−1 0 )|)/2 ≥ 2n − 4, there exists an edge (w, x) in P such that (w, wh ) (l(P) − |F(AQn−1 h and (x, x ) are F-fault free and wh , xh , and v are distinct. We can write P as
u, P1 , w, x, P2 , y∗ . Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, 1 1 ) − {v, y} joining wh and there exists a Hamiltonian path P3 of AQn−1 − F(AQn−1 h h ∗ h x . Then u, P1 , w, w , P3 , x , x, P2 , y , y, v forms a Hamiltonian path of AQn − F 0 0 ) joining u and v. Assume that there is no Hamiltonian path of AQn−1 − F(AQn−1 ∗ joining u and y . Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, 0 0 ) − {f }) joining u and there exists a Hamiltonian path Qi of AQn−1 − (F(AQn−1 i 0 ). We can write Q as u, P 1 , r , f , s , P 2 , y∗ . Since y∗ for every fi ∈ F(AQn−1 i i i i i i 0 )| = 2n − 5 ≥ 5 and |F − F(AQ0 )| ≤ 1, there exists an index i such that |F(AQn−1 n−1 h 1 is (2n − 6)-fault-tolerant Hamiltonian(ri , ri ) and (si , sih ) are F-fault free. Since AQn−1 1 1 ) − {y, v}) joining rh connected, there is a Hamiltonian path R1 of AQn−1 − (F(AQn−1 i h 1 h h 2 ∗ and si . Then u, Pi , ri , ri , R1 , si , si , Pi , y , y, v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.22b for illustration. 1 ). Since AQ Case 2.3. {u, v} ⊂ V (AQn−1 n−1 is (2n − 5)-fault-tolerant Hamiltonian, 0 there is a Hamiltonian cycle C of AQn−1 − F. Let A = {1x2 . . . xn | there exists some i and j in {2, . . . , n} such that xi = ui , xj = uj , and xk = uk if k = i, j} and let B = {1x2 . . . xn | there exists some k ∈ {2, . . . , n} such that xk = uk and xi = u¯ i if 1 ) | d 1 (x, u) = 2}. Moreover, i = k}. Thus, A ∪ B is the subset of {x ∈ V (AQn−1 AQn−1 n−1 n−1 n |A ∪ B| = 2 + 1 = 2 . Furthermore, every vertex in A ∪ B has two common
ch011.tex
30/6/2008
18: 45
Page 203
Optimal k -Fault-Tolerant Hamiltonian Graphs
203
1 . Since n − (2n − 4) ≥ 4, there are at least four verneighbors with u in AQn−1 2 tices in A ∪ B, say {xi | 1 ≤ i ≤ 4}, such that xih ∈ C. Let wi be a common neighbor of u and xi . Moreover, let yih and zih be the two neighbors of xih in C. Thus, |{yih | 1 ≤ i ≤ 4} ∪ {zih | 1 ≤ i ≤ 4}| ≥ 6. There exists some i such that one of yih and zih , say yih , satisfying yi ∈ {u, v, wi } and yi is F-fault free. We can write C as
xih , zih , P1 , yih , xih . Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian, there exists 1 1 ) − {u, w , x } joining b and v. Then a Hamiltonian path P2 of AQn−1 − F(AQn−1 i i i
u, wi , xi , xih , zih , P1 , yih , yi , P2 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.22c for illustration. 0 )| = 2n − 4. Thus, |F − F(AQ0 )| = 0. |F(AQn−1 n−1
Case 3.
0 ). Let f and f be any two elements in F(AQ0 ). Since Case 3.1. {u, v} ⊂ V (AQn−1 1 2 n−1 AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, there exists a Hamiltonian 0 0 ) − {f , f }), which may or may not path P joining u and v in AQn−1 − (F(AQn−1 1 2 include f1 or f2 on it. Removing f1 and f2 , the path P is divided into three, two, or one pieces, depending on the cases in which f1 and f2 are on P or not. For the last two cases, we may arbitrarily delete one or two more edges from P to make it into three subpaths. Therefore, without loss of generality, we may write these three subpaths as
u, P1 , w, f1 , x, P2 , y, f2 , z, P3 , v. 1 Assume that l(P2 ) ≥ 1. Then wh , xh , yh , and zh are distinct. Since AQn−1 has prop1 . h h h h erty 2H, there are two disjoint spanning paths w , P4 , x and y , P5 , z in AQn−1 h h h h Obviously, u, P1 , w, w , P4 , x , x, P2 , y, y , P5 , z , z, P3 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.23a for illustration. Assume that l(P2 ) = 0. Then x = y. Assume that {(x, w), (x, z)} ∩ En2∗ = ∅. 1 Then xh , xc , wh , and zh are distinct. Since AQn−1 has property 2H, there 1 . Obvih h c are two disjoint spanning paths w , P6 , x and x , P7 , zh in AQn−1 h h h h ously, u, P1 , w, w , P6 , x , x, P2 , y, y , P7 , z , z, P3 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.23b for illustration. Assume that {(x, w), (x, z)} ∩ En2∗ = ∅. Without loss of generality, we can assume that (x, w) is in En2∗ . Then xh = wc and xc = wh . Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian1 − {xc } joining xh and zh . connected, there is a Hamiltonian path P8 of AQn−1 c h h Obviously, u, P1 , w, x , x, x , P8 , z , z, P3 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.23c for illustration.
z v
u
y
f2
yh
x
xh
f1
w (a)
zh
v
z
h x y xc f2 x f
zh
v
c xy x f2
u
wh
w (b)
FIGURE 11.23 Illustrations for Case 3.1 of Lemma 11.26.
zh
f1
1
wh
z
u
w
x h w c (c)
ch011.tex
30/6/2008
18: 45
Page 204
204
Graph Theory and Interconnection Networks u y
uw
x
f1
x
x
(a)
f1
y
w
xh w
(b)
h
yh v
u y x f1
w
v zh xh wh
(c)
u y
yh x f1
w
v xh wh
(d)
FIGURE 11.24 Illustrations for Case 3.2 of Lemma 11.26. 0 ) and v ∈ V (AQ1 ). Let f be any element in F(AQ0 ). Case 3.2. u ∈ V (AQn−1 1 n−1 n−1 Since AQn−1 is (2n − 5)-fault-tolerant Hamiltonian, there exists a Hamiltonian cycle 0 0 ) − f ) where f = f if f is on cycle − (F(AQn−1 C = u, P1 , w, f1 , x, P2 , u in AQn−1 1 1 1 1 C or f1 is any edge of C otherwise. Without loss of generality, we can assume that l(P1 ) ≤ l(P2 ). Thus, we can rewrite C as u, P1 , w, f1 , x, P3 , y, u. Assume that l(P1 ) = 0. Then u = w. Thus, we can rewrite C as u, f1 , x, P3 , u. Then there exists a vertex x in {xh , xc } − v. Since AQn−1 is (2n − 6)-fault-tolerant 1 joining x and Hamiltonian-connected, there exists a Hamiltonian path P4 of AQn−1 v. Obviously, u, P3 , x, x , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.24a for illustration. Assume that l(P1 ) ≥ 1. We have the following three cases: 1 1. wh , xh , yh , and v are distinct. Since AQn−1 has property 2H, there are two 1 . Obviously, u, P , w, h h h disjoint spanning paths w , P4 , x and y , P5 , v in AQn−1 1 wh , P4 , xh , x, P3 , y, yh , P5 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.24b for illustration.
2. yh = v. Since AQn−1 is (2n − 6) fault-tolerant Hamiltonian-connected, there is 1 a Hamiltonian path wh , P6 , xh of AQn−1 − {v}. Obviously, u, P1 , w, wh , P6 , xh , x, P2 , y, v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.24c for an illustration. 3. xh = v or wh = v. Without loss of generality, we can assume that xh = v. Since AQn−1 is (2n − 6)-fault-tolerant Hamiltonian-connected, there is a Hamilto1 nian path wh , P7 , yh of AQn−1 − {v}. Obviously, u, P1 , w, wh , P7 , yh , y, P2 , x, v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.24d for illustration. 1 ). Assume that F(AQ0 ) ⊂ E 2∗ . By definition, the hyperCase 3.3. u, v ∈ V (AQn−1 n n−1 0 0 ). Thus, there is a Hamiltonian cube Qn−1 is a spanning subgraph of AQn−1 − F(AQn−1 0 0 ). We claim that there is an edge (w, x) on C such that wh , − F(AQn−1 cycle C in AQn−1 h x , u, and v are distinct. Since l(C) = 2n−1 and (2n−1 /2) − 3 = 2n−2 − 3 ≥ 5, there 1 are at least five edges that we can choose. Hence, such an edge exists. Since AQn−1 has property 2H, there are two disjoint spanning paths u, P2 , wh and xh , P3 , v of 1 . Obviously, u, P , wh , w, P , x, xh , P , v is a Hamiltonian path of AQ − F AQn−1 2 1 3 n joining u and v. See Figure 11.25a for illustration.
ch011.tex
30/6/2008
18: 45
Page 205
Optimal k -Fault-Tolerant Hamiltonian Graphs
205 u
u
v
w
w w
wh xh
x
v (a)
f1
wh
x
xh
v
f1
u wh
x
xh
(b)
(c)
FIGURE 11.25 Illustrations for Case 3.3 of Lemma 11.26.
0 ) ⊂ E 2∗ . Let f be any element in F(AQ0 ) − E 2∗ . Since Assume that F(AQn−1 1 n n n−1 AQn−1 is (2n − 5)-fault-tolerant Hamiltonian, there exists a Hamiltonian cycle 0 0 ) − f ) where f = f if f is incident to C C = w, P1 , x, f1 , w in AQn−1 − (F(AQn−1 1 1 1 1 or f1 is any edge of C otherwise. Therefore, wh , wc , xh , and xc are distinct. We have the following two cases: 1 1. wh , xh , u, and v are distinct. Since AQn−1 has property 2H, there 1 . Obviously, h h are two disjoint spanning paths u, P4 , w and x , P5 , v of AQn−1 h h
u, P4 , w , w, P1 , x, x , P5 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.25b for illustration.
wh , xh , u, and v are not distinct. Without loss of generality, we assume that be a element in {xh , xc } such that x = v. Since AQn−1 is (2n − 6)-fault1 tolerant Hamiltonian-connected, there is a Hamiltonian path P6 of AQn−1 − {u} joining x and v. Obviously, u, w, P1 , x, x , P6 , v forms a Hamiltonian path of AQn − F joining u and v. See Figure 11.25c for illustration. Hence, this lemma is proved. 2.
wh = u. Let x
THEOREM 11.18 Assume that n is a positive integer with n ≥ 4. Then AQn is (2n − 3)-fault-tolerant Hamiltonian, (2n − 4)-fault-tolerant Hamiltonian-connected, and has property 2H. Proof: We prove this theorem by induction on n. The induction base is n = 4. By Lemmas 11.23 and 11.24, the theorem holds for n = 4. With Lemmas 11.24 through 11.26, we prove the induction step. With Lemmas 11.21 and 11.22, we have the following theorem. THEOREM 11.19 Assume that n is a positive integer: 1. Hf (AQn ) = 2n − 3 and Hfκ (AQn ) = 2n − 4 if n ∈ {1, 3} 2. Hf (AQ1 ) is undefined and Hfκ (AQ1 ) = 0 3. Hf (AQ3 ) = 2 and Hfκ (AQ3 ) = 1
ch011.tex
30/6/2008
18: 45
Page 206
206
Graph Theory and Interconnection Networks
11.7
FAULT-TOLERANT HAMILTONICITY AND FAULT-TOLERANT HAMILTONIAN CONNECTIVITY OF THE WK-RECURSIVE NETWORKS
In the previous sections, we have discussed several methods to construct super faulttolerant Hamiltonian graphs. It is very natural to ask whether the node expansion X(G, x) is super fault-tolerant Hamiltonian once G is super fault-tolerant Hamiltonian. The statement is not true for k = 0. For example, let G be the graph shown in Figure 11.26a, the graph X(G, u) is shown in Figure 11.26b, and the graph X(X(G, u), w) is shown in Figure 11.26c. By brute force, we can check that G is 1-fault-tolerant Hamiltonian and Hamiltonian-connected. Moreover, the graph X(G, u) is 1-faulttolerant Hamiltonian and Hamiltonian-connected. We will show that there is no Hamiltonian path of X(X(G, u), w) between u1 and w1 . Hence, X(X(G, u), w) is not Hamiltonian-connected. LEMMA 11.27 There exists no Hamiltonian path between u1 and w1 in X(X(G, u), w). Proof: Suppose that X(X(G, u), w) has a Hamiltonian path, P, between u1 and w1 . Case 1. P contains (w1 , w3 ). Then neither (w1 , w2 ) nor (w1 , s) is in P. Hence, P contains the subpaths w1 , w3 , w2 , v and z, s, t, x, y. Thus, (t, u2 ) is not in P and u3 , u2 , u1 is a subpath of P. Therefore, (y, z) ∈ P. Thus, P contains a cycle
z, s, t, x, y, z, which is impossible. Case 2. P contains (w1 , w2 ). Then neither (w1 , w3 ) nor (w1 , s) is in P. Hence, P contains the subpaths w1 , w2 , w3 , x and t, s, z, v, u3 . Since (z, y) ∈ P, x, y, u1 is also a subpath of P. Then (u1 , u2 ) is not in P and u3 , u2 , t is a subpath of P. Thus, P contains a cycle t, s, z, v, u3 , u2 , t, which is impossible. Case 3. P contains (w1 , s). Then neither (w1 , w2 ) nor (w1 , w3 ) is in P. Hence, P contains the subpath v, w2 , w3 , x. Case 3.1. P contains (s, z). Then x, t, u2 is a subpath of P. Since (x, y) is not in P,
z, y, u1 is a subpath of P. Therefore, neither (u1 , u3 ) nor (u1 , u2 ) is in P and v, u3 , u2 is a subpath of P. Thus, P has a cycle v, w2 , w3 , x, t, u2 , u3 , v. This is a contradiction.
z
z
y
s
x
z
y
y
s
s
x
x w1
t
w v
u (a)
t
u1 u2
u3
w v
t
u1 u2
(b)
FIGURE 11.26 The graphs (a) G, (b) X(G, u), and (c) X(X(G, u), w).
u3 (c)
w3 w2
v
ch011.tex
30/6/2008
18: 45
Page 207
Optimal k -Fault-Tolerant Hamiltonian Graphs
207
Case 3.2. P contains (s, t). Then (s, z) is not in P. Hence, P contains the subpath
y, z, v. Since (v, u3 ) ∈ P, P contains the subpath u1 , u3 , u2 , t and the edge (y, x). Thus, P has a cycle v, w2 , w3 , x, y, z, v. This is a contradiction. The lemma is proved. Yet there are some interconnection networks that are recursively constructed using node expansion. We still want to know its fault-tolerant Hamiltonicity and its faulttolerant Hamiltonian connectivity. In this section, we use the WK-recursive network as an example. The WK-recursive network is proposed by Vecchia and Sanges [324]. We use K(d, t) to denote the WK-recursive network of level t, each of whose basic module is a d-vertex complete graph, where d > 1 and t ≥ 1. It offers a high degree of scalability, which conforms very well to a modular design and the implementation of distributed systems involving a large number of computing elements. A transputer implementation of a 15-vertex WK-recursive network has been realized at the Hybrid Computing Center in Naples, Italy. In this implementation, each vertex is implemented with the IMS T414 Transputer [186]. Recently, the WK-recursive network has received much attention, due to its many favorable properties. In particular, it is proved that He (K(d, t)) = d − 3 [108], Hv (K(d, t)) = d − 3 [116], and K(d, t) is Hamiltonian-connected [116]. Ho et al. [151] prove that Hf (K(d, t)) = d − 3 and Hfκ (K(d, t)) = d − 4. The WK-recursive network can be constructed hierarchically by grouping basic modules. A complete graph of any size d can serve as a basic module. We use K(d, t) to denote a WK-recursive network of level t, each of whose basic module is a d-vertex complete graph, where d > 1 and t ≥ 1. The structures of K(5, 1), K(5, 2), and K(5, 3) are shown in Figure 11.27. K(d, t) is defined in terms of a graph as follows. Each vertex of K(d, t) is labeled as a t-digit radix d number. Vertex at−1 at−2 . . . a1 a0 is adjacent to (1) at−1 at−2 . . . a1 b, where b = a0 and (2) at−1 at−2 . . . aj+1 aj−1 (aj )j−1 if aj = aj−1 and aj−1 = aj−2 = . . . = a0 , where (aj )j−1 denotes j − 1 consecutive aj s. An open edge is incident to at−1 at−2 . . . a0 if at−1 = at−2 = . . . = a0 . The open edge is reserved for further expansion. Hence, its other end vertex is unspecified. The open vertex set Ov of K(d, t) is the set {at−1 at−2 . . . a0 | ai = ai+1 for 0 ≤ i ≤ t − 2}. In other words, Ov contains those vertices with open edges. Obviously, K(d, 1) is a d-vertex complete graph augmented with d open edges. For t ≥ 1, K(d, t + 1) consists d copies of K(d, t), say K1 (d, t), K2 (d, t), . . . , Kd (d, t). Thus, we consider Ki (d, t) as the ith component of K(d, t + 1). Letting I = {w1 , . . . , wq } to be any q subset "q of {1, 2, . . . , d}, we define graph KI (d, t) as the subgraph of K(d, t + 1) induced by i=1 V (Kwi (d, t)). For t ≥ 2, the open vertices of Ki (d, t) can be labeled as oi,0 and oi,j for 1 ≤ i = j ≤ d, where oi,0 is the only open vertex of K(d, t + 1) in Ki (d, t) and oi,j is the vertex in Ki (d, t) joining with the vertex oj,i in Kj (d, t) with an open edge. Note that (oi,j , oj,i ) is the only edge joining Ki (d, t) to Kj (d, t). ˜ Now, we define the extended WK-recursive network K(d, t) as the graph obtained from K(d, t) by replacing all open edges with the edges joining to x. For example, ˜ 1) and K(5, ˜ 2) are illustrated in Figure 11.28. Obviously, K(d, ˜ K(5, 1) is isomorphic ˜ to the complete graph Kd+1 . It is observed that K(d, t) is d-regular.
ch011.tex
30/6/2008
18: 45
Page 208
208
Graph Theory and Interconnection Networks
00
0
01
04 40
10 03
4
1
44
02
42
43
12
13
30
20
34
31 24
2
3
11
14
41
32
33
21
22
23
(a)
(b) 000 004 040
003
043
402
441
443
414
442
433
100
032
021
023
104
022
140
411
143
421
142
300
303
301 310 311 312
313
330
333
240
314
342
334
203
244
122
331 324
323
210
202
241
214
242
243
320
332
123
201
204
302
341
343
132
121
200
304
344
112
113
131 124
133
111
120
134
422
340
114
130
431 424 423
110
102
141
420
432
101
103
144
412
413
430 434
033
410
012
020 031 024
034
401
011
013
030
404
403
014
042
400
444
010
002
041
044
440
001
213
230 321
234
322
233
211
212
220 231 224 232
223
221
222
(c)
FIGURE 11.27 The graphs (a) K(5, 1), (b) K(5, 2), and (c) K(5, 3).
˜ 2) is obtained from K(5, ˜ 1) by taking From Figure 11.29, it is observed that K(5, node expansion at all vertices of K(5, 1). With this observation, we have the following theorem. ˜ THEOREM 11.20 K(d, t + 1) is obtained from the complete graph Kd + 1 by a sequence of node expansions.
ch011.tex
30/6/2008
18: 45
Page 209
Optimal k -Fault-Tolerant Hamiltonian Graphs
209 x
x
(b)
(a)
˜ 1) and (b) K(5, ˜ 2). FIGURE 11.28 The graphs (a) K(5, y
y5
y
y5
y1 y 4
y4 y3
y
y
(c) y5
y
y4
y3
y2 (a) y5
y5
y3
y2 (b) y5
y
y4
(d)
(e)
(f)
FIGURE 11.29 Illustrations of a sequence of node expansions.
With Theorems 11.3 and 11.20, and Lemma 11.1, we have the following theorem. ˜ THEOREM 11.21 K(d, t) is (d − 2)-fault-tolerant Hamiltonian for d ≥ 3 and t ≥ 1. THEOREM 11.22 Hf (K(d, t)) = d − 3 for d ≥ 3 and t ≥ 1. Proof: Since δ(K(d, t)) = d − 1, Hf (K(d, t)) ≤ d − 3. Let F be any faulty set of ˜ K(d, t) with |F| ≤ d − 3. We set the faulty set F = F ∪ {x} of K(d, t), where x is the only ˜ vertex in V (K(d, t)) − V (K(d, t)). Obviously, |F| ≤ d − 2. By Theorem 11.21, there ˜ exists a Hamiltonian cycle C in K(d, t) − F. Obviously, cycle C is also a Hamiltonian cycle of K(d, t) − F. Thus, Hf (K(d, t)) ≥ d − 3. Therefore, Hf (K(d, t)) = d − 3. Now, we prove that Hfκ (K(d, t)) = d − 4 for d ≥ 4 and t ≥ 1 by induction. ˜ To get this goal, we need more observation about K(d, t). We define the i i ˜ ˜ weakly extended WK-recursive network K (d, t) as V (K (d, t)) = V (K(d, t)) ∪ {x} and E(K˜ i (d, t)) = E(K(d, t)) ∪ {(oα,0 , x) | α ∈ {1, 2, . . . , d} − {i}}. Obviously, K˜ i (d, t) is isomorphic to K˜ j (d, t) for 1 ≤ i = j ≤ d. Let F ⊂ V (K(d, t + 1)) ∪ E(K(d, t + 1)) with |F| ≤ d − 4. For 1 ≤ q ≤ d, we use Fq to denote F ∩ (V (K q (d, t)) ∪ E(K q (d, t))). Note
ch011.tex
30/6/2008
18: 45
Page 210
210
Graph Theory and Interconnection Networks
that it is possible that F − ∪dq=1 Fq = ∅. For example, it is possible that (o1,2 , o2,1 ) ∈ F but (o1,2 , o2,1 ) ∈ / ∪ dq=1 Fq . Now, we construct another graph H(F) from the complete graph Kd with vertex set {1, 2, . . . , d} by considering vertex i corresponding to the ith component of K(d, t + 1) for every i. Let F = {(α, β) | oα,β ∈ F, oβ,α ∈ F, or (oα,β , oβ,α ) ∈ F}. We set H(F) = Kd − F . Since |F| ≤ d − 4, by Lemma 11.4, H(F) is Hamiltonianconnected. This result will help us find a Hamiltonian path between any two vertices in K(d, t + 1) − F. However, there are several problems to be conquered. Let us consider the following example. Assume that u is a vertex in K i (d, t) and v is a vertex in K j (d, t) with 1 ≤ i = j ≤ d. Let i = w1 , w2 , . . . , wd = j be a Hamiltonian path of H(F). Let Pi be a Hamiltonian path of K i (d, t) − Fi joining u to oi,w2 , let Pq be a Hamiltonian path of K wq (d, t) − Fwq joining owq ,wq−1 to owq ,wq+1 for 2 ≤ q ≤ d − 1; and let Pj be a Hamiltonian path of K j (d, t) − Fj joining oj,wd−1 to v. Obviously, Pi , P2 , . . . , Pj forms a Hamiltonian path of K(d, t + 1) − F joining u to v. See Figure 11.30 for illustration. Yet we need to guarantee the existence of required paths in each component. Later, we will prove that K(d, t) is (d − 4)-fault-tolerant Hamiltonian-connected by induction. In the induction step, we assume K(d, t) is (d − 4)-fault-tolerant Hamiltonianconnected and prove that K(d, t + 1) is (d − 4)-fault-tolerant Hamiltonian-connected. With the assumption, the required Hamiltonian path Pq exists for 2 ≤ q ≤ d − 1. However, we cannot find Pi if u = oi,w2 . Similarly, we cannot find Pj if oj,wd−1 = v. To solve the problem, we can find another Hamiltonian path i = z1 , z2 , . . . , zd = j of H(F) to meet the boundary conditions that u = oi,z2 and v = oj,zd−1 . As a conclusion, we have the following lemma.
Ki (d,t)
KWd-1 (d,t)
u Pi1
Pd-1
PP33 KW3 (d,t) KW2 (d,t)
P2
Pjd Kj (d,t)
v FIGURE 11.30 Finding a Hamiltonian path of K(d, t + 1) − F between u and v with a Hamiltonian path of H(F) between i and j.
ch011.tex
30/6/2008
18: 45
Page 211
Optimal k -Fault-Tolerant Hamiltonian Graphs
211
LEMMA 11.28 Assume that K(d, t) is (d − 4)-fault-tolerant Hamiltonianconnected. Let F ⊂ V (K(d, t + 1)) ∪ E(K(d, t + 1)) with |F| ≤ d − 4. Let u be a vertex in K i (d, t) and let v be a vertex in K j (d, t) with 1 ≤ i = j ≤ d. Suppose that
i = w1 , w2 , . . . , wd = j be a Hamiltonian path of H(F) that satisfies the boundary conditions: u = oi,w2 and v = oj,wd−1 . Then there exists a Hamiltonian path of K(d, t + 1) − F joining u and v. From the previous discussion, we have three problems to prove that K(d, t + 1) − F is Hamiltonian-connected; that is, there exists a Hamiltonian path of K(d, t + 1) − F between any two vertices u and v. First, assuming that u is a vertex in K i (d, t) and v is a vertex in K j (d, t) with 1 ≤ i = j ≤ d, we need to find a Hamiltonian path in H(F) that meets the boundary conditions. Second, find a Hamiltonian path of K(d, t + 1) − F joining u and v if we cannot find a Hamiltonian path in H(F) that meets the boundary conditions. Finally, find a Hamiltonian path of K(d, t + 1) − F joining u and v if both u and v are in K i (d, t) for some i. Now, we face the first problem. Let P1 = u1 , u2 , . . . , un and P2 = v1 , v2 , . . . , vn be any two Hamiltonian paths of G. We say that P1 and P2 are orthogonal if u1 = v1 , un = vn , and uq = vq for q = 2 and q = n − 1. We say a set of Hamiltonian paths {P1 , P2 , . . . , Ps } of G are mutually orthogonal if any two distinct paths in the set are orthogonal. Suppose that there are three mutually orthogonal Hamiltonian paths between any two vertices of H(F). By the pigeonhole principle, we can easily find a Hamiltonian path with the desired boundary conditions. For this reason, we would like to know all the cases in which there are at most two orthogonal Hamiltonian paths in H(F). As mentioned earlier, H(F) is isomorphic to a graph G with n vertices and e ≤ n − 4. The following theorem is proved by Chvátal [70]. THEOREM 11.23 (Chvátal [70]) If G is an n-vertex graph where n ≥ 3 and |E(G)| > {[(n − 1)(n − 2)]/2} + 1, then G is Hamiltonian. Moreover, the only nonHamiltonian graphs with n vertices and {[(n − 1)(n − 2)]/2} + 1 edges are C1,n and, for n = 5, C2,5 . Suppose that G = (V , E) is an n-vertex graph with e ≤ n − 4. Assume that n = 4. Obviously, G is isomorphic to K4 . It is easy to check whether there are exactly two orthogonal Hamiltonian paths between any two distinct vertices of G. Assume that n = 5. Obviously, G is either isomorphic to K5 or K5 − e where e is any edge of K5 . We can label the vertices of K5 with {1, 2, 3, 4, 5}, and we set e = (1, 2). Suppose that G is isomorphic to K5 . It is easy to check whether there are exactly three mutually orthogonal Hamiltonian paths of G between any two vertices. Suppose that G is isomorphic to K5 − (1, 2). By brute force, we can check whether there are exactly three mutually orthogonal Hamiltonian paths between vertices 1 and 2. However, there are exactly two orthogonal Hamiltonian paths between the remaining pairs. Now, we assume that n ≥ 6. Let s and t be any two distinct vertices of G. Let H be the subgraph of G induced by the remaining (n − 2) vertices of G. We have the following two cases: Case 1. H is Hamiltonian. We can relabel the vertices of H with {0, 1, 2, . . . , n − 3} so that 0, 1, 2, . . . , n − 3, 0 forms a Hamiltonian cycle of H. Let Q denote the
ch011.tex
212
30/6/2008
18: 45
Page 212
Graph Theory and Interconnection Networks
set {i | (s, [i + 1]) ∈ E(G) and (i, t) ∈ E(G)} where [i] denotes i mod (n − 2). Since e ≤ n − 4, |Q| ≥ n − 2 − (n − 4) = 2. There are at least two elements in Q. Let q1 and q2 be the two elements in Q. For j = 1, 2, we set Pj as s, [qj + 1], [qj + 2], . . . , [qj ], t. Then P1 and P2 are two orthogonal Hamiltonian paths between s and t. Suppose that e ≤ n − 5, (s, t) ∈ / E, or H is not isomorphic to the complete graph Kn − 2 . Then |Q| ≥ 3. Let q1 , q2 , and q3 be the three elements in Q. For j = 1, 2, and 3, we set Pj as s, [qj + 1], [qj + 2], . . . , [qj ], t. Then P1 , P2 , and P3 are three mutually orthogonal Hamiltonian paths between s and t. Thus, we consider e = n − 4, (s, t) ∈ E, and H is isomorphic to the complete graph Kn−2 . Let ST be the set of vertices in H that are adjacent to s and t, let ST be the set of vertices in H that are adjacent to s but not adjacent to t, let ST be the set of vertices in H that are not adjacent to s but adjacent to t, and let S T be the set of vertices in H that are not adjacent to s or adjacent to t. Let a = |ST |, b = |ST |, c = |ST |, and d = |S T |. Without loss of generality, we assume that degG (s) ≥ degG (t). Then b ≥ c, b + c + 2d = n − 4, and a + b + c + d = n − 2. Thus, a − d = 2. Hence, a ≥ 2. Suppose that a ≥ 3. Let q1 , q2 , and q3 be three vertices in ST and q4 , q5 , . . . , qn−2 are the remaining vertices of H. We set P1 as s, q1 , q2 , X, q3 , t, P2 as
s, q2 , q3 , Y , q1 , t, and P3 as s, q3 , Z, q1 , q2 , t, where X, Y , and Z are any permutation of q4 , q5 , . . . , qn−2 . Obviously, P1 , P2 , and P3 are three mutually orthogonal Hamiltonian paths between s and t. Suppose that a = 2. Then d = 0. Suppose that c ≥ 1. Then b ≥ 1. We rearrange the vertices of H so that 0 is a vertex in ST , 1 and 2 are the vertices in ST , 3 is a vertex in ST , and 4, 5, . . . , n − 3 are the remaining vertices. Obviously, 0, 1, 2, . . . , n − 3, 0 forms a Hamiltonian cycle of H. Let Q denote the set {i | (s, i) ∈ E(G) and ([i + 1], t) ∈ E(G)}. Obviously, |Q| ≥ 3. Thus, there are three mutually orthogonal Hamiltonian paths between s and t. Finally, we consider a = 2, d = 0, and c = 0. Thus, b = n − 4. In this case, s is adjacent to t and adjacent to all the vertices in H; t is adjacent to s and adjacent to exactly two vertices in H; say, q1 and q2 . Let s = v1 , v2 , . . . , vn = t be any Hamiltonian path of G between s and t. Obviously, vn−1 is either q1 or q2 . Therefore, there are exactly two orthogonal Hamiltonian paths between s and t. Case 2. H is non-Hamiltonian. There are exactly (n − 2) vertices in H. By Theorem 11.23, there are exactly (n − 4) edges in the complement of H, and H is isomorphic to C1,n − 2 or C2,5 . Hence, s is adjacent to V (G) − {s} and t is adjacent to V (G) − {t}. We can construct two orthogonal Hamiltonian paths of G between s and t as the following cases. Case 2.1. H is isomorphic to C2,5 . We label the vertices of C2,5 with {1, 2, 3, 4, 5} as shown in Figure 11.31a. Let P1 = s, 1, 2, 3, 4, 5, t and P2 = s, 3, 4, 5, 2, 1, t. Then P1 and P2 form the required orthogonal paths. By brute force, we can check that there are exactly two orthogonal Hamiltonian paths between s and t. Case 2.2. H is isomorphic to C1,n−2 . We label the vertices of C1,n−2 with {1, 2, . . . , n − 2}, as shown in Figure 11.31b. Let P1 = s, 1, 2, 3, . . . , n − 2, t and P2 = s, 3, 4, . . . , n − 2, 2, 1, t. Then P1 and P2 form the orthogonal Hamiltonian
ch011.tex
30/6/2008
18: 45
Page 213
Optimal k -Fault-Tolerant Hamiltonian Graphs
213 3
1
2 3
4
5
4
n2
(a)
1
5
2 n3 (b)
FIGURE 11.31 (a) C2,5 and (b) C1,n−2 .
paths. Let s = v1 , v2 , . . . , vn = t be any Hamiltonian path of G between s and t. Obviously, 1 is either v2 or vn−1 . Therefore, there are exactly two orthogonal Hamiltonian paths between s and t. From the previous discussion, we have the following theorem. THEOREM 11.24 Assume that G = (V , E) is an n-vertex graph with n ≥ 4 and e ≤ n − 4. Let s and t be any two vertices of G. Then there are at least two orthogonal Hamiltonian paths of G between s and t. Moreover, there are at least three mutually orthogonal Hamiltonian paths of G between s and t except the following cases: Case 1.
G is isomorphic to K4 , where s and t are any two vertices of G.
Case 2. G is isomorphic to K5 − (1, 2), where s and t are any two vertices except {s, t} = {1, 2}. Case 3. The subgraph H induced by V (G) − {s, t} is a complete graph with n ≥ 6; s is adjacent to t and all the vertices in H; t is adjacent to s and exactly two vertices in H. Case 4. The subgraph induced by V (G) − {s, t} is isomorphic to C2,5 ; s is adjacent to V (G) − {s}; t is adjacent to V (G) − {t}. Case 5. The subgraph induced by V (G) − {s, t} is isomorphic to C1,n−2 with n ≥ 6; s is adjacent to V (G) − {s}; t is adjacent to V (G) − {t}. To solve the remaining problems, we need some path patterns. LEMMA 11.29 Let d ≥ 4, t ≥ 1, and I = {w1 , . . . , wn } be any subset with n of {1, 2, . . . , d}. Let u be a vertex in Kw1 (d, t) and v be a vertex in Kwn (d, t) such that u = ow1 ,w2 and v = own ,wn−1 . Let F be any subset of V (K(d, t + 1)) ∪ E(K(d, t + 1)) such that (1) there exists an edge between Kwq (d, t) − Fq and Kwq+1 (d, t) − Fq+1 for 1 ≤ q ≤ n − 1 and (2) Kwq (d, t) − Fq is Hamiltonian-connected for 1 ≤ q ≤ n. Then there is a Hamiltonian path P of KI (d, t) − F joining u to v. Proof: Since there exists an edge between Kwq (d, t) − Fq and Kwq+1 (d, t) − Fq+1 for 1 ≤ q ≤ n − 1, the edge (owq ,wq+1 , owq+1 ,wq ) and the vertices owq ,wq+1 , owq+1 ,wq are not in F for 1 ≤ q ≤ n − 1. Since Kwq (d, t) − Fq is Hamiltonian-connected for 1 ≤ q ≤ n, there exists a Hamiltonian path P1 of Kw1 (d, t) − F1 joining u to ow1 ,w2 , there exists a Hamiltonian path Pq of Kwq (d, t) − Fq joining owq ,wq−1 to owq ,wq+1 for
ch011.tex
30/6/2008
214
18: 45
Page 214
Graph Theory and Interconnection Networks
2 ≤ q ≤ n − 1, and there exists a Hamiltonian path Pn of Kwn (d, t) − Fn joining own ,wn−1 to v. Therefore, P = u, P1 , P2 , . . . , Pn , v is a Hamiltonian path of KI (d, t) − F joining u to v. LEMMA 11.30 Let d ≥ 4 and t ≥ 1. Assume that u and v are two vertices of K(d, t). Let r and s be any two open vertices such that |{u, v} ∩ {r, s}| = 0. Then there exist two disjoint paths R and S such that (1) R joins u to one of the vertices in {r, s}, say r, (2) S joins v to s and (3) R ∪ S spans K(d, t). Proof: We prove this lemma by induction on t. The lemma is obviously true for t = 1, because K(d, 1) is isomorphic to the complete graph Kd with Ov = V (K(d, 1)). Thus, we assume that this lemma holds for K(d, n) for every 1 ≤ n ≤ t. We claim, that the statement holds for K(d, t + 1). Let u ∈ V (Ki (d, t)), v ∈ V (Kj (d, t)), r ∈ V (Kk (d, t)), and s ∈ V (Kl (d, t)). Since there is only one open vertex in each component, we have k = l. Now, we consider the following cases: Case 1.
i = j.
Case 1.1. |{i, j} ∩ {k, l}| = 0. Thus, there exists an index in {k, l}, say k, such that u = oi,k . Let I1 = {i, k} and I2 = {w1 , w2 , . . . , wd−2 } = {1, 2, . . . , d} − I1 such that w1 = j, wd−2 = l, and v = oj,w2 . By Lemma 11.29, there exists a Hamiltonian path R of KI1 (d, t) joining u to r; there exists a Hamiltonian path S of KI2 (d, t) joining v to s. Obviously, R and S are the required paths. Case 1.2. |{i, j} ∩ {k, l}| = 1. Without loss of generality, we assume that i = k. Let R be a Hamiltonian path of Ki (d, t) joining u to r. Let I = {w1 , w2 , . . . , wd−1 } = {1, 2, . . . , d} − {i} such that w1 = j and wd−1 = l. By Lemma 11.29, there exists a Hamiltonian path S of KI (d, t) joining v to s. Obviously, R and S are the required paths. Case 1.3. |{i, j} ∩ {k, l}| = 2. Without loss of generality, we assume that i = k and j = l. By assumption, |{u, v} ∩ {r, s}| = 0. Let I = {w2 , . . . , wd−1 } = {1, 2, . . . , d} − {i, j}. By induction, we can find two disjoint paths Sj1 and Sj2 such that (1) Sj1 joins v to oj,w2 , (2) Sj2 joins oj,wd−1 to s, and (3) Sj1 ∪ Sj2 spans Kj (d, t). Let R be a Hamiltonian path of Ki (d, t) joining u and r. By Lemma 11.29, there exists a Hamiltonian path −1 , s are the S of KI (d, t) joining ow2 ,j to owd−1 ,j . Obviously, R and S = v, Sj1 , S , Sj2 required paths. Case 2.
i = j.
Case 2.1. i ∈ / {k, l}. Let I = {w1 , w2 , . . . , wd−2 } = {1, 2, . . . , d} − {i, k} such that wd−2 = l. By induction, we can find two disjoint paths Si1 and Si2 of Ki (d, t) such that (1) Si1 joins u to oi,k , (2) Si2 joins v to oi,w1 , and (3) Si1 ∪ Si2 spans Ki (d, t). Let R be a Hamiltonian path of Kk (d, t) joining ok,i and r. By Lemma 11.29, there exists a Hamiltonian path S of KI (d, t) joining ow1 ,i to s. Obviously, R = u, Si1 , R , r and S = v, Si2 , S , s are the required paths. Case 2.2. i ∈ {k, l}. Without loss of generality, we assume that i = k. Let I = {w1 , w2 , . . . , wd−1 } = {1, 2, . . . , d} − {i} such that wd−1 = l. By induction, we can
ch011.tex
30/6/2008
18: 45
Page 215
Optimal k -Fault-Tolerant Hamiltonian Graphs
215
find two disjoint paths Si1 and Si2 of Ki (d, t) such that (1) Si1 joins u to r, (2) Si2 joins v to oi,w1 , and (3) Si1 ∪ Si2 spans Ki (d, t). By Lemma 11.29, there exists a Hamiltonian path S of KI (d, t) joining ow1 ,i to s. Obviously, R = Si1 and S = v, Si2 , S , s are the required paths. LEMMA 11.31 Both K(d, t) and K˜ i (d, t) are (d − 4)-fault-tolerant Hamiltonianconnected for d ≥ 4, t ≥ 1, and 1 ≤ i ≤ d. Proof: Since K˜ i (d, t) is isomorphic to K˜ j (d, t) for 1 ≤ i = j ≤ d, we consider K˜ 1 (d, t) in the following cases. Suppose t = 1. Note that K(d, 1) is isomorphic to Kd and K˜ 1 (d, 1) is isomorphic to Kd+1 − e where e is any edge in Kd+1 . By Lemma 11.4, Kd and Kd+1 − e are (d − 4) fault-tolerant Hamiltonian-connected. Assume that this lemma holds for K(d, q) and K˜ 1 (d, q) for every 1 ≤ q ≤ t. We will claim that both K(d, t + 1) and K˜ 1 (d, t + 1) are also (d − 4) fault-tolerant Hamiltonianconnected. First, we show that K(d, t) is (d − 4)-fault-tolerant Hamiltonian-connected. Since K(d, t) is Hamiltonian-connected, K(4, t) is 0-fault-tolerant Hamiltonian-connected. Thus, we assume that d ≥ 5. Let u be a vertex in Ki (d, t), v be a vertex in Kj (d, t) with u = v and F be the faulty set with |F| ≤ d − 4. We need to find a Hamiltonian path of K(d, t + 1) − F joining u to v. Case A1. i = j. Assume that there exists a Hamiltonian path i = w1 , w2 , . . . , wd = j of H(F) joining i and j that meet the boundary conditions: u = oi,w2 and oj,wd−1 = v. By Lemma 11.28, there exists a Hamiltonian path of K(d, t + 1) − F joining u and v. By Theorem 11.24, such a Hamiltonian path in H(F) that meets the boundary conditions except the Cases 2 through 5 of Theorem 11.24. We will show that this lemma holds when H(F) is isomorphic to K5 − (1, 2), the subgraph N of H(F) induced by V (H(F)) − {i, j} is a complete graph; isomorphic to C2,5 ; isomorphic to C1,n−2 . Case A1.1. H(F) is isomorphic to the complete graph K5 − (1, 2) and {i, j} = {1, 2}. Obviously, d = 5 and |F| = 1. Thus, exactly one of o1,2 , o2,1 , or (o1,2 , o2,1 ) is faulty. By the symmetric property of H(F), we may assume that (i, j) = (1, 3) or (i, j) = (5, 3). 1. (i, j) = (1, 3). Obviously, i, 5, 4, 2, j and i, 4, 2, 5, j form two orthogonal Hamiltonian paths of H(F). By Lemma 11.28, we can construct a Hamiltonian path between u and v of K(d, t + 1) − F unless (1) (u = oi,4 and v = oj,2 ) or (2) (u = oi,5 and v = oj,5 ). Suppose that u = oi,4 and v = oj,2 . Obviously, i, 5, 2, 4, j is a Hamiltonian path in H(F) satisfying the boundary conditions: u = oi,5 and v = oj,4 . Suppose that u = oi,5 and v = oj,5 . Since exactly one of o1,2 , o2,1 , or (o1,2 , o2,1 ) is fault, Kj (d, t) − {oj,5 } is Hamiltonian-connected. Let Pj be the Hamiltonian path of Kj (d, t) − {oj,5 } joining oj,4 to oj,2 . By induction, Kq (d, t) − F is Hamiltonian-connected for q ∈ {i, 5, 4, 2}. Let Pi be the Hamiltonian path of Ki (d, t) − F joining u to oi,4 ; let P5 be the Hamiltonian path of K5 (d, t) joining o5,2 to o5,j ; let P4 be the Hamiltonian path of K4 (d, t) joining o4,i to o4,j ; let P2 be the Hamiltonian path of K2 (d, t) joining o2,j to o2,5 . Therefore, path u, Pi , P4 , Pj , P2 , P5 , v is the required path.
ch011.tex
30/6/2008
18: 45
Page 216
216
Graph Theory and Interconnection Networks
2. (i, j) = (5, 3). Obviously, i, 1, 4, 2, j and i, 2, 4, 1, j form two orthogonal Hamiltonian paths of H(F). By Lemma 11.28, we can construct a Hamiltonian path between u and v of K(d, t + 1) − F unless (1) (u = oi,1 and v = oj,1 ) or (2) (u = oi,2 and v = oj,2 ). Since the condition 1 is similar to the condition 2, we only consider condition 1. Let u = oi,1 and v = oj,1 . Since exactly one of o1,2 , o2,1 , or (o1,2 , o2,1 ) is faulty, Kj (d, t) − {oj,1 } is Hamiltonian-connected. Let Pj be the Hamiltonian path of Kj (d, t) − {oj,1 } joining oj,i to oj,2 . By induction, Kq (d, t) − F is Hamiltonianconnected for q ∈ {i, 1, 2, 4}. Let Pi be the Hamiltonian path of Ki (d, t) joining u to oi,j ; let P1 be the Hamiltonian path of K1 (d, t) joining o1,4 to o1,j ; let P4 be the Hamiltonian path of K4 (d, t) joining o4,2 to o4,1 ; let P2 be the Hamiltonian path of K2 (d, t) joining o2,j to o2,4 . Therefore, path u, Pi , Pj , P2 , P4 , P1 , v is the required path. CaseA1.2. The subgraph N of H(F) induced by V (H(F)) − {i, j} is a complete graph; vertex i is adjacent to j and all vertices in N; j is adjacent to i and exactly two vertices 1 and 2 in N. We label the remaining vertices in N as 3, . . . , d − 2. See Figure 11.32a for illustration. It is easy to see that i, 2, 3, . . . , d − 2, 1, j and i, 3, . . . , d − 2, 1, 2, j form two orthogonal Hamiltonian paths of H(F) between i and j. By Lemma 11.28, we can construct a Hamiltonian path of K(d, t + 1) − F joining u to v unless (1) (u = oi,2 and v = oj,2 ) or (2) (u = oi,3 and v = oj,1 ). Suppose that u = oi,2 and v = oj,2 . Obviously, i, 3, 2, 4, . . . , d − 2, 1, j is a Hamiltonian path in H(F) satisfying the boundary conditions: u = oi,3 and v = oj,1 . Suppose that u = oi,3 and v = oj,1 . Thus, the Hamiltonian path i, 1, d − 2, . . . , 3, 2, j in H(F) satisfies the boundary conditions: u = oi,1 and v = oj,2 . By Lemma 11.28, we can construct a Hamiltonian path of K(d, t + 1) − F joining u to v. Case A1.3. The subgraph N of H(F) induced by V (H(F)) − {i, j} is isomorphic to C2,5 ; vertex i is adjacent to j and all vertices in N; j is adjacent to i and all vertices in N. We label the vertices in N as 1, 2, . . . , 5. See Figure 11.32b for illustration. Thus, d = 6 and |F| = 3. Obviously, |Fi | = |Fj | = 0. Moreover, i, 1, 2, 3, 4, 5, j and
i, 5, 4, 3, 2, 1, j form two orthogonal Hamiltonian paths of H(F) between i and j. By Lemma 11.28, we can construct a Hamiltonian path of K(d, t + 1) joining u to v unless i i 4
i 1
d2
2
3 3
1 3
2
j
4
5
1
2 d2 d3
j j
(a)
(b)
(c)
FIGURE 11.32 Illustrations for Case A1: (a) Case A1.2, (b) Case A1.3, and (c) Case A1.4.
ch011.tex
30/6/2008
18: 45
Page 217
Optimal k -Fault-Tolerant Hamiltonian Graphs
217
(1) (u = oi,1 and v = oj,1 ) or (2) (u = oi,5 and v = oj,5 ). By the symmetric property of H(F), we consider only the case u = oi,1 and v = oj,1 . Since |Fi | = |Fj | = 0, Kj (d, t) − (Fj ∪ {oj,1 }) is Hamiltonian-connected. Let Pj be the Hamiltonian path of Kj (d, t) − (Fj ∪ {oj,1 }) joining oj,5 to oj,3 . By induction, Kq (d, t) − Fq is Hamiltonian-connected for q ∈ {i, 1, . . . , 5}. Let Pi be the Hamiltonian path of Ki (d, t) − Fi joining u to oi,2 ; let P1 be the Hamiltonian path of K1 (d, t) − F1 joining o1,4 to o1,j ; let P2 be the Hamiltonian path of K2 (d, t) − F2 joining o2,i to o2,5 ; let P3 be the Hamiltonian path of K3 (d, t) − F3 joining o3,j to o3,4 ; let P4 be the Hamiltonian path of K4 (d, t) − F4 joining o4,3 to o4,1 ; let P5 be the Hamiltonian path of K5 (d, t) − F5 joining o5,2 to o5,j . Therefore, path u, Pi , P2 , P5 , Pj , P3 , P4 , P1 , v is the required path. Case A1.4. The subgraph N of H(F) induced by V (H(F)) − {i, j} is isomorphic to C1,n−2 ; vertex i is adjacent to j and all vertices in N; j is adjacent to i and all vertices in N. We label the vertices in N as 1, 2, . . . , d − 2. See Figure 11.32c for illustration. Obviously, i, 1, 2, . . . , d − 2, j and i, d − 2, d − 3, . . . , 1, j form two orthogonal Hamiltonian paths of H(F) between i and j. By Lemma 11.28, we can construct a Hamiltonian path of K(d, t + 1) joining u to v unless (1) (u = oi,d−2 and v = oj,d−2 ) or (2) (u = oi,1 and v = oj,1 ). Suppose that u = oi,d−2 and v = oj,d−2 . Obviously, i, 3, d − 2, . . . , 4, 2, 1, j is a Hamiltonian path in H(F) satisfying the boundary conditions: u = oi,3 and v = oj,1 . By Lemma 11.28, we can construct a Hamiltonian path of K(d, t + 1) joining u to v. Suppose that u = oi,1 and v = oj,1 . Since |Fi | = |Fj | = 0, Kj (d, t) − {oj,1 } is Hamiltonian-connected. Let Pj be the Hamiltonian path of Kj (d, t) − {oj,1 } joining oj,3 to oj,4 . By induction, Kq (d, t) − Fq is Hamiltonian-connected for q ∈ {i, 2, . . . , d − 2}. Let Pi be the Hamiltonian path of Ki (d, t) joining u to oi,3 ; let P3 be the Hamiltonian path of K3 (d, t) − F3 joining o3,i to o3,j ; let P4 be the Hamiltonian path of K4 (d, t) − F4 joining o4,j to o4,5 if d ≥ 7; and let P4 be the Hamiltonian path of K4 (d, t) − F4 joining o4,j to o4,2 if d = 6; let Pq be a Hamiltonian path of Kq (d, t) − Fq joining oq,q−1 to oq,q+1 for 4 ≤ q ≤ d − 3; let Pd−2 be the Hamiltonian path of Kd−2 (d, t) − Fd−2 joining od−2,d−3 to od−2,2 ; let P2 be a Hamiltonian path of K2 (d, t) − F2 joining o2,d−2 to o2,1 ; let P1 be a Hamiltonian path of K1 (d, t) − F1 joining o1,2 to o1,j . Therefore,
u, Pi , P3 , Pj , P4 , . . . , Pd−2 , P2 , P1 , v is the required path. Case A2. i = j. Without loss of generality, we assume that i = j = 1. Let A =K1 (d, t)∪ {(o1,r , or,1 ) | 2 ≤ r ≤ d}, B = {or,1 | 2 ≤ r ≤ d}, and C = K(d, t + 1) − A − B. We set FA = F ∩ A, FB = F ∩ B, and FC = F ∩ C. Suppose that |FA | > 0 or |FB | > 0. We consider the graph K˜ 11 (d, t). Let F = FA ∪ {(o1,r , x) | or,1 ∈ F or (o1,r , or,1 ) ∈ F for 2 ≤ r ≤ d}. Obviously, |F | ≤ d − 4. By induction on K˜ 11 (d, t), there exists a Hamiltonian path P1 of K˜ 11 (d, t) − F joining u to v. Thus, path P1 can be written as u, P11 , o1,a , x, o1,b , P12 , v. Since |FA | > 0 or |FB | > 0, |FC | ≤ d − 5. Therefore, H(F) − {1} is Hamiltonian-connected. There exists a Hamiltonian path a = w1 , . . . , wd−1 = b of H(F) − {1} joining vertex a to vertex b. By Lemma 11.29, there is a Hamiltonian path Q of KI (d, t + 1) − F joining oa,1 to ob,1 where I = {w1 , . . . , wd−1 }. Hence, the Hamiltonian path
u, P11 , o1,a , oa,1 , Q, ob,1 , o1,b , P12 , v is the required path.
ch011.tex
30/6/2008
18: 45
Page 218
218
Graph Theory and Interconnection Networks
Suppose that |FA | = 0 and |FB | = 0. Hence, |FC | ≤ d − 4. Therefore, H(F) − {1} is Hamiltonian. Let w1 , . . . , wd−1 , w1 be the Hamiltonian cycle in H(F) − {1} with |{o1,w1 , o1,wd−1 } ∩ {u, v}| = 0. By Lemma 11.30, there exist two disjoint paths R and S such that (1) R joins u to one of the vertices in {o1,w1 , o1,wd−1 }, say o1,w1 , (2) S joins v to o1,wd−1 , and (3) R ∪ S spans K1 (d, t). By Lemma 11.29, there is a Hamiltonian path P of KI (d, t) − F joining ow1 ,1 to owd−1 ,1 , where I = {w1 , . . . , wd−1 }. Hence, the Hamiltonian path u, R, o1,w1 , P, o1,wd−1 , S, v is the required path. Second, we show that K˜ 1 (d, t) is (d − 4) fault-tolerant Hamiltonian-connected for d ≥ 4 and t ≥ 2. Let u and v be any two distinct vertices in K˜ 1 (d, t) and F be the faulty set with |F| ≤ d − 4. We have to show that there exists a Hamiltonian path of K˜ 1 (d, t) − F joining u to v. We construct graph H˜ 1 (F) by setting V (H˜ 1 (F)) = V (H(F)) ∪ {0} and E(H˜ 1 (F)) = E(H(F)) ∪ {(r, 0) | or,0 ∈ / F where 2 ≤ r ≤ d}. Obviously, H˜ 1 (F) is Hamiltonian-connected. Case B1. u ∈ Ki (d, t) and v ∈ Kj (d, t) with i = j. Assume that there exists a Hamiltonian path i = w1 , w2 , . . . , wd+1 = j of H˜ 1 (F) joining i and j that meets the boundary conditions: u = oi,w2 and oj,wd = v. By Lemma 11.28, there exists a Hamiltonian path of K(d, t + 1) − F joining u and v. By Theorem 11.24, there exists such a Hamiltonian path in H˜ 1 (F) that meets the boundary conditions except Cases 2 through 5. We will show that Lemma 11.28 holds when H˜ 1 (F) is isomorphic to K5 − e where e is any edge in K5 , the subgraph N of H˜ 1 (F) induced by V (H˜ 1 (F)) − {i, j} is a complete graph; isomorphic to C2,5 ; isomorphic to C1,n−2 . Case B1.1. H˜ 1 (F) is isomorphic to the complete graph K5 − e for any edge e in K5 . We label the vertices in K5 as 0, 1, . . . , 4. See Figure 11.33a for illustration. By the definition of H˜ 1 (F), {i, j} = {0, 1}. Obviously, d = 4 and |F| = 0. By the symmetric property of H˜ 1 (F), we may assume that (i, j) = (1, 2) or (i, j) = (4, 2). 1. (i, j) = (1, 2). Obviously, i, 4, 0, 3, j and i, 3, 0, 4, j form two orthogonal Hamiltonian paths of H˜ 1 (F). By Lemma 11.28, we can construct a Hamiltonian path between u and v of K˜ 1 (d, t + 1) − F unless (1) (u = oi,4 and v = oj,4 ) or (2) (u = oi,3 and v = oj,3 ).
i i
4
x4
i
1
x1
x2
x3
x d-1
0
x3 x2
x3 3
2
j
x1 x4
x5
x1
x2 xd-1 xd-2
j (a)
(b)
(c)
(d)
j
FIGURE 11.33 Illustrations for Case B1: (a) Case B1.1, (b) Case B1.2, (c) Case B1.3, and (d) Case B1.4.
ch011.tex
30/6/2008
18: 45
Page 219
Optimal k -Fault-Tolerant Hamiltonian Graphs
219
Suppose that u = oi,4 and v = oj,4 . Obviously, i, 3, 4, 0, j is a Hamiltonian path in H˜ 1 (F) satisfying the boundary conditions: u = oi,3 and v = oj,0 . Suppose that u = oi,3 and v = oj,3 . Obviously, i, 4, 3, 0, j is a Hamiltonian path in H˜ 1 (F) satisfying the boundary conditions: u = oi,4 and v = oj,0 . 2. (i, j) = (4, 2). Obviously, i, 0, 3, 1, j and i, 1, 3, 0, j form two orthogonal Hamiltonian paths of H˜ 1 (F). By Lemma 11.28, we can construct a Hamiltonian path between u and v of K˜ 1 (d, t + 1) − F unless (1) (u = oi,0 and v = oj,0 ) or (2) (u = oi,1 and v = oj,1 ). Suppose that u = oi,0 and v = oj,0 . Let Pi be the Hamiltonian path of Ki (d, t) − {u} joining oi,3 to oi,1 ; let P3 be the Hamiltonian path of K3 (d, t) joining o3,0 to o3,2 ; let P1 be the Hamiltonian path of K1 (d, t) joining o1,2 to o1,4 ; Pj be the Hamiltonian path of Kj (d, t) joining oj,1 to v. Therefore, path u, x, P3 , Pi , P1 , Pj , v is the required path. Suppose that u = oi,1 and v = oj,1 . Let Pi be the Hamiltonian path of Ki (d, t) − {u} joining oi,3 to oi,0 ; let P3 be the Hamiltonian path of K3 (d, t) joining o3,1 to o3,2 ; let P1 be the Hamiltonian path of K1 (d, t) joining o1,i to o1,3 ; let Pj be the Hamiltonian path of Kj (d, t) joining oj,0 to v. Therefore, path u, P1 , P3 , Pi , x, Pj , v is the required path. Case B1.2. The subgraph N of H˜ 1 (F) induced by V (H˜ 1 (F)) − {i, j} is a complete graph; vertex i is adjacent to j and all vertices in N; j is adjacent to i and exactly two vertices; say, x1 and x2 , in N. Since degH˜ 1 (F) (0) < d, x1 or x2 is not vertex 0. We label the remaining vertices in N as x3 , . . . , xd−1 . See Figure 11.33b for illustration. It is easy to see that i, x2 , x3 , . . . , xd−1 , x1 , j and i, x3 , . . . , xd−1 , x1 , x2 , j form two orthogonal Hamiltonian paths of H˜ 1 (F) between i and j. By Lemma 11.28, we can construct a Hamiltonian path between u and v of K˜ 1 (d, t + 1) − F unless (1) (u = oi,x2 and v = oj,x2 ) or (2) (u = oi,x3 and v = oj,x1 ). Suppose that u = oi,x2 and v = oj,x2 . Obviously, i, x3 , x2 , x4 , . . . , xd−1 , x1 , j is a Hamiltonian path in H˜ 1 (F) satisfying the boundary conditions: u = oi,x3 and v = oj,x1 . Suppose that u = oi,x3 and v = oj,x1 . The Hamiltonian path i, x1 , xd−1 , . . . , x3 , x2 , j in H˜ 1 (F) satisfying the boundary conditions: u = oi,x1 and v = oj,x2 . By Lemma 11.28, we can construct a Hamiltonian paths between u and v of K˜ 1 (d, t + 1) − F. Case B1.3. The subgraph N of H˜ 1 (F) induced by V (H˜ 1 (F)) − {i, j} is isomorphic to C2,5 ; vertex i is adjacent to j and all vertices in N; j is adjacent to i and all vertices in N. We label the vertices of C2,5 as indicated in Figure 11.33c. Obviously, d = 6 and |F| = 2. Thus, |E(N)| = 3 and degN (x1 ) = degN (x3 ) = degN (x5 ) = 2. It is easy to see that i, x1 , x2 , x3 , x4 , x5 , j and i, x5 , x4 , x3 , x2 , x1 , j form two orthogonal Hamiltonian paths of H˜ 1 (F) between i and j. By Lemma 11.28, we can construct a Hamiltonian path between u and v of K˜ 1 (d, t + 1) − F unless (1) (u = oi,x1 and v = oj,x1 ) or (2) (u = oi,x5 and v = oj,x5 ). By the symmetric property of H˜ 1 (F), we consider only the case u = oi,x1 and v = oj,x1 . Since |Fi | = |Fj | = 0, Kj (d, t) − (Fj ∪ {oj,x1 }) is Hamiltonian-connected. Let Pj be the Hamiltonian path of Kj (d, t) − (Fj ∪ {oj,x1 }) joining oj,x5 to oj,x3 . Let l be the index that xl is vertex 0 in N. By induction, Kq (d, t) − Fq is Hamiltonian-connected for q ∈ {i, x1 , . . . , x5 } − {xl }. Let Pi be the Hamiltonian path of Ki (d, t) − Fi joining u to oi,x2 ; let P1 be the Hamiltonian path of K1 (d, t) − F1 joining ox1 ,x4 to ox1 ,j if l = 1 and P1 = {x} if otherwise; let P2 be the Hamiltonian path of K2 (d, t) − F2 joining ox2 ,i to
ch011.tex
220
30/6/2008
18: 45
Page 220
Graph Theory and Interconnection Networks
ox2 ,x5 ; let P3 be the Hamiltonian path of K3 (d, t) − F3 joining ox3 ,j to ox3 ,x4 if l = 3 and P3 = {x} if otherwise; let P4 be the Hamiltonian path of K4 (d, t) − F4 joining ox4 ,x3 to ox4 ,x1 ; let P5 be the Hamiltonian path of K5 (d, t) − F5 joining ox5 ,x2 to ox5 ,j if l = 5 and P5 = {x} if otherwise. Therefore, path u, Pi , P2 , P5 , Pj , P3 , P4 , P1 , v is the required path. Case B1.4. The subgraph N of H˜ 1 (F) induced by V (H˜ 1 (F)) − {i, j} is isomorphic to C1,n−2 ; vertex i is adjacent to j and all the vertices in N; j is adjacent to i and all the vertices in N. We label the vertices of C1,n−2 as indicated in Figure 11.33d. Obviously, E(N) = d − 3 and degN (1) = d − 3. It is easy to see that i, x1 , x2 , . . . , xd−1 , j and
i, xd−1 , xd−2 , . . . , x1 , j form two orthogonal Hamiltonian paths of H˜ 1 (F) between i and j. By Lemma 11.28, we can construct a Hamiltonian path between u and v in K˜ 1 (d, t + 1) − F unless (1) (u = oi,xd−1 and v = oj,xd−1 ) or (2) (u = oi,x1 and v = oj,x1 ). Suppose that u = oi,xd−1 and v = oj,xd−1 . Obviously, i, x3 , xd−1 , . . . , x4 , x2 , x1 , j is a Hamiltonian path in H˜ 1 (F) satisfying the boundary conditions: u = oi,x3 and v = oj,x1 . By Lemma 11.28, we can construct a Hamiltonian path between u and v in K˜ 1 (d, t + 1) − F. Suppose that u = oi,x1 and v = oj,x1 . Since |Fi | = |Fj | = 0, Kj (d, t) − {oj,x1 } is Hamiltonian-connected. Let Pj be the Hamiltonian path of Kj (d, t) − {oj,x1 } joining oj,x3 to oj,x4 . Let l be the index that xl is vertex 0 in N. By induction, Kq (d, t) − Fq is Hamiltonian-connected for q ∈ {i, x2 , . . . , xd−1 } − {xl }. Let Pi be the Hamiltonian path of Ki (d, t) joining u to oi,x3 ; let P3 be the Hamiltonian path of K3 (d, t) − F3 joining ox3 ,i to ox3 ,j if l = 3 and P3 = {x} if otherwise. Suppose l = 4; let P4 be the Hamiltonian path of K4 (d, t) − F4 joining ox4 ,j to ox4 ,x5 if d ≥ 7 and let P4 be the Hamiltonian path of K4 (d, t) − F4 joining ox4 ,j to ox4 ,x2 if d = 6. Suppose l = 4; let P4 = {x}. Let Pq be a Hamiltonian path of Kq (d, t) − Fq joining oxq ,xq−1 to oxq ,xq+1 for 4 ≤ q ≤ d − 2 if l = q and Pq = {x} if otherwise; let Pd−1 be the Hamiltonian path of Kd−1 (d, t) − Fd−1 joining oxd−1 ,xd−2 to oxd−1 ,x2 if l = d − 1 and Pd−1 = {x} if otherwise; let P2 be a Hamiltonian path of K2 (d, t) − F2 joining ox2 ,xd−1 to ox2 ,x1 ; let P1 be a Hamiltonian path of K1 (d, t) − F1 joining ox1 ,x2 to ox1 ,j if l = 1 and P1 = {x} if otherwise. Therefore, path
u, Pi , P3 , Pj , P4 , . . . , Pd−1 , P2 , P1 , v is the required path. Case B2. u ∈ Ki (d, t) and v is the vertex x. Since |F| ≤ d − 4, |F ∩ K(d, t + 1)| ≤ d − 4 and there exists at least one vertex or,x with {or,x , (or,x , x)} ∩ F = ∅. With the previous proof, K(d, t + 1) − F is Hamiltonian-connected. There exists a Hamiltonian path P1 of K(d, t + 1) − F joining u to or,x . Hence, Hamiltonian path u, P1 , or,x , x = v is the required path. Case B3. u, v ∈ Ki (d, t). Let A = Ki (d, t) ∪ {(oi,r , or,i ) | 1 ≤ r = i ≤ d}, B = {or,i | 1 ≤ r = i ≤ d}, and C = K(d, t + 1) − {(oi,x , x)} − A − B. We set FA = F ∩ A, FB = F ∩ B, and FC = F ∩ C. Suppose that |FA | > 0 or |FB | > 0. Consider the graph K˜ ii (d, t). Let F = FA ∪ {(oi,r , x) | or,i ∈ F or (oi,r , or,i ) ∈ F for 1 ≤ r = i ≤ d}. Obviously, |F | ≤ d − 4. By induction on K˜ ii (d, t), there exists a Hamiltonian path Pi of K˜ ii (d, t) − F joining u to v. Path Pi can be written as u, Pi1 , oi,a , x, oi,b , Pi2 , v. Since |FA | > 0 or |FB | > 0, |FC | ≤ d − 4. Therefore, H˜ 1 (F) − {i} is Hamiltonian-connected. There exists a Hamiltonian path a = w1 , . . . , b = wd of H˜ 1 (F) − {i} joining vertex a to vertex b. By
ch011.tex
30/6/2008
18: 45
Page 221
Optimal k -Fault-Tolerant Hamiltonian Graphs
221
Lemma 11.29, there is a Hamiltonian path Q of KI (d, t + 1) − F joining oa,i to ob,i where I = {w1 , . . . , wd }. Hence, Hamiltonian path u, Pi1 , oi,a , oa,i , Q, ob,i , oi,b , Pi2 , v is the required path. Suppose that |FA | = 0 and |FB | = 0. Hence, |FC | ≤ d − 3. Therefore, we know that H˜ 1 (F) − {i} is Hamiltonian. Let w1 , . . . , wd , w1 be the Hamiltonian cycle in H˜ 1 (F) − {i} with |{oi,w1 , oi,wd } ∩ {u, v}| = 0. By Lemma 11.30, there exist two disjoint paths R and S such that (1) R joins u to one of the vertices in {oi,w1 , oi,wd }, say oi,w1 , (2) S joins v to oi,wd , and (3) R ∪ S spans Ki (d, t). By Lemma 11.29, there is a Hamiltonian path P of KI (d, t) − F joining ow1 ,i to owd ,i , where I = {w1 , . . . , wd }. Hence, the Hamiltonian path u, R, oi,w1 , P, oi,wd , S, v is the required path. THEOREM 11.25 Hfκ (K(d, t)) = d − 4 for d ≥ 4 and t ≥ 1. Proof: Since δ(K(d, t)) = d − 1, Hfκ (K(d, t)) ≤ d − 4. By Lemma 11.31, K(d, t) is (d − 4) fault-tolerant Hamiltonian-connected. Therefore, Hfκ (K(d, t)) = d − 4 for d ≥ 4 and t ≥ 1.
11.8
FAULT-TOLERANT HAMILTONICITY OF THE FULLY CONNECTED CUBIC NETWORKS
Adding an extra vertex to the WK-recursive networks provides a technique to evaluate the corresponding fault-tolerant Hamiltonicity. Ho and Lin [148] use a similar technique to evaluate the fault-tolerant Hamiltonicity of the fully connected cubic networks. Hierarchical interconnection networks (HINs) are appealing, mainly due to the following reasons: 1. They can provide good expandability. That is, with the growing size of the multicomputer systems, the alterations in both hardware configuration and communication software of each vertex can be minimized. 2. Compared with some nonhierarchical interconnection networks, such as the hypercube, they can integrate more vertices by using the same number of links. 3. They can integrate the positive features of two or more nonhierarchical networks. 4. They can be applied to new hybrid computer architectures utilizing both optical and electronic technologies. Specifically, processors are partitioned into two groups, where electronic interconnects are used to connect processors within the same group, and optical interconnects are used for intergroup communication. In the past decade, a number of HINs were proposed. There are two different kinds of HINs: (1) HINs that consist of exactly two levels [82,125,177,264,265,336] and (2) HINs that can be defined recursively until a prescribed number of levels is reached [78,331,352,354]. The recursively defined HINs are desired because of their excellent
ch011.tex
30/6/2008
18: 45
222
Page 222
Graph Theory and Interconnection Networks
expandability. The fully connected cubic networks (FCCNs), proposed in Ref. 331, are a class of HINs that are defined recursively by taking the three-dimensional cube as the basic graph. It indicates that FCCNs are a class of newly proposed hierachical networks for multisystems, which enjoy the strengths of constant vertex degree and good expandability. Some interesting properties about FCCNs are discussed in Ref. 331. In particular, Yang et al. [348] present a shortest-path routing algorithm. Let Z8 = {0, 1, 2, 3, 4, 5, 6, 7}. For m ≥ 1 and a ∈ Z8 , let am = aa . . . a. m
For n ≥ 1, an n-level FCCN, FCCNn , is a graph defined recursively as follows: 1. FCCN1 is a graph with V (FCCN1 ) = Z8 and E(FCCN1 ) = {(0, 1), (0, 2), (1, 3), (2, 3), (4, 5), (4, 6), (5, 7), (6, 7), (0, 4), (1, 5), (2, 6), (3, 7)}. Obviously, FCCN1 is isomorphic to Q3 . 2. When n ≥ 2, FCCNn is built from eight vertex-disjoint copies of FCCNn−1 by adding 28 edges. For 0 ≤ k ≤ 7, we let kFCCNn−1 denote a copy of FCCNn−1 with each vertex being prefixed with k, then FCCNn is defined by V (FCCNn ) =
7 #
V (kFCCNn−1 )
k=0
$
E(FCCNn ) =
7 #
% E(kFCCNn−1 ) ∪ {(pqn−1 , qpn−1 ) | 0 ≤ p < q ≤ 7}
k=0
Let n ≥ 2. A vertex v in FCCNn is a boundary vertex if it is of the form pn and v is an intercubic vertex if it is of the form pqn−1 with p = q. An intercubic edge is an edge joining two intercubic vertices. Figures 11.34a through 11.34c show FCCN1 , FCCN2 , and FCCN3 . In essence, each vertex of an FCCN has four links, with each boundary vertex having one I/O channel link that is not counted in the vertex degree. Obviously, iFCCNn−1 has seven intercubic vertices and one boundary vertex for 0 ≤ i ≤ 7. In order to discuss the fault-tolerant Hamiltonicity and fault-tolerant Hamiltonian connectivity of fully connected cubic networks, we need to introduce the extended fully connected cubic networks. For every t ∈ Z8 , the extended fully connected cubic network FCCNnt is the graph obtained from FCCNn by joining the vertices in the set {pn | p ∈ Z8 − {t}} to an extra vertex w. For example, FCCN20 is illustrated in j Figure 11.34d. Note that FCCNni is isomorphic to FCCNn for every i, j in Z8 . We 0 discus only FCCNn . Since FCCNn has 64 vertices and FCCNn0 has 65 vertices, we can check the following two lemmas by brute force. LEMMA 11.32 FCCN2 and FCCN20 are Hamiltonian-connected. LEMMA 11.33 FCCN2 − f is Hamiltonian for any f ∈ V (FCCN2 ) ∪ E(FCCN2 ) with |f | = 1. Moreover, FCCN20 − f ∗ is Hamiltonian for any f ∗ ∈ V (FCCN20 ) ∪ E(FCCN20 ) with |f ∗ | = 1.
ch011.tex
30/6/2008
18: 45
Page 223
Optimal k -Fault-Tolerant Hamiltonian Graphs
223 66 77
44 55 41 26
27
50 37
25
24 22 20
23 33
21
31
(a)
06
07 16
05
04
17 15
14
03
02
12
13
01
00
10
11
(b) 666
777
444
66
77
44
55
555 41 26
27
222
22
333 221
50 37
25
24
20
33
21
330 066
077
044 022
055 033
000
31 06
011
166
177
144 122
155 133
100
(c)
111
w
23
07 05
04 02
03
16
17
14 12
00
15 13
01 10
11
(d)
FIGURE 11.34 The graphs (a) FCCN1 , (b) FCCN2 , (c) FCCN3 , and (d) FCCN20 .
LEMMA 11.34
Both FCCNn and FCCNn0 are Hamiltonian-connected for n ≥ 2.
Proof: We prove this lemma by induction. With Lemma 11.32, the statement holds for n = 2. We assume that the statement holds for l with 2 ≤ l ≤ n. First, we prove that FCCNn+1 is Hamiltonian-connected. Let u and v be any two distinct vertices in FCCNn+1 . We need to find a Hamiltonian path of FCCNn+1 joining u to v. Suppose that u ∈ bFCCNn and v ∈ eFCCNn with b = e. Let k0 , k1 , . . . , k7 be any n permutation of Z8 such that k0 = b, k7 = e, u = k0 k1n , and v = k7 k6n . Let xi = ki ki−1 n for 1 ≤ i ≤ 7, yj = kj kj+1 for 0 ≤ j ≤ 6, x0 = u, and y7 = v. By induction, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 0 ≤ i ≤ 7. Obviously, P = u, P0 , P1 , . . . , P7 , v forms a Hamiltonian path of FCCNn+1 joining u to v. Suppose that {u, v} ⊂ bFCCNn . By induction hypothesis, there is a Hamiltonian path Pb of bFCCNnb joining u and v. Obviously, Pb can be written as u, Pb1 , bk1n , w, bk7n , Pb2 , v. Clearly, b ∈ / {k1 , k7 }. Let k2 , k3 , . . . , k6 be any permutation of
ch011.tex
30/6/2008
224
18: 45
Page 224
Graph Theory and Interconnection Networks
n and y = k k n for 1 ≤ i ≤ 7. By Z8 − {b, k1 , k7 }. We set k8 = k0 = b. Let xi = ki ki−1 i i i+1 induction, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 1 ≤ i ≤ 7. Obviously, P = u, Pb1 , P1 , . . . , P7 , Pb2 , v forms a Hamiltonian path of FCCNn+1 joining u to v. 0 is Hamiltonian-connected. Let u and v be any Second, we prove that FCCNn+1 0 0 two distinct vertices in FCCNn+1 . We need to find a Hamiltonian path of FCCNn+1 joining u to v. Suppose that u ∈ bFCCNn and v is the extra vertex w. Let k0 , k1 , . . . , k7 be n any permutation of Z8 such that k0 = b, u = k0 k1n , and k7 = 0. Let xi = ki ki−1 n for 1 ≤ i ≤ 7, yj = kj kj+1 for 0 ≤ j ≤ 6, x0 = u, and y7 = k7n+1 . By induction, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 0 ≤ i ≤ 7. Obviously, 0 P = u, P0 , P1 , . . . , P7 , v = w forms a Hamiltonian path of FCCNn+1 joining u to v. Suppose that u ∈ bFCCNn and v ∈ eFCCNn with b = e. Let k0 , k1 , . . . , k7 be any / {k1 , k2 }. permutation of Z8 such that k0 = b, k7 = e, u = k0 k1n , v = k7 k6n , and 0 ∈ n n Let xi = ki ki−1 for 3 ≤ i ≤ 7, yj = kj kj+1 for 2 ≤ j ≤ 6, x0 = u, x1 = k1 k0n , x2 = k2n+1 , y0 = k0 k1n , y1 = k1n+1 , and y7 = v. By induction, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 0 ≤ i ≤ 7. Obviously, P = u, P0 , P1 , w, P2 , . . . , P7 , v 0 joining u to v. forms a Hamiltonian path of FCCNn+1 Suppose that {u, v} ⊂ bFCCNn . By induction hypothesis, there exists a Hamiltonian path Pb of bFCCNnb joining u and v. Obviously, Pb can be written as u, Pb1 , bk1n , / {k1 , k7 }. Obviously, at least one of k1 and k7 is not 0. w, bk7n , Pb2 , v. Clearly, b ∈ Without loss of generality, we assume k1 = 0. Let k2 , k3 , . . . , k6 be any permutation n for 3 ≤ i ≤ 7, y = of Z8 − {b, k1 , k7 } such that k2 = 0. We set k8 = b. Let xi = ki ki−1 i n+1 n+1 n n ki ki+1 for 2 ≤ i ≤ 7, x1 = k1 b , x2 = k2 , and y1 = k1 . By induction, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 1 ≤ i ≤ 7. Obviously, P = u, Pb1 , 0 joining u to v. P1 , w, P2 , . . . , P7 , Pb2 , v forms a Hamiltonian path of FCCNn+1
THEOREM 11.26 (Ho [148]) Hfκ (FCCNn ) = 0 if n ≥ 2 and is undefined if n = 1. Proof: Assume n ≥ 2. With Lemma 11.34, we have proved that Hfκ (FCCNn ) ≥ 0. Obviously, 0n is a boundary vertex of FCCNn with exactly three neighbors; say, x, y and z. It is easy to see that there is no Hamiltonian path of FCCNn − {x} joining y to z. Thus, FCCNn − {x} is not Hamiltonian-connected. Thus, Hfκ (FCCNn ) = 0 if n ≥ 2. Note that FCCN1 is isomorphic to Q3 . Since Q3 is a bipartite graph with eight vertices, there is no Hamiltonian path joining two vertices in the same partite set. Thus, FCCN1 is not Hamiltonian-connected. Therefore, Hfκ (FCCN1 ) is undefined. LEMMA 11.35 nian for n ≥ 2.
(Ho [148]) Both FCCNn and FCCNn0 are 1 fault-tolerant Hamilto-
Proof: We prove this lemma by induction. It is sufficient to prove that a graph G is 1 fault-tolerant Hamiltonian by proving that G − f is Hamiltonian for any f ∈ V (G) ∪ E(G) with |f | = 1. By Lemma 11.33, the statement holds for n = 2. We assume the statement holds for l with 2 ≤ l ≤ n. First, we prove that FCCNn+1 − f is Hamiltonian.
ch011.tex
30/6/2008
18: 45
Page 225
Optimal k -Fault-Tolerant Hamiltonian Graphs
225
Suppose that f ∈ V (bFCCNn ) ∪ E(bFCCNn ). By induction, there is a Hamiltonian cycle w, bk7n , Pb , bk1n , w of bFCCNnb − f . Let k2 , k3 , . . . , k6 be any permutation n n and yi = ki ki+1 for 1 ≤ i ≤ 7. of Z8 − {b, k1 , k7 }. We set k0 = k8 = b. Let xi = ki ki−1 By Theorem 11.25, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 1 ≤ i ≤ 7. Obviously, bk7n , Pb , P1 , . . . , P7 , bk7n forms a Hamiltonian cycle for FCCNn+1 − f . Suppose that f is an intercubic edge between bFCCNn and eFCCNn . Thus, f = (ben , ebn ). Let k0 , k1 , . . . , k7 be any permutation of Z8 such that k0 = b and k2 = e. n n for 1 ≤ i ≤ 7, yj = kj kj+1 for 0 ≤ j ≤ 6, x0 = k0 k7n , and y7 = k7 k0n . By Let xi = ki ki−1 Theorem 11.25, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 0 ≤ i ≤ 7. Obviously, bk7n , P0 , P1 , . . . , P7 , bk7n forms a Hamiltonian cycle for FCCNn+1 − f . 0 − f is Hamiltonian. Second, we prove that FCCNn+1 0 − {w} = FCCN Suppose that f is the extra vertex w. Obviously, FCCNn+1 n+1 . By 0 0 −f Theorem 11.25, FCCNn+1 − {w} is Hamiltonian-connected. Therefore, FCCNn+1 is Hamiltonian. Suppose that f ∈ V (bFCCNn ) ∪ E(bFCCNn ). By the induction hypothesis, there is a Hamiltonian cycle C of bFCCNnb − f . Since C can be traversed forward and backward, we can assume that C = w, bk7n , Pb , bk1n , w with k1 = 0. Let k2 , k3 , . . . , k6 be n any permutation of Z8 − {b, k1 , k7 } such that k2 = 0. We set k8 = b. Let xi = ki ki−1 n+1 n+1 n n for 3 ≤ i ≤ 7, yj = kj kj+1 for 2 ≤ j ≤ 7, x1 = k1 b , x2 = k2 , and y1 = k1 . By Theorem 11.25, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 1 ≤ i ≤ 7. Obviously, bk7n , Pb , P1 , w, P2 , . . . , P7 , bk7n forms a Hamiltonian cycle for 0 −f. FCCNn+1 Suppose that f is an edge of the form (r n+1 , w). Let b and e be two indices with {b, e} ∩ {0, r} = ∅. By Theorem 11.25, there is a Hamiltonian path P of FCCNn+1 joining bn+1 to en+1 . Obviously, w, bn+1 , P, en+1 , w forms a Hamiltonian cycle for 0 −f. FCCNn+1 Suppose that f is an intercubic edge between bFCCNn and eFCCNn . Thus, f = (ben , ebn ). Let k0 , k1 , . . . , k7 be any permutation of Z8 such that k0 = b, k1 = 0, n for 3 ≤ i ≤ 7, y = k k n n k2 = 0, and k3 = e. Let xi = ki ki−1 j j j+1 for 2 ≤ j ≤ 6, x0 = k0 k7 , x1 = k1 k0n , x2 = k2n+1 , y0 = k0 k1n , y1 = k1n+1 , and y7 = k7 k0n . By Theorem 11.25, there exists a Hamiltonian path Pi of iFCCNn joining xi to yi for 0 ≤ i ≤ 7. Obviously, 0 −f.
bk7n , P0 , P1 , w, P2 , . . . , P7 , bk7n forms a Hamiltonian cycle for FCCNn+1 THEOREM 11.27 Hf (FCCNn ) = 1 if n ≥ 2 and Hf (FCCN1 ) = 0. Proof: Assume that n ≥ 2. With Lemma 11.35, we have proved that Hfκ (FCCNn ) ≥ 1. Obviously, 0n is a boundary vertex of FCCNn with exactly three neighbors; say, x, y, and z. Since there is only one vertex z adjacent to 0n in FCCNn − {x, y}, FCCNn − {x, y} is not Hamiltonian. Thus, Hf (FCCNn ) = 1 if n ≥ 2. Note that FCCN1 is isomorphic to Q3 . It is easy to check whether Q3 is Hamiltonian but Q3 − {0} is not Hamiltonian. Therefore, Hf (FCCN1 ) = 0.
ch011.tex
30/6/2008
18: 45
Page 226
ch012.tex
30/6/2008
12 12.1
11: 27
Page 227
Optimal 1-Fault-Tolerant Hamiltonian Graphs
INTRODUCTION
From previous discussions, we have several methods that recursively construct kregular (k − 2)-fault-tolerant Hamiltonian graphs for large k. Thus, we should put some effort on k-regular (k − 2)-fault-tolerant Hamiltonian graphs for small k. A lot of optimal 1-Hamiltonian graphs have been proposed [140,182,256,333,335]. For any 1-Hamiltonian regular graph, it is proved that the graph is optimal if and only if the graph is 3-regular [183,334]. In this chapter, we are interested only in optimal 1Hamiltonian regular graphs. Families of optimal 1-Hamiltonian regular graphs were proposed by Harary and Hayes [139,140], Mukhopadhyaya and Shani [256], Wang, Hung, and Hsu [333], and Hung, Hsu, and Sung [183]. From the mathematical point of view, it would be interesting to characterize all optimal 1-Hamiltonian regular graphs. One strategy to characterize all optimal 1-Hamiltonian regular graphs is to find some basic graphs and construction schemes with the hope that we can construct all optimal 1-Hamiltonian regular graphs. We also hope that these basic graphs and construction schemes are as simple as possible. In this chapter, we present some construction schemes for 3-regular 1-faulttolerant Hamiltonian graphs. Then, we discuss some families of 3-regular 1-faulttolerant Hamiltonian graphs. We have also observed that several interconnection networks are recursively constructed. Based on the recursive structure, we can use induction to prove that such networks are not only optimal fault-tolerant Hamiltonian but also optimal fault-tolerant Hamiltonian-connected. For a while, we were wondering whether any optimal k-faulttolerant Hamiltonian graph is optimal (k − 1)-fault-tolerant Hamiltonian-connected. Here, we will concentrate on the special case of k = 1. Note that a 1-vertex fault-tolerant Hamiltonian graph is a Hamiltonian graph such that G − f remains Hamiltonian for any f ∈ V (G). There is another family of graph called the hypohamiltonian graph, which is very close to 1-vertex fault-tolerant hamiltonian graph. A hypohamiltonian graph is a non-Hamiltonian graph such that G − f is Hamiltonian for any f ∈ V (G). There are numerous studies on hypohamiltonian graphs. Readers can refer to Ref. 156 for a survey of hypohamiltonian graphs. A graph G is 1edge fault-tolerant Hamiltonian if G − e is Hamiltonian for any e ∈ E(G). Obviously, any 1-edge fault-tolerant Hamiltonian graph is Hamiltonian. Kao et al. [192] show that the concepts of cubic 1-vertex fault-tolerant Hamiltonian graphs, cubic 1-edge fault-tolerant Hamiltonian graphs, and cubic Hamiltonianconnected graphs are independent of one another even if we restrict our attention to planar graphs. Let U be the set of cubic planar Hamiltonian graphs, A the set of 227
ch012.tex
30/6/2008
11: 27
228
Page 228
Graph Theory and Interconnection Networks
1-vertex fault-tolerant Hamiltonian graphs in U, B the set of 1-edge fault-tolerant Hamiltonian graphs in U, and C the set of Hamiltonian-connected graphs in U. With the inclusion or exclusion of the sets A, B, and C, the set U is divided into eight subsets; namely, A ∩ B ∩ C, A ∩ B ∩ C, A ∩ B ∩ C, A ∩ B ∩ C, A ∩ B ∩ C, A ∩ B ∩ C, A ∩ B ∩ C, and A ∩ B ∩ C. We will prove that there is an infinite number of elements in each of the eight subsets. We have seen several variations of Hamiltonian undirected graphs, such as kvertex fault-tolerant Hamiltonian graphs, k-edge fault-tolerant Hamiltonian graphs, and k-fault-tolerant Hamiltonian graphs. It is very natural to explore the corresponding study on directed graphs. However, not too many results are known. We study only the case where k = 1. It is easy to see that any 1-vertex fault-tolerant Hamiltonian 2-regular directed graph is optimal with respect to the property of 1-vertex fault-tolerant Hamiltonian. Similar statements hold for the 1-edge fault-tolerant Hamiltonian directed graph and the 1-fault-tolerant Hamiltonian directed graph. In this chapter, we discuss the corresponding properties with respect to the family of double loop networks.
12.2
3-JOIN
Wang et al. [334] proposed the operator, 3-join, to combine two cubic graphs. Let G1 and G2 be two graphs. We assume that V (G1 ) ∩ V (G2 ) = ∅. Let x be a vertex of a graph. We use N(x) to denote an ordered set that consists of all the neighbors of x. That is, N(x) is an ordering of all of the neighbors of x. Hence, we use N(x) as an ordered set. The 3-join, as illustrated in Figure 12.1, is defined as follows. Suppose that x is a vertex of degree 3 in G1 and y a vertex of degree 3 in G2 . Moreover, assume that N(x) = {x1 , x2 , x3 } and N( y) = {y1 , y2 , y3 }. The 3-join of G1 and G2 at x and y is a graph K given by V (K) = (V (G1 ) − {x}) ∪ (V (G2 ) − {y}) E(K) = (E(G1 ) − {(x, xi ) | 1 ≤ i ≤ 3}) ∪ (E(G2 ) − {( y, yi ) | 1 ≤ i ≤ 3}) ∪ {(xi , yi ) | 1 ≤ i ≤ 3} We note that different N(x) and N( y) generate different 3-joins of G1 and G2 at x and y. For example, as illustrated in Figure 12.1, given N( y) = {y1 , y2 , y3 }, the 3-join of G1 and G2 at x and y with N(x) = {x1 , x2 , x3 } is different from the one with N(x) = {x2 , x1 , x3 }. Thus, each 3-join of G1 and G2 at x and y is uniquely determined by N(x) and N( y). In particular, G = J(G1 , N(x); G2 , N( y)) is the node expansion of G at x if G2 = K4 . y1
y1 x1 x2 x 3
y2 y3
(a)
FIGURE 12.1 Examples of 3-joins of two cubic graphs.
x1 x2 x 3
y2 y3
(b)
ch012.tex
30/6/2008
11: 27
Page 229
Optimal 1-Fault-Tolerant Hamiltonian Graphs
229
Let x be a vertex of degree 3 in graph G1 , and y be a vertex of degree 3 in graph G2 . A graph K is said to be a 3-join of G1 and G2 if K is a 3-join of G1 and G2 at x and y with some N(x) and some N( y). Clearly, 3-joins of two cubic graphs G1 and G2 are still cubic. THEOREM 12.1 Suppose that G1 and G2 are two graphs and K is a 3-join of G1 and G2 . Then K is a 1-fault-tolerant Hamiltonian graph if both G1 and G2 are 1-fault-tolerant Hamiltonian graphs. Proof: Assume that K is a 3-join of G1 and G2 at x and y with N(x) = {x1 , x2 , x3 } and N( y) = {y1 , y2 , y3 }. Let f be any fault, vertex, or edge, of K. Suppose that f = (xi , yi ) for all 1 ≤ i ≤ 3. Without loss of generality, we may assume that f ∈ (V (G1 ) − {x}) ∪ (E(G1 ) − {(x, xi ) | 1 ≤ i ≤ 3}). Since G1 is 1-faulttolerant Hamiltonian, it follows that there is a Hamiltonian cycle H1 in G1 − f . Obviously, H1 can be written as x, xi , P, xj , x, where i, j ∈ {1, 2, 3}. Let k be the unique element in {1, 2, 3} − {i, j}. Since G2 is 1-fault-tolerant Hamiltonian, there is a Hamiltonian cycle H2 in G2 − ( y, yk ), which can be written as y, yi , Q, yj , y. Obviously, xi , P, xj , yj , Q, yi , xi forms a Hamiltonian cycle of K − f . Suppose that f = (xi , yi ) for some i. Without loss of generality, we may assume that f = (x1 , y1 ). Let H1 be a Hamiltonian cycle of G1 − (x, x1 ), which can be written as
x, x2 , P, x3 , x. Let H2 be a Hamiltonian cycle of G2 − ( y, y1 ), which can be written as y, y2 , Q, y3 , y. Obviously, x2 , P, x3 , y3 , Q, y2 , x2 forms a Hamiltonian cycle of K − f . Hence, the theorem is proved.
12.3
CYCLE EXTENSION
Wang et al. [334] also proposed the following operation. Suppose that G is a graph and C = x0 , x1 , . . . , xk−1 , x0 is a cycle of G, where k ≥ 3 is an arbitrary integer. We introduce an operation called cycle extension that includes two aspects: first, augment G by replacing each edge in C with a path of odd length, and second, add a new cycle to the augmented graph in a specific manner. To be specific, we define cycle extension as follows. The cycle extension of G around C is a graph denoted by ExtC (G) and given as follows: #
V (ExtC (G)) =
{pi, j , qi, j | ∀1 ≤ j ≤ li } ∪ V (G)
0≤i≤k−1
E(ExtC (G)) = (E(G) − E(C)) ∪ ∪
#
#
{( pi, j , qi, j ) | ∀1 ≤ j ≤ li }
0≤i≤k−1
({(xi , pi,1 ), ( pi,li , xi+1 )} ∪ {( pi, j , pi,j+1 ) | ∀1 ≤ j ≤ li − 1})
0≤i≤k−1
∪
#
0≤i≤k−1
where li is even for all i.
({(qi, j , qi,j+1 ) | ∀1 ≤ j ≤ li − 1} ∪ {(qi,li , qi+1,1 )})
ch012.tex
30/6/2008
11: 27
Page 230
230
Graph Theory and Interconnection Networks
q 0,2
q0,1
q 0,4
q 0,3
q 0,5
q 0,6
q 0,7
q 0,8
q5,4
x0 q5,3
q5,2
p0,3 p0,4 p0,5 p0,6 p 0,7 p p0,1 p0,2 0,8
q1,1
x1
p5,4 p5,3
p1,1 p1,2
p5,2 p5,1 x p4,2
p1,3 p1,4
5
q5,1
p4,1
p3,4 p
x4
3,3
p3,2 p3,1
p2,2
p2,1
q1,3
x2
x3
q1,4
q4,2 q4,1
q1,2
q2,1 q3,4
q3,3 q3,2 q3,1
q2,2
FIGURE 12.2 An example of ExtC (G).
" The cycle induced by the vertices 0≤i≤k−1 {qi, j | ∀1 ≤ j ≤ li } is called the extended cycle of C, denoted by OC . An example of ExtC (G) is illustrated in Figure 12.2, where C is represented by darkened edges, and OC by dashed edges. Here, we adopt the following notion: • • • •
C = x0 , x1 , . . . , xk−1 , x0 li : an even integer that is the number of vertices in ExtC (G) added between xi and xi+1 pi, j : a vertex in ExtC (G) added between xi and xi+1 qi, j : the vertex in ExtC (G) that is adjacent to pi, j
Again, we focus our discussion of cycle extensions on cubic graphs only. Hence, we suppose that G is cubic in the following discussion of cycle extensions. We use zi to denote the unique neighbor of xi that is not in C. The addition and subtraction involved in the subscript or index of a vertex in a cycle is taken modulo k, where k denotes the length of the cycle or k is clear from the context without ambiguity. For example, (xi , xi+1 ) for i = k − 1 in C is simply (xk−1 , x0 ), and (qi−1,li−1 , qi,1 ) in OC for i = 0 is simply (qk−1,lk−1 , q0,1 ). Suppose that H is a cycle of G. Let HC∗ denote the cycle in ExtC (G) obtained from H by replacing all (xj , xj+1 ) in E(H) ∩ E(C) with xj , pj,1 , pj,2 , . . . , pj,lj , xj+1 . Moreover, H denotes the cycle obtained from OC by replacing every
qi,1 , qi,2 , qi,3 , . . . , qi,li with qi,1 , pi,1 , pi,2 , qi,2 , qi,3 , pi,3 , . . . , pi,li , qi,li if pi,1 , pi,2 , . . . , pi,li is not a subpath in HC∗ . Now, we introduce six operations M1 (H, e, j), M2 (H, e), and Mi (H, x) for 3 ≤ i ≤ 6 that augment the cycle H of G to a cycle of ExtC (G) with respect to some edge e = (xi , xi+1 ) or vertex x = xi or x = xi+1 in C and a specific j. We use M1 (H, e, j), M2 (H, e), and Mi (H, x) to mean the operation and the corresponding cycle interchangeably.
ch012.tex
30/6/2008
11: 27
Page 231
Optimal 1-Fault-Tolerant Hamiltonian Graphs
231
For ease of exposition, let us define qi = qi,1 , pi,1 , pi,2 , qi,2 , qi,3 , pi,3 , . . . , pi,li , qi,li pi = pi,1 , qi,1 , qi,2 , pi,2 , pi,3 , qi,3 , . . . , qi,li , pi,li These notations will be used in the definitions of operations M2 , M3 , M4 , M5 , and M6 . To be specific, the six operations are defined as follows: Operation M1 . Suppose that H is a cycle of G that contains the edge e. We define an operation M1 (H, e, j) to construct a cycle in ExtC (G) − {( pi, j , pi, j+1 ), (qi, j , qi, j+1 )} for some 1 ≤ j ≤ li − 1. Let Q be the path H − (qi, j , qi, j+1 ) and P be the path HC∗ − ( pi, j , pi, j+1 ). We define M1 (H, e, j) = pi, j , P, pi, j+1 , qi, j+1 , Q, qi, j , pi, j as illustrated in Figure 12.3. Operation M2 . Suppose that that zi and zi+1 are adjacent in G, and H is a Hamiltonian cycle of G containing xi−1 , xi , xi+1 , xi+2 as a subpath. We define an operation M2 (H, e) to construct a Hamiltonian cycle of ExtC (G) − {(qi−1,li−1 , qi,1 ), (qi,li , qi+1,1 )}. We use yi to denote the unique neighbor of zi different from xi and zi+1 , and use yi+1 to denote the unique neighbor of zi+1 different from xi+1 and zi . Since G is cubic and xi−1 , xi , xi+1 , xi+2 is a subpath of H, yi , zi , zi+1 , yi+1 is a subpath of H in G. Moreover, qi−1,li−1 , qi,1 , . . . , qi,li , qi+1,1 is a subpath of H and pi−1,li−1 , xi , pi,1 , pi,2 , . . . , pi,li , xi+1 , pi+1,1 is a subpath of HC∗ . Hence, we can obtain a path P from HC∗ by replacing pi−1,li−1 , xi , pi,1 , pi,2 , . . . , pi,li , xi+1 , pi+1,1 with
xi , pi,1 , pi , pi,li , xi+1 and replacing (zi , zi+1 ) with (zi , xi ) and (zi+1 , xi+1 ). Deleting
qi−1,li−1 , qi,1 , . . . , qi,li , qi+1,1 from H yields a path Q. We define M2 (H, e) = pi−1,li−1 , qi−1,li−1 , Q, qi+1,1 , pi+1,1 , P, pi−1,li−1 as illustrated in Figure 12.4.
qi1,l i1
qi,1
qi,j-1
qi,2
pi,1 pi,2
pi,j1 pi,j pi,j1
pi1,l i1
xi1
qi,j1
qi,l i qi1,1
xi
qi1,1
qi,j
pi1,1
FIGURE 12.3 Illustration for operation M1 .
pi,l i
xi1 pi1,1 pi1,li1
qi1,li1
xi2
ch012.tex
30/6/2008
11: 27
Page 232
232
Graph Theory and Interconnection Networks
qi1,l i1
qi,1
qi,j1
qi,2
qi,j
qi,j1
qi,l i qi1,1
xi
pi,1 pi,2
pi1,l i1
yi
pi1,1
pi,j1 pi,j p i,j1 pi,l i
xi1 pi1,1
zi1 yi1
zi
pi1,li1
xi1
qi1,1
pi1,li1
xi2
FIGURE 12.4 Illustration for operation M2 . qi1,1 x i1 pi1,1
qi1,li1 qi,1 qi,2 qi,3 qi,4 qi,5 qi,6 qi,7 qi,8
qi1,1
x i1 xi pi1,l i1 pi,1 pi,2 pi,3 pi,4 pi,5 pi,6 pi,7 pi,8 pi1,1
HC*
zi
qi1,li1 qi2,1 xi2 pi1,li1 pi2,1
z i2
z i1
(a)
qi1,1 xi1 pi1,1
qi1,l i1 qi,1 qi,2 qi,3 qi,4 qi,5 q q q i,6 i,7 i,8
x i1 pi,1 pi,2 pi,3 pi,4 pi,5 pi,6 pi,7 pi,8 pi1,1
xi pi1,l
i1
zi qi1,1
xi pi1,1
(b)
qi1,l i1 qi,1 qi,2 qi,3 qi,4 qi,5 qi,6 qi,7 qi,8
x i1 pi1,l
i1
qi1,1
(c)
pi1,l
xi2 pi2,1 i1
z i2
zi1 qi1,1
x i1 pi,1 pi,2 pi,3 pi,4 pi,5 pi,6 pi,7 pi,8 pi1,1
zi
qi1,li1 qi2,1
zi1
qi1,l i1 qi2,1 pi1,l
xi2 pi2,1
i1
z i2
FIGURE 12.5 Illustrations for operations M3 and M4 .
Operations M3 and M4 . Suppose that H is a Hamiltonian cycle of G − xi+1 . We define an operation M3 (H, xi+1 ) to construct a Hamiltonian cycle of ExtC (G) − pi, j with j odd and an operation M4 (H, xi+1 ) to construct a Hamiltonian cycle of ExtC (G) − qi, j with j even. Since xi+1 is not in H, xi−1 , xi , zi and xi+3 , xi+2 , zi+2 are subpaths of H. See Figure 12.5a for illustration. Moreover, qi,1 , qi , qi,li , qi+1,1 , qi+1 , qi+1,li+1 is a subpath of H . Let Q = H − qi,1 , qi , qi,li , qi+1,1 , qi+1 , qi+1,li+1 , qi+2,1 . Obviously, Q is a path from qi+2,1 to qi,1 . Let P = HC∗ − (xi+2 , pi+2,1 ). Then P is a path from xi+2
ch012.tex
30/6/2008
11: 27
Page 233
Optimal 1-Fault-Tolerant Hamiltonian Graphs
233
to pi+2,1 . We define M3 (H, e) = pi+2,1 , qi+2,1 , Q, qi,1 , pi,1 , pi,2 , qi,2 , . . . , pi, j−1 , qi, j−1 , qi, j , qi, j+1 , pi, j+1 , pi, j+2 , qi, j+2 , . . . , qi,li , pi,li , xi+1 , pi+1,1 , pi+1 , pi+1,li+1 , xi+2 , P, pi+2,1 M4 (H, e) = pi+2,1 , qi+2,1 , Q, qi,1 , pi,1 , pi,2 , qi,2 , . . . , qi, j−1 , pi, j−1 , pi, j , pi, j+1 , qi, j+1 , qi, j+2 , pi, j+2 , . . . , pi,li , xi+1 , pi+1,1 , pi+1 , pi+1,li+1 , xi+2 , P, pi+2,1 as illustrated in Figures 12.5b and 12.5c. Operations M5 and M6 . Suppose that H is a Hamiltonian cycle of G − xi as illustrated in Figure 12.6a. We define an operation M5 (H, xi ) to construct a Hamiltonian cycle of ExtC (G) − pi, j with j even and an operation M6 (H, xi ) to construct a Hamiltonian cycle of ExtC (G) − qi, j with j odd. Let Q denote H − qi−2,li−2 , qi−1,1 , qi−1 , qi−1,li−1 , qi,1 , qi , qi,li . Then Q is a path from qi,li to qi−2,li−2 . Let P = HC∗ − (xi−1 , pi−2,li−2 ). Then P is a path from pi−2,li−2 to xi−1 . We define M5 (H, x) = xi−1 , pi−1,1 , pi−1 , pi−1,li−1 , xi , pi,1 , qi,1 , qi,2 , pi,2 , pi,3 , . . . , pi, j−1 , qi, j−1 , qi, j , qi, j+1 , pi, j+1 , pi, j+2 , qi, j+2 , . . . , qi,li , Q, qi−2,li−2 , pi−2,li−2 , P, xi−1
qi2,l i2
qi1,l i1 qi,1 qi,2 qi,3 qi,4 qi,5 q q q qi1,1 i,6 i,7 i,8
qi1,1
x i1 pi2,l
xi pi1,1
i2
HC*
pi1,l
i1
x i1 pi,1 pi,2 pi,3 pi,4 pi,5 pi,6 pi,7 pi,8 pi1,1
zi
z i1
(a)
qi2,l i2
qi1,1
qi1,l i1 q q q q q q q q q i,1 i,2 i,3 i,4 i,5 i,6 i,7 i,8 i1,1
xi1 p
i2,l i2
xi pi1,1
pi1,l
i1
x i1 pi,1 pi,2 pi,3 pi,4 pi,5 pi,6 pi,7 pi,8 pi1,1
zi
z i1
(b)
qi2,l i2
qi1,1
xi1 pi2,l i2 pi1,1
qi1,l i1 q q q q q q q q q i,1 i,2 i,3 i,4 i,5 i,6 i,7 i,8 i1,1
xi pi1,l
i1
x i1 pi,1 pi,2 pi,3 pi,4 pi,5 pi,6 pi,7 pi,8 pi1,1
zi
(c)
FIGURE 12.6 Illustrations for operations M5 and M6 .
z i1
ch012.tex
234
30/6/2008
11: 27
Page 234
Graph Theory and Interconnection Networks
M6 (H, x) = xi−1 , pi−1,1 , pi−1 , pi−1,li−1 , xi , pi,1 , qi,1 , qi,2 , pi,2 , pi,3 , . . . , qi, j−1 , pi, j−1 , pi, j , pi, j+1 , qi, j+1 , qi, j+2 , pi, j+2 , . . . , qi,li , Q, qi−2,li−2 , pi−2,li−2 , P, xi−1 as illustrated in Figures 12.6b and 12.6c. We will use these six operations in the proofs of the following lemmas and theorems. LEMMA 12.1 Suppose that G is a cubic graph such that G − f is Hamiltonian for any f ∈ V (G) and C = x0 , x1 , . . . , xk−1 , x0 is a cycle of G. Then ExtC (G) − f is Hamiltonian for any f ∈ V (ExtC (G)). Proof: Suppose that f ∈ V (G) − V (C). By assumption of this lemma, there is a Hamiltonian cycle H of G − f such that at least an edge in C, say (xi , xi+1 ), is in H. Obviously, M1 (H, (xi , xi+1 ), j), 1 ≤ j ≤ li − 1, forms a Hamiltonian cycle of ExtC (G) − f . Suppose that f = xi for 0 ≤ i ≤ k − 1. Since G is cubic and k ≥ 3, two vertices xi−1 and xi+1 in C have degree 2 in G − f . Then we can always find a Hamiltonian cycle H of G − f such that H contains an edge in C, say (xj , xj+1 ) for j = i − 1, i. On the other hand, H contains the subpath qi−2,li−2 , qi−1,1 , qi−1 , qi−1,li−1 , qi,1 , qi , qi,li , qi+1,1 , which does not contain the vertex xi . Obviously, M1 (H, (xj , xj+1 ), j ), 1 ≤ j ≤ lj − 1, is a Hamiltonian cycle of ExtC (G) − f . Suppose that f ∈ {pi, j , pi, j , qi, j , qi, j } for some 1 ≤ j, j ≤ li with j odd and j even. Since G is 1-vertex fault-tolerant Hamiltonian, there are Hamiltonian cycles H1 and H2 of G − xi+1 and G − xi , respectively. Then the Operations M3 (H1 , xi+1 ), M4 (H1 , xi+1 ), M5 (H2 , xi ), and M6 (H2 , xi ) can be applied and they are indeed Hamiltonian cycles of ExtC (G) − pi, j , ExtC (G) − qi, j , ExtC (G) − pi, j , and ExtC (G) − qi, j , respectively. Hence, the lemma follows. LEMMA 12.2 Suppose that C = x0 , x1 , . . . , xk−1 , x0 is a cycle of a cubic 1edge fault-tolerant"Hamiltonian graph G. Then ExtC (G) − f is Hamiltonian if f ∈ E(ExtC (G)) − 0≤i≤k−1 {(qi,li , qi+1,1 )}. Proof: Suppose that f is an edge in E(G) − E(C). Since G is cubic 1-edge faulttolerant Hamiltonian, there is a Hamiltonian cycle H of G − f such that H contains at least an edge in C, say (xi , xi+1 ) with 0 ≤ i ≤ k − 1. Then M1 (H, (xi , xi+1 ), j) with 1 ≤ j ≤ li − 1 can be applied and yields a Hamiltonian cycle of ExtC (G) − f . Suppose that f = (xi , pi,1 ) or ( pi,li , xi+1 ) for some 0 ≤ i ≤ k − 1. Since G is 1edge fault-tolerant Hamiltonian, there is a Hamiltonian cycle H of G − (xi , xi+1 ). Since G is a cubic graph, H contains (xi−1 , xi ) and (xi+1 , xi+2 ). Furthermore,
qi−1,li−1 , qi,1 , qi , qi,li , qi+1,1 forms a subpath of H . On the other hand, both
xi−1 , xi , zi and zi+1 , xi+1 , xi+2 are subpaths in H. We can apply the operation M1 to (xi−1 , xi ) and j for 1 ≤ j ≤ li−1 − 1. Then M1 (H, (xi−1 , xi ), j) forms a Hamiltonian cycle of ExtC (G) − {(xi , pi,1 ), ( pi,li , xi+1 )}. Suppose that f = ( pi, j , pi, j+1 ) or (qi, j , qi, j+1 ) for some 0 ≤ i ≤ k − 1 and some 1 ≤ j ≤ li − 1. Let H be a Hamiltonian cycle of G − (xi−1 , xi ). Then (xi , xi+1 ) is in H.
ch012.tex
30/6/2008
11: 27
Page 235
Optimal 1-Fault-Tolerant Hamiltonian Graphs
235
(2,3)
(1,0) (1,1)
(1,2)
(2,6)
(0,1) (0,2)
(1,8)
(0,0)
(1,0) (0,0)
(2,0)
(2,15)
(0,1) (0,2) (1,7)
(1,3) (1,4)
(1,5)
(1,6)
(1,6)
(1,3)
(2,12)
(2,9) Eye(1)
Eye(2)
FIGURE 12.7 Eye(1) and Eye(2).
Therefore, M1 (H, (xi , xi+1 ), j) with 1 ≤ j ≤ li − 1 forms a Hamiltonian cycle of ExtC (G) − {( pi, j , pi, j+1 ), (qi, j , qi, j+1 )}. Suppose that f = ( pi, j , qi, j ) for some 0 ≤ i ≤ k − 1 and some 1 ≤ j ≤ li . Let H be a Hamiltonian cycle of G − (xi−1 , xi ). Obviously, both (xi , xi+1 ) and (xi−2 , xi−1 ) are in H. Moreover, HC∗ contains xi , pi,1 , pi,2 , . . . , pi,li , xi+1 as a subpath and H contains qi−1,li−1 , qi,1 , qi,2 , . . . , qi,li , qi+1,1 as a subpath. Hence, M1 (H, (xi−2 , xi−1 ), j ) for 1 ≤ j ≤ li−2 − 1 forms a Hamiltonian cycle of ExtC (G) − ( pi, j , qi, j ). The lemma is proved. One may ask whether ExtC (G) is 1-fault-tolerant Hamiltonian if G is cubic 1-faulttolerant Hamiltonian. The answer is no, and it can be verified by a counterexample shown in Figure 12.7. The graphs shown in Figure 12.7 were proposed by Wang et al. [335]; they are called eye networks and are denoted by Eye(n) for n ≥ 1. The graph Eye(1) shown in Figure 12.7 is a cubic 1-fault-tolerant Hamiltonian graph. Let O1 be the cycle indicated by darkened edges in Eye(1) as shown in Figure 12.7. Obviously, Eye(2) = ExtO1 (Eye(1)). Though Eye(1) is cubic 1-fault-tolerant Hamiltonian, Eye(2) is not 1-fault-tolerant Hamiltonian, because there is no Hamiltonian cycle in Eye(2) − ((2, 0), (2, 3)), Eye(2) − ((2, 6), (2, 9)), and Eye(2) − ((2, 12), (2, 15)). Thus, that G is cubic 1-fault-tolerant Hamiltonian does not imply that ExtC (G) is 1-fault-tolerant Hamiltonian. However, we are interested in finding a sufficient condition on cycle C for ExtC (G) to be 1-fault-tolerant Hamiltonian. To get this goal, we define the recoverable set R(C) of cycle C as follows: R(C) = {(xi , xi+1 ) | xi−1 , xi , xi+1 , xi+2 is a subpath of some Hamiltonian cycle of G and (zi , zi+1 ) is an edge in G for 0 ≤ i ≤ k − 1} The definition of R(C) arises from the given condition for operation M2 to be applicable. A cycle C of G is recoverable with respect to G if no two edges of E(C) − R(C) are adjacent. For example, the cycle C = x0 , x1 , x2 , x3 , x0 shown in Figure 12.8 is recoverable with respect to G, since {(x0 , x1 ), (x2 , x3 )} is the recoverable set of C.
ch012.tex
30/6/2008
11: 27
Page 236
236
Graph Theory and Interconnection Networks x1
x0
G
x3
x2
FIGURE 12.8 The cycle x0 , x1 , x2 , x3 , x0 is recoverable with respect to the graph G.
THEOREM 12.2 Suppose that C = x0 , x1 , . . . , xk−1 , x0 is recoverable with respect to a cubic 1-fault-tolerant Hamiltonian graph G. Then ExtC (G) is cubic 1-fault-tolerant Hamiltonian. Proof: By Lemma 12.1, ExtC (G) − f is Hamiltonian for any f ∈ V"(ExtC (G)). By Lemma 12.2, ExtC (G) − f is Hamiltonian for f ∈ E(ExtC (G)) − 0 ≤ i ≤ k − 1 {(q " i,li , qi+1,1 )}. Now it suffices to show that ExtC (G) − f is Hamiltonian for f ∈ 0 ≤ i ≤ k−1 {(qi,li , qi+1,1 )}. Equivalently, we will construct a Hamiltonian cycle in ExtC (G) without using (qi,li , qi+1,1 ) for 0 ≤ i ≤ k − 1. Since C is recoverable with respect to G, it follows that R(C) = ∅ and we have either (xi , xi+1 ) ∈ R(C) or (xi , xi+1 ) ∈ R(C). For (xj , xj+1 ) ∈ R(C), we use Hj to denote a Hamiltonian cycle of G such that Hj contains xj−1 , xj , xj+1 , xj+2 as a subpath. Suppose that (xi , xi+1 ) ∈ R(C). Then M2 (Hi , (xi , xi+1 )) is a Hamiltonian cycle of ExtC (G) − {(qi−1,li−1 , qi,1 ), (qi,li , qi+1,1 )}. Suppose that (xi , xi+1 ) ∈ R(C). Since any two edges in E(C) − R(C) are not adjacent, (xi+1 , xi+2 ) is in R(C). Then M2 (Hi+1 , (xi+1 , xi+2 )) forms a Hamiltonian cycle of ExtC (G) − {(qi,li , qi+1,1 ), (qi+1,li+1 , qi+2,1 )} for (xi+1 , xi+2 ) ∈ R(C). Therefore, ExtC (G) is 1-edge fault-tolerant Hamiltonian if G is 1-fault-tolerant Hamiltonian and C is recoverable with respect to G. In particular, ExtC (G) is Hamiltonian. Thus the theorem follows. In general, it is hard to verify whether a cycle C is recoverable with respect to G. Instead, we show that OC is recoverable with respect to ExtC (G). LEMMA 12.3 Suppose that G is a cubic graph and C = x0 , x1 , . . . , xk−1 , x0 is a cycle of G. Then OC is recoverable with respect to ExtC (G) if G − (xi , xi+1 ) is Hamiltonian for every 0 ≤ i ≤ k − 1. Proof: It suffices to prove that R(OC ) is a collection of (qi, j , qi, j+1 ) for all 0 ≤ i ≤ k − 1 and 1 ≤ j ≤ li − 1 because each pi, j is adjacent to pi, j+1 in ExtC (G) but pi,li is not adjacent to pi+1,1 . Let H be a Hamiltonian cycle of G − (xi−1 , xi ). Since G is cubic, both (xi−2 , xi−1 ) and (xi , xi+1 ) are in H. Obviously, H contains qi−3,li−3 , qi−2,1 , qi−2,2 , . . . , qi−2,li−2 , qi−1,1 and qi−1,li−1 , qi,1 , qi,2 , . . . , qi,li , qi+1,1 as subpaths. Therefore, the Hamiltonian cycle M1 (H, (xi−2 , xi−1 ), j ), 1 ≤ j ≤ li−2 − 1, of ExtC (G) contains
qi−1,li−1 , qi,1 , qi,2 , . . . , qi,li , qi+1,1 as a subpath. Furthermore, (qi, j , qi, j+1 ) satisfies the definition of recoverable set R(OC ). Since (xi−1 , xi ) is an arbitrary edge and
ch012.tex
30/6/2008
11: 27
Page 237
Optimal 1-Fault-Tolerant Hamiltonian Graphs
qi,j
l i,2 si,2 1 si,2 l i,1 si,1
1 si,1 Li1 si1,l i1
qi,3
r l i,2 r 1 i,2 l i,1 i,2 ri,1 pi,2 1 qi,1 ri,1 pi,1 Li1 ri1,li1 1 ri1,l i1
1 si1,l i1
qi,j1 1 ri,j1
qi,2
xi
si,jm1si,jm
1 li,j1 si,j si,j1
1 si,j1
pi,3
li,j1 ri,j1
237
si,jm1si,jm2 s l i,j i,j
l i,j1 si,j1
qi,j1 ri,jm1ri,jm ri,jm1ri,jm2 r l i,j 1 ri,j1 i,j
ri,j1 pi,j
pi,j1
1 si,j1
li,j+1 ri,j1
pi,j1
1 si,ll i,lii1
pi,l 1 r l i,li1 i i,l i 1 q i,l i pi,l i ri,l1 i pi1,1
pi1,1
pi1,l
pi2,li2
xi1 qi1,1
i
pi,j2
pi1,li1
qi1,l i1
qi,j2 qi,l 1
qi1,2
xi2
si,l1 i
ri,lLii 1 ri1,1 qi1,1 si,lLii
i1
xi2
qi2,li2
pi1,2 pi1,3
xi1
1 si1,1
qi1,3 qi1,li1
FIGURE 12.9 An example of ExtC2 (G).
(qi,li , qi+1,1 ) and (qi ,li , qi +1,1 ) are not adjacent for i = i , R(OC ) is a collection of (qi, j , qi, j+1 ) for all 0 ≤ i ≤ k − 1 and 1 ≤ j ≤ li − 1 and moreover, OC is recoverable with respect to ExtC (G). Hence, the theorem is proved. We can recursively apply the cycle extension operation. Let ExtC0 (G) = G, OC0 = C, 1 ExtC (G) = ExtC (G), and OC1 = OC . We recursively define ExtCn (G) for n ≥ 2 as ExtCn (G) = ExtOn−1 (ExtCn−1 (G)) and OCn being the extended cycle of OCn−1 in ExtCn (G). C Now, we consider in particular ExtC2 (G), which is the cycle extension of ExtC (G) around OC . Given 0 ≤ i ≤ k − 1 and 1 ≤ j ≤ li − 1, let li, j and Li denote the number
of vertices added between qi, j and qi, j+1 and between qi,li and qi+1,1 , respectively. These vertices are denoted by ri,mj where 1 ≤ m ≤ li, j or 1 ≤ m ≤ Li . The vertex in OC2 , which is adjacent to ri,mj , is denoted by si,mj . Note that li, j and Li are even. For ease of exposition, let L ∗ = li, j for 1 ≤ j ≤ li − 1 and L ∗ = Li for j = li . To be specific, the graph ExtC2 (G) is given as follows (see Figure 12.9): V ExtC2 (G) = V (ExtC (G)) ∪ E
ExtC2 (G)
#
#
0≤i≤k−1 1≤j≤li
ri,mj , si,mj | 1 ≤ m ≤ L ∗
= (E(ExtC (G)) − E (OC )) # # ∪ ri,mj , ri,m+1 , si,mj , si,m+1 1 ≤ m ≤ L ∗ − 1 j j 0≤i≤k−1 1≤j≤li
∪
#
#
0≤i≤k−1 1≤j≤li
∪
#
0≤i≤k−1
∪
#
ri,mj , si,mj 1 ≤ m ≤ L ∗
Li Li 1 1 qi,li , ri,l , r , s , q , s i+1,1 i+1,1 i,li i,li i #
0≤i≤k−1 1≤j≤li −1
l l qi, j , ri,1 j , ri,i,jj , qi,j+1 , si,i, jj , si,1 j+1
ch012.tex
30/6/2008
11: 27
Page 238
238
Graph Theory and Interconnection Networks
Using a proof technique similar to that in Lemma 12.3, we can prove the following corollary. COROLLARY 12.1 Suppose that G is a cubic graph and C = x0 , x1 , . . . , xk−1 , x0 is a cycle of G. Then OC2 is recoverable with respect to ExtC2 (G) if G − (xi , xi+1 ) is Hamiltonian for all 0 ≤ i ≤ k − 1. LEMMA 12.4 Suppose that C = x0 , x1 , x2 , . . . , xk−1 , x0 is a cycle of a cubic 1-faulttolerant Hamiltonian graph G. Then ExtC2 (G) is cubic 1-fault-tolerant Hamiltonian. Proof: By Lemma 12.1, ExtC2 (G) − f is Hamiltonian for any f ∈ V (ExtC (G)). It suffices to show that ExtC2 (G) is 1-edge fault-tolerant Hamiltonian. We divide the edge set of ExtC2 (G) into four sets as follows: E1 = E(G) − E(C) # Li Li 1 1 qi,li , ri,l , s E2 = , r , q , s i+1,1 i,li i,li i+1,1 i 0≤i≤k−1
∪
#
#
0≤i≤k−1 1≤j≤li −1
#
E3 =
#
#
0≤i≤k−1 1≤j≤li −1
∪
#
#
l ( pi, j , pi, j+1 ), qi, j , ri,1 j , ri,i,jj , qi, j+1
m m+1 ∗ , s − 1 ri,mj , ri,m+1 , s ≤ m ≤ L 1 i, j j i, j
#
0≤i≤k−1 1≤j≤li
E4 =
{(xi , pi,1 ), ( pi,li , xi+1 )}
0≤i≤k−1
∪
l
si,i, jj , si,1 j+1
#
#
{( pi, j , qi, j )} ∪
0≤i≤k−1 1≤j≤li
#
0≤i≤k−1 1≤j≤li
ri,mj , si,mj 1 ≤ m ≤ L ∗
Suppose that f ∈ E1 . By Lemma 12.2, there is a Hamiltonian cycle H in ExtC (G) − f . Since ExtC (G) is cubic, it follows that H contains at least an edge e in OC , say e = (qi, j , qi, j+1 ), for some 0 ≤ i ≤ k − 1 and 1 ≤ j ≤ li − 1. Obviously, M1 (H, e, m), 1 ≤ m ≤ li, j − 1, is a Hamiltonian cycle of ExtC2 (G) − f for f ∈ E1 . Suppose that f ∈ E2 . Since G is 1-fault-tolerant Hamiltonian, there is a Hamiltonian cycle in G − (xi−1 , xi ). It follows from the proof of Lemma 12.3 that we have a Hamiltonian cycle, say H, in ExtC (G) containing qi−1,li−1 , qi,1 , qi,2 , . . . , qi,li −1 , qi,li , qi+1,1 as a subpath. Since pi, j is adjacent to pi, j+1 for all 1 ≤ j ≤ li − 1, we can apply operation M2 to any (qi, j , qi, j+1 ). Obviously, M2 (H, (qi, j , qi, j+1 )) forms a Hamiltol
l
j−1 , si,1 j ), (si,i, jj , si,1 j+1 )}. Observing the Hamiltonian cycle nian cycle in ExtC2 (G) − {(si,i, j−1
1 , r 1 , r 2 , . . . , r Li as a subpath, it is also a M2 (H, (qi,li −1 , qi,li )), which contains si,l i,li i,li i,li i 2 1 Hamiltonian cycle of ExtC (G) − (qi,li , ri,li ). Similarly, we can use a Hamiltonian cycle of G − (xi , xi+1 ) to construct a Hamiltonian cycle H of ExtC (G), which includes
ch012.tex
30/6/2008
11: 27
Page 239
Optimal 1-Fault-Tolerant Hamiltonian Graphs
239
qi,li , qi+1,1 , qi+1,2 , . . . , qi+1,li+1 , qi+2,1 as a subpath. Thus, M2 (H , (qi+1,1 , qi+1,2 )) Li Li 1 forms a Hamiltonian cycle in ExtC2 (G) − {(ri,l , qi+1,1 ), (si,l , si+1,1 )}. i i Suppose that f ∈ E3 . We first assume that f = (xi , pi,1 ) or ( pi,li , xi+1 ). It follows from the proof of Lemma 12.2 that there is a Hamiltonian cycle H1 in ExtC (G) − f . Since ExtC (G) is cubic, H1 contains at least an edge (qi ,j , qi ,j+1 ) in OC for some 0 ≤ i ≤ k − 1, i = i , and 1 ≤ j ≤ li − 1. Thus, M1 (H1 , (qi ,j , qi ,j+1 ), m) is a Hamiltonian cycle of ExtC2 (G) − f , where 1 ≤ m ≤ li ,j − 1. Secondly, we assume that l
f = ( pi, j , pi, j+1 ), (qi, j , ri,1 j ), or (ri,i,jj , qi, j+1 ). It follows from the proof of Lemma 12.2 that there is a Hamiltonian cycle H2 in ExtC (G) − {( pi, j , pi, j+1 ), (qi, j , qi, j+1 )}. Since ExtC (G) is cubic, H2 contains (qi, j+1 , qi, j+2 ). Hence, M1 (H2 , (qi, j+1 , qi, j+2 ), m) l
is a Hamiltonian cycle of ExtC2 (G) − {( pi, j , pi, j+1 ), (qi, j , ri,1 j ), (ri,i,jj , qi, j+1 )}, where m m+1 1 ≤ m ≤ li, j+1 − 1. Finally, we assume that f = (ri,mj , ri,m+1 j ) or (si, j , si, j ). Similarly, there is a Hamiltonian cycle H3 in ExtC (G) − (qi, j−1 , qi, j ). Hence, we can apply operation M1 to (qi, j , qi, j+1 ) and m with 1 ≤ m ≤ li, j − 1. Then M1 (H3 , (qi, j , qi, j+1 ), m) is a Hamiltonian cycle of ExtC2 (G) − f . Suppose that f ∈ E4 . Since G is 1-fault-tolerant Hamiltonian, there is a Hamiltonian cycle H of G − (xi−1 , xi ). Then both (xi−2 , xi−1 ) and (xi , xi+1 ) are in H. Therefore, H1 = M1 (H, (xi−2 , xi−1 ), j) for some 1 ≤ j ≤ li−2 − 1 is a Hamiltonian cycle of ExtC (G), which contains qi−1,li−1 , qi,1 , qi,2 , . . . , qi,li , qi+1,1 as a subpath. Then we apply operation M1 again on H1 and (qi−1,li−1 , qi,1 ). It follows that M1 (H1 , (qi−1,li−1 , qi,1 ), m) with 1 ≤ m ≤ Li−1 − 1 is a Hamiltonian cycle of ExtC2 (G) − f . Therefore, ExtC2 (G) is 1-edge fault-tolerant Hamiltonian. The theorem follows. THEOREM 12.3 Suppose that G is a cubic 1-fault-tolerant Hamiltonian graph and C = x0 , x1 , x2 , . . . , xk−1 , x0 is a cycle of G. Then ExtCn (G) is cubic 1-fault-tolerant Hamiltonian for n ≥ 2. Proof: Since G is 1-fault-tolerant Hamiltonian, by Lemma 12.4 and Corollary 12.1 ExtC2 (G) is 1-fault-tolerant Hamiltonian and OC2 is recoverable with respect to ExtC2 (G). Assume that ExtCk (G) is 1-fault-tolerant Hamiltonian and OCk is recoverable with respect to ExtCk (G) for 2 ≤ k ≤ l. Consider ExtCl+1 (G) = ExtOl (ExtCl (G)). C
Then by Theorem 12.2, ExtOl (ExtCl (G)) = ExtCl+1 (G) is 1-fault-tolerant Hamiltonian. C
By Lemma 12.3, OCl+1 is recoverable with respect to ExtCl+1 (G). Thus, the induction is applicable. Hence, the theorem follows. We can recursively apply cycle extensions to construct a family of 1-fault-tolerant Hamiltonian graphs from a known cubic 1-fault-tolerant Hamiltonian graph. In the following discussion, we examine two such families of graphs; namely, eye networks and extended Petersen graphs. The eye networks proposed by Wang et al. [335] is indeed constructed by recursive cycle extensions from Eye(1) as shown in Theorem 12.4. The 1-fault-tolerant Hamiltonicity of Eye(n) is then a direct consequence of Theorem 12.3.
ch012.tex
30/6/2008
11: 27
Page 240
240
Graph Theory and Interconnection Networks
THEOREM 12.4 1. Eye(n) = ExtOn−1 (Eye(1)) for n ≥ 2, where O1 is the outermost cycle of 1 Eye(1), as shown with the darkened edges in Figure 12.7. 2. Eye(n) is 1-fault-tolerant Hamiltonian for n ≥ 3. Proof: Obviously, Eye(2) is obtained by performing a cycle extension on Eye(1) around O1 ; that is, Eye(2) = ExtO1 (Eye(1)). Let O2 be the outermost cycle of Eye(2). Note that O2 is also the extended cycle of O1 in Eye(2). Let On denote the outermost cycle of Eye(n) for n ≥ 1. It can be easily verified that for n ≥ 3, Eye(n) = ExtOn−1 (Eye(n − 1)) and On is the extended cycle of ExtOn−1 (Eye(n − 1)). (Eye(1)) for n ≥ 2. Thus, Eye(n) = ExtOn−1 1 Note that Eye(1) is also a 3-join of two K4 . Thus, Eye(1) is also cubic 1-faulttolerant Hamiltonian. By Theorem 12.3, ExtOn 1 (Eye(1)); that is, Eye(n + 1), for n ≥ 2, is 1-fault-tolerant Hamiltonian. Hence, the theorem follows. We recursively define extended Petersen graphs, denoted by EP(n) for n ≥ 0, as follows. 1. EP(0) is the Petersen graph shown in Figure 12.10a with a specific cycle C indicated by the darkened edges. Define OC0 = C. 2. Define EP(1) = ExtO0 (EP(0)) as shown in Figure 12.10b and OC1 = OC C shown with the darkened edges in the figure. 3. For n ≥ 2, define EP(n) = ExtOn−1 (EP(n − 1)) and OCn as the extended cycle C
of OCn−1 in EP(n). Equivalently, we write EP(n) = ExtCn (EP(0)).
It is known that the Petersen graph is not Hamiltonian. Yet, it is Hamiltonian if any vertex is deleted. We can use the properties of cycle extensions to show the 1-fault-tolerant Hamiltonicity of EP(n), as stated in the following theorem. THEOREM 12.5 EP(n) is 1-fault-tolerant Hamiltonian for n ≥ 1. Proof: Since the Petersen graph EP(0) is hypohamiltonian, it follows from Lemma 12.1 that EP(1) is also EP(1) − f is Hamiltonian for any f ∈ V (EP(1)).
(a)
(b)
FIGURE 12.10 Extended Petersen graphs.
(c)
ch012.tex
30/6/2008
11: 27
Page 241
Optimal 1-Fault-Tolerant Hamiltonian Graphs
241
Furthermore, EP(1) is Hamiltonian, where a Hamiltonian cycle of EP(1) is illustrated in Figure 12.10c by the darkened edges. Using proper rotation of EP(1), we can always obtain a Hamiltonian cycle without containing any specific edge. Therefore, EP(1) is 1-edge fault-tolerant Hamiltonian, and, therefore, 1-fault-tolerant Hamiltonian. It can also be easily verified that OC1 is recoverable with respect to EP(1). It follows from Theorems 12.2 and 12.3 that EP(n) is 1-fault-tolerant Hamiltonian for n ≥ 2.
12.4
CELLS FOR OPTIMAL 1-HAMILTONIAN REGULAR GRAPHS
For ease of description, we use cells to integrate the whole section. So we introduce cells first. Then we introduce the ideas and applications about flip-flops. A cell is a 5-tuple (G, a, b, c, d), where G is a graph, and a, b, c, d are four distinct vertices in G. It is cubic if deg(x) = 3 for every vertex x in V (G) − {a, b, c, d} and deg(x) = 2 for x ∈ {a, b, c, d}. The graph based on (G, a, b, c, d), denoted by Or ((G, a, b, c, d)), is the graph M obtained from G by adding two vertices u, v, and five edges (u, v), (u, a), (u, d), (v, b), and (v, c). We also say that the cell (G, a, b, c, d) is derived from M by deleting two adjacent vertices u and v. See Figure 12.11. Let Ci = (Gi , ai , bi , ci , di ) be cells for i = 1, 2, 3. The cell O1 (C1 , C2 ) is defined to be the 5-tuple (M1 , a1 , b1 , c2 , d2 ), where M1 is obtained from the disjoint union of G1 and G2 by adding edges (c1 , b2 ) and (d1 , a2 ). See Figure 12.12a. The cell O2 (C1 , C2 , C3 ) is defined as the 5-tuple (M2 , a1 , b1 , c3 , d3 ), where M2 is obtained from the disjoint union of G1 , G2 , and G3 by adding the vertices u1 , v1 , u2 , v2 , and the edges (u1 , v1 ), (u2 , v2 ), (c1 , u1 ), (u1 , a2 ), (d1 , v1 ), (v1 , b2 ), (c2 , u2 ), (u2 , a3 ), (d2 , v2 ), (v2 , b3 ). See Figure 12.12b. Obviously, both O1 (C1 , C2 ) and O2 (C1 , C2 , C3 ) are cubic if Ci is cubic for every i. a
c
u
(G, a, b, c, d ) b
d
v
FIGURE 12.11 Or (G, a, b, c, d). a1
c1
a2
a1
C2
C1 b1
c2
d1
b2
c1
u1
a2
C1
d2
b1
c2
u2
a3
C2
d1
v1
(a)
FIGURE 12.12 (a) O1 (C1 , C2 ) and (b) O2 (C1 , C2 , C3 ).
b2
C3
d2 (b)
c3
v2
b3
d3
ch012.tex
30/6/2008
242
11: 27
Page 242
Graph Theory and Interconnection Networks
A pair of vertices ( p, q) is good in a graph G if G contains a Hamiltonian path with end vertices p and q. The pair (( p, q), (r, s)) is good in G if G has a spanning subgraph consisting of two disjoint paths whose end vertices are p, q, and r, s, respectively. Assume that M = (V , E) is a hypohamiltonian graph with at least six distinct vertices u, v, a, b, c, d such that {v, a, d} is the neighborhood of u and {u, b, c} is the neighborhood of v. Let G = M − {u, v}. We call such a 5-tuple (G, a, b, c, d) a J-cell. The concept of flip-flops (explained shortly) originated from J-cells. It is easy to see that M − v and M − u are Hamiltonian if and only if (a, d) and (b, c) are good in G. M is not Hamiltonian if and only if none of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) are good in G. M − x is Hamiltonian for each x ∈ V (G) if and only if at least one of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) is good in G − x. Thus, (G, a, b, c, d) is a J-cell if and only if (G, a, b, c, d) satisfies the following properties: J1 : (a, d) and (b, c) are good in G. J2 : None of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)) and ((a, c), (b, d)) are good in G. J3 : For each x ∈ V (G), at least one of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) is good in G − x. By adding extra conditions to J-cells, Chvátal [69] defined a cell (G, a, b, c, d) as a flip-flop if it has the following properties: F1 : (a, d), (b, c), and ((a, d), (b, c)) are good in G. F2 : None of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) are good in G. F3 : For each x ∈ V (G), at least one of (a, c), (b, d), ((a, b), (c, d)), and ((a, c), (b, d)) is good in G − x. The following theorem is proved in Ref. 69. THEOREM 12.6 O1 (C1 , C2 ) and O2 (C1 , C2 , C3 ) are flip-flops if Ci is a flip-flop for every i. Since flip-flops are J-cells, they can be used to construct back to a hypohamiltonian graph. By the theorem, Chvátal showed that there are infinite hypohamiltonian graphs. And by using some known hypohamiltonian graphs, he constructed the needed flipflops to construct new hypohamiltonian graphs with given number of vertices, except for some small numbers. Later, Collier and Schmeichel [75] studied those flip-flops with some extra conditions. They introduced strong flip-flops and a new operation. Since we will use the operation, we introduce it here. Let C = (G, a, b, c, d) be a cell. The cell O3 (C) is defined to be the 5-tuple (M3 , a , b , c , d ), where M3 is the graph obtained from G by adding the vertices a , b , c , d , p, q, r, s, and the edges (a, p), (b, q), (c, r), (d, s), (a , p), ( p, c ), (c , r), (r, d ), (d , s), (s, b ), (b , q) and (q, a ). Obviously, O3 (C) is cubic if C is cubic. See Figure 12.13 for illustration.
ch012.tex
30/6/2008
11: 27
Page 243
Optimal 1-Fault-Tolerant Hamiltonian Graphs
243
p
a
c
c
a C
q b
r d
s
b
d
FIGURE 12.13 O3 (C). a
c
a
c
a
c
a
c
b
d
b
d
b
d
b
d
(a)
(b)
(c)
(d)
FIGURE 12.14 Examples of H-cells.
Li et al. [226] adopt Chvátal’s method to construct optimal 1-fault-tolerant Hamiltonian regular graphs. Suppose that M = (V , E) is an optimal 1-fault-tolerant Hamiltonian regular graph with at least six distinct vertices u, v, a, b, c, d such that {v, a, d} is the neighborhood of u and {u, b, c} is the neighborhood of v. Let G = M − {u, v}. We call the 5-tuple (G, a, b, c, d) an H-cell. Obviously, M − v and M − u are Hamiltonian if and only if (a, d) and (b, c) are good in G. M − (u, v) is Hamiltonian if and only if ((a, b), (c, d)) or ((a, c), (b, d)) is good in G. M − e is Hamiltonian for e ∈ {(u, a), (u, d), (v, c), (v, b)} if and only if (1) (a, b) and (c, d) are good in G or (2) (a, c) and (b, d) are good in G. M − f is Hamiltonian for any f ∈ V (G) ∪ E(G) if and only if at least one of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) is good in G − f . Thus, (G, a, b, c, d) is an H-cell if and only if it is cubic and satisfies all the following properties: H1 : H2 : H3 : H4 :
(a, d) and (b, c) are good in G. (a, c) and (b, d) are good in G or (a, b) and (c, d) are good in G. ((a, b), (c, d)) or ((a, c), (b, d)) is good in G. At least one of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) is good in G − f for any f ∈ V (G) ∪ E(G).
Some examples are given in Figure 12.14. Obviously, (G, b, a, d, c), (G, c, d, a, b), (G, d, b, c, a), (G, a, c, b, d), and (G, d, c, b, a) are H-cells if (G, a, b, c, d) is an H-cell. In fact, the graphs Or ((G, a, b, c, d)), Or ((G, b, a, d, c)), Or ((G, c, d, a, b)), Or ((G, d, b, c, a)), Or ((G, a, c, b, d)), and Or ((G, d, c, b, a)) are all isomorphic.
ch012.tex
30/6/2008
244
11: 27
Page 244
Graph Theory and Interconnection Networks
To obtain more H-cells is our major goal. The more H-cells are found, the more 1fault-tolerant Hamiltonian graphs are constructed. However, using the limited number of operations that we already know, we cannot generate an H-cell by combining arbitrary two or more known H-cells. There are two strategies to attack this problem: one is to find new operations; the other is to select some particular H-cells from the set of all H-cells. Here, we adopt the latter method; the way we do it is to put some more restrictions on the selection of the H-cells: L1 : L2 : L3 : L4 :
(a, d) and (b, c) are good in G. (The same as H1 .) (a, b) and (c, d) are good in G. ((a, c), (b, d)) is good; or both ((a, b), (c, d)) and ((a, d), (b, c)) are good in G. For any f ∈ V (G) ∪ E(G), at least one of (a, b), (a, c), (b, d), (c, d), ((a, b), (c, d)), and ((a, c), (b, d)) is good in G − f . (The same as H4 .)
We call the H-cells satisfying all of these properties L-cells. In Figure 12.14, the last three examples are L-cells; however, the first example is not. Now we show that the set of L-cells is closed under O1 ; that is, O1 (C1 , C2 ) is an L-cell if both C1 and C2 are L-cells. The proof is somewhat tedious. We support some figures to add readability. In fact, readers may directly check the proof by checking the figures, when familiar with the style of the proof. THEOREM 12.7 O1 (C1 , C2 ) is an L-cell if both C1 and C2 are L-cells. Proof: Let C1 = (G1 , a1 , b1 , c1 , d1 ), C2 = (G2 , a2 , b2 , c2 , d2 ), and C = O1 (C1 , C2 ) = (M1 , a1 , b1 , c2 , d2 ). We show that O1 (C1 , C2 ) is an L-cell by the following steps: 1. C satisfies L1 . By property L1 , (a1 , d1 ) and (b1 , c1 ) are good in G1 , and (a2 , d2 ) and (b2 , c2 ) are good in G2 . So there are Hamiltonian paths
a1 , P1ad , d1 and b1 , P1bc , c1 in G1 , and Hamiltonian paths a2 , P2ad , d2 and b2 , P2bc , c2 in G2 . Concatenating P1ad with P2ad and P1bc with P2bc , we obtain the two Hamiltonian paths of M1 , which show that C satisfies L1 . See Figure 12.15. 2. C satisfies L2 . By property L2 , there are Hamiltonian paths c1 , P1cd , d1 in G1 and a2 , P2ab , b2 in G2 . By property L3 , at least one of ((a1 , d1 ), (b1 , c1 )) and ((a1 , c1 ), (b1 , d1 )) is good in G1 . Without loss of generality, assume that ((a1 , d1 ), (b1 , c1 )) is good in G1 . Similarly, assume that ((a2 , d2 ), (b2 , c2 )) is good in G2 . So there are two disjoint paths a1 , P1ad , d1 and b1 , P1bc , c1 covering all vertices in G1 , and two disjoint paths a2 , P2ad , d2 and
b2 , P2bc , c2 covering all vertices in G2 . Then we have two Hamiltonian paths
a1 , P1ad , d1 , a2 , P2ab , b2 , c1 , P1bc , b1 and c2 , P2bc , b2 , c1 , P1cd , d1 , a2 , P2ad , d2 in M1 , which show that C satisfies L2 . See Figure 12.15. 3. C satisfies L3 . By property L2 , there are Hamiltonian paths a1 , P1ab , b1 in G1 and c2 , P2cd , d2 in G2 . The two paths are disjoint and cover all vertices in M1 . So ((a1 , b1 ), (c2 , d2 )) is good in M1 . As a result, it is sufficient to prove that at least one of ((a1 , d2 ), (b1 , c2 )) and ((a1 , c2 ), (b1 , d2 )) is good in M1 . Suppose that ((a1 , d1 ), (b1 , c1 ) is good in G1 , and ((a2 , c2 ), (b2 , d2 )) is good in G2 .
ch012.tex
30/6/2008
11: 27
Page 245
Optimal 1-Fault-Tolerant Hamiltonian Graphs
L1:
(a1,d2) a1 c1
(b1,c2) a2
G1 b1
245
c2
G2 d1
b2
d2
L2:
(a1,b1)
(c2,d2)
L3:
((a1,b1), (c2,d2))
((a1,d2), (b1,c2)) or ((a1, c2), (b1,d2))
At least one of these cases is true.
L4: At least one of (a ,b ), (a ,c ), (b ,d ), (c ,d ), ((a ,b ), (c ,d )), and ((a ,c ), (b ,d )) is good in M f 1 1 1 2 1 2 2 2 1 1 2 2 1 2 1 2 1 if f is in G1.
or
or
FIGURE 12.15 Proof of Theorem 12.7.
Then we have two disjoint paths a1 , P1ad , d1 and b1 , P1bc , c1 covering all vertices in G1 , and two disjoint paths a2 , P2ac , c2 and b2 , P2bd , d2 covering all vertices in G2 . Properly concatenating them, we have two disjoint paths
a1 , P1ad , d1 , a2 , P2ac , c2 and b1 , P1bc , c1 , b2 , P2bd , d2 covering all vertices in M1 . And ((a1 , c2 ), (b1 , d2 )) is good in M1 . The proofs of other cases are similar. See Figure 12.15.
ch012.tex
30/6/2008
11: 27
Page 246
246
Graph Theory and Interconnection Networks
4. C satisfies L4 . Let f ∈ V (M1 ) ∪ E(M1 ). Clearly, f may be in G1 , in G2 , the edge (c1 , b2 ), or the edge (d1 , a2 ). If f is (c1 , b2 ) or (d1 , a2 ), by property L2 , there are Hamiltonian paths a1 , P1ab , b1 in G1 and c2 , P2cd , d2 in G2 . Then ((a1 , b1 ), (c2 , d2 )) is good in M1 − f . Suppose that f is in G1 or G2 . Without loss of generality, assume that f is in G1 . By property L4 , at least one of (a1 , b1 ), (a1 , c1 ), (b1 , d1 ), (c1 , d1 ), ((a1 , b1 ), (c1 , d1 )), and ((a1 , c1 ), (b1 , d1 )) is good in G1 − f . So we should discuss the six situations. However, it is tedious. Here, we discuss the first situation and show the others in Figure 12.15. Assume that (a1 , b1 ) is good in G1 − f . By property L2 , there is a Hamiltonian path c2 , P2cd , d2 in G2 . Then ((a1 , b2 ), (c2 , d2 )) is good in M1 − f . The proofs for other situations are similar. See Figure 12.15. Hence, the theorem is proved.
Furthermore, we define a new operation O4 . Let C = (G, a, b, c, d) be a cell. O4 (C) is a cell (M4 , a, b, u, v), where M4 is obtained from G by adding two vertices u, v, and three edges (u, v), (u, d), and (v, c). See Figure 12.16. Consider the graph I({u, v}, {(u, v)}), which is K2 . If we take (I, u, v, u, v) as a cell, we may easily check whether the cell satisfies all properties of L-cells. Thus, we have the following theorem. THEOREM 12.8 The set of all L-cells is closed under operation O4 . It is observed that O2 (C1 , C2 , C3 ) is isomorphic to O1 (O4 (O1 (O4 (C1 ), C2 )), C3 )). Hence, the set of L-cells is also closed under O2 . As a result, using the two operations on arbitrary two or three known L-cells will generate a new L-cell; that is, we may generate more and more L-cells. So we may easily generate 1-fault-tolerant Hamiltonian graphs infinitely. Although L-cells make the generation of 1-fault-tolerant Hamiltonian graphs easy, there is another requirement arising. Someone may ask: is there any particular cell operating with an arbitrary H-cell resulting in an H-cell? We introduce two more families of cells; namely, T -cells and U-cells. First, we introduce T -cells as follows: T1 : (a, d) and (b, c) are good in G. (The same as H1 .) T2 : At least two of ((a, b), (c, d)), ((a, c), (b, d)), and ((a, d), (b, c)) are good in G.
a
c
u
C
b
FIGURE 12.16 Operation O4 .
d
v
ch012.tex
30/6/2008
11: 27
Page 247
Optimal 1-Fault-Tolerant Hamiltonian Graphs
247
T3 : (a, c), (b, d), (a, b), and (c, d) are good in G. T4 : For any f ∈ V ∪ E, either 1. At least two of ((a, b), (c, d)), ((a, c), (b, d)), and ((a, d), (b, c)) are good in G − f or 2. ((a, c) or (b, d) is good in G − f ) and ((a, b) or (c, d) is good in G − f ). A T -cell is a cubic cell satisfying these properties. Obviously, (G, b, a, c, d), (G, b, a, d, c), (G, c, d, a, b), (G, c, d, b, a), (G, d, c, a, b), and (G, d, c, b, a) are T -cells if (G, a, b, c, d) is a T -cell. It is clear to see that any T -cell is an L-cell. However, the converse is not true. In Figure 12.14, the last cell is a T -cell, but the others are not. Similarly, we have the following theorem. Since the proofs of the following theorems are similar to that of Theorem 12.7, we omit the proofs of the following theorems. THEOREM 12.9 The set of all T -cells is closed under O1 , O2 , O3 , and O4 . We have the following important theorem. THEOREM 12.10 Assume that C1 is a T -cell. Then O1 (C1 , C2 ) is an H-cell if C2 is an H-cell. By this theorem, once we have a T -cell, we may use operation O1 to link the T -cell to all known H-cells, and then make the amount of H-cells double. Moreover, we can continue linking the T -cell to the newly generated H-cells to produce new H-cells. Thus, we can generate H-cells infinitely. However, if a T -cell is difficult to find, such a method will be useless. Here, we propose a construction to construct a T -cell as follows. We define U-cells first. A U-cell (G, a, b, c, d) is an H-cell such that at least two of ((a, b), (c, d)), ((a, c), (b, d)), and ((a, d), (b, c)) are good in G. Such a cell has a bit restriction on H-cells. We even do not find an H-cell that is not a U-cell, yet. Obviously, any L-cell is an U-cell. However, the converse is not true. For example, the cell in Figure 12.14a is an U-cell but not an L-cell. Moreover, (G, b, a, d, c), (G, c, d, a, b), (G, d, b, c, a), (G, a, c, b, d), and (G, d, c, b, a) are U-cells if (G, a, b, c, d) is an U-cell. The following theorem can be proved case by case. THEOREM 12.11 O3 (C) is a T -cell if C is an U-cell. With the previous theorem, we can easily generate a T -cell. In the study of the T -cells, we find another interesting operation. Let Ci = (Gi , ai , bi , ci , di ) be cells for i = 1, 2. O5 (C1 , C2 ) is the graph M5 , which is obtained from the disjoint union of G1 and G2 by adding edges (a1 , c2 ), (b1 , d2 ), (d1 , a2 ), and (c1 , b2 ). See Figure 12.17. Obviously, O5 (C1 , C2 ) is a 3-regular graph if C1 and C2 are cubic. The following result can be proved by the same strategy in the proof of Theorem 12.7. THEOREM 12.12 O5 (C1 , C2 ) is an optimal 1-fault-tolerant Hamiltonian regular graph if C1 is an H-cell and C2 is a T -cell.
ch012.tex
30/6/2008
11: 27
Page 248
248
Graph Theory and Interconnection Networks
c1
a1 C1 b1
c2
a2 C2
d1
b2
d2
FIGURE 12.17 O5 (C1 , C2 ).
a1
c1
u
a1
d1
v
b1
c2
a2
C2
C1
C1 b1
c1
d1
b2
d2
FIGURE 12.18 Substitution of an edge.
Why is Theorem 12.12 interesting? Consider Figure 12.18. The T -cell looks like a substitution of the edge (u, v) in the left graph. Remember that the left graph is just an optimal 1-fault-tolerant Hamiltonian graph. Since we do not add any restriction on the edge (u, v), the T -cell may be substituted for any edge in the left graph. This is the most intriguing property. For this reason, we loosen the restriction of T -cells and introduce another family of cells; namely, S-cells, which have the following properties: S1 : S2 : S3 : S4 :
(a, d) and (b, c) are good in G. (The same as H1 .) ((a, c), (b, d)) is good in G, or ((a, b), (c, d)) and ((a, d), (b, c)) are good in G. (a, b) and (c, d) are good in G. For any f ∈ V ∪ E, at least one of the following statements is true: 1. At least one of (a, c), (b, d), and ((a, c), (b, d)) is good in G − f . 2. (b, c) or (a, d) is good in G − f , and (a, b) or (c, d) is good in G − f . 3. ((a, b), (c, d)) and ((a, d), (b, c)) are good in G − f .
An S-cell is a cubic cell with these properties. It is easy to see that any S-cell is an L-cell and any T -cell is an S-cell. However, the converse is not true. The cell in Figure 12.19 is an S-cell but not a T -cell. The following theorem is about S-cells. THEOREM 12.13 O5 (C1 , C2 ) is an optimal 1-fault-tolerant Hamiltonian regular graph if C1 is an H-cell and C2 is an S-cell. It follows from the theorem that we can substitute any edge of an optimal 1-faulttolerant Hamiltonian graph with an S-cell, and the graph obtained is also an optimal 1-fault-tolerant Hamiltonian graph.
ch012.tex
30/6/2008
11: 27
Page 249
Optimal 1-Fault-Tolerant Hamiltonian Graphs
249
a
c
b
d
FIGURE 12.19 An example of an S-cell.
Here, we present five families of cells—H-cells, L-cells, T -cells, U-cells, and S-cells—and some operations for the construction of optimal 1-fault-tolerant Hamiltonian regular graphs. Apparently, we cannot generate all such graphs using our approaches. Usually, we say that an object is primitive if it cannot be constructed from smaller objects. Of course, the term primitive depends on the construction schemes proposed. Let X denote the set of graphs {Cn × K2 | n is odd and n > 3}, where × is the cartesian product of graphs. In Ref. 334, any graph in X is viewed as primitive optimal 1-fault-tolerant Hamiltonian regular graphs because any graph in X cannot be constructed from K4 using 3-join and cycle extension. However, it is proved in Ref. 334 that the graph C3 × K2 is a 3-join of two K4 s. Let C denote the cell in Figure 12.14c. It can be verified that Or (C) = C3 × K2 . Let us recursively define O4n (C) as O40 (C) = C and O4n (C) = O4 (O4n−1 (C)). It can be verified that C2k+1 × K2 = Or (O42k−2 (C)) for every k ≥ 1. Hence, graphs in X cannot be viewed as primitive optimal 1-fault-tolerant Hamiltonian regular graphs.
12.5
GENERALIZED PETERSEN GRAPHS
In this section, we present some necessary conditions and some sufficient conditions about the 1-fault-tolerant Hamiltonian generalized Petersen graphs. We put this material in this book because its proof technique is very interesting. Assume that n and k are positive integers with n ≥ 2k + 1. Let ⊕ denote addition in integer modular n, Zn . The generalized Petersen graph P(n, k) is the graph with vertex set {i | 0 ≤ i ≤ n − 1} ∪ {i | 0 ≤ i ≤ n − 1} and edge set {(i, i ⊕ 1) | 0 ≤ i ≤ n − 1} ∪ {(i, i ) | 0 ≤ i ≤ n − 1} ∪ {(i , (i ⊕ k) ) | 0 ≤ i ≤ n − 1}. In [9,18,28,277], it is proved that P(n, k) is not Hamiltonian if and only if P(n, k) is isomorphic to P(n , k ) k = 2 and n ≡ 5 (mod 6). For example, P(11, 5) is isomorphic to P(11, 2). Thus, P(11, 5) is not Hamiltonian. More precisely, P(n, k) is not Hamiltonian if and only if (1) n ≡ 5 (mod 6) and (2) k = 2 or k = (n − 1)/2. However, all non-Hamiltonian generalized Petersen graphs are proved to be hypohamiltonian [29]. We will prove that P(n, k) is not 1-fault-tolerant Hamiltonian if n is even and k is odd. We also prove that P(3k, k) is 1-fault-tolerant Hamiltonian if and only if k is odd. Moreover, P(n, 3) is 1-fault-tolerant Hamiltonian if and only if n is odd;
ch012.tex
250
30/6/2008
11: 27
Page 250
Graph Theory and Interconnection Networks
P(n, 4) is 1-fault-tolerant Hamiltonian if and only if n = 12. Furthermore, P(n, k) is 1-fault-tolerant Hamiltonian if k is even with k ≥ 6 and n ≥ 2k + 2 + (4k − 1)(4k + 1), and P(n, k) is 1-fault-tolerant hamiltonian if k is odd with k ≥ 5 and n is odd with n ≥ 6k − 3 + 2k(6k − 2). In Refs 9, 18, 29, and 277, it is proved that P(n, k) is not Hamiltonian if and only if k = 2 and n ≡ 5 (mod 6). By the symmetric property of the generalized Petersen graph, P(n, k) is not 1-edge fault-tolerant Hamiltonian if and only if k = 2 and n ≡ 5 (mod 6). Mai et al. [246] began the study of those 1-fault-tolerant Hamiltonian graphs by studying those Hamiltonian generalized Petersen graphs that are 1-vertex fault-tolerant Hamiltonian. LEMMA 12.5 Any bipartite graph is not 1-fault-tolerant Hamiltonian. Proof: Let G be a 1-fault-tolerant Hamiltonian bipartite graph with n vertices. Obviously, G has a cycle of length n and n − 1. This is impossible, because G has no cycle of odd length. Hence, the lemma is proved. The next lemma can easily be obtained from the definition of the generalized Petersen graphs. LEMMA 12.6 P(n, k) is bipartite if and only if n is even and k is odd. In particular, P(n, k) is not 1-fault-tolerant Hamiltonian if n is even and k is odd. With Lemma 12.6, we may ask whether P(n, k) is not 1-fault-tolerant Hamiltonian if and only if n is even and k is odd. However, the statement is not true, because of the following theorem. THEOREM 12.14 [7] P(n, 1) is 1-fault-tolerant Hamiltonian if and only if n is odd and P(n, 2) is 1-fault-tolerant Hamiltonian if and only if n ≡ 1, 3 (mod 6). Therefore, P(n, 2) with n even is neither bipartite nor 1-fault-tolerant Hamiltonian. Yet we desire to know whether there are other generalized Petersen graphs that are not 1-fault-tolerant Hamiltonian. Let us consider the generalized Petersen graph P(12, 4) shown in Figure 12.20a. Suppose that P(12, 4) is 1-fault-tolerant Hamiltonian. Obviously, P(12, 4) − 1 is Hamiltonian. Note that the vertex set {0 , 4 , 8 } induces a complete graph K3 . Any Hamiltonian cycle in P(12, 4) − 1 traverses the vertex set {0 , 4 , 8 } consecutively, because P(12, 4) is a cubic graph. Similarly, any Hamiltonian cycle traverses the vertex sets {1 , 5 , 9 }, {2 , 6 , 10 }, and {3 , 7 , 11 } consecutively. Therefore, we can define a graph P (12, 4) obtained from P(12, 4) by shrinking the vertices 0 , 4 , and 8 into a vertex 0, shrinking the vertices 1 , 5 , and 9 into a vertex 1, shrinking the vertices 2 , 6 , and 10 into a vertex 2, and shrinking the vertices 3 , 7 , and 11 into a vertex 3 as shown in Figure 12.20b. Obviously, P(12, 4) − 1 is Hamiltonian if and only if P (12, 4) − 1 is Hamiltonian. However, P (12, 4) is a bipartite graph with eight vertices in each partite set. Therefore, P (12, 4) − 1 is not Hamiltonian. We get a contradiction. Thus, P(12, 4) − 1 is not Hamiltonian.
ch012.tex
30/6/2008
11: 27
Page 251
Optimal 1-Fault-Tolerant Hamiltonian Graphs
0
2
4
6
8
10
1
5 9
1
3
5
7
9
11
0 4 8
251
11
0
2
4
6
8
10
(1)
(3)
2 6 10
1
3
5
7
9
11
(0)
(2)
3
7
(b)
(a)
FIGURE 12.20 (a) P(12, 4) and (b) P (12, 4). 0
12
1
0
2
1
3
0
1
2
12
11
11
2
10
3 3 4
5 9
6
7 11
10
8 12
9 4
4
9
8 5
6
5 6
(a)
10
7 8 7 (b)
FIGURE 12.21 (a) A D(13, 4) and (b) its corresponding Hamiltonian cycle in P(13, 4).
Alspach et al. [11] proposed an interesting model, called the lattice model, to describe a Hamiltonian cycle of the generalized Petersen graphs. With the lattice model, a lattice diagram for a Hamiltonian generalized Petersen graph is a labeled graph in the (x, y)-plane that possesses a closed or an open Eulerian trail. By appropriately interpreting the edges in the diagram, the Eulerian trail corresponds to a Hamiltonian cycle of a generalized Petersen graph. A lattice diagram D(13, 4) for a generalized Petersen graph P(13, 4), for example, is shown in Figure 12.21. In this diagram, there is an Eulerian trail
0, 1, 5, 9, 10, 6, 2, 3, 7, 11, 12, 8, 7, 6, 5, 4, 0. By appropriately interpreting the edges in the diagram, it corresponds to a Hamiltonian cycle 0, 1, 1 , 5 , 9 , 9, 10, 10 , 6 , 2 , 2, 3, 3 , 7 , 11 , 11, 12, 12 , 8 , 8, 7, 6, 5, 4, 4 , 0 , 0 in P(13, 4). Alspach et al. [11] introduced this scheme and proved that P(n, k) is Hamiltonian for all n ≥ (4k − 1)(4k + 1) if k is even and for all n ≥ (2k − 1)(3k + 1) if k is an odd integer with k ≥ 3. The lattice model is described as follows. For more details, see Ref. 11. In a lattice model, a lattice graph L consists of lattice points in the (x, y)-plane. Two lattice points (a1 , b1 ) and (a2 , b2 ) in L are adjacent if and only if |a1 − a2 | + |b1 − b2 | = 1.
ch012.tex
30/6/2008
252
11: 27
Page 252
Graph Theory and Interconnection Networks
Hence, the degree of each vertex is less than or equal to 4. Suppose that n and k be positive integers with n ≥ 2k + 1. A labeled lattice graph L(n, k) is obtained from the lattice graph L by labeling the lattice points following this rule: suppose that a lattice point (a, b) is labeled with an integer i with 0 ≤ i ≤ n − 1. Then (a + 1, b) is labeled with i ⊕ 1 and (a, b − 1) is labeled with i ⊕ k. A lattice diagram for P(n, k), denoted as D(n, k), is a subgraph of L(n, k) induced by the vertices with labels 0, 1, . . . , n − 1 such that it possesses either a closed or an open Eulerian trail. A traversal of the Eulerian trail in D(n, k) obeys the following rules: 1. The trail does not change the direction when it passes through a vertex of degree 4. 2. Each label 0, 1, . . . , n − 1 is encountered by the traversal once in a vertical direction and once in a horizontal direction. 3. Suppose that D(n, k) has an open Eulerian trail. Then two vertices of odd degree must have the same label, and both are not of degree 3. The correspondence between an Eulerian trail of a lattice diagram D(n, k) and a Hamiltonian cycle of the generalized Petersen graph P(n, k) is built by interpreting the edges in L(n, k). The interpretations of edges in L(n, k) are given as follows: 1. The vertical edge (i, i ⊕ k) in L(n, k) corresponds to an edge (i , (i ⊕ k) ) in P(n, k). 2. The horizontal edge (i, i ⊕ 1) in L(n, k) corresponds to an edge (i, i ⊕ 1) in P(n, k). 3. Two edges in different directions incident to the vertex i of degree 2 in L(n, k) correspond to an edge (i, i ) in P(n, k). It is not difficult to see that an Eulerian trail in L(n, k) corresponds to a Hamiltonian cycle of P(n, k). Moreover, any Hamiltonian cycle of P(n, k) can be converted into an Eulerian trail in D(n, k). Hence, finding a Hamiltonian cycle of a generalized Petersen graph P(n, k) is finding an appropriate lattice diagram for P(n, k) [11]. Furthermore, Alspach et al. [11] proposed an amalgamating mechanism to generate lattice diagrams of various sizes. For example, we have a lattice diagram D(4k, k) in Figure 12.22a and a lattice diagram D(4k + 2, k) in Figure 12.22b. By identifying the vertex with label (4k − 1) of D(4k, k) and the vertex with label 0 of D(4k + 2, k), and relabeling all vertices of D(4k + 2, k) by adding (4k − 1) to all the labels, we obtain a lattice diagram D(8k + 1, k), as shown in Figure 12.22c. With this diagram, P(8k + 1, k) is proved to be Hamiltonian. With this mechanism, we can amalgamate r copies of D(4k, k) and s copies of D(4k + 2, k), where r ≥ 1 and s ≥ 0, to make a lattice diagram D(4k + (r − 1)(4k − 1) + s(4k + 1), k). Hence, P(4k + (r − 1)(4k − 1) + s(4k + 1), k) is Hamiltonian for r ≥ 1 and s ≥ 0. Here, we slightly modify the lattice diagram proposed in Ref. 11 to prove that a generalized Petersen graph is 1-fault-tolerant Hamiltonian. First, we give examples to demonstrate the variation. In Figure 12.23a, an open Eulerian trail 0, 1, 7, 8, 2, 3, 9, 10, 4, 5, 11, 12, 6, 0 corresponds to the Hamiltonian cycle 0, 1, 1 , 7 , 7, 8, 8 , 2 , 2, 3, 3 , 9 , 9, 10, 10 , 4 , 4, 5, 5 , 11 , 11, 12, 12 , 6 , 0 , 0
ch012.tex
30/6/2008
11: 27
Page 253
Optimal 1-Fault-Tolerant Hamiltonian Graphs 0
1
k
k1 k2
2
3
k3
4
5
k4
k5
k4
k3
k2
0
2k2 2k1
k
k2
2k4 2k3
1
3k1 3k2 3k3 3k4 3k5 4k4 4k3 4k2
3
2
2k1
1
2
3
4
3k2 3k3 3k4 3k5 4k2 4k1
4k1
2k 3k1 4k1
4k
(b) 5
k4 k5
k4
k2
k3
k1
k
k1 k2 k3
2k
2k1 2k2 2k3 2k4 2k5 3k4 3k3 3k2 3k1 4k 4k1 4k2
3k
k1
2k2 2k3 2k4 2k5 3k2 3k1 3k
(a) 0
k2
5
4
k3 k4 k5 2k2 2k1
k1 k2
2k1 2k2 2k3 2k4 2k5 3k4 3k3 3k2 3k1
2k 3k
253
2k2 2k1
2k4 2k3
3k1 3k2 3k3 3k4 3k5 4k4 4k3 4k2
4k3 4k4 5k3 5k2
4k1 5k1 5k1 5k2 5k3 5k4 5k5
6k2 6k3 6k4 6k5 7k3 7k2 7k1 7k
6k1
(c)
6k3 6k2 6k1
7k2 7k3 7k4 7k5 8k3 8k2 8k1
8k
FIGURE 12.22 (a) A D(4k, k), (b) a D(4k + 2, k), and (c) a D(8k + 1, k). 0
0 0
(a)
1
2
3
4
5
7
8
9
10
11
0
1
2
3
4
5
9
10
11
6
7
6
8 12
12
13
(b)
FIGURE 12.23 (a) A D6v (13, 6) and (b) a D1h (14, 6).
of P(13, 6) − 6 using the same interpretation described earlier. The reason why the open Eulerian trail corresponds to the Hamiltonian cycle of P(13, 6) − 6 is because the vertex with label 6 is traversed only in the vertical direction and all the other vertices are traversed in both directions. Again, the open Eulerian trail in Figure 12.23b, 0, 1, 2, 8, 9, 3, 4, 10, 11, 5, 6, 7, 13, 12, 6, 0 corresponds to the Hamiltonian cycle 0, 1, 2, 2 , 8 , 8, 9, 9 , 3 , 3, 4, 4 , 10 , 10, 11, 11 , 5 , 5, 6, 7, 7 , 13 , 13, 12, 12 , 6 , 0 , 0 in P(14, 6) − 1 . In this diagram, the vertex with label 1 is traversed only in the horizontal direction, and all the other vertices are traversed in both directions. In other words, finding a lattice diagram Div (n, k) with an Eulerian trail such that the vertex with label i is traversed only in the vertical direction and all the other vertices are traversed in both directions is finding a Hamiltonian cycle of P(n, k) − i. Similarly, finding a lattice diagram Dih (n, k) with an Eulerian trail such that the vertex with label i is traversed only in a horizontal direction and all the other vertices are traversed in both directions is finding a Hamiltonian cycle of P(n, k) − i . Note that the automorphism
ch012.tex
30/6/2008
254
11: 27
Page 254
Graph Theory and Interconnection Networks
group of P(n, k) has at most two orbits 0, 1, 2, . . . , n − 1 and 0 , 1 , 2 , . . . , (n − 1) . We need to construct a lattice diagram Div (n, k) and a lattice diagram Djh (n, k) for some i and j with 0 ≤ i, j ≤ n − 1 to prove that P(n, k) is 1-fault-tolerant Hamiltonian. Now, we prove that P(3k, k) is 1-fault-tolerant Hamiltonian if and only if k is odd. First, we prove that P(3k, k) is not 1-fault-tolerant Hamiltonian if k is even. The proof is similar to the proof that P(12, 4) is not 1-fault-tolerant Hamiltonian. Suppose that k is an even integer. Suppose that P(3k, k) is 1-fault-tolerant Hamiltonian. Then, there exists a Hamiltonian cycle of P(3k, k) − 1. By the definition of the generalized Petersen graph, the set {i , (i + k) , (i + 2k) } induces a cycle of length 3 for 0 ≤ i ≤ k − 1. Therefore, any Hamiltonian cycle in P(3k, k) − 1 traverses the vertex set {i , (i + k) , (i + 2k) } consecutively for 0 ≤ i ≤ k − 1. Therefore, vertices i , (i + k) , and (i + 2k) can be regarded as a vertex for 0 ≤ i ≤ k − 1. Let P (3k, k) be the graph obtained from P(3k, k) by shrinking the vertices i , (i + k) , and (i + 2k) into a new vertex, say i, for 0 ≤ i ≤ k − 1. It is not difficult to see that P(3k, k) − 1 is Hamiltonian if and only if P (3k, k) − 1 is Hamiltonian. Now, we claim that P (3k, k) is a bipartite graph. Let X = {1, 3, 5, . . . , (3k − 1)} ∪ { i | 0 ≤ i ≤ k − 1 and i is even} and Y = {0, 2, 4, 6, . . . , (3k − 2)}∪{ i | 0 ≤ i ≤ k − 1 and i is odd}. It is easy to check that (X, Y ) forms a bipartition of P(3k, k) with |X| = |Y | = 2k. Hence, P (3k, k) is a bipartite graph with the same size of bipartition. This implies that P (3k, k) − 1 is not Hamiltonian. Hence, P(3k, k) − 1 is not Hamiltonian. Therefore, P(3k, k) is not 1-fault-tolerant Hamiltonian if k is even. Thus, we consider k is odd. Suppose that n = 1. Obviously, 1, 1 , 0 , 2 , 2, 1 forms a Hamiltonian cycle for P(3, 1) − 0 and 0, 1, 1 , 2 , 2, 0 forms a Hamiltonian cycle for P(3, 1) − 0 . Thus, P(3, 1) is 1-fault-tolerant Hamiltonian. Suppose that k = 3. Obviously, 1, 2, 3, 3 , 0 , 6 , 6, 7, 8, 8 , 2 , 5 , 5, 4, 4 , 7 , 1 , 1 forms a Hamiltonian cycle of P(9, 3) − 0 and 0, 1, 2, 3, 3 , 6 , 6, 7, 7 , 1 , 4 , 4, 5, 5 , 2 , 8 , 8, 0 forms a Hamiltonian cycle for P(9, 3) − 0 . Thus, P(9, 3) is 1-fault-tolerant Hamiltonian. v Suppose that k ≥ 5. A lattice diagram D2k − 1 (3k, k) with k ≡ 1 (mod 4) is shown v in Figure 12.24a and a lattice diagram Dk−1 (3k, k) with k ≡ 3 (mod 4) is shown in Figure 12.24b. Moreover, a lattice diagram Dkh (3k, k) is shown in Figure 12.24c. Therefore, P(3k, k) is 1-fault-tolerant Hamiltonian. Thus, we have the following theorem. THEOREM 12.15 is odd.
[246] P(3k, k) is 1-fault-tolerant Hamiltonian if and only if k
THEOREM 12.16 [246] The generalized Petersen graph P(n, 3) is 1-fault-tolerant Hamiltonian if and only if n is odd. Proof: By the definition of P(n, k), we consider n ≥ 7. By Lemma 12.6, P(n, 3) is not 1-fault-tolerant Hamiltonian if n is even. Thus, we consider the case n is odd. Suppose that n = 7. Obviously, 0, 0 , 4 , 1 , 1, 2, 3, 3 , 6 , 2 , 5 , 5, 6, 0 forms a Hamiltonian cycle for P(7, 3) − 4 and 0, 1, 2, 3, 4, 4 , 0 , 3 , 6 , 2 , 5 , 5, 6, 0 forms a Hamiltonian cycle for P(7, 3) − 1 . Thus, P(7, 3) is 1-fault-tolerant Hamiltonian. Suppose that n = 9. By Theorem 12.15, P(9, 3) is 1-fault-tolerant Hamiltonian.
ch012.tex
30/6/2008
11: 27
Page 255
Optimal 1-Fault-Tolerant Hamiltonian Graphs
0
1
2
3
4
k2
k1 2k
k2
k3
k6
k2
3k2 2k9
k8
0 3k1
3k3
8
k7
k1
2k1
2k3
2k8
7
k5
k3
k9
2k7
k4
9
2k6
4
3
8
k6
2k5
0
7
2k4
2k2
k1
6
k5
2k3 2k1
k
5
255
k2
k9
2k2
2k3
(a) 0
1
2
k1
3
4
5
2k3
k
k1
k2
k3
k5
k9
7
k5
k3
k9
3k1
3k3
0
3k2
3k5 k4
k8
k2
2k2
2k5
8
k7
k6
k4
3k4 2k9
4
k4
9
2k6
2k5 3
8
2k7 2k8
2k4
2k1 2k2 0
7
k+6
k5
k2
2k
6
k3
2k5 2k4
k1
2k3 2k2 2k1
(b) 2k1
2k2
2k3
2k4
1
2
3
4
k1
k2
k3
k4
3k2 3k1
k2
k1 2k
0
1
k1
k
2k2
2k1 0
(c) v v FIGURE 12.24 (a) A D2k−1 (3k, k) with k ≡ 1 (mod 4), (b) a Dk−1 (3k, k) with k ≡ 3 (mod 4), h and (c) a Dk (3k, k) for odd k with k ≥ 5.
Suppose that n ≥ 11. A lattice diagram D4v (n, 3) is shown in Figure 12.25a and a lattice diagram D1h (n, 3) is shown in Figure 12.25b. Therefore, P(n, 3) is 1-faulttolerant Hamiltonian. Thus, P(n, 3) is 1-fault-tolerant Hamiltonian if and only if n is odd. THEOREM 12.17 [246] The generalized Petersen graph P(n, 4) is 1-fault-tolerant Hamiltonian if and only if n = 12. Proof: By the definition of P(n, k), we consider n ≥ 9. With Theorem 12.15, P(12, 4) is not 1-fault-tolerant Hamiltonian. Thus, we consider the cases n ≥ 9 and n = 12. Suppose that n = 9. Obviously, 0, 1, 2, 2 , 7 , 7, 6, 6 , 1 , 5 , 5, 4, 3, 3 , 8 , 4 , 0 , 0 forms a Hamiltonian cycle for P(9, 4) − 8 and 0, 1, 1 , 5 , 0 , 4 , 8 , 3 , 7 , 2 , 2, 3, 4, 5, 6, 7, 8, 0 forms a Hamiltonian cycle for P(9, 4) − 6 . Thus, P(9, 4) is 1-fault-tolerant Hamiltonian.
ch012.tex
30/6/2008
11: 27
Page 256
256
Graph Theory and Interconnection Networks
n1
0
1
2
4
6
5
3
2
0
n1
6
7
8
10
14
n5
2
3
5
11 6
13 15
7 9
n5
n4 n3
1
2
9 4
12
0
n2 n3
n4
n2
0
(a)
(b)
0
FIGURE 12.25 (a) A D4v (n, 3) and (b) a D1h (n, 3) for odd n with n ≥ 11.
Suppose that n = 10. Obviously, 0, 1, 2, 3, 3 , 9 , 5 , 1 , 7 , 7, 8, 8 , 2 , 6 , 6, 5, 4, 4 , 0 , 0 forms a Hamiltonian cycle for P(10, 4) − 9 and 0, 1, 1 , 5 , 5, 4, 4 , 8 , 2 , 2, 3, 3 , 9 , 9, 8, 7, 6, 6 , 0 , 0 forms a Hamiltonian cycle for P(10, 4) − 7 . Thus, P(10, 4) is 1-fault-tolerant Hamiltonian. Suppose that n = 11. Obviously, 0, 1, 1 , 8 , 8, 9, 9 , 5 , 5, 6, 7, 7 , 3 , 10 , 6 , 2 , 2, 3, 4, 4 , 0 , 0 forms a Hamiltonian cycle for P(11, 4) − 10 and 0, 1, 1 , 5 , 9 , 2 , 2, 3, 3 , 10 , 6 , 6, 5, 4, 4 , 0 , 7 , 7, 8, 9, 10, 0 forms a Hamiltonian cycle for P(11, 4) − 8 . Thus, P(11, 4) is 1-fault-tolerant Hamiltonian. Suppose that n ≥ 13. In Figures 12.26a through 12.26d, we have four lattice diav (n, 4) depending on the value of n (mod 4). In Figures 12.26e through grams Dn−1 h (n, 4) depending on the value of n (mod 4). 12.26h, we have four lattice diagrams Dn−3 Thus, P(n, 4) is 1-fault-tolerant Hamiltonian. Therefore, P(n, 4) is 1-fault-tolerant Hamiltonian if and only if n = 12. With Theorems 12.14, 12.16, and 12.17, we can recognize those 1-fault-tolerant Hamiltonian Petersen graphs P(n, k) with k ≤ 4. Now, we consider the case k ≥ 5. By Lemma 12.6, P(n, k) is not 1-fault-tolerant Hamiltonian if n is even and k is odd. We will prove that P(n, k) is 1-fault-tolerant Hamiltonian if (1) k ≥ 5 is odd and n is odd with n sufficiently large with respect to k and (2) k is even with k ≥ 6 and n is sufficiently large with respect to k. Again, we will use the amalgamating mechanism proposed by Alspach et al. [11] and described earlier, to obtain suitable lattice diagrams. We first consider the case that k is even with k ≥ 6. We will use four basic lattice diagrams. We use D(4k, k) and D(4k + 2, k) to denote the lattice diagrams shown in Figures 12.22a and 12.22b, respectively. Moreover, we use Dkv (2k + 1, k) and D1h (2k + 2, k) to denote the lattice diagrams shown in Figures 12.27a and 12.27b, respectively. For illustration, we amalgamate a D6v (13, 6) and a D(26, 6) to obtain a D6v (38, 6) in Figure 12.27c. Note that 38 = 13 + 26 − 1, because a vertex is duplicated
ch012.tex
30/6/2008
11: 27
Page 257
Optimal 1-Fault-Tolerant Hamiltonian Graphs n3
n2
1
1
n18
n17 n13
1
2
4
5
6
n3 n2
3 0
n18
1
4
n14
n12
n8
0
1
2
(a) 0 4
1
1
7
8
5
5
6
5 n14
n1 3 n16
n11 1
0
n8
2
n13
n9 n10 n5 n6
n11
3
n11
(b)
3
n8
n4 n5 n1
n6
2
n6 n5 n4
n1
n9
n7 n11 n10n9 n-8
n6 n5 n4
4 n15
n10
n1
n12 n11 n10
0
n5
n1
n3 n2 1 2
0
0 4
n5
3
n4
n3 n2
n14 n15 3 n17 n16 n11 n8 n7 n9
2
n7
n8
2
n19 0
257
n7
0
1
2
(c)
n13
n12
(d)
n6 n5 n1 n6
n5
1
n11 n1 n-8 n2 n16 5 n11 n10 n9 3 2 0 n7 n8 n4 n3 n2 n1 n12 n13 n8 7 6 4 n6 n5 n9 n2 10 8 11 n4 n3 2 n14 n17 n15 n12 6 n10 1 2 3 n14 n13 n11 n18 n9 n8 n7
n17 n13
1
2
3
n15
n1
n2 2
3
6
7
(e)
(f)
4
7
8 n11
n12
n11 n12 n7 n8 n4 n3 n2 n1
2
1
3
n9 n8
n7
n4 n3 n2 2 1
0 4
5
6
8 n14
n14 1
0
3
2
3
n10
n9
n6
n5
n12 n11 n10
(g)
(h)
v v (n, 4) with n ≡ 1 (mod 4), FIGURE 12.26 (a) A Dn−1 (n, 4) with n ≡ 0 (mod 4), (b) a Dn−1 v v h (c) a Dn−1 (n, 4) with n ≡ 2 (mod 4), (d) a Dn−1 (n, 4) with n ≡ 3 (mod 4), (e) a Dn−3 (n, 4) with h h n ≡ 0 (mod 4), (f) a Dn−3 (n, 4) with n ≡ 1 (mod 4), (g) a Dn−3 (n, 4) with n ≡ 2 (mod 4), and h (h) a Dn−3 (n, 4) with n ≡ 3 (mod 4).
0
0 0
1
2
3
4
5
k2
k1
k
k2 k3 k4 k5 2k2 2k1 2k
k1
2k1
0
1
2
3
4
k3 k2 k1
k
k1 k2 k3 k4 2k3 2k2 2k1 2k
(a)
(b)
FIGURE 12.27 (a) A Dkv (2k + 1, k) and (b) a D1h (2k + 2, k).
during the amalgamating mechanism. Similarly, we amalgamate a D1h (14, 6) and a D(24, 6) to obtain a D1h (37, 6) in Figure 12.27c. Suppose that n ≥ 2k + 2 + (4k − 1)(4k + 1). Since gcd (4k − 1, 4k + 1) = 1, there exist nonnegative integers r and s such that n = 2k + 1 + r(4k − 1) + s(4k + 1). Similarly, there exist nonnegative integers t and u such that n = 2k + 2 + t(4k − 1) + u(4k + 1). We can amalgamate one copy of Dkv (2k + 1, k), r copies of D(4k, k), and s copies of D(4k + 2, k) to make a lattice diagram Dkv (n, k). Thus, P(n, k) − k is Hamiltonian. Again, we can amalgamate one copy of D1h (2k + 2, k), t copies of D(4k, k), and
ch012.tex
30/6/2008
11: 27
Page 258
258
Graph Theory and Interconnection Networks 0
1
2
k
k1
2k
2k1
k4
k2
k3
k2
2k5 2k4 2k3
k1
2k2 2k1
3k5 3k4 3k3 3k2
3k1 4k2 4k1
5k2 5k1
3k
3k1 3k2
4k5 4k4 4k3
4k
4k1 4k2
5k5 5k4 5k3
5k
5k1
6k5 6k4
0
2
3
4
k2
k3
k4
1
k
2k1
2k
k1
0
(b)
0
(a) 0
1
2
3
k1
k2
k3
2k1 2k2
k3
k2
k1
k
2k3 2k2 2k1
2k
3k4 3k3 3k2 3k1
3k
0
3k1 3k2 3k3
4k4 4k3 4k2
2
3
k1
k
4k1
4k
4k1 4k2 4k3
5k4 5k3 5k2
k2
k3
2k1
0
5k1
5k
5k1 5k2
6k4 6k3
1
k1
(c) 0
1
2
5
6
7
10
11
12
(d) 3
4
8
0
1
2
3
4
5
0
0
8
9
10
11
12
9
13 14 18
23
19
24
15
16
17
20
21
22
25
26
27
(e)
0
13
14
17
18
19
22
23
24
15
20
16
21
25 26 28
29
30
31
32
33
34
35
36
0
30
35
31
36
27
28
29
32
33
34
37
38
0
(f)
FIGURE 12.28 (a) A D0v (6k − 3, k), (b) a D1h (2k + 1, k), (c) a D(2k, k), (d) a D(6k − 2, k), (e) a D0h (27, 5), and (f) a D1h (39, 5).
u copies of D(4k + 2, k) to make a lattice diagram D1h (n, k). Therefore, P(n, k) − 1 is Hamiltonian. Thus, we have the following theorem. THEOREM 12.18 [246] Assume that k is even with k ≥ 6. Then P(n, k) is 1-faulttolerant Hamiltonian if n ≥ 2k + 2 + (4k − 1)(4k + 1). Now, we consider both k and n to be odd integers with k ≥ 5. We will use four basic lattice diagrams. We use D0v (6k − 3, k) and D1h (2k + 1, k) to denote the lattice diagrams
ch012.tex
30/6/2008
11: 27
Page 259
Optimal 1-Fault-Tolerant Hamiltonian Graphs
259
shown in Figures 12.28a and 12.28b respectively, and we use D(2k, k) D(6k − 2, k) to denote the lattice diagrams in Figures 12.28c and 12.28d, respectively. For illustration, we amalgamate a D0h (27, 5) and a D(10, 5) to obtain a D0h (37, 5) in Figure 12.28e. We observe that 37 = 27 + 10, which is different from the previous case. We note that the two vertices labeled with 0 in D0h (27, 5) are the terminal vertices of the open Eulerian trail. We identify one of the vertices labeled with 0 in D0h (27, 5) with one of the vertices labeled with 0 in D(10, 5) to obtain a D0h (37, 5). Similarly, we amalgamate a D1h (11, 5) with a D(28, 5) to obtain a D1h (39, 5) in Figure 12.28f. Suppose that n ≥ 6k − 3 + (2k)(6k − 2) and n is odd. Since gcd (2k, 6k − 2) = 2, there exist nonnegative integers r and s such that n = 6k − 3 + r(2k) + s(6k − 2). Moreover, there exist nonnegative integers t and u such that n = 6k − 3 + t(2k) + u(6k − 2). We can amalgamate one copy of D0v (6k − 3, k), r copies of D(2k, k), and s copies of D(6k − 2, k) to make a lattice diagram D0v (n, k). Similarly, we can amalgamate one copy of D1h (2k + 1, k), t copies of D(2k, k), and u copies of D(6k − 2, k) to make a lattice diagram D1h (n, k). Therefore, P(n, k) is 1-fault-tolerant Hamiltonian. THEOREM 12.19 [246] Suppose that k and n are odd integers with k ≥ 5. Then P(n, k) is 1-fault-tolerant Hamiltonian if n ≥ 6k − 3 + (2k)(6k − 2).
12.6
HONEYCOMB RECTANGULAR DISKS
In this section, we introduce another family of cubic 1-fault-tolerant Hamiltonian graphs. As discussed in Chapter 2, three different honeycomb meshes—the honeycomb rectangular mesh, the honeycomb rhombic mesh, and the honeycomb hexagonal mesh—are introduced by Stojmenovic [288]. Most of these meshes are not regular. Moreover, such meshes are not Hamiltonian unless they are small in size [251]. To remedy these drawbacks, the honeycomb rectangular torus, the honeycomb rhombic torus, and the honeycomb hexagonal torus are proposed [288]. Any such torus is 3-regular. Moreover, all honeycomb tori are not planar. Here, we propose a variation of honeycomb meshes, called the honeycomb rectangular disk. A honeycomb rectangular disk HReD(m, n) is obtained from the honeycomb rectangular mesh HReM(m, n) by adding a boundary cycle. The honeycomb rectangular mesh HReM(m, n) is the graph with V (HReM(m, n)) = {(i, j) | 0 ≤ i < m, 0 ≤ j < n} E(HReM(m, n)) = {((i, j), (k, l)) | i = k and j = l ± 1} ∪ {((i, j), (k, l)) | j = l and k = i + 1 with i + j is odd} For example, the honeycomb rectangular mesh HReM(8, 6) is shown in Figure 12.29. For easy presentation, we first assume that m and n are positive even integers with m ≥ 4 and n ≥ 6. A honeycomb rectangular disk HReD(m, n) is the graph obtained
ch012.tex
30/6/2008
11: 27
260
Page 260
Graph Theory and Interconnection Networks
(0, 5)
(0, 0)
(7, 5)
(1, 0)
(7, 0)
FIGURE 12.29 The honeycomb rectangular mesh HReM(8, 6).
from HReM(m, n) by adding a boundary cycle. More precisely,
V (HReD(m, n)) = ({(i, j) | 0 ≤ i < m, −1 ≤ j ≤ n} − {(0, −1), (m − 1, −1)}) ∪ {(i, j) | i ∈ {−1, m}, 0 < j < n, j is even} E(HReD(m, n)) = {((i, j), (k, l)) | i = k and j = l ± 1} ∪ {((i, j), (k, l)) | j = l and k = i + 1 with i + j is odd} ∪ {(i, j), (k, l)) | i = k ∈ {−1, m} and j = l ± 2} ∪ {((0, 0), (−1, 2)), ((−1, n − 2), (0, n)), ((m − 1, n), (m, n − 2))} ∪ {((m, 2), (m − 1, 0)), ((m − 1, 0), (m − 2, −1)), ((1, −1), (0, 0))}
For example, the honeycomb rectangular disk HReD(8, 6) is shown in Figure 12.30. Obviously, HReM(m, n) is a subgraph of HReD(m, n). Moreover, any honeycomb rectangular disk is a planar 3-regular graph. We may also define HReD(m, n) for m ≥ 4 and n ≥ 4 by adding a boundary cycle to HReM(m, n). For example, the HReD(6, 4) is shown in Figure 12.31. By brute force, we can check whether such a honeycomb rectangular disk is 1-edge fault-tolerant Hamiltonian but not 1-vertex fault-tolerant Hamiltonian. We may use a similar concept to define other cases of HReD(m, n). For example, the HReD(5, 6), HReD(5, 7), and HReD(6, 7) are shown in Figure 12.32. Obviously, HReM(m, n) is a subgraph of HReD(m, n). Moreover, any HReD(m, n) is a planar 3-regular Hamiltonian graph. The following theorem is proved by Teng et al. [298]. The proof is omitted. THEOREM 12.20 Any honeycomb rectangular disk HReD(m, n) is 1-edge faulttolerant Hamiltonian if m ≥ 4 and n ≥ 4. Moreover, any honeycomb rectangular disk HReD(m, n) is 1-vertex fault-tolerant Hamiltonian if m ≥ 4 and n ≥ 6.
ch012.tex
30/6/2008
11: 27
Page 261
Optimal 1-Fault-Tolerant Hamiltonian Graphs
261
(0, 6) (7, 6)
(1, 2)
(8, 2)
(0, 0) (7, 0) (1,1)
FIGURE 12.30 The honeycomb rectangular disk HReD(8, 6).
FIGURE 12.31 The honeycomb rectangular disk HReD(6, 4).
HReD(5,6)
HReD(5,7)
HReD(6,7)
FIGURE 12.32 The honeycomb rectangular disks HReD(5, 6), HReD(5, 7), and HReD(6, 7).
ch012.tex
262
30/6/2008
11: 27
Page 262
Graph Theory and Interconnection Networks
Note that the honeycomb rectangular disk is built from the honeycomb rectangular mesh by adding a boundary. By Theorem 12.20, the performance of a honeycomb rectangular disk is better than the performance of a honeycomb rectangular mesh. Usually, the wireless network stations of a region are settled based on a honeycomb structure. We believe that the performance of such a honeycomb structure can be improved by adding a boundary, as we did in this section.
12.7
PROPERTIES WITH RESPECT TO THE 3-JOIN
In this section, we discuss more properties of the 3-join. Assume that G1 is a graph with a vertex x of degree 3 and G2 is a graph with a vertex y of degree 3. Let G = J(G1 , N(x); G2 , N( y)) where N(x) = {x1 , x2 , x3 } and N( y) = {y1 , y2 , y3 }. Depending on the Hamiltonian properties of G1 and G2 —that is, whether they are 1vertex fault-tolerant Hamiltonian, 1-edge fault-tolerant Hamiltonian, or Hamiltonianconnected—and some local properties at x and y, we may have various Hamiltonian properties of G, as stated in the following lemmas proved by Kao et al. [192]. LEMMA 12.7 G = J(G1 , N(x); G2 , N( y)) is 1-edge fault-tolerant Hamiltonian if and only if both G1 and G2 are 1-edge fault-tolerant Hamiltonian. Proof: Suppose that G is 1-edge fault-tolerant Hamiltonian. We claim that both G1 and G2 are 1-edge fault-tolerant Hamiltonian. By symmetry, it is sufficient to prove that G1 is 1-edge fault-tolerant Hamiltonian. Let e be any edge of G1 . Then e is either incident to x or not. Assume that e is not incident to x. Then e is an edge of G. Since G is 1-edge fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C of G − e. Since there are exactly three edges of G joining V (G1 ) − {x} to V (G2 ) − {y}, C can be written as xi , P, xj , yj , Q, yi , xi for some {i, j} ⊂ {1, 2, 3} with i = j, where P is a Hamiltonian path of G1 − x joining xi to xj . Obviously, x, xi , P, xj , x forms a Hamiltonian cycle of G1 − e. Assume that e is an edge incident to x. Without loss of generality, we may assume that e = (x, x1 ). Since G is 1-edge fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C of G − (x1 , y1 ). Since there are exactly three edges joining V (G1 ) − {x} to V (G2 ) − {y}, C can be written as x2 , P, x3 , y3 , Q, y2 , x2 , where P is a Hamiltonian path of G1 − x. Obviously, x, x2 , P, x3 , x forms a Hamiltonian cycle of G1 − (x, x1 ). Then G1 is 1-edge fault-tolerant Hamiltonian. Assume that both G1 and G2 are 1-edge fault-tolerant Hamiltonian. Let e be any edge of G. Suppose that e ∈ / {(xi , yi ) | i = 1, 2, 3}. Then e is either in E(G1 ) or in E(G2 ). Without loss of generality, we assume that e is in E(G1 ). Since G1 is 1-edge fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C1 in G1 − e. Thus, C1 can be written as x, xi , P, xj , x for some i, j ∈ {1, 2, 3} with i = j. Let k be the only element in {1, 2, 3} − {i, j}. Since G2 is 1-edge fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C2 of G2 − ( y, yk ). Thus, C2 can be written as y, yj , Q, yi , y. Obviously, xi , P, xj , yj , Q, yi , xi forms a Hamiltonian cycle of G − e. Assume that e ∈ {(xi , yi ) | i = 1, 2, 3}. Without loss of generality, we assume that e = (x1 , y1 ). Since G1 is 1-edge fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C1 in G1 − (x, x1 ). Thus, C1 can be written as x, x2 , P, x3 , x. Since G2 is
ch012.tex
30/6/2008
11: 27
Page 263
Optimal 1-Fault-Tolerant Hamiltonian Graphs
263
1-edge fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C2 in G2 − ( y, y1 ). Thus, C2 can be written as y, y3 , Q, y2 , y. Obviously, x2 , P, x3 , y3 , Q, y2 , x2 forms a Hamiltonian cycle of G − e. Hence, G is 1-edge fault-tolerant Hamiltonian. A vertex x in a graph G is good if degG (x) = 3 and G − e is Hamiltonian for any edge e incident to x. Let Good(G) denote the set of good vertices in G. Obviously, Good(G) = V (G) if G is a 3-regular 1-edge fault-tolerant Hamiltonian graph. LEMMA 12.8 Suppose that both G1 and G2 are 1-vertex fault-tolerant Hamiltonian graphs. Then G = J(G1 , N(x); G2 , N( y)) is 1-vertex fault-tolerant Hamiltonian if and only if x is good in G1 and y is good in G2 . Moreover, Good(G) = (Good(G1 ) ∪ Good(G2 )) − {x, y} if x is good in G1 and y is good in G2 . Proof: We prove this lemma through the following steps: 1. Assume that G is 1-vertex fault-tolerant Hamiltonian. We claim that x is good in G1 and y is good in G2 . By symmetry, it is sufficient to prove that x is good in G1 . Let e be any edge incident to x. Without loss of generality, we assume that e = (x, x1 ). Since G is 1-vertex fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C in G − y1 . Thus, C can be written as
x2 , P, x3 , y3 , Q, y2 , x2 . Obviously, x, x2 , P, x3 , x forms a Hamiltonian cycle of G1 − (x, x1 ). Hence, x is good in G1 . 2. Assume that x is good in G1 and y is good in G2 . We claim that G is Hamiltonian. Since x is good in G1 , there exists a Hamiltonian cycle C1 in G1 (x, x1 ). Thus, C1 can be written as x, x2 , P, x3 , x. Similarly, there exists a Hamiltonian cycle C2 in G2 − ( y, y1 ). Again, C2 can be written as y, y3 , Q, y2 , y. Obviously, x2 , P, x3 , y3 , Q, y2 , x2 forms a Hamiltonian cycle of G. 3. We prove that G is 1-vertex fault-tolerant Hamiltonian. Let u be any vertex of G. Obviously, u is either in (V (G1 ) − {x}) or in (V (G2 ) − {y}). By symmetry, we assume that u ∈ V (G1 ) − {x}. Suppose that u ∈ N(x). Without loss of generality, we assume that u = x1 . Since G1 is 1-vertex fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C1 in G1 − u. Thus, C1 can be written as x, x2 , P, x3 , x. Since y is good in G2 , there exists a Hamiltonian cycle C2 in G2 − ( y, y1 ). Thus, C2 can be written as y, y3 , Q, y2 , y. Obviously, x2 , P, x3 , y3 , Q, y2 , x2 forms a Hamiltonian cycle of G − u. Suppose that u ∈ / N(x). Since G1 is 1-vertex fault-tolerant Hamiltonian, there exists a Hamiltonian cycle C1 in G1 − u. Thus, C1 can be written as
x, xi , P, xj , x for some i, j ∈ {1, 2, 3} with i = j. Let k be the only element in {1, 2, 3} − {i, j}. Since y is good in G2 , there exists a Hamiltonian cycle C2 in G2 − ( y, yk ). Thus, C2 can be written as y, yj , Q, yi , y. Obviously,
xi , P, xj , yj , Q, yi , xi forms a Hamiltonian cycle of G − u. Therefore, G is 1-vertex fault-tolerant Hamiltonian. 4. We claim that Good(G) ⊆ (Good(G1 ) ∪ Good(G2 )) − {x, y}. Let u be any good vertex in G. Note that degG (u) = 3 and u ∈ (V (G1 ) − {x}) ∪ (V (G2 ) − {y}). Without loss of generality, we assume that u ∈ V (G1 ) − {x}. Thus, degG1 (u) = 3. Let e = (u, v) be any edge of G1 incident to u.
ch012.tex
30/6/2008
264
11: 27
Page 264
Graph Theory and Interconnection Networks
Suppose that u ∈ NG1 (x). Without loss of generality, we assume that u = x1 . Suppose that v = x. Since u is good in G, there exists a Hamiltonian cycle C in G − (x1 , y1 ). Thus, C can be written as u, P, xi , yi , Q, yj , xj , R, u where i, j ∈ {2, 3} with i = j. Obviously, u, P, xi , x, xj , R, u forms a Hamiltonian cycle of G1 − (u, v). Suppose that v = x. Since u is good in G, there exists a Hamiltonian cycle C in G − (u, v). Thus, C can be written as u, y1 , Q, yi , xi , R, u, where i ∈ {2, 3}. Obviously, u, x, xi , R, u forms a Hamiltonian cycle of G1 − (u, v). Therefore, u is good in G1 . Suppose that u ∈ / NG1 (x). Since u is good in G, there exists a Hamiltonian cycle C in G − (u, v). Thus, C can be written as u, P, xi , yi , Q, yj , xj , R, u, where i, j ∈ {1, 2, 3} with i = j. Obviously, u, P, xi , x, xj , R, u forms a Hamiltonian cycle of G1 − (u, v). Hence, u is good in G1 . Therefore, Good(G) ⊆ (Good(G1 ) ∪ Good(G2 )) − {x, y}. 5. We claim that Good(G1 ) − {x} ⊆ Good(G). Suppose that u is good in G1 with u = x. Thus, degG (u) = 3. Let e = (u, v) be any edge of G incident to u. Suppose that u = xi and e = (xi , yi ) for some i with i ∈ {1, 2, 3}. Without loss of generality, we assume that i = 1. Since u is good in G1 , there exists a Hamiltonian cycle C1 in G1 − (x1 , x). Thus, C1 can be written as
x, x2 , P, x3 , x. Since y is good in G2 , there exists a Hamiltonian cycle C2 in G2 − ( y, y1 ). Thus, C2 can be written as y, y3 , Q, y2 , y. Obviously,
x2 , P, x3 , y3 , Q, y2 , x2 forms a Hamiltonian cycle in G − e. Suppose that u = xi or e = (xi , yi ) for any i with i ∈ {1, 2, 3}. Since u is good in G1 , there exists a Hamiltonian cycle C1 in G1 − e. Thus, C1 can be written as u, P1 , xi , x, xj , P2 , u, where i, j ∈ {1, 2, 3} with i = j. (Note that the length of Pt is 0 if u = xt for t ∈ {1, 2}.) Let k be the only element in {1, 2, 3} − {i, j}. Since y is good in G2 , there exists a Hamiltonian cycle C2 in G2 − ( y, yk ). Thus, C2 can be written as y, yi , Q, yj , y. Obviously,
u, P1 , xi , yi , Q, yj , xj , P2 , u forms a Hamiltonian cycle in G − e. Therefore, Good(G1 ) − {x} ⊆ Good(G). 6. Similar to Step 5, we have Good(G2 ) − {y} ⊆ Good(G). 7. Combining Steps 4–6, Good(G) = (Good(G1 ) ∪ Good(G2 )) − {x, y}. LEMMA 12.9 Let G = J(G1 , N(x); G2 , N( y)) with y ∈ Good(G2 ). Suppose that a and b are two distinct vertices of G1 such that a = x and b = x. Then there exists a Hamiltonian path of G1 joining a to b if and only if there exists a Hamiltonian path of G joining a to b. Proof: Suppose that there exists a Hamiltonian path P1 of G1 joining a to b. We can write P1 as a, P11 , xi , x, xj , P12 , b with {i, j} ⊂ {1, 2, 3} and i = j. Note that the length of P11 and the length of P12 could be 0. Let k be the only element in {1, 2, 3} − {i, j}. Since y is good in G2 , there exists a Hamiltonian cycle C2 in G2 − ( y, yk ). We can write C2 as y, yi , P2 , yj , y. Obviously, a, P11 , xi , yi , P2 , yj , xj , P12 , b forms a Hamiltonian path of G joining a to b. Suppose that there exists a Hamiltonian path P of G joining a to b. Since there are exactly three edges—namely, (x1 , y1 ), (x2 , y2 ), and (x3 , y3 )—between V (G1 ) − {x} and V (G2 ) − {y} in G, P can be written as a, P1 , xi , yi , P2 , yj , xj , P3 , b for some
ch012.tex
30/6/2008
11: 27
Page 265
Optimal 1-Fault-Tolerant Hamiltonian Graphs
265
{i, j} ⊂ {1, 2, 3} with i = j. Note that the length of P1 and the length of P3 could be 0. Obviously, a, P1 , xi , x, xj , P3 , b forms a Hamiltonian path in G1 joining a to b. A vertex x in a graph G is nice if it is good in G with the following property: let N(x) = {x1 , x2 , x3 } be the neighborhood of x in G. For any i ∈ {1, 2, 3}, there exists a Hamiltonian path of G − (x, xi ) joining u to xi for any vertex u of G with u ∈ / {x, xi }. We use Nice(G) to denote the set of nice vertices in G. LEMMA 12.10 Suppose that both G1 and G2 are Hamiltonian-connected graphs, x ∈ Nice(G1 ), and y ∈ Nice(G2 ). Then G = J(G1 , N(x); G2 , N( y)) is Hamiltonianconnected. Proof: To prove that G is Hamiltonian-connected, we want to show that there exists a Hamiltonian path joining a to b for any a, b ∈ V (G) with a = b. By symmetry, we need to consider only the following cases: Case 1. a, b ∈ V (G1 ). Since G1 is Hamiltonian-connected, there exists a Hamiltonian path a, P1 , xi , x, xj , P2 , b in G1 . Let k be the only element in {1, 2, 3} − {i, j}. Since y is good, there exists a Hamiltonian cycle y, yi , Q, yj , y in G2 − ( y, yk ). Obviously,
a, P1 , xi , yi , Q, yj , xj , P2 , b is a Hamiltonian path in G. Case 2. a ∈ V (G1 ) − N(x) and b ∈ V (G2 ) − N( y). Since x is nice in G1 , G1 − (x, x1 ) contains a Hamiltonian path P1 joining a to x1 . Without loss of generality, P1 can be written as a, P11 , x2 , x, x3 , P12 , x1 . Since y is nice in G2 , G2 − ( y, y2 ) contains a Hamiltonian path P2 joining b to y2 . P2 can be written as y2 , P21 , yj , y, yk , P22 , b with {j, k} = {1, 3}. Suppose that j = 1. Then k = 3. Obviously,
a, P11 , x2 , y2 , P21 , y1 , x1 , (P12 )−1 , x3 , y3 , P22 , b is a Hamiltonian path in G that joins a to b. Suppose that j = 3. Then k = 1. Obviously, a, P11 , x2 , y2 , P21 , y3 , x3 , P12 , x1 , y1 , P22 , b is a Hamiltonian path in G that joins a to b. Case 3.
a ∈ N(x) and b ∈ V (G2 ). Without loss of generality, we assume that a = x1 .
Suppose that b = y1 . Since x is nice in G1 , there exists a Hamiltonian path P1 of G1 − (x, x2 ) joining a to x2 . We can write P1 as a, x, x3 , Q1 , x2 . Suppose that b = y2 . Since y is nice in G2 , there exists a Hamiltonian path P2 of G2 − ( y, y1 ) joining y1 to b. Thus, P2 can be written as y1 , Q21 , y2 , y, y3 , Q22 , b or y1 , Q21 , y3 , y, y2 , Q22 , b. Suppose that P2 = y1 , Q21 , y2 , y, y3 , Q22 , b. Then a, y1 , Q21 , y2 , x2 , Q1−1 , x3 , y3 , Q22 , b is a Hamiltonian path joining a to b in G. Suppose that P2 = y1 , Q21 , y3 , y, y2 , Q22 , b. Then a, y1 , Q21 , y3 , x3 , Q1 , x2 , y2 , Q22 , b is a Hamiltonian path joining a to b in G. Suppose that b = y1 . Since x is good in G1 , there exists a Hamiltonian cycle C1 of G − (x, x2 ). Obviously, C1 can be written as x, x1 = a, Q1 , x3 , x. Since y is good in G2 , there exists a Hamiltonian cycle C2 − ( y, y2 ). Obviously, C2 can be written as y, y3 , Q2 , y1 = b. Then a, Q1 , x3 , y3 , Q2 , b is a Hamiltonian path joining a to b in G. LEMMA 12.11 Let G1 be a Hamiltonian-connected graph with a nice vertex x and K4 be the complete graph defined on {y, y1 , y2 , y3 } and G = J(G1 , N(x); K4 , N( y)). Then G is Hamiltonian-connected. Moreover, {y1 , y2 , y3 } ⊆ Nice(G).
ch012.tex
266
30/6/2008
11: 27
Page 266
Graph Theory and Interconnection Networks
Proof: Obviously, K4 is Hamiltonian-connected. It is easy to check whether Nice(K4 ) = V (K4 ). Using Lemma 12.10, G is Hamiltonian-connected. Now, we show that {y1 , y2 , y3 } ⊆ Nice(G). Using symmetry, we need to verify only that y1 is nice in G. Obviously, degG ( y1 ) = 3. We first claim that y1 is good in G. Therefore, we show that G − ( y1 , z) is Hamiltonian for any z ∈ {x1 , y2 , y3 }. Since x is good in G1 , there exists a Hamiltonian cycle C1i of G1 (x, xi ) for any i ∈ {1, 2, 3}. We may write C1i as x, xj , Pi , xk , x with {i, j, k} = {1, 2, 3}. We set C i = xj , Pi , xk , yk , yi , yj , xj . Obviously, C 1 is a Hamiltonian cycle in G − ( y1 , x1 ); C 2 is a Hamiltonian cycle in G − ( y1 , y3 ); and C 3 is a Hamiltonian cycle in G − ( y1 , y2 ). Therefore, y1 is good in G. Let b be any element in N( y1 ) = {x1 , y2 , y3 }. To show that y1 is nice in G, we need to find a Hamiltonian path of G − ( y1 , b) that joins a to b for any vertex a of G with a∈ / {y1 , b}. Case 1. a ∈ V (G1 ) − {x, x1 } and b = x1 . Since x is nice in G1 , there exists a Hamiltonian path P1 of G1 (x, x1 ) joining a to x1 . We can write P1 as a, P11 , xk , x, xj , P12 , x1 where {k, j} = {2, 3}. Thus, a, P11 , xk , yk , y1 , yj , xj , P12 , x1 is a Hamiltonian path joining a to x1 in G − (x1 , y1 ). Case 2. a ∈ V (G1 ) − {x, x1 } and b = yk for some k ∈ {2, 3}. Since x is nice in G1 , there exists a Hamiltonian path P1 joining a to xk in G1 (x, xk ). Write P1 as
a, P11 , xi , x, xj , P12 , xk where {i, j, k} = {1, 2, 3}. Thus, a, P11 , xi , yi , yj , xj , P12 , xk , yk is a Hamiltonian path of G − ( y1 , yk ) joining a to yk . Case 3. a ∈ {y2 , y3 } and b = x1 . Since x is good in G1 , there exists a Hamiltonian cycle C1 in G1 (x, x2 ). We can write C1 as x, x3 , P1 , x1 , x. Thus, y2 , y1 , y3 , x3 , P1 , x1 forms a Hamiltonian path of G − ( y1 , x1 ) joining y2 to x1 . Since x is good in G1 , there exists a Hamiltonian cycle C2 in G1 (x, x3 ). We can write C2 as x, x2 , P2 , x1 , x. Thus,
y3 , y1 , y2 , x2 , P2 , x1 is a Hamiltonian path of G − ( y1 , x1 ) joining y3 to x1 . Case 4. a = x1 and b ∈ {y2 , y3 }. Let b = yk for some k ∈ {2, 3} and j be the only index in {2, 3} − {k}. Since x is a nice vertex in G1 , there exists a Hamiltonian path P that joins x1 to xk in G1 (x, xk ). We can write P as x1 , x, xj , Q, xk . Thus, x1 , y1 , yj , xj , Q, xk , yk forms a Hamiltonian path of G − ( y1 , yk ) joining x1 to yk . Case 5. {a, b} = {y2 , y3 }. Without loss of generality, we may assume that a = y2 and b = y3 . Since x is good in G1 , there exists a Hamiltonian cycle C in G1 (x, x2 ). We can write C as x, x1 , R, x3 , x. Obviously, y2 , y1 , x1 , R, x3 , y3 is a Hamiltonian path of G − ( y1 , y3 ) joining y2 to y3 . LEMMA 12.12 Let G = J(G1 , N(x); G2 , N( y)). Suppose that y ∈ Good(G2 ). Let a ∈ V (G1 ) such that a = x. Then G1 − a is Hamiltonian if and only if G − a is Hamiltonian. Proof: Suppose that there exists a Hamiltonian cycle C1 in G1 − a. We can write C1 as x, xi , P, xj , x with i, j ∈ {1, 2, 3} and i = j. Let k be the only element in {1, 2, 3} − {i, j}. Since y is good in G2 , there exists a Hamiltonian cycle C2 in
ch012.tex
30/6/2008
11: 27
Page 267
Optimal 1-Fault-Tolerant Hamiltonian Graphs
267
G2 − ( y, yk ). We can write C2 as y, yj , Q, yi , y. Obviously, xi , P, xj , yj , Q, yi , xi forms a Hamiltonian cycle in G − a. Suppose that there exists a Hamiltonian cycle C in G − a. Since there are exactly three edges between V (G1 ) − {x} and V (G2 ) − {y} in G, C can be written as xi , P, xj , yj , Q, yi , xi for some i, j ∈ {1, 2, 3} with i = j. Obviously, x, xi , P, xj , x forms a Hamiltonian cycle in G1 − a. LEMMA 12.13 Let a ∈ V (G1 ) such that a = x, K4 be the complete graph defined on {y, y1 , y2 , y3 }, and G = J(G1 , N(x); K4 , N( y)). Then G − yi is Hamiltonian if and only if G1 − (x, xi ) is Hamiltonian. Moreover, G − a is Hamiltonian if and only if G1 − a is Hamiltonian. Proof: Suppose that there exists a Hamiltonian cycle C in G − yi . We can write C as xj , yj , yk , xk , P, xj , where {i, j, k} = {1, 2, 3}. Obviously, xj , x, xk , P, xj forms a Hamiltonian cycle in G1 − (x, xi ). Suppose that there exists a Hamiltonian cycle C1 in G1 − (x, xi ). We can write C1 as xj , x, xk , P, xj , where {i, j, k} = {1, 2, 3}. Obviously, xj , yj , yk , xk , P, xj forms a Hamiltonian cycle in G − yi . Note that Good(K4 ) = V (K4 ). Using Lemma 12.12, G1 − a is Hamiltonian if and only if G − a is Hamiltonian. LEMMA 12.14 Suppose that G1 is a Hamiltonian graph and G2 is a 1-edge faulttolerant Hamiltonian graph. Then G = J(G1 , N(x); G2 , N( y)) is Hamiltonian. Proof: Since G1 is Hamiltonian, G1 has a Hamiltonian cycle C1 . We can write C1 as xi , P1 , xj , x, xi , where i, j ∈ {1, 2, 3} and i = j. Let k be the only element in {1, 2, 3} − {i, j}. Since G2 is 1-edge fault-tolerant Hamiltonian, G2 − ( y, yk ) has a Hamiltonian cycle C2 . Thus, we can write C2 as yi , y, yj , P2 , yi . Obviously, G has a Hamiltonian cycle xi , P1 , xj , yj , P2 , yi , xi . Suppose that G = (V , E) is a graph with a vertex x of degree 3. The 3-node expansion of G, Ex(G, x), is the graph J(G, N(x); K4 , N( y)), where y ∈ V (K4 ). Any vertex in Ex(G, x) − V (G) is called an expanded vertex of G at x. Obviously, Ex(G, x) is cubic if G is cubic, Ex(G, x) is planar if G is planar, and Ex(G, x) is connected if G is connected.
12.8
EXAMPLES OF VARIOUS CUBIC PLANAR HAMILTONIAN GRAPHS
Let U be the set of cubic planar Hamiltonian graphs, A be the set of 1-vertex faulttolerant Hamiltonian graphs in U, B be the set of 1-edge fault-tolerant Hamiltonian graphs in U, and C be the set of Hamiltonian-connected graphs in U. With the inclusion or exclusion of the sets A, B, and C, the set U is divided into eight subsets. Using the properties of a 3-join discussed in Section 12.7, Kao et al. [192] proved that there is an infinite number of elements in each of the eight subsets.
ch012.tex
30/6/2008
268
11: 27
Page 268
Graph Theory and Interconnection Networks
12.8.1 A ∩ B ∩ C Obviously, K4 is the smallest cubic planar Hamiltonian graph. It is easy to check that K4 is a graph in A ∩ B ∩ C. Moreover, Nice(K4 ) = V (K4 ). Let x1 be any vertex of K4 . Using Lemmas 12.7, 12.8, and 12.11, Ex(K4 , x1 ) is a graph in A ∩ B ∩ C. With Lemma 12.11, any expanded vertex of K4 at x1 is nice. We can recursively define a sequence of graphs as follows: let G1 = K4 and G2 = Ex(K4 , x1 ). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We set Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7, 12.8, and 12.11, Gi ∈ A ∩ B ∩ C for every i ≥ 1. We have the following theorem. THEOREM 12.21 There is an infinite number of planar 1-vertex fault-tolerant Hamiltonian, 1-edge fault-tolerant Hamiltonian, and Hamiltonian-connected graphs.
12.8.2 A ∩ B ∩ C Let Q3 be the three-dimensional hypercube shown in Figure 12.33a. Obviously, Q3 is planar. It is easy to check that Q3 is 1-edge fault-tolerant Hamiltonian. Since Q3 is a bipartite graph, there is no cycle of length 7. Therefore, Q3 − x is not Hamiltonian for any vertex x in Q3 . Thus, Q3 is not 1-vertex fault-tolerant Hamiltonian. Since there are four vertices in each partite set, there is no Hamiltonian path joining any two vertices of the same partite set. Therefore, Q3 is not Hamiltonian-connected. Thus, Q3 is a graph in A ∩ B ∩ C. Let x1 be any vertex in Q3 . With Lemma 12.7, Ex(Q3 , x1 ) is 1-edge fault-tolerant Hamiltonian. Applying Lemma 12.13, Ex(Q3 , x1 ) is not 1-vertex fault-tolerant Hamiltonian. By Lemma 12.9, Ex(Q3 , x1 ) is not Hamiltonian-connected. Therefore, Ex(Q3 , x1 ) is a graph in A ∩ B ∩ C. We can recursively define a sequence of graphs as follows: let G1 = Q3 and G2 = Ex(Q3 , x1 ). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7, 12.9, and 12.13, Gi ∈ A ∩ B ∩ C for every i ≥ 1. We have the following theorem. THEOREM 12.22 There is an infinite number of planar graphs that are 1-edge faulttolerant Hamiltonian, but neither 1-vertex fault-tolerant Hamiltonian nor Hamiltonianconnected.
12.8.3 A ∩ B ∩ C Let Q be the graph in Figure 12.33b. Obviously, Q is obtained from the graph Q3 by a sequence of 3-vertex expansions. From Section 12.8.2, Q3 ∈ A ∩ B ∩ C. By Lemma 12.7, Q is 1-edge fault-tolerant Hamiltonian. Applying Lemma 12.13, Q − g is not Hamiltonian. Hence, Q is not 1-vertex fault-tolerant Hamiltonian. By brute force, we can check whether Q is Hamiltonian-connected. Therefore, Q ∈ A ∩ B ∩ C. THEOREM 12.23 There is an infinite number of planar graphs that are 1-edge fault-tolerant Hamiltonian and Hamiltonian-connected but not 1-vertex fault-tolerant Hamiltonian.
ch012.tex
30/6/2008
11: 27
Page 269
Optimal 1-Fault-Tolerant Hamiltonian Graphs
269
f2,2
f1,3 f1,2
f 2,1
f1,1 g1,1 g1,3
g1,2
g 3,2
g
g3,3 g 2,2 g 3,1
f 4,3
g2,3 g2,1
f 4,1
f 3,1
f 3,2
f 3,3
f 4,2 (a)
f2,3
(b)
FIGURE 12.33 The graphs (a) Q3 and (b) Q.
Proof: Let g3,1 be the vertex of Q shown in Figure 12.33b. By brute force, we can check that g3,1 ∈ Nice(Q). Let Y = Ex(Q, g3,1 ). Applying Lemmas 12.7, 12.11, and 12.13, Y is a graph in A ∩ B ∩ C. Moreover, by Lemma 12.11, any expanded vertex of Q at g3,1 is nice. Now, we recursively define a sequence of graphs as follows: let G1 = Q, x1 = g3,1 , and G2 = Ex(Q, x1 ). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7, 12.11, and 12.13, Gi ∈ A ∩ B ∩ C for every i ≥ 1.
12.8.4 A ∩ B ∩ C Let M denote the graph in Figure 12.34a and M0 denote the graph in Figure 12.34b. Obviously, M is obtained from M0 by a sequence of 3-node expansions. LEMMA 12.15 The graph M is 1-edge fault-tolerant Hamiltonian and 1-vertex faulttolerant Hamiltonian. Proof: We first check that M0 is 1-edge fault-tolerant Hamiltonian. By symmetry, we only need to prove that M0 − e is Hamiltonian where e ∈ {(s1 , s2 ), (s1 , r1 ), (r1 , q2 )}. The corresponding cycles are listed here: M0 − (s1 , s2 ) M0 − (s1 , r1 ) M0 − (r1 , q2 )
s1 , r1 , q1 , p1 , p2 , q2 , r2 , s2 , s3 , r3 , q3 , p3 , p4 , q4 , r4 , s4 , s1
s1 , s2 , r2 , q3 , p3 , p4 , p1 , p2 , q2 , r1 , q1 , r4 , q4 , r3 , s3 , s4 , s1
s1 , s2 , s3 , s4 , r4 , q4 , r3 , q3 , r2 , q2 , p2 , p3 , p4 , p1 , q1 , r1 , s1
Note that M is obtained from M0 by a sequence of 3-vertex expansions. Recursively applying Lemma 12.7, M is 1-edge fault-tolerant Hamiltonian. By Lemma 12.13, M − v is Hamiltonian, where v ∈ {pi, j | 1 ≤ i ≤ 4, 1 ≤ j ≤ 3} ∪ {si, j | 1 ≤ i ≤ 4, 1 ≤ j ≤ 3}.
ch012.tex
30/6/2008
11: 27
Page 270
270
Graph Theory and Interconnection Networks s1,2
s1,3
s 2,3
s1,1
q2
r1
r2
s2
s2,1 s 2,2
q2
q1 p p1,3 1,1 p4,2 r4
p3,2
p2 q1
p3,1 q3
p4,1
r3
r4
r3 s 3,1
q4
s3,3 s 3,2
s3
s4
(a)
(b)
s1
s2
s1
s2
q2
q2 r1
r2
r1
q1
p1,1
p3
p2 p1,2
q1
q3
r2
z
p2
p1,3
p1
p4 r3
q4 s3
s4
s3
s4
(c)
(d)
s1
s2
q1
s1
s2
p1,1
p1,3
r2
p2
p1,2
p3
z1
q1
q3
r3
q3
r3
r4 q4 s3
(e)
p3 p4
q4 s4
r2
p2
z2
p1
p4
r4
q2
r1
q2 z2
q3
r3
r4
q4
z1
p3
p4
r4
r1
q3
p4
s4,2
p1,2
p3
p1
p4,3
q4
s4,1
r2
r1
p2,1 p p2,3 2,2 p3,3
p1,2
s4,3
s1
s3
s4 (f)
FIGURE 12.34 Graphs (a) M, (b) M0 , (c) M1 , (d) M2 , (e) M3 , and (f) M4 .
To prove that M is 1-vertex fault-tolerant Hamiltonian, we only need to check whether M − r1 and M − q1 are Hamiltonian by the symmetric property of M. By Lemma 12.13, it suffices to show that M0 − r1 and M0 − q1 are Hamiltonian. Obviously, q1 , p1 , p2 , q2 , r2 , s2 , s1 , s4 , s3 , r3 , q3 , p3 , p4 , q4 , r4 , q1 is a Hamiltonian
ch012.tex
30/6/2008
11: 27
Page 271
Optimal 1-Fault-Tolerant Hamiltonian Graphs
271
cycle of M0 − r1 , and r1 , q2 , r2 , s2 , s3 , r3 , q3 , p3 , p2 , p1 , p4 , q4 , r4 , s4 , s1 , r1 is a Hamiltonian cycle of M0 − q1 . Hence, M is 1-vertex fault-tolerant Hamiltonian. LEMMA 12.16 There is no Hamiltonian path of M joining p1,2 to r1 . Therefore, M is not Hamiltonian-connected. Proof: Let M1 be the graph shown in Figure 12.34c. Obviously, M is obtained from M1 by a sequence of 3-node expansions. By Lemma 12.9, it suffices to show that there is no Hamiltonian path in M1 joining p1,2 to r1 . We prove it by contradiction. Suppose that there exists a Hamiltonian path P in M1 joining p1,2 to r1 . Let P = v1 = p1,2 , v2 , . . . , v18 . Then v2 is p2 , p1,1 , or p1,3 . Case 1. v2 = p2 . Then neither ( p1,1 , p1,2 ) nor ( p1,2 , p1,3 ) is in P. However, both ( p1,1 , p1,3 ) and ( p1,3 , p4 ) are in P. Hence, the graph M2 in Figure 12.34d is Hamiltonian. Let H be any Hamiltonian cycle of M2 . Since M2 is a planar graph, M2 and H satisfy the Grinberg condition [129] of Theorem 10.7. Thus, 2( f4 − f4 ) + 3( f5 − f5 ) + 6( f8 − f8 ) = 0, where fi is the number of faces of length i inside H and fi is the number of faces of length i outside H for i = 4, 5, 8. Thus, 2( f4 − f4 ) = 0 (mod 3). Since | f4 − f4 | = 1, the equation cannot hold. We arrive at a contradiction. Case 2. v2 is either p1,1 or p1,3 . Then the graph M3 shown in Figure 12.34e is Hamiltonian. By Lemma 12.9, the graph M4 in Figure 12.34f is Hamiltonian. It is easy to see that M4 is isomorphic to M2 . Therefore, M4 is not Hamiltonian. Again, we arrive at a contradiction. THEOREM 12.24 There is an infinite number of planar graphs that are 1-edge faulttolerant Hamiltonian and 1-vertex fault-tolerant Hamiltonian but not Hamiltonianconnected. Proof: Let Y = Ex(M, q1 ). Applying Lemmas 12.15 and 12.16, M ∈ A ∩ B ∩ C. By Lemmas 12.7 through 12.9, Y ∈ A ∩ B ∩ C. Let G1 = M, x1 = q1 , and G2 = Ex(M, q1 ). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7 through 12.9, Gi ∈ A ∩ B ∩ C for every i ≥ 1.
12.8.5 A ∩ B ∩ C Let Eye(2) be the graph in Figure 12.35. By brute force, we can prove that Eye(2) is 1-vertex fault-tolerant Hamiltonian but not 1-edge fault-tolerant Hamiltonian. More precisely, Eye(2) − e is not Hamiltonian for any edge in {(e1 , e2 ), (e3 , e4 ), (e5 , e6 )}. By brute force, we can also check that Eye(2) is Hamiltonian-connected. Therefore, Eye(2) is a graph in A ∩ B ∩ C. Let e16 be the vertex of Eye(2) shown in Figure 12.35. By brute force, we can check that e16 is a nice vertex of Eye(2). Let Y = Ex(Eye(2), e16 ). By Lemmas 12.7, 12.8, and 12.11, Y is a graph in A ∩ B ∩ C. By Lemma 12.11, any expanded vertex of Eye(2) at e16 is nice in Y . We recursively define a sequence of
ch012.tex
30/6/2008
11: 27
Page 272
272
Graph Theory and Interconnection Networks
e16
e15 e14
e7
e3 e2
e13 e18
e4
e8
e1 e6
e5
e9
e12 e11
e10
e17
FIGURE 12.35 The graph Eye(2).
graphs as follows: let G1 = Eye(2) and G2 = Ex(Eye(2), e16 ). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemma 12.7, Lemma 12.8, and Lemma 12.11, Gi ∈ A ∩ B ∩ C for every i ≥ 1. We have the following theorem. THEOREM 12.25 There is an infinite number of planar graphs that are 1-vertex fault-tolerant Hamiltonian and Hamiltonian-connected but not 1-edge fault-tolerant Hamiltonian.
12.8.6 A ∩ B ∩ C Let N = J(Eye(2), N(e16 ); M, N(s4,1 )) be the graph in Figure 12.36. Obviously, N is a cubic planar graph. Since M is 1-edge fault-tolerant Hamiltonian, s4,1 ∈ Good(M). From Section 12.8.5, we know that e16 ∈ Good(Eye(2)). By Lemma 12.8, N is 1-vertex fault-tolerant Hamiltonian. Again, we know that Eye(2) ∈ A ∩ B ∩ C. By Lemmas 12.7, N is not 1-edge fault-tolerant Hamiltonian. Applying Lemma 12.16, there is no Hamiltonian path of M joining p1,2 to r1 . By Lemma 12.9, there is no Hamiltonian path of N joining p1,2 to r1 . Therefore, N is not Hamiltonian-connected. Thus, N is a graph in A ∩ B ∩ C. THEOREM 12.26 There is an infinite number of planar graphs that are 1-vertex fault-tolerant Hamiltonian but neither 1-edge fault-tolerant Hamiltonian nor Hamiltonian-connected. Proof: Let x be the vertex p3,1 of N shown in Figure 12.36. Since M is 1-edge fault-tolerant Hamiltonian, x ∈ Good(M). Using Lemma 12.8, x ∈ Good(N). Let Y = Ex(N, x). By Lemmas 12.7 through 12.9, Y is a graph in A ∩ B ∩ C. With
ch012.tex
30/6/2008
11: 27
Page 273
Optimal 1-Fault-Tolerant Hamiltonian Graphs
273
s2,3
s1,2 s1,3
s1,1
q2
s2,1
r1
s2,2
r2 p2,1 p2,3
q1
p2,2
p1,2
p3,3
p 1,1 p 1,3
p3,2
p3,1
q3
p4,2 p4,3 p4,1 r4
e15 e14
e7 e3
e18e13 e2
e4
e1 e5 s4,3
e6
e12 e11
r3 q4
e8
s3,1
s3,3
e9
e10 e17 s4,2
s3,2
FIGURE 12.36 The graph N.
Lemma 12.8, any expanded vertex of N at x is good. We recursively define a sequence of graphs as follows: let G1 = N and G2 = Ex(N, x). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7 through 12.9, Gi ∈ A ∩ B ∩ C for every i ≥ 1.
12.8.7 A ∩ B ∩ C Let R be the graph J(Eye(2), N(e16 ); Q, N(g3,1 )) shown in Figure 12.37. Obviously, R is a cubic planar graph. In Section 12.8.3, we know that Q ∈ A ∩ B ∩ C, Q − g is not Hamiltonian, and g3,1 is nice in Q. From Section 12.8.5, we know that Eye(2) ∈ A ∩ B ∩ C and e16 ∈ Nice(Eye(2)). By Lemma 12.7, R is not 1-edge faulttolerant Hamiltonian. With Lemma 12.12, R − g is not Hamiltonian. Hence, R is not 1-vertex fault-tolerant Hamiltonian. By Lemma 12.10, R is Hamiltonian-connected. Thus, R is a graph in A ∩ B ∩ C.
ch012.tex
30/6/2008
11: 27
Page 274
274
Graph Theory and Interconnection Networks f1,3
f2,2
f1,1
f1,2
f2,1 g1,2
f2,3
g
g1,1 g1,3
g3,2
g2,3 g3,3
e17 e10
e11
e e9 e4
e e1
e3
e7
f4,3
f4,1
g2,1 f3,1
6
e5
e8
g2,2
f3,2
12
e2 e 13
e18
e14 e15
f4,2
f3,3
FIGURE 12.37 The graph R.
THEOREM 12.27 There is an infinite number of planar graphs that are Hamiltonianconnected but neither 1-vertex fault-tolerant Hamiltonian nor 1-edge fault-tolerant Hamiltonian. Proof: Let x be the vertex e17 shown in Figure 12.37. By brute force, x ∈ Nice(R). Let Y = Ex(R, x). By Lemmas 12.7, 12.11, and 12.13, Y is a graph in A ∩ B ∩ C, and any expanded vertex of R at x is nice. We recursively define a sequence of graphs as follows: let G1 = R and G2 = Ex(R, x). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7, 12.11, and 12.13, Gi ∈ A ∩ B ∩ C for every i ≥ 1.
12.8.8 A ∩ B ∩ C Let Z = J(Eye(2), N(e16 ); Q3 , N(f4 )) shown in Figure 12.38. Obviously, Z is a connected planar cubic graph. From Sections 12.8.2 and 12.8.5, we know that Q3 ∈ A ∩ B ∩ C and Eye(2) ∈ A ∩ B ∩ C. Moreover, Q3 − f2 is not Hamiltonian and there is no Hamiltonian path of Q3 joining f2 to g2 . By Lemma 12.7, Z is not 1-edge fault-tolerant Hamiltonian. From Section 12.8.5, we know that e16 is a good vertex
ch012.tex
30/6/2008
11: 27
Page 275
Optimal 1-Fault-Tolerant Hamiltonian Graphs
275
f2
f1
g1
g
g3 e15
f3
e7
e14
g2
e3 e4
e2 e14
e13
e8
e5
e1
e9 e6
e12 e11
e10
e17
FIGURE 12.38 The graph Z.
of Eye(2). By Lemma 12.12, Z − f2 is not Hamiltonian. Hence, Z is not 1-vertex fault-tolerant Hamiltonian. Applying Lemma 12.9, there is no Hamiltonian path of Z joining f2 to g2 . Therefore, Z is not Hamiltonian-connected. Thus, Z is a graph in A ∩ B ∩ C. THEOREM 12.28 There is an infinite number of Hamiltonian planar graphs that are not Hamiltonian-connected, not 1-vertex fault-tolerant Hamiltonian, and not 1-edge fault-tolerant Hamiltonian. Proof: Let x be the vertex g1 in Z shown in Figure 12.38. Let Y = Ex(Z, x). Using Lemma 12.14, Y is Hamiltonian. By Lemmas 12.7, 12.9, and 12.13, Y is a graph in U − (A ∩ B ∩ C). We recursively define a sequence of graphs as follows: let G1 = Z and G2 = Ex(Z, x). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as Ex(Gi , xi ). Recursively applying Lemmas 12.7, 12.9, and 12.13, Gi ∈ U − (A ∩ B ∩ C) for every i ≥ 1.
12.9
HAMILTONIAN PROPERTIES OF DOUBLE LOOP NETWORKS
Since the complete digraph with n vertices is (n − 3)-fault-tolerant Hamiltonian for n ≥ 3, we can also study the optimal k-vertex fault-tolerant Hamiltonian digraphs, optimal k-edge fault-tolerant Hamiltonian digraphs, and k-fault-tolerant Hamiltonian digraphs. However, we do not get much of a result.
ch012.tex
30/6/2008
11: 27
Page 276
276
Graph Theory and Interconnection Networks
In this section, we discuss the only corresponding result we know in a digraph. A double loop network, denoted by G(n; s1 , s2 ), is a digraph with n vertices {0, 1, . . . , n − 1} and 2n edges of the form i → i + s1 (mod n) and i → i + s2 (mod n), referred to as s1 -edges and s2 -edges, respectively. Double loop networks are extensions of ring networks and are widely used in the design and implementation of local area networks. To construct an n-vertex double loop network, the choice of s1 and s2 is a vital issue. In many studies, different values of s1 and s2 are chosen to achieve some desired properties. For√example, Wong and Coppersmith [344] showed √ that choosing diameter, approximate to 2 n, and a small s1 = 1 and s2 around n yields a small √ average distance, approximate to n. Readers can refer to Refs 23 and 344 for a survey on double loop networks. We say that a double loop network G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian if G(n; s1 , s2 ) − e is Hamiltonian for any edge e in G(n; s1 , s2 ). Similarly, a double loop network G(n; s1 , s2 ) is 1-vertex fault-tolerant Hamiltonian if G(n; s1 , s2 ) − v is Hamiltonian for any vertex v in G(n; s1 , s2 ). It can easily be verified that for i = 1, 2, all of the si edges form a Hamiltonian cycle if gcd (n, si ) = 1. Thus, G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian if gcd (s1 , n) = 1 and gcd (s2 , n) = 1. However, the converse is not necessarily true. For example, G(12; 5, 2) is 1-edge fault-tolerant Hamiltonian but gcd (12, 2) = 1. Furthermore, G(n; 1, 2) is 1-vertex fault-tolerant Hamiltonian, but G(n; 1, 3) is not 1-vertex fault-tolerant Hamiltonian if n is even. Sung et al. [292] present necessary and sufficient conditions for 1-edge faulttolerant Hamiltonian and 1-vertex fault-tolerant Hamiltonian double loop networks, respectively. Let C be a cycle in G(n; s1 , s2 ). We write edge e ∈ C to mean that e is an edge in C. In this section, we adopt the following notation: s = s1 − s2 (mod n) d = gcd (n, s) Ti = { j | 0 ≤ j < n and j = i (mod d)} for 0 ≤ i < d [m] = m (mod d) for 0 ≤ m < n It can be observed that vertex m is in T[m] . Furthermore, all Ti with 0 ≤ i < d form a partition of {0, 1, . . . , n − 1}, and each Ti contains n/d elements. Suppose that s1 = s2 (mod n). Obviously, G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian if and only if gcd (n, s1 ) = 1. Thus, we consider only the case s1 = s2 (mod n). Consider the double loop network G(12; 3, 7) as an example. Thus, s = 8 (mod 12) and d = 4. Let C ∗ be a Hamiltonian cycle in G(12; 3, 7) given by
0, 3, 10, 5, 8, 11, 6, 1, 4, 7, 2, 9, 0. It is observed that some 3-edge, say (3,6), and some 7-edge, say (0,7), are not included in C ∗ . Since G(n; s1 , s2 ) is vertex-symmetric, G(12; 3, 7) is 1-edge fault-tolerant Hamiltonian. We can also observe 3-edge, 7-edge, 7-edge, 3-edge (this sequence is abbreviated as 3, 7, 7, 3) in C∗ , and the previous sequence repeats in C ∗ . In other words, the type of edges in C ∗ can be represented by a periodic sequence of length 4 (= d); that is, 3, 7, 7, 3. We will show in this section that any Hamiltonian cycle in G(n; n1 , n2 ) has such a periodic property.
ch012.tex
30/6/2008
11: 27
Page 277
Optimal 1-Fault-Tolerant Hamiltonian Graphs
277
Let C be a Hamiltonian cycle of G(n; s1 , s2 ). For any vertex i in G(n; s1 , s2 ), we define a function fC as follows: & fC (i) =
s1 s2
if (i, i + s1 (mod n)) ∈ C otherwise
LEMMA 12.17 Let C be any Hamiltonian cycle in G(n; s1 , s2 ). For any two vertices j and k in Ti with 0 ≤ i < d, we have fC ( j) = fC (k). Proof: Without loss of generality, we assume that fC (i) = s1 . Let m = i + s (mod n). Suppose that fC (m) = s2 . It follows that (i, i + s1 (mod n)) ∈ C and (m, m + s2 (mod n)) ∈ C. Equivalently, both (i, i + s1 (mod n)) and (m, i + s1 (mod n)) are in C. There are two edges in C entering the vertex i + s1 (mod n), which is contradictory to the fact that C is a Hamiltonian cycle. Thus, fC (m) = s1 . Recursively, any vertex k = i + ts (mod n) for some integer t also satisfies fC (k) = s1 . On the other hand, the set {i + ts (mod n) | t ≥ 0 and integer} constitutes Ti for every 0 ≤ i < d. Therefore, the lemma is proved. For any Hamiltonian cycle C, we define a function gC from {0, 1, . . . , n − 1} into {Ti | 0 ≤ i < d} as follows: gC (m) = T[m+fC (m)] In other words, gC (m) denotes the set Ti to which the vertex next to m in C belongs. It follows from Lemma 12.17 that gC (Ti ) = T[i+fC (i)]
for 0 ≤ i < d
gC ({0, 1, . . . , d − 1}) = {Ti |
for every 0 ≤ i < d}
Let H be a digraph with the vertex set {Ti | for every 0 ≤ i < d} and edge set {(Ti , gC (Ti )) | for every 0 ≤ i < d}. Digraph H is a directed cycle with d vertices, since otherwise it contradicts that C is a Hamiltonian cycle. For example, in G(12; 3, 7) we have gC ∗ (T0 ) = T3 , gC ∗ (T1 ) = T0 , gC ∗ (T2 ) = T1 , gC ∗ (T3 ) = T2 , and H is given by
(T0 , T3 ), (T3 , T2 ), (T2 , T1 ), (T1 , T0 ), which corresponds to the edge sequence 3, 7, 7, 3 in C ∗ . LEMMA 12.18 Suppose that G(n; s1 , s2 ) is Hamiltonian. Then gcd (d, s1 ) = gcd (d, s2 ) = 1. Proof: Let r = gcd (d, s1 ). Obviously, r = gcd (d, s2 ). Suppose that G(n; s1 , s2 ) has a Hamiltonian cycle C and r > 1. Let H be defined as earlier. It follows that H is a connected directed cycle. However, gC maps the set {Ti | i is a multiple of r} onto itself. Thus, H is disconnected, which is a contradiction. Consequently, the lemma is proved.
ch012.tex
278
30/6/2008
11: 27
Page 278
Graph Theory and Interconnection Networks
LEMMA 12.19 Suppose that G(n; s1 , s2 ) is a double loop network with gcd (d, s1 ) = 1. Let α, β, γ, and δ be nonnegative integers satisfying α ≤ γ, β ≤ δ, and α + β < γ + δ < d. Then T[αs1 +βs2 ] = T[γs1 +δs2 ] . Proof: Let G(n; s1 , s2 ) be a double loop network with gcd (d, s1 ) = 1. Thus, gcd (d, s2 ) = 1. Let α, β, γ and δ be nonnegative integers satisfying α ≤ γ, β ≤ δ, α + β < γ + δ < d, and T[αs1 + βs2 ] = T[γs1 + δs2 ] . Since T[αs1 + βs2 ] = T[γs1 + δs2 ] , it follows that αs1 + βs2 (mod d) = γs1 + δs2 (mod d). Therefore, (α − γ)s1 + (β − δ)s2 = 0 (mod d) and equivalently, (α − γ)(s2 + s) + (β − δ)s2 = 0 (mod d). Since s = 0 (mod d), it follows that (α + β − γ − δ)s2 = 0 (mod d). Since gcd (d, s2 ) = 1, it follows that α + β − γ − δ = 0 (mod d), which contradicts 0 ≤ α + β < γ + δ < d. Hence, T[αs1 + βs2 ] = T[γs1 + δs2 ] , and the lemma is proved. THEOREM 12.29 G(n; s1 , s2 ) is Hamiltonian if and only if (1) gcd (d, s1 ) = 1, and (2) there exists an integer k, 0 ≤ k ≤ d, satisfying gcd ((ks1 + (d − k)s2 )/d, n/d) = 1. Proof: To prove the necessity, assume that G(n; s1 , s2 ) is Hamiltonian. It follows from Lemma 12.18 that gcd (d, s1 ) = 1. Let C = x0 = 0, x1 , . . . , xn−1 , x0 be a Hamiltonian cycle. We define a sequence of ordered pairs of nonnegative integers {(αi , βi ) | 0 ≤ i ≤ n − 1} as follows: (α0 , β0 ) = (0, 0) & (αi−1 , βi−1 ) + (1, 0) (αi , βi ) = (αi−1 , βi−1 ) + (0, 1)
if xi = xi−1 + s1 (mod n) otherwise
It follows from the definition of (αi , βi ) that i = αi + βi and xi = αi s1 + βi s2 (mod n). Since any two pairs (αi , βi ), (αj , βj ) with 0 ≤ i < j < d satisfy 0 ≤ αi + βi < αj + βj , it follows from Lemma 12.19 that T[xi ] = T[xj ] . By the pigeonhole principle, {Ti | 0 ≤ i < d} = {T[xi ] | 0 ≤ i < d}. Since s = 0 (mod d) and xd = ds1 − βd s (mod d), we have T[xd ] = T[x0 ] . Furthermore, it follows from Lemma 12.17 that T[xd+1 ] = T[x1 ] . Recursively, we have T[xj ] = T[xj (mod d) ] . Let k = αd = | {i | fC (i) = s1 , 0 ≤ i < d} |. It follows from Lemma 12.17 that xtd = t(ks1 + (d − k)s2 ) (mod n) for all 1 ≤ t < n/d. Suppose that gcd (n/d, xd /d) = r > 1. Then n/d = ar, xd /d = br for some integers a, b with gcd (a, b) = 1. Obviously, a < n/d. We note that axd /d = abr = bn/d is a multiple of n/d. That is, axd is a multiple of n which contradicts xtd = txd = 0 (mod n) for all 1 ≤ t < n/d. Thus, gcd (xd /d, n/d) = gcd ((ks1 + (d − k)s2 )/d, n/d) = 1 for 0 ≤ k ≤ d. On the other hand, suppose that gcd (d, s1 ) = 1 and gcd ((ks1 + (d − k)s2 )/d, n/d) = 1 for an integer k where 0 ≤ k ≤ d. We construct a sequence D = y0 = 0, y1 , . . . , yn−1 as follows: y0 = 0 & y + s (mod n) if 1 ≤ i (mod d) ≤ k yi = yi−1 + s1 (mod n) otherwise i−1 2 In other words, yj = yj (mod d) + dj (ks1 + (d − k)s2 ) (mod n). Obviously, ( yi−1 , yi ) is an edge of G. In order to prove that D forms a Hamiltonian cycle in
ch012.tex
30/6/2008
11: 27
Page 279
Optimal 1-Fault-Tolerant Hamiltonian Graphs
279
G(n; s1 , s2 ), we are required to show yi = yj for all 0 ≤ i < j < n. Since gcd (d, s1 ) = 1, it follows from Lemma 12.19 that {T[yi ] | 0 ≤ i < d} = {Ti | 0 ≤ i < d}. Since ks1 + (d − k)s2 = 0(mod d), it follows that yj ∈ T[yj (mod d) ] . Hence, yi = yj if i = j (mod d). Since gcd ((ks1 + (d − k)s2 )/d, n/d) = 1, it follows that ytd = 0 (mod n) for all 1 ≤ t < n/d. Then we have yi = yj for all i = j (mod d) and 0 ≤ i < j < n. Hence, the theorem is proved. Using the proof of Lemma 12.19, we can easily obtain the following corollary. COROLLARY 12.2 G(n; s1 , s2 ) contains a Hamiltonian cycle with at least one s1 -edge and one s2 -edge if and only if (1) gcd (d, s1 ) = 1, and (2) there exists an integer k, 1 ≤ k < d, satisfying gcd ((ks1 + (d − k)s2 )/d, n/d) = 1. THEOREM 12.30 G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian if and only if at least one of the following statements holds: 1. gcd (d, s1 ) = 1, and there exists an integer k with 1 ≤ k < d such that gcd ((ks1 + (d − k)s2 )/d, n/d) = 1 2. gcd (n, si ) = 1 for i = 1 and 2 Proof: To prove the necessity, suppose G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian. G(n; s1 , s2 ) contains a Hamiltonian cycle with at least one s1 -edge and one s2 -edge or two Hamiltonian cycles using only s1 -edges and s2 -edges, respectively. It follows from Corollary 12.2 that statement 1 holds in the former case. In the latter case, it is trivial that statement 2 holds. On the other hand, statement 1 implies the existence of a Hamiltonian cycle with at one s1 -edge and one s2 -edge. Therefore, G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian since G(n; s1 , s2 ) is vertex-symmetric. When statement 2 holds, it is trivial that G(n; s1 , s2 ) is 1-edge fault-tolerant Hamiltonian. Hence, the theorem follows. Now, we discuss 1-vertex fault-tolerant Hamiltonian double loop networks. When s1 = s2 (mod n), G(n; s1 , s1 ) cannot be 1-vertex fault-tolerant Hamiltonian. In the following discussion, we assume s1 = s2 (mod n). Since G(n; s1 , s2 ) is vertex-symmetric, the existence of a Hamiltonian cycle in G(n; s1 , s2 ) − 0 implies that G(n; s1 , s2 ) is 1-vertex fault-tolerant Hamiltonian. In order to obtain a Hamiltonian cycle in a 1-vertex fault-tolerant Hamiltonian double loop network G(n; s1 , s2 ) − 0, we construct two sequences N1 = {a01 , a11 , . . .} and N2 = {a02 , a12 , . . .} as follows: a01 = n − s2 (mod n) ai1 = n − s2 + is (mod n) if is = 0, s2 (mod n) a02 = n − s1 (mod n) ai2 = n − s1 − is (mod n) if is = 0, −s1 (mod n)
ch012.tex
30/6/2008
11: 27
Page 280
280
Graph Theory and Interconnection Networks
The sequence N1 terminates when is = 0 (mod n) or s2 (mod n). It is obvious that n + dn s = 0 (mod n) or is = s2 (mod n) for some integer i. Thus the sequence N1 is finite. Similarly, N2 terminates when is = 0 (mod n) or is = − s1 (mod n), and N2 is also finite. Note that the vertex 0 is not in either N1 or N2 ; that is, 0 ∈ N1 ∪ N2 . Consider the example of G(12; 3, 8). It is observed that G(12; 3, 8) − 0 contains a Hamiltonian cycle C ∗ = 4, 7, 3, 6, 9, 5, 8, 11, 2, 10, 1, 4. The construction of C ∗ first starts with vertex 4, which can only use the s1 -edge to connect to vertex 7 in C ∗ , since the s2 -edge of vertex 4, (4, 0), is eliminated from G(12; 3, 8). As a result, the s2 -edge (11, 7) cannot be included in C ∗ ; that is, vertex 11 must use s1 -edge to connect to vertex 2 in C ∗ . Subsequently, the s2 -edge (6, 2) is excluded from C ∗ and equivalently, vertex 6 must use the s1 -edge in C ∗ . Iteratively, this motivates the definition of N1 , which is given by N1 = {4, 11, 6, 1, 8, 3, 10, 5} in this example. Furthermore, N1 terminates at i = 8, since 8s = s2 (mod n). Similarly, we define N2 such that vertices in N2 use s2 -edges to connect to other vertices in C ∗ , and N2 is given by N2 = {9, 2, 7} in this example. We note that N1 ∪ N2 = {1, 2, . . . , 11}. LEMMA 12.20 Let G(n; s1 , s2 ) be a double loop network with gcd (n, s) = 1. Let |N1 | = x and |N2 | = y. Then x and y are the smallest positive integers satisfying xs = s2 (mod n) and −ys = s1 (mod n), respectively. Moreover, x + y = n − 1, N1 ∩ N2 = ∅, and N1 ∪ N2 = {1, 2, . . . , n − 1}. Proof: Since gcd (n, s) = 1, N1 and N2 terminate when xs = s2 (mod n) and y s = −s1 (mod n) are satisfied. Therefore, x is the smallest positive integer with xs = s2 (mod n) and y is the smallest positive integer with −ys = s1 (mod n). Obviously, 1 ≤ x < n and 1 ≤ y < n. Since (x + y)s = s2 − s1 (mod n) and gcd (n, s) = 1, we have x + y = −1 (mod n). Thus, x + y = n − 1 follows from 2 ≤ x + y ≤ 2n − 2. Suppose N1 ∩ N2 = ∅. Let ai1 = aj2 , where 0 ≤ i ≤ x − 1 and 0 ≤ j ≤ y − 1. It follows that n − s2 + is = n − s1 − js (mod n) and (1 + i + j)s = 0 (mod n). Since gcd (s, n) = 1, it follows that 1 + i + j = 0 (mod n). It implies that i + j = n − 1, which contradicts i + j ≤ x + y − 2 and x + y = n − 1. Thus, N1 ∩ N2 = ∅. Since x + y = n − 1, N1 ∩ N2 = ∅, and 0 ∈ N1 ∪ N2 , it follows that N1 ∪ N2 = {1, 2, . . . , n − 1}. The lemma follows. In the previous example, the Hamiltonian cycle C ∗ in G(12; 3, 8) − {0} is obtained by using s1 -edges for vertices in N1 and s2 -edges for vertices in N2 . This is true for all 1-vertex fault-tolerant Hamiltonian double loop networks. Let G(n; s1 , s2 ) be a 1-vertex fault-tolerant Hamiltonian double loop network, and let C be a Hamiltonian cycle in G(n; s1 , s2 ) − 0. For any vertex i ∈ {1, 2, . . . , n − 1}, we define a function hC as follows: & s if (i, i + s1 (mod n)) ∈ C hC (i) = 1 s2 otherwise LEMMA 12.21 Suppose that G(n; s1 , s2 ) is a 1-vertex fault-tolerant Hamiltonian double loop network, and C is a Hamiltonian cycle in G(n; s1 , s2 ) − 0. Then 1. hC (i) = s1 for all vertices i ∈ N1 2. hC (i) = s2 for all vertices i ∈ N2
ch012.tex
30/6/2008
11: 27
Page 281
Optimal 1-Fault-Tolerant Hamiltonian Graphs
281
Proof: Since a01 + s2 = 0 (mod n), it follows that (a01 , a01 + s2 (mod n)) ∈ C. Thus, 1 ) = s , where k < |N |; (a01 , a01 + s1 (mod n)) ∈ C and hC (a01 ) = s1 . Assume that hC (ak−1 1 1 1 , a1 1 + s = (a1 1 (mod n)) ∈ C. Note that a + s) + s = a + s1 + s that is, (ak−1 2 2 1 k−1 k k−1 k−1 1 1 1 1 (mod n). Thus, (ak , ak + s2 (mod n)) ∈ C. Consequently, (ak , ak + s1 (mod n)) ∈ C and hC (ak1 ) = s1 . Therefore, hC (i) = s1 for all i ∈ inN1 . Similarly, we can prove hC (i) = s2 for all vertices i ∈ N2 . LEMMA 12.22 If G(n; s1 , s2 ) is a 1-vertex fault-tolerant Hamiltonian double loop network, then gcd (n, s) = 1. Proof: Suppose to the contrary that, gcd (n, s) = d > 1. We first consider the case d | s1 . It follows that d | s2 also holds. Then all vertices in {i | i = kd for some integer k and 0 ≤ i < n} are adjacent to vertices in the same set. Thus, G(n; s1 , s2 ) is disconnected, and furthermore, G(n; s1 , s2 ) is not 1-vertex fault-tolerant Hamiltonian, which is a contradiction. Now, we consider the case d | s1 . It follows that d | s2 . Since s but not s2 is a multiple of d, it follows that is = s2 (mod n) has no solution. We also note that is = 0 (mod n) if and only if i = 0 (mod dn ). Thus, n − s1 − ( dn − 1)s (mod n) is in N2 . However, n − s1 − ( dn − 1)s = n − s2 (mod n) is also an element in N1 . It follows from Lemma 12.22 that we have s1 = hC (n − s2 ) = s2 , which is contradictory to s1 = s2 . Hence, gcd (n, s) = 1. It can be verified that the 1-vertex fault-tolerant Hamiltonian network G(12; 3, 8) satisfies gcd (n, s) = 1 and gcd (x, n−1) = 1, where s = 7 and x = 8. On the other hand, we define a new sequence B by concatenating N1 and N2 with reversing the order of N2 ; that is, B = {b0 , b1 , b2 , . . . , bn−2 } = {4, 11, 6, 1, 8, 3, 10, 5, 7, 2, 9}. The constructed Hamiltonian cycle C ∗ = 4, 7, 3, 6, 9, 5, 8, 11, 2, 10, 1, 4 in G(12; 3, 8) − {0} is obtained by the sequence {b 0 , b x , b 2x , . . . , b (n − 2)x , b 0 }, where a = a (mod n − 1). We use this observation in the proof of the following theorem. THEOREM 12.31 G(n; s1 , s2 ) is 1-vertex fault-tolerant Hamiltonian if and only if the following conditions hold: 1. s1 = s2 2. gcd (n, s) = 1 3. gcd (x, n − 1) = 1, where x is the smallest positive integer satisfying xs = s2 (mod n) Proof: To prove the necessity, let G(n; s1 , s2 ) be 1-vertex fault-tolerant Hamiltonian. It follows from Lemma 12.22 that gcd (n, s) = 1. It follows from Lemma 12.20 that we can construct a sequence B = {b0 , b1 , . . . , bn−2 } as follows: ' bi =
ai1 = n − s2 + is (mod n) 2 an−i−2
= n − s1 − (n − 2 − i)s (mod n)
where x is the smallest integer satisfying xs = s2 (mod n).
if 0 ≤ i ≤ x − 1 if x ≤ i ≤ n − 2
ch012.tex
282
30/6/2008
11: 27
Page 282
Graph Theory and Interconnection Networks
Let C be a Hamiltonian cycle in G(n; s1 , s2 ) − 0. Let y be the smallest positive integer satisfying −ys = s1 (mod n). We claim that for all 0 ≤ i < n − 1, bi + hC (bi ) = bj (mod n), where j = i + x (mod n − 1). To prove the claim, we assume without loss of generality that x ≤ y for ease of exposition. First consider 0 ≤ i ≤ x − 1. It follows from Lemma 12.21 that hC (bi ) = s1 . Thus bi + hC (bi ) = n + (i + 1)s = n − s1 − ys + (i + 1)s 2 = ay−i−1 = bj (mod n)
where j = i + x (mod n − 1). Consider x ≤ i ≤ n − 2 − x. It follows from Lemma 12.21 that hC (bi ) = s2 . Thus, we have bi + hC (bi ) = n − (n − 1 − i)s = n − s1 − (n − 2 − i − x)s 2 = an−2−i−x = bj (mod n)
where j = i + x (mod n − 1). 2 For n − 1 − x ≤ i < n − 1, we have bi = an−2−i = n − s1 − (n − 2 − i)s (mod n) and hC (bi ) = s2 . Thus, bi + hC (bi ) = n − (n − 1 − i)s = n − s2 + (i + x − n + 1)s 1 = ai+x−(n−1) = bj (mod n)
where j = i + x (mod n − 1). The case x > y can be similarly treated. Thus, C is uniquely determined by the sequence D = {bjx (mod n − 1) | 0 ≤ j < n − 1}. In this case, {jx (mod n − 1) | 0 ≤ j < n − 1} = {0, 1, . . . , n − 2}. Therefore, gcd (x, n − 1) = 1. On the other hand, assume that gcd (n, s) = 1 and gcd (x, n − 1) = 1, where x is the smallest positive integer satisfying xs = s2 (mod n). To prove that G(n; s1 , s2 ) is 1-vertex fault-tolerant Hamiltonian, we need to construct a 1 } and N = {a2 , Hamiltonian cycle in G(n; s1 , s2 ) − 0. Let N1 = {a01 , a11 , . . . , ax−1 2 0 2 2 a1 , . . . , an−x−2 }. Since gcd (n, s) = 1, it follows from Lemma 12.20 that N1 ∪ N2 = {1, 2, . . . , n − 1}. We define a new sequence B = {b0 , b1 , . . . , bn−2 } by setting bi = ai1 2 if 0 ≤ i ≤ x − 1 and bi = an−i−2 if x ≤ i ≤ n − 2. We claim that the sequence {b 0 , b x , b 2x , . . . , b (n − 2)x , b 0 } forms a Hamiltonian cycle in G(n; s1 , s2 ) − 0, where
a = a (mod n − 1). For ease of exposition, we assume without loss of generality that x ≤ y. Then for 0 ≤ i < x, b i = ai1 = n − s2 + is (mod n) 2 = n − s1 − ( y − 1 − i)s = n + (i + 1)s (mod n) b i+x = ay−i−1
Thus, b i + x − b i = s1 (mod n) for 0 ≤ i < x.
ch012.tex
30/6/2008
11: 27
Page 283
Optimal 1-Fault-Tolerant Hamiltonian Graphs
283
For x ≤ i < n − 1 − x 2 = n − s1 − (n − 2 − i)s (mod n) b i = an−2−i 2 = n − s1 − (n − 2 − i − x)s = n − (n − 1 − i)s (mod n) b i+x = an−2−i−x
Thus, b i + x − b i = s2 (mod n) for x ≤ i < n − 1 − x. For n − 1 − x ≤ i < n − 1 2 = n − s1 − (n − 2 − i)s (mod n) b i = an−2−i 1 = n − s2 + (i + x − n + 1)s = n − (n − 1 − i)s (mod n) b i + x = ai+x−(n−1)
Thus, b i + x − b i = s2 (mod n) for n − 1 − x ≤ i < n − 1. Therefore, (b jx , b ( j + 1)x ) is an edge for all 0 ≤ i < n − 1. Since gcd (x, n − 1) = 1, we have { jx | 0 ≤ j < n − 1} = {0, 1, . . . , n − 2}. Thus {b jx | 0 ≤ j < n − 1} = {1, 2, . . . , n − 1}. Therefore, the sequence {b 0 , b x , b 2x , . . . , b (n − 2)x , b 0 } forms a Hamiltonian cycle in G(n; s1 , s2 ) − 0. Hence, the theorem follows. If a double loop network G is both 1-vertex fault-tolerant Hamiltonian and 1-edge fault-tolerant Hamiltonian, then G is said to be 1-fault-tolerant Hamiltonian. Let n be even, and let s1 and s2 have the same parity. Then gcd (n, s) = 1. Therefore, when n is even and s1 − s2 = 0 (mod 2), G(n; s1 , s2 ) is not 1-vertex fault-tolerant Hamiltonian following from Theorem 12.31. Let n be even, and let s1 and s2 have different parity. Without loss of generality, we assume that s1 is even and s2 is odd. Consider G(n; s1 , s2 ) is 1-vertex fault-tolerant Hamiltonian. It follows from Theorem 12.31 that d = gcd (n, s) = 1. In this case, gcd (n, s1 ) = 1 and there is no integer k with 1 ≤ k < d, not to mention satisfying gcd ((ks1 + (d − k)s2 )/d, n/d) = 1. Thus, when G(n; s1 , s2 ) is 1-vertex fault-tolerant Hamiltonian, G(n; s1 , s2 ) is not 1-edge fault-tolerant Hamiltonian. Therefore, when n is even, there is no 1-fault-tolerant Hamiltonian double loop network. It is also observed that when n is odd, the number of double loop networks G(n; s1 , s2 ) that are 1-fault-tolerant Hamiltonian is not small. It is possible to choose a double loop network that is 1-fault-tolerant Hamiltonian. Moreover, when n is prime, every 1-vertex fault-tolerant Hamiltonian double loop network G(n; s1 , s2 ) is also 1-edge fault-tolerant Hamiltonian. In addition to fault tolerance, the diameter is another performance measure of interconnection networks. Let d(n; s1 , s2 ) denote the diameter of G(n; s1 , s2 ). Let d(n) denote the minimum diameter among all double loop networks having n vertices. Among those G(n; s1 , s2 ) achieving d(n), is there always one 1-vertex fault-tolerant Hamiltonian or 1-edge fault-tolerant Hamiltonian or 1-fault-tolerant Hamiltonian? The answer is no, and it can be verified by counterexamples. But here we point out a class of 1-fault-tolerant Hamiltonian double loop networks with small diameters. Consider a double loop network H = G( p2 ; p + 2, 1), where p is a prime number and p = 2 (mod 3). It follows from Theorem 12.30 that H is 1-edge fault-tolerant Hamiltonian. Let x be the smallest positive integer satisfying x( p + 1) = 1 (mod p2 ). Note that ( p + 1)( p − 1) = −1 (mod p2 ) implies x = p2 − p + 1. It is observed that
ch012.tex
30/6/2008
11: 27
Page 284
284
Graph Theory and Interconnection Networks
gcd ( p2 − p + 1, p2 − 1) = gcd ( p2 − p + 1, p − 2) = gcd ( p + 1, p − 2) = gcd (3, p − 2) = 1. Therefore, we obtain gcd ( p2 − p + 1, p2 − 1) = gcd ( p2 , p + 1) = 1. It follows from Theorem 12.31 that H is 1-vertex fault-tolerant Hamiltonian. Note that p + 2 is ( close to p2 . Applying the results of Wong and Coppersmith [344], both the diameter and the average distance of H are O( p). √ In other words, H is 1-fault-tolerant Hamiltonian and has a small diameter of O( n), where n = p2 . We also have the following two interesting results regarding double loop networks. COROLLARY 12.3 Suppose that G(n; s1 , s2 ) is Hamiltonian. Let A(n; s1 , s2 ) = {k| 0 ≤ k ≤ d and gcd ((ks1 + (d − k)s2 )/d, n/d) = 1}. Then G(n; s1 , s2 ) has k∈A(n;s1 ,s2 )
d! k!(d − k)!
different Hamiltonian cycles. Proof: Any Hamiltonian cycle C = x0 = 0, x1 , . . . , xn−1 , x0 uniquely determines a sequence {(αi , βi ) | 0 ≤ i ≤ d}. On the other hand, we can construct a Hamiltonian cycle by first setting a sequence {(αi , βi ) | 0 ≤ i ≤ d} satisfying αi + βi = i and αi , βi ∈ {0, 1, . . . , d}. The corollary follows from Theorem 12.29. It is observed that those double loop networks G(n; s1 , s2 ) with gcd (n, si ) = 1 for i = 1, 2 have two disjoint Hamiltonian cycles. The classification of all such double loop networks is stated in the following corollary, which follows from the proof of Theorem 12.29. COROLLARY 12.4 Assume that gcd (d, s1 ) = 1. Edges of G(n; s1 , s2 ) can be decomposed into two disjoint Hamiltonian cycles if and only if there exists an integer k with 0 ≤ k ≤ d such that gcd ((ks1 + (d − k)s2 )/d, n/d) = 1 and gcd (((d − k)s1 + ks2 )/d, n/d) = 1. As an example, the double loop network G(15; 5, 2) has two disjoint Hamiltonian cycles.
ch013.tex
24/7/2008
13 13.1
14: 58
Page 285
Optimal k -Fault-Tolerant Hamiltonian-Laceable Graphs
INTRODUCTION
In Chapter 11, we have discussed the fault-tolerant Hamiltonian of some families of interconnection networks. Yet we did not discuss the corresponding results for two important families of interconnection networks; namely, the hypercube family and the star graph family. Note that these two families of graphs are bipartite. Any cycle of a bipartite graph is of even length. Thus, any vertex fault in a Hamiltonian bipartite graph is not Hamiltonian. However, we can still discuss the edge fault-tolerant Hamiltonicity for bipartite graphs. A Hamiltonian graph G is k-edge fault-tolerant Hamiltonian if G − F remains Hamiltonian for every F ⊂ E(G) with |F| ≤ k. The edge fault-tolerant Hamiltonicity, Hef (G), is defined to be the maximum integer k such that G is k-edge fault-tolerant Hamiltonian, and undefined if otherwise. Obviously, Hfe (G) ≤ δ(G) − 2. Moreover, a regular graph G is optimal edge fault-tolerant Hamiltonian if Hfe (G) = δ(G) − 2. As mentioned in Chapter 11, the counterpart of Hamiltonian-connected graphs in bipartite graphs is known as Hamiltonian laceable. Obviously, any Hamiltonianlaceable graphs, except for K1 and K2 , is Hamiltonian and with at least 2k vertices with k ≥ 2. Thus, δ(G) ≥ 2 if G is a Hamiltonian-laceable graph with at least four vertices. Again, we can discuss the edge fault-tolerant Hamiltonian laceability for bipartite graphs. Similar to fault-tolerant Hamiltonian connectivity for nonbipartite Hamiltonianconnected graphs, Tsai et al. [305] proposed the concept of edge fault-tolerant Hamiltonian laceability. A Hamiltonian-laceable graph G is k-edge fault-tolerant Hamiltonian if G − F remains Hamiltonian laceable for every F ⊂ E(G) with |F| ≤ k. The edge fault-tolerant laceability, HeL (G), is defined to be the maximum integer k such that G is k-edge fault-tolerant Hamiltonian laceable, and undefined if otherwise. Obviously, HeL (G) ≤ Hfe (G) ≤ δ(G) − 2 if G has at least four vertices. Moreover, a regular graph G with at least four vertices is optimal edge fault-tolerant Hamiltonian laceability if HeL (G) = δ(G) − 2. Hsieh et al. [160] further extended the concept of Hamiltonian laceable into strongly Hamiltonian laceable. A Hamiltonian-laceable graph G = (V0 ∪ V1 , E) is strongly Hamiltonian laceable if there is a simple path of length |V0 ∪ V1 | − 2 between any two vertices of the same partite set. Since a strongly Hamiltonian-laceable graph is Hamiltonian laceable, δ(G) ≥ 2 if G is a strongly Hamiltonian-laceable graph with 285
ch013.tex
286
24/7/2008
14: 58
Page 286
Graph Theory and Interconnection Networks
at least four vertices. Lewinter et al. [221] also introduced the concept of hyper Hamiltonian laceable. A Hamiltonian-laceable graph G = (V0 ∪ V1 , E) is hyper Hamiltonian laceable if for any vertex v ∈ Vi , i = 0, 1, there is a Hamiltonian path of G − {v} between any two vertices of V1−i . Assume that G = (V0 ∪ V1 , E) is a bipartite graph with |V0 | = |V1 | ≥ 3. Suppose that there exists a vertex x with exactly two neighbors y and z. Without loss of generality, we may assume that x ∈ V0 . Thus, y and z are in V1 . Let w be any vertex in V0 − {x}. Obviously, there is no Hamiltonian path of G − {w} between y and z. Therefore, δ(G) ≥ 3 if G is a hyper Hamiltonian-laceable graph with at least six vertices. Similarly, Tsai et al. [305] proposed the following concept. A strongly Hamiltonian-laceable graph G is k-edge fault-tolerant strongly Hamiltonian laceable if G − F remains strongly Hamiltonian laceable for every F ⊂ E(G) with |F| ≤ k. The edge fault-tolerant strongly Hamiltonian laceability, HeSL (G), is defined to be the maximum integer k such that G is k-edge fault-tolerant strongly Hamiltonian laceable, and undefined if otherwise. Obviously, HeSL (G) ≤ HeL (G) ≤ δ(G) − 2 if G has at least four vertices. Moreover, a regular graph G with at least four vertices is optimal edge fault-tolerant strongly Hamiltonian laceability if HeSL (G) = δ(G) − 2. Again, the concept of edge fault-tolerant hyper Hamiltonian laceability is introduced [305]. A hyper Hamiltonian-laceable graph G is k-edge fault-tolerant hyper Hamiltonian laceable if G − F remains hyper Hamiltonian laceable for every F ⊂ E(G) with |F| ≤ k. The edge fault-tolerant hyper Hamiltonian laceability, HeHL (G), is defined to be the maximum integer k such that G is k-edge fault-tolerant hyper Hamiltonian laceable, and undefined if otherwise. Obviously, HeHL (G) ≤ δ(G) − 3 if G has at least six vertices. Moreover, a regular graph G with at least six vertices has optimal edge fault-tolerant hyper Hamiltonian laceability if HeHL (G) = δ(G) − 3. For simplicity, a k-regular bipartite graph is super fault-tolerant Hamiltonian laceable if HeSL (G) = k − 2 and HeHL (G) = k − 3. Since HeSL (G) ≤ HeL (G) ≤ Hfe (G) ≤ δ(G) − 2, HeL (G) = Hfe (G) = k − 2 if G is a k-regular super fault-tolerant Hamiltonianlaceable graph. LEMMA 13.1 Let G be any bipartite graph with bipartition V0 and V1 such that |V0 | = |V1 |. Suppose that for any vertex v there exists a Hamiltonian path between any two different vertices in the partite set not containing v. Then G is hyper Hamiltonian laceable. Proof: Let u and v be any two vertices from different partite sets. Let r be any vertex adjacent to v. Thus, u and r are in the same partite set. By assumption, there exists a Hamiltonian path P of G − {v} joining u to r. Then u, P, r, v forms the desired path. Thus, G is Hamiltonian laceable. Based on the assumption, G is hyper Hamiltonian laceable. LEMMA 13.2 Let G be a hyper Hamiltonian laceable bipartite graph and f be any edge of G. Then G − { f } is strongly Hamiltonian laceable. Thus, any hyper Hamiltonian-laceable graph is 1-edge fault-tolerant Hamiltonian laceable.
ch013.tex
24/7/2008
14: 58
Page 287
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
287
Proof: By definition, G is Hamiltonian laceable. Let (x, y) be any edge of G, and u and v be any two vertices in the partite set not containing x. By assumption, there exists a Hamiltonian path P of G − {x} joining u to v. Then u, P, v forms the desired path. Thus, G − {(x, y)} is strongly Hamiltonian laceable.
13.2
SUPER FAULT-TOLERANT HAMILTONIAN LACEABILITY OF HYPERCUBES
Tsai et al. [305] proved that Qn is super fault-tolerant Hamiltonian laceable if n ≥ 3. We use B and W to denote the bipartition of Qn . Obviously, Qn can be divided into two copies of Qn−1 , denoted by Qn0 and Qn1 . Let Ec be the set of crossing edges; that is, Ec = {(u, u ) | (u, u ) ∈ E(Qn ), u ∈ V (Qn0 ) and u ∈ V (Qn1 )}. Let F be the set of faulty edges in Qn , F0 = F ∩ E(Qn0 ), F1 = F ∩ E(Qn1 ), and Fc = F ∩ Ec . Also let f0 = |F0 |, f1 = |F1 |, and fc = |Fc |. Since Qn is edge-symmetric, it suffices to consider only the case that fc ≥ 1 if F = ∅. That means, Qn can be split into Qn0 and Qn1 using any dimension d, where 1 ≤ d ≤ n. Therefore, given a nonempty faulty edge set F, Qn can be split into Qn0 and Qn1 such that Fc = ∅. By brute force, we have the following lemma. LEMMA 13.3
HeSL (Q3 ) = HeL (Q3 ) = Hfe (Q3 ) = 1 and HeHL (Q3 ) = 0.
LEMMA 13.4 The hypercube Qn is (n − 2)-edge fault-tolerant Hamiltonian laceable for n ≥ 2. Thus, HeL (Qn ) = n − 2. Proof: Since δ(Qn ) = n, HeL (Qn ) ≤ n − 2. We prove HeL (Qn ) ≥ n − 2 by induction on n. Obviously, the statement holds for n = 2. By Lemma 13.3, the statement holds if n = 3. For n ≥ 4, we assume that HeL (Qn ) ≥ n − 2 for every integer k < n. Let F be any faulty edge set with |F| = n − 2. Suppose that x ∈ W and y ∈ B. To prove this lemma, we need to find a Hamiltonian path of Qn − F joining x and y. Without loss of generality, we may assume that fc ≥ 1, f0 ≤ n − 3, and f1 ≤ n − 3. Case 1. Either x, y ∈ V (Qn0 ) or x, y ∈ V (Qn1 ). Without loss of generality, we may assume that x and y are in Qn0 . Since, f0 ≤ n − 3, by induction, there exists a Hamiltonian path P0 of Qn0 − F0 joining x to y. Since |E(P0 )| = 2n−1 − 1 and ) * 2n−1 − 1 2
> n − 2 for n ≥ 4, there exists an edge (u, v) in P0 such that both cross-
/ F and (v, v ) ∈ / F. Obviously, either (u ∈ W and v ∈ B) or (u ∈ B ing edges (u, u ) ∈ and v ∈ W ). Since f1 ≤ n − 3, there exists a Hamiltonian path P1 joining u to v . Obviously, (E(P0 ) ∪ E(P1 ) ∪ {(u, u ), (v, v )}) − {(u, v)} forms a Hamiltonian path in Qn − F joining x to y. See Figure 13.1a for illustration. Case 2. Either x ∈ V (Qn0 ) and y ∈ V (Qn1 ), or x ∈ V (Qn1 ) and y ∈ V (Qn0 ). Without loss of generality, we assume that x ∈ V (Qn0 ) and y ∈ V (Qn1 ). Since |V (Qn0 ) ∩ B| = 2n−2 and 2n−2 > n − 2 for n ≥ 4, there exists a vertex u in V (Qn0 ) ∩ B such that the crossing edge (u, u ) ∈ / F. Obviously, u ∈ W and y ∈ B. Since f0 ≤ n − 3 and f1 ≤ n − 3, there exists a Hamiltonian path P0 of Qn0 − F0 joining x to u and there exists a Hamiltonian path P1
ch013.tex
24/7/2008
14: 58
Page 288
288
Graph Theory and Interconnection Networks 1
0
Qn
Qn
u
uⴕ vⴕ
1
0
Qn
Qn
y v x
x
y (a)
u
uⴕ (b)
FIGURE 13.1 (a) Case 1: x, y ∈ V (Qn0 ) and (b) Case 2: x ∈ V (Qn0 ) and y ∈ V (Qn1 ).
of Qn1 − F1 joining u to y. Obviously, E(P0 ) ∪ E(P1 )) ∪ {(u, u )} forms a Hamiltonian path in Qn − F joining x to y. See Figure 13.1b for illustration. This completes the induction. COROLLARY 13.1 Hfe (Qn ) = n − 2 if n ≥ 2. LEMMA 13.5 The hypercube Qn is (n − 2)-edge fault-tolerant strongly Hamiltonian laceable for n ≥ 2. Thus, HeSL (Qn ) = n − 2. Proof: Since δ(Qn ) = n, HeSL (Qn ) ≤ n − 2. Let F be any faulty edge set with |F| ≤ n − 2. By Lemma 13.4, Qn − F is Hamiltonian laceable. To finish the proof, we need to find a path of length 2n − 2 in Qn − F between any two vertices x and y in the same partite set. The proof is similar to the proof of Lemma 13.4. Hence, the detailed proof is omitted. LEMMA 13.6 The hypercube Qn is (n − 3)-edge fault-tolerant hyper Hamiltonian laceable for n ≥ 3. Thus, HeHL (Qn ) = n − 3. Proof: Since δ(Qn ) = n, HeHL (Qn ) ≤ n − 3. Let F be any faulty edge set with |F| = n − 3. We need to prove that Qn − F is hyper Hamiltonian laceable. By Lemma 13.4, Qn − F is Hamiltonian laceable. Let w be any vertex of Qn . Without loss of generality, we may assume that w ∈ W . Let x and y be two vertices in B. To finish the proof, we must find a Hamiltonian path of (Qn − F) − {w} joining x to y. We prove this statement by induction. By Lemma 13.3, the statement holds for n = 3. Now, we assume that the theorem is true for every integer k < n with n ≥ 4. Without loss of generality, we may assume that fc ≥ 1, f0 ≤ n − 4, and f1 ≤ n − 4. Case 1. x, y ∈ V (Qn0 ). Since f0 ≤ n − 4, by induction, there is a Hamiltonian path P0 in (Qn0 − F0 ) − {w} joining x to y. Since l(P0 ) = 2n−1 − 2 and 2n−2 > n − 2 for /F n ≥ 4, there exists an edge (u, v) in P0 such that both crossing edges (u, u ) ∈ and (v, v ) ∈ / F. Obviously, u and v are in different partite sets. Since f1 ≤ n − 4, by Lemma 13.4, there exists a Hamiltonian path P1 of Qn1 − F1 joining u to v . Obviously, (E(P0 ) ∪ E(P1 ) ∪ {(u, u ), (v, v )}) − {(u, v)} forms a Hamiltonian path in (Qn − F) − w joining x to y. See Figure 13.2a for illustration.
ch013.tex
24/7/2008
14: 58
Page 289
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs 1
Qn
0
Qn
u
uⴕ vⴕ
v x
1
0
y uⴕ
v
x
y
w
t x
y
(a)
Qn
Qn
u
vⴕ
1
0
Qn
Qn w
w
289
(b)
u
uⴕ
(c)
FIGURE 13.2 (a) Case 1: x, y ∈ V (Qn0 ), (b) Case 2: x, y ∈ V (Qn1 ), and (c) Case 3: x ∈ V (Qn0 ) and y ∈ V (Qn1 ).
Case 2. x, y ∈ V (Qn1 ). Again, we can find a vertex u in V (Qn1 ) ∩ W such that the crossing edge (u, u ) ∈ / F. Since f1 ≤ n − 4, by induction, there exists a Hamiltonian path P in (Qn1 − F1 ) − {u} joining x to y. Since the number of neighboring vertices of /F u in Qn1 is n − 1 and |F| ≤ n − 3, there exists a neighbor t of u in Qn1 such that (u, t) ∈ and (v, v ) where v is a vertex adjacent to t in P. Obviously, we can divide P into two sections P0 and P1 , where either (P0 is a path joining x to v and P1 is a path joining t to y) or (P0 is a path joining x to t and P1 is a path joining v to y). Without loss of generality, we may assume that P0 is a path joining x to v and P1 is a path joining t to y. Let (u, u ) and (v, v ) be two crossing edges incident to vertices u and v, respectively. Obviously, {u , v } ⊂ B. Since f0 ≤ n − 4, by induction, there exists a Hamiltonian path R in (Qn0 − F0 ) − {w} joining u to v . Obviously, E(P0 ) ∪ E(R) ∪ E(P1 ) ∪ {(u, u ), (v, v ), (t, u)} forms a Hamiltonian path in (Qn − F) − {w} joining x to y. See Figure 13.2b for illustration. Case 3. x ∈ V (Qn0 ) and y ∈ V (Qn1 ), or x ∈ V (Qn1 ) and y ∈ V (Qn0 ). Without loss of generality, we assume that x ∈ V (Qn0 ) and y ∈ V (Qn1 ). Since |V (Qn0 ) ∩ B| = 2n−2 and 2n−2 − 1 > n − 3 ≥ |F| for n ≥ 3, there exists a vertex u in (V (Qn0 ) − {x}) ∩ B such that the crossing edge (u, u ) ∈ / F. Obviously, u ∈ W . Since f0 ≤ n − 4, there exists 0 a Hamiltonian path P0 of (Qn − F0 ) − {w} joining x to u. Also, since f1 ≤ n − 4, by Lemma 13.4, there exists a Hamiltonian path P1 of Qn1 − F1 joining u to y. Obviously, E(P0 ) ∪ E(P1 ) ∪ {(u, u )} forms a Hamiltonian path in (Qn − F) − {w} joining x to y. The proof is complete. See Figure 13.2c for illustration. Combining Lemmas 13.4 through 13.6, we have the following theorem. THEOREM 13.1 The hypercube Qn is super fault-tolerant Hamiltonian laceable for n ≥ 3.
13.3
SUPER FAULT-TOLERANT HAMILTONIAN LACEABILITY OF STAR GRAPHS
Let Sn be the n-dimensional star graphs. In this section, we prove that Sn is super faulttolerant Hamiltonian laceable if n ≥ 4. Yet we need some basic background about the properties of star graphs.
ch013.tex
24/7/2008
14: 58
290
Page 290
Graph Theory and Interconnection Networks
It is known that Sn is a bipartite graph with one partite set containing all odd permutations and the other partite set containing all even permutations. For convenience, we refer to an even permutation as a white vertex and an odd permutation as a black vertex. Moreover, Sn is vertex-transitive and edge-transitive. Let u = u1 u2 . . . un be {i} any vertex of Sn . We use (u)i to denote the ith component ui of u and Sn to denote the ith subgraph of Sn induced by those vertices u with (u)n = i. Obviously, Sn can be {i} {i} decomposed into n vertex disjoint subgraphs Sn for 1 ≤ i ≤ n, such that each Sn is isomorphic to Sn−1 . Thus, the star graph can be constructed recursively. Let H ⊆ n. We use SnH to denote the subgraph of Sn induced by ∪i∈H V (Sn{i} ). By the definition of Sn , there is exactly one neighbor v of u such that u and v are adjacent through an i-dimensional edge with 2 ≤ i ≤ n. For this reason, we use (u)i to denote the unique {(u) } i-neighbor of u. We have ((u)i )i = u and (u)n ∈ Sn 1 . For 1 ≤ i, j ≤ n and i = j, we {j} {i} i,j use E to denote the set of edges between Sn and Sn . n Let Ec be the edge set {(u, (u) ) | u ∈ V (Sn )}. Let F be the set of faulty edges in Sn . {i} We set Fi = F ∩ E(Sn ) for 1 ≤ i ≤ n and Fc = F ∩ Ec . Also let fi = |Fi | for 1 ≤ i ≤ n and fc = |Fc |. Since Sn is edge-symmetric, it suffices to consider only the case where fc ≥ 1 {i} if F = ∅. That means that Sn can be split into Sn for 1 ≤ i ≤ n using any dimension d for some d with 2 ≤ d ≤ n. Therefore, given a nonempty faulty edge set F, Sn can be {i} split into Sn for 1 ≤ i ≤ n such that Fc = ∅. The following lemmas can be easily obtained. LEMMA 13.7 Assume that n ≥ 3. |E i,j | = (n − 2)! for any 1 ≤ i = j ≤ n. Moreover, {j} {i} there are (n − 2)!/2 edges joining black vertices of Sn to white vertices of Sn . LEMMA 13.8 Let u and v be any two distinct vertices of Sn with d(u, v) ≤ 2. Then (u)1 = (v)1 . Moreover, {((u)i )1 | 2 ≤ i ≤ n − 1} = n − {(u)1 , (u)n } if n ≥ 3. LEMMA 13.9 Let n ≥ 5 and I = {k1 , k2 , . . . , kt } be any t subset of n with t ≥ 2. {k } {k } Let u be a white vertex of Sn 1 and v be a black vertex of Sn t . Let F be any edge {ki } subset of Sn such that (1) Sn − Fki is Hamiltonian laceable for 1 ≤ i ≤ t and (2) there {k } {k } exist’s an edge in E ki ,ki+1 − F joining a black vertex of Sn i to a white vertex of Sn i+1 I for 1 ≤ i < t. Then there is a Hamiltonian path P of Sn − F joining u to v. {k }
Proof: Obviously, Sn i is isomorphic to Sn−1 for every 1 ≤ i ≤ t. By assumption, {k } {k } there is a black vertex yi in Sn i with (yi )n ∈ Sn i+1 such that (yi , (yi )n ) ∈ E ki ,ki+1 − F n for every 1 ≤ i < t. We set xi+1 = (yi ) for every i ∈ t − 1. Obviously, xi is a white {k } vertex for every i ∈ t. By assumption, there is a Hamiltonian path Hi of Sn i − F ki joining xi to yi for every 1 ≤ i ≤ t. Then u = x1 , H1 , y1 , x2 , H2 , y2 , . . . , xt , Ht , yt = v forms the Hamiltonian path of SnI − F joining u to v. The following lemma can be proved using a computer program. LEMMA 13.10 S4 is 1-edge fault-tolerant Hamiltonian laceable, 1-edge faulttolerant strongly Hamiltonian laceable, and hyper Hamiltonian laceable.
ch013.tex
24/7/2008
14: 58
Page 291
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
LEMMA 13.11
291
Sn is (n − 3)-edge fault-tolerant Hamiltonian laceable for n ≥ 4.
Proof: We prove this lemma by induction. By Lemma 13.10, S4 is 1-edge faulttolerant Hamiltonian laceable. Now, we assume that Sn−1 is (n − 4)-edge fault-tolerant Hamiltonian laceable with n ≥ 5. Let F ⊆ E(Sn ) be an arbitrary faulty edge set such that |F| ≤ n − 3. Since Sn is edge-symmetric, we may assume that fc ≥ 1 in F = ∅. Thus, fi ≤ n − 4 for 1 ≤ i ≤ n. {i} So Sn − F is still Hamiltonian laceable for each 1 ≤ i ≤ n. Let x be a white vertex {r} {s} in V (Sn ) and y be a black vertex in V (Sn ). We need to find a Hamiltonian path of Sn − F joining x to y. Since |F| ≤ n − 3 < (n − 2)!/2 for n ≥ 5, |E i,j ∩ F| < (n − 2)!/2 {i} for any i = j ∈ n. There exists an edge in E i,j − F joining a black vertex of Sn to a {j} white vertex of Sn for 1 ≤ i = j ≤ n. Case 1. r = s. By Lemma 13.9, there is a Hamiltonian path of Sn − F joining x to y. See Figure 13.3a for illustration. {r}
Case 2. r = s. Since fr ≤ n − 4, by induction, there is a Hamiltonian path P of Sn joining x to y. Obviously, l(P) = (n − 1)! − 1. Since [(n − 1)! − 1]/2 > n − 3 ≥ |F| for n ≥ 5, there exists an edge (u, v) in P such that {(u, (u)n ), (v, (v)n )} ∩ F = ∅. Without loss of generality, we can write P as x, P1 , u, v, P2 , y. Obviously, u is a black vertex or a white vertex. We consider only the case that u is a black vertex, because the other case can be similarly discussed. Then (u)n is a white vertex and (v)n is a black vertex. By Lemma 13.8, (u)1 = (v)1 . By Lemma 13.9, there is a Hamiltonian path P3
n−{r} of Sn − F joining (u)n to (v)n . Obviously, x, P1 , u, (u)n , P3 , (v)n , v, P2 , y forms a Hamiltonian path of Sn joining x to y. See Figure 13.3b for illustration. Hence, the lemma follows. LEMMA 13.12 n ≥ 4.
Sn is (n − 3)-edge fault-tolerant strongly Hamiltonian laceable for
Proof: We also prove this lemma by induction. By Lemma 13.10, S4 is 1-edge faulttolerant strongly Hamiltonian laceable. Assume that Sn−1 is (n − 4)-edge fault-tolerant strongly Hamiltonian laceable with n ≥ 5. Let F be any faulty edge set in Sn with |F| ≤ n − 3. Let x and y be any two vertices of Sn in the same partite set. We need to find a path of length n! − 2 of Sn − F
y Sn{r }
v
x
Sn{s}
{r}
v
Sn x
(v)n
u (u)n
(a) (b)
FIGURE 13.3 Illustration for Lemma 13.11.
ch013.tex
24/7/2008
14: 58
Page 292
292
Graph Theory and Interconnection Networks
Sn{s } x
y
Sn{r }
(b) y x
z n (z)
(a)
Sn{r }
v
(v)n
u (u)
n
(b)
FIGURE 13.4 Illustration for Lemma 13.12.
joining x to y. Without loss of generality, we may assume that both x and y are black vertices. Assume that (x)n = r and (y)n = s. Again, we can assume that fi ≤ n − 4 for each 1 ≤ i ≤ n. Since |F| ≤ n − 3 < [(n − 2)!/2] − 1 for n ≥ 5, there exists an edge in { j} {i} E i,j − F joining a black vertex of Sn to a white vertex of Sn for 1 ≤ i = j ≤ n. Case 1. r = s. Since |F| ≤ n − 3 < [(n − 2)!/2] − 1 for n ≥ 5, we can choose a black {r} vertex z in Sn such that z = x and (z)1 = s. By induction, there exists a path P1 {r} in Sn − F of length (n − 1)! − 2 joining x to z. Obviously, (z)n is a white vertex.
n−{r} − F joining (z)n to y. By Lemma 13.9, there is a Hamiltonian path P2 of Sn n Obviously, x, P1 , z, (z) , P2 , y is a path of Sn − F of length n! − 2 joining x to y. See Figure 13.4a for illustration. Case 2. r = s. Since fr ≤ n − 4, by induction, there is a path P of length (n − 1)! − 2 {r} in Sn − F joining x to y. Since [(n − 1)! − 2]/2 > n − 3 ≥ |F| for n ≥ 5, there exists an edge (u, v) in P such that {(u, (u)n ), (v, (v)n )} ∩ F = ∅. Without loss of generality, we can write P as x, P1 , u, v, P2 , y. Obviously, u is a black vertex or a white vertex. We consider only the case that u is a black vertex, because the other case can be similarly discussed. Then (u)n is a white vertex and (v)n is a black vertex. By Lemma 13.8,
n−{r} − F joining (u)1 = (v)1 . By Lemma 13.9, there is a Hamiltonian path P3 of Sn n n n n (u) to (v) . Obviously, x, P1 , u, (u) , P3 , (v) , v, P2 , y forms a path of length n! − 2 in Sn − F joining x to y. See Figure 13.4b for illustration. Hence, the lemma follows. LEMMA 13.13 [222] The Sn is (n − 4)-edge fault-tolerant hyper Hamiltonian laceable for n ≥ 4. Proof: By Lemma 13.10, S4 is hyper Hamiltonian laceable. Assume that Sn−1 is (n − 5)-edge fault-tolerant hyper Hamiltonian laceable with n ≥ 5. Let F be a faulty edge set in Sn with |F| ≤ n − 4. Again, we may assume that fi ≤ n − 5 for each 1 ≤ i ≤ n. {i} Thus, Sn − F is hyper Hamiltonian laceable for 1 ≤ i ≤ n. Let w be any vertex of Sn . Without loss of generality, we may assume that w is a white vertex. We need to construct a Hamiltonian path of Sn − (F ∪ {w}) between any two different white vertices {r} {s} {t} x and y. Let x ∈ Sn , y ∈ Sn , and w ∈ Sn . Since |F| ≤ n − 4 < [(n − 2)!/2] − 1, there
ch013.tex
24/7/2008
14: 58
Page 293
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
Sn{s}
x w
293
y
y
Sn{r }
{r } w Sn x
z
(v)n
v u
n
n
(u)
(z)
(b)
(a) Sn{t }
w
z
(u)
x u
n
Sn{r } g p
y
Sn{t }
w
t
(z)
n
(p)
n
(z)
x z
n
y
n
(t)
(c)
Sn{r }
(d)
FIGURE 13.5 Illustration for Lemma 13.13. {i}
{j}
exists an edge in E i,j − F joining a black vertex of Sn to a white vertex of Sn for 1 ≤ i = j ≤ n. Case 1. r = t but r = s. Since |F| ≤ n − 4 < [(n − 2)!/2] − 1, we can choose a black {r} vertex y1 in Sn such that y1 = x and ((y1 )n )n = (y)n . By induction, there exists a {k } Hamiltonian path P1 of Sn 1 − F − {w} joining x to y1 . Obviously, (y1 )n is a white
n−{r} − F joining (y1 )n to vertex. By Lemma 13.9, there is a Hamiltonian path P2 of Sn n y. Obviously, x, P1 , y1 , (y1 ) , P2 , y is a Hamiltonian path of (Sn − F) − {w} joining x to y. See Figure 13.5a for illustration. Case 2. r = s = t. Since fr ≤ n − 5, by induction, there is a Hamiltonian path {r} P of (Sn − F) − {w} joining x to y. Obviously, l(P) = (n − 1)! − 1. Since [(n − 1)! − 1]/2 > n − 3 ≥ |F| for n ≥ 5, there exists an edge (u, v) in P such that {(u, (u)n ), (v, (v)n )} ∩ F = ∅. Without loss of generality, we can write P as
x, P1 , u, v, P2 , y. Obviously, u is a black vertex or a white vertex. We consider only the case that u is a black vertex, because the other case can be similarly discussed. Then (u)n is a white vertex and (v)n is a black vertex. By Lemma 13.8, (u)1 = (v)1 . By
n−{r} − F joining (u)n to (v)n . ObviLemma 13.9, there is a Hamiltonian path P3 of Sn n n ously, x, P1 , u, (u) , P3 , (v) , v, P2 , y forms a Hamiltonian path of (Sn − F) − {w} joining x to y. See Figure 13.5b for illustration. Case 3. r = s but r = t. Since there are (n − 2)!/2 edges joining black vertices of {t} {r} {r} Sn to white vertices of Sn and |F| ≤ n − 4, there exists a white vertex u in Sn such that (u, (un )) ∈ E r,t − F. Since fr ≤ n − 5, by induction, there exists a fault-free {r} Hamiltonian path P1 in (Sn − F) − {u} joining x to y. Since the number of neighbor{r} {r} ing vertices of u in Sn is n − 2 and fr ≤ n − 5, there exists a neighbor g of u in Sn n such that (u, g) ∈ / F and (p, (p) ) where p is a vertex adjacent to g in P.
ch013.tex
24/7/2008
294
14: 58
Page 294
Graph Theory and Interconnection Networks
We can divide P into two sections P0 and P1 such that either (P0 is a path joining x to g and P1 is a path joining p to y) or (P0 is a path joining x to p and P1 is a path joining g to y). Without loss of generality, we may assume that P0 is a path joining x to g and P1 is a path joining p to y. Obviously, u and p are white vertices and d(u, p) = 2. By Lemma 13.8, {t} (u)1 = (q)1 . We can choose a black vertex z in Sn such that (z)1 = (p)1 . By induc{t} tion, there exists a Hamiltonian path P2 of (Sn − F) − {w} joining (u)n to z. By
n−{r,t} − F joining (z)n to (p)n . Lemma 13.9, there is a Hamiltonian path P3 of Sn n n n Obviously, x, P0 , g, u, (u) , P2 , z, (z) , P3 , (p) , p, P1 , y forms a Hamiltonian path of (Sn − F) − {w} joining x to y. See Figure 13.5c for illustration. Case 4. r, s, and t are distinct. Again, there exists an edge (z, (z)n ) in E r,t − F {r} such that z is a white vertex in Sn . Since fr ≤ n − 5, there exists a Hamiltonian {r} path of Sn − F joining x to z. Obviously, we cab choose a black vertex t such that {t} / {r, s, t}. By induction, there exists a Hamiltonian path P2 of (Sn − F) − {w} (t)1 ∈
n−{r,t} −F joining (z)n to t. By Lemma 13.9, there is a Hamiltonian path P3 of Sn joining (t)n to y. Obviously, x, P1 , z, (z)n , P2 , t, (t)n , P3 , y forms a Hamiltonian path of (Sn − F) − {w} joining x to y. See Figure 13.5d for illustration. Hence, the lemma follows. Combining Lemmas 13.11 through 13.13, we have the following theorem. THEOREM 13.2 The star graph Sn is super fault-tolerant Hamiltonian laceable for n ≥ 4.
13.4
CONSTRUCTION SCHEMES
The operations G0 ⊕ G1 and G(G0 , G1 , . . . , Gr−1 ; M) can also be used in the construction of super fault-tolerant Hamiltonian-laceable graphs. LEMMA 13.14 The bipartite graph G = G0 ⊕ G1 is hyper Hamiltonian laceable if both G0 and G1 are hyper Hamiltonian laceable. Proof: Since both G0 and G1 are hyper Hamiltonian laceable by Theorem 9.17, G is Hamiltonian laceable. Let Bi and Wi be the bipartition of Gi for i ∈ {0, 1} and let B0 ∪ B1 and W0 ∪ W1 be the bipartition of G. Let u and v be two distinct vertices of B0 ∪ B1 and let z be a vertex of W0 ∪ W1 . Without loss of generality, we may assume that z ∈ W0 . We need to construct a Hamiltonian path of G − {z} between u and v. Case 1. u ∈ B0 and v ∈ B0 . Since G0 is hyper Hamiltonian laceable, there is a Hamiltonian path H of G0 − {z} joining u to v. We write H as u, x, R, v. Note that u ∈ W1 and x ∈ B1 . By Lemma 13.1, there is a Hamiltonian path Q of G1 joining u to x. Then
u, u, Q, x, x, R, v forms a Hamiltonian path of G − {z} joining u to v.
ch013.tex
24/7/2008
14: 58
Page 295
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
295
Case 2. u ∈ B0 and v ∈ B1 . Let x be any vertex in B0 − {u}. Note that x is a vertex in W1 . Since G0 is hyper Hamiltonian laceable, there is a Hamiltonian path R of G0 − {z} joining u to x. By Lemma 13.1, there is a Hamiltonian path H of G1 joining x to v. Then u, R, x, x, H, v forms a Hamiltonian path of G − {z} joining u to v. Case 3. u ∈ B1 and v ∈ B1 . Let x be any vertex in G1 such that (x, v) ∈ E(G1 ). Note that x is a vertex in B0 . Since G1 is hyper Hamiltonian laceable, there is a Hamiltonian path H of G1 − {x} joining u to v. We write H as u, R, y, v. Note that y is a vertex in W1 and y is in B0 . Since G0 is hyper Hamiltonian laceable, there is a Hamiltonian path Q of G0 − {z} joining y to x. Then u, R, y, y, Q, x, x, v forms a Hamiltonian path of G − {z} joining u to v. Yet we need the following term for bipartite graph. A bipartite graph G = (V0 ∪ V1 , E) satisfies property 2H if for any two distinct vertices u and v in V0 and for any two distinct x and y in V1 , there are two disjoint paths P1 and P2 of G such that (1) P1 joins u to x, (2) P2 joins v to y, and (3) P1 ∪ P2 spans G. LEMMA 13.15 A bipartite graph G is a Hamiltonian-laceable graph if G has property 2H. Proof: Let V0 and V1 be the bipartition of G. Let u be a vertex in V0 and v be a vertex in V1 . Since G satisfies property 2H, |V0 | = |V1 | ≥ 2. We choose a vertex p in V0 − {u} and a vertex q in V1 − {v} such that (p, q) ∈ E(G). Let P1 and P2 be two disjoint paths of G such that (1) P1 joins u to q, (2) P2 joins p to v, and P1 ∪ P2 spans G. Then u, P1 , q, p, P2 , v is a Hamiltonian path of G joining u to v. By brute force, we have the following lemma. LEMMA 13.16 The three-dimensional hypercube Q3 satisfies the property 2H. LEMMA 13.17 Assume that G0 and G1 satisfy the property 2H. Then the bipartite graph G0 ⊕ G1 satisfies the property 2H. Proof: Let Bi and Wi be the bipartition of Gi for i ∈ {0, 1}. Without loss of generality, we assume that B0 ∪ B1 and W0 ∪ W1 are the bipartition of G. Let u and v be any two distinct vertices in B0 ∪ B1 and let x and y be any two distinct vertices in W0 ∪ W1 . We have the following cases: Case 1. u ∈ B0 , v ∈ B0 , x ∈ W0 , and y ∈ W0 . Since G0 satisfies property 2H, there are two disjoint paths H1 and H2 of G0 such that (1) H1 joins u to x, (2) H2 joins v to y, and (3) H1 ∪ H2 spans G0 . Without loss of generality, we write H1 = u, z, Q, x. By Lemma 13.15, there is a Hamiltonian path R of G1 joining u to z. We set P1 = u, u, Q, z, z, R, x and P2 = R2 . Then P1 and P2 form the desired paths. Case 2. u ∈ B0 , v ∈ B0 , x ∈ W0 , and y ∈ W1 . By Lemma 13.15, there is a Hamiltonian path H of G0 joining v to x. Without loss of generality, we write R = v, R1 , z, u, R2 , x. By Lemma 13.15, there is a Hamiltonian path Q of G1 joining z to y. We set P1 = R2 and P2 = v, R1 , z, z¯ , Q, v. Then P1 and P2 form the desired paths.
ch013.tex
24/7/2008
14: 58
Page 296
296
Graph Theory and Interconnection Networks
Case 3. u ∈ B0 , v ∈ B0 , x ∈ W1 , and y ∈ W1 . Let p and q be any two distinct vertices in W0 . Since G0 satisfies property 2H, there are two disjoint paths H1 and H2 of G0 such that (1) H1 joins u to p, (2) H2 joins v to q, and (3) H1 ∪ H2 spans G0 . Since G1 satisfies property 2H, there are two disjoint paths Q1 and Q2 of G1 such that (1) Q1 joins p to x, (2) Q2 joins q to y, and (3) Q1 ∪ Q2 spans G1 . We set P1 = u, H1 , p, p, Q1 , x and P2 = v, H2 , q, q, Q2 , y. Then P1 and P2 form the desired paths. Case 4. u ∈ B0 , v ∈ B1 , x ∈ W0 , and y ∈ W1 . By Lemma 13.15, there is a Hamiltonian path P1 of G0 joining u to x. Moreover, there is a Hamiltonian path P2 of G1 joining v to y. Then P1 and P2 form the desired paths. Case 5. u ∈ B0 , v ∈ B1 , x ∈ W1 , and y ∈ W0 . Suppose that |V (G0 )| = |V (G1 )| = 4. Obviously, both G0 and G1 are isomorphic to a cycle with four vertices. Moreover, G is isomorphic to the three-dimensional hypercube Q3 . By Lemma 13.16, G satisfies property 2H. We assume that |V (G0 )| = |V (G1 )| ≥ 6. Let p be a vertex in B0 − {u, x} and let q be a vertex in W0 − {v, y}. Since G0 satisfies property 2H, there are two disjoint paths H1 and H2 of G0 such that (1) H1 joins u to p, (2) H2 joins q to y, and (3) H1 ∪ H2 spans G0 . Since G1 satisfies property 2H, there are two disjoint paths Q1 and Q2 of G2 such that (1) Q1 joins p to x, (2) Q2 joins v to q, and (3) Q1 ∪ Q2 spans G1 . We set P1 = u, H1 , p, p, Q1 , x and P2 = v, Q2 , q, q, H1 , y. Then P1 and P2 form the desired paths. THEOREM 13.3 For k ≥ 3, let G = G0 ⊕ G1 be a bipartite graph such that both G0 and G1 are k-regular super fault-tolerant Hamiltonian laceable satisfies 2H property. Then G is (k + 1)-regular (k − 1)-edge fault-tolerant Hamiltonian laceable. Proof: Let Wi and Bi be the bipartition of Gi for i = 0, 1. Without loss of generality, we assume that B0 ∪ B1 and W0 ∪ W1 are the bipartitions of G. Let F be any edge subset of G with |F| = k − 1. Let u be a vertex in B0 ∪ B1 and let v be a vertex in W0 ∪ W1 . We need to show that there is a Hamiltonian path of G − F joining u to v. We set F0 = F ∩ E(G0 ) and F1 = F ∩ E(G1 ). Let 2t = |V (G0 )|. We have the following cases: Case 1. |F0 | ≤ k − 2 and |F1 | ≤ k − 2. Case 1.1. u ∈ V0i and v ∈ V1i for some i. Without loss of generality, we assume that i = 0. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining u to v. Without loss of generality, we write H = u = x0 , x1 , . . . , x2t = v. Since k − 1 ≤ t, there is a positive integer i such that (x2i−1 , x 2i−1 ) ∈ / F and (x2i , x 2i ) ∈ / F. Since G1 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path R of G2 − F1 joining x 2i−1 to x 2i . Then
u = x1 , x2 , . . . , x2i−1 , x 2i−1 , R, x 2i , x2i , . . . , x2t = v forms the desired path. Case 1.2. u ∈ V0i and v ∈ V11−i for some i. Without loss of generality, we assume that / F. Since G0 i = 0. Since |W0 | = t > k − 1, there is a vertex p ∈ W0 such that (p, p) ∈ is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining u to p. Since G1 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path R of G1 − F1 joining p to v. Then u, H, p, p, R, v forms the desired path.
ch013.tex
24/7/2008
14: 58
Page 297
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
Case 2.
297
|Fi | = k − 1 for some i. Without loss of generality, we assume that i = 0.
Case 2.1. u ∈ B0 and v ∈ W0 . Let f be any element in F0 . Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 − {f }) joining u to v. We write H = u, H1 , p, q, H2 , v if f = (p, q) in H or we write H = u, H1 , p, q, H2 , v by picking any edge (p, q) in H. Since G1 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path R of G1 joining p to q. Then u, H1 , p, p, R, q, q, H2 , v forms the desired path. Case 2.2. u ∈ B1 and v ∈ W1 . Suppose that k = 2. Obviously, both G0 and G1 are isomorphic to a cycle with four vertices. Moreover, G is isomorphic to Q3 . It is easy to check that G is 1-edge fault-tolerant Hamiltonian laceable. Suppose that k ≥ 3. Thus, k − 1 ≥ 2. Since |F0 | = k − 1 ≥ 2, we can choose an edge (x, y) ∈ F0 such that |{x, y} ∩ {u, v}| ≤ 1. Case 2.2.1. |{x, y} ∩ {u, v}| = 0. Without loss of generality, we assume that x ∈ B0 and y ∈ W0 . Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 − {(x, y)}) joining x to y. Since G1 satisfies property 2H, there are two disjoint paths Q1 and Q2 of G1 such that (1) Q1 joins u to x, (2) Q2 joins q to v, and (3) Q1 ∪ Q2 spans G. Then u, Q1 , x, x, H, y, y, Q2 , v forms the desired path. Case 2.2.2. |{x, y} ∩ {u, v}| = 1. Without loss of generality, we assume that x = u. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 − {(x, y)}) joining x to y. Since G1 is hyper Hamiltonian laceable, there is a Hamiltonian path R of G1 − {u} joining y to v. Then u, u = x, H, y, y, R, v forms the desired path. Case 2.3. u ∈ V0i and v ∈ V11−i for some i. Without loss of generality, we assume that i = 0. Let (x, y) be any element in F0 . Without loss of generality, we assume that x ∈ B0 and y ∈ W0 . Case 2.3.1. x = u. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 − {(x, y)}) joining u to y. Since G1 is Hamiltonian laceable, there is a Hamiltonian path R of G1 joining y to v. Then u, H, y, y, R, v forms the desired path. Case 2.3.2. x = u and x = v. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 − {(x, y)}) joining x to y. Without loss of generality, we write H = x, H1 , z, u, H2 , y. Since G1 is hyper Hamiltonian laceable, there is a Hamiltonian path R of G1 − {v} joining y to z. Then
u, H2 , y, y, R, z, z, H1−1 , x = v, v forms the desired path. Case 2.3.3. x = u and x = v. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 − {(x, y)}) joining x to y. Without loss of generality, we write H = x, H1 , z, u, H2 , y. Since G1 satisfies property 2H, there are two disjoint paths Q1 and Q2 of G2 such that (1) Q1 joins y to x, (2) Q2 joins z to v, and (3) Q1 ∪ Q2 spans G. Then u, H2 , y, y, Q1 , x, x, H1 , z, z, v forms the desired path.
ch013.tex
24/7/2008
14: 58
298
Page 298
Graph Theory and Interconnection Networks
THEOREM 13.4 For k ≥ 3, let G = G0 ⊕ G1 be a bipartite graph such that both G0 and G1 are k-regular super fault-tolerant Hamiltonian laceable satisfies 2H property. Then G is (k + 1)-regular (k − 1)-edge fault-tolerant strongly Hamiltonian laceable. Proof: Let Wi and Bi be the bipartition of Gi for i = 0, 1. Without loss of generality, we assume that B0 ∪ B1 and W0 ∪ W1 are the bipartition of G. Let F be any edge subset of G with |F| = k − 1. Let u and v be two distinct vertices in W0 ∪ W1 . We need to show that there is a Hamiltonian path with length |V (G)| − 2 of G − F joining u to v. We set F0 = F ∩ E(G0 ) and F1 = F ∩ E(G1 ). Without loss of generality, we assume that |F0 | ≥ |F1 |. We have |F1 | ≤ k − 2 and G1 − F1 is Hamiltonian laceable and strongly Hamiltonian laceable. Let 2t = |V (G0 )|. We have the following cases: Case 1. u ∈ V01 and v ∈ V01 . Case 1.1. |F0 | ≤ k − 2. Since G0 is (k − 2)-edge fault-tolerant strongly Hamiltonian laceable, there is a path H with length |V (G0 )| − 2 of G0 − F0 ) joining u to v. Since G0 is a k-regular bipartite graph, |V (G0 )| ≥ 2k and l(H) ≥ 2k − 2. Since 2k − 2 > 2(k − 2), / F0 . Without loss of there is an edge (p, q) of V (H) such that (p, p) ∈ / F0 and (q, q) ∈ generality, we write H = u, H1 , p, q, H2 , H2 , v. Since G1 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path R of G1 − F1 joining p to q. Then
u, H1 , p, p, R, q, H2 , v forms a path with length |V (G)| − 2 of G − F joining u to v. Case 1.2. |F0 | = k − 1. Let (x, y) be any edge in F0 . Since G0 is (k − 2)-edge faulttolerant strongly Hamiltonian laceable, there is a path H of G0 − (F0 − {(x, y)}) joining u to v. We write H = u, R1 , p, q, R2 , v, where {x, y} = {p, q} if (x, y) ∈ E(H) or (p, q) is any edge in E(H) if (x, y) ∈ / E(H). Since G1 is Hamiltonian laceable, there is a Hamiltonian path R of G1 joining p to q. Then u, H1 , p, p, R, q, H2 , v forms a path with length |V (G)| − 2 of G − F joining u to v. Case 2. u ∈ G0 and v ∈ G1 . Case 2.1. |F0 | = 0. Since G0 is a k-regular bipartite graph, |W0 | + |B0 | ≥ 2k. We can / F. choose a vertex p in V (G0 ) such that p = u, p = v, and (p, p) ∈ Suppose that p ∈ B0 . Since G0 is Hamiltonian laceable, there is a Hamiltonian path H of G0 joining u to p. Since G1 is strongly Hamiltonian laceable, there is a path R with length |V (G1 )| − 2 of G1 joining p to v. Then u, H, p, p, R, v forms a path with length |V (G)| − 2 of G − F joining u to v. Suppose that p ∈ W0 . Since G0 is strongly Hamiltonian laceable, there is a path H of G0 with length V (G0 ) − 2 joining u to p. Since G1 is Hamiltonian laceable, there is a Hamiltonian path R with length |V (G1 )| − 2 of G1 joining p to v. Then
u, H, p, p, R, v forms a path with length |V (G)| − 2 of G − F joining u to v. Case 2.2. 1 ≤ |F0 | ≥ k − 2. Since |B0 | ≥ k, we can choose a vertex z in G0 such / F and z = v. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, that (z, z) ∈ there is a Hamiltonian path H of G0 − F0 joining u to z. Since G1 is (k − 3)-edge fault-tolerant strongly Hamiltonian laceable, there is a path R of G1 − F1 with length |V (G1 )| − 2 joining z to v. Then u, H, z, z, R, v forms a path of G − F with length |V (G) − 2 joining u to v.
ch013.tex
24/7/2008
14: 58
Page 299
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
299
Case 2.3. |F0 | = k − 1. Let (p, q) be any edge in F0 with p ∈ W0 and q ∈ B0 . Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian laceable path H of G0 − (F0 − {(p, q)}) joining u to q. Without loss of generality, we write H = u, W , z, q where z = p if (p, q) ∈ E(H). Note that z ∈ W0 and z ∈ B1 . Since G1 is Hamiltonian laceable, there is a Hamiltonian path R of G1 joining z to v. Then
u, W , z, z, R, v forms a path of G with length |V (G)| − 2 joining u to v. Case 3.
u ∈ G1 and v ∈ G1 .
Case 3.1. |F0 | ≤ k − 2. Since G1 is (k − 2)-edge fault-tolerant strongly Hamiltonian laceable, there is a path R with length |V (G1 )| − 2 of G1 − F1 joining u and v. Since G1 is a k-regular bipartite graph, |V (G1 )| ≥ 2k. Since 2k − 1 > 2k − 2, / F. Without loss of there is a edge (p, q) ∈ E(R) such that (p, p) ∈ / F and (q, q) ∈ generality, we write R = u, R1 , p, q, R2 , v. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining p and q. Then u, R1 , p, p, H, q, q, R2 , v forms a path with length |V (G)| − 2 of G − F joining u to v. Case 3.2. |F0 | = k − 1. Let (p, q) be any edge in F0 . Without loss of generality, we assume that p ∈ W0 and q ∈ B0 . Since G0 is (n − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining p to q. Without loss of generality, we write H = p, Q, z, q. Since G1 satisfies the 2H property, there are two disjoint paths R1 and R2 of G1 such that (1) R1 joins u to p, (2) R2 joins z to v, and (3) R1 ∪ R2 spans G1 . Then u, R1 , p, p, Q, z, z, R2 , v forms the desired path of G − F. THEOREM 13.5 For k ≥ 3, let G = G0 ⊕ G1 be a bipartite graph such that both G0 and G1 are k-regular super fault-tolerant Hamiltonian laceable satisfies 2H property. Then G is (k + 1)-regular (k − 2)-edge fault-tolerant hyper Hamiltonian laceable. Proof: Let Wi and Bi be the bipartition of Gi for i = 0, 1. Without loss of generality, we assume that B0 ∪ B1 and W0 ∪ W1 are the bipartition of G. Let F be any edge subset of G with |F| = k − 2. Let z be a vertex in B0 ∪ B1 and let u and v be two distinct vertices in W0 ∪ W1 . We need to show that there is a Hamiltonian path of G − (F ∪ {z}) joining u to v. We set F0 = F ∩ E(G0 ) and F1 = F ∩ E(G1 ). Let 2t = |V (G0 )|. Without loss of generality, we assume that z ∈ B0 . We have the following cases: Case 1. u ∈ G0 and v ∈ G0 . Case 1.1. |F0 | ≤ k − 3. Since G0 is (k − 3)-edge fault-tolerant hyper Hamiltonian, there is a Hamiltonian path H of G0 − (F0 ∪ {z}) joining u to v. Since G0 is a k-regular bipartite graph, |V (G0 )| ≥ 2k and l(H) ≥ 2k − 2. Since 2k − 2 > 2(k − 2), there is an / F0 and (q, q) ∈ / F0 . Without loss of generality, edge (p, q) of V (H) such that (p, p) ∈ we write H = u, H1 , p, q, H2 , H2 , v. Since G1 is (k − 2)-edge fault Hamiltonian laceable, there is a Hamiltonian path R of G1 − F1 joining p to q. Then
u, H1 , p, p, R, q, H2 , v forms a Hamiltonian path of G − (F ∪ {z}) joining u to v. Case 1.2. |F0 | = k − 2. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining u to z. Without loss of
ch013.tex
24/7/2008
14: 58
300
Page 300
Graph Theory and Interconnection Networks
generality, we write H = u, H1 , p, v, H2 , q, z. Note that q = v if l(H2 ) = 0. Since G1 is Hamiltonian laceable, there is a Hamiltonian path R of G1 joining p to q. Then
u, H1 , p, p, R, q, H2−1 , v forms a Hamiltonian path of G − (F ∪ {z}) joining u to v. Case 2.
u ∈ G0 and v ∈ G1 .
Case 2.1. |F0 | ≤ k − 3. Since G0 is a k-regular bipartite graph, |W0 | ≥ k. We can choose a vertex p in W0 − {u} such that (p, p) ∈ / F. Since G0 is (k − 3)-edge faulttolerant hyper Hamiltonian, there is a Hamiltonian path H of G0 − (F0 ∪ {z}) joining u to p. Since G1 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path R of G1 − F1 joining p to v. Then u, H, p, p, R, v forms a Hamiltonian path of G − (F ∪ {z}) joining u to v. Case 2.2. |F0 | = k − 2. Since G0 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining u to z. Without loss of generality, we write H = u, Q, p, z. Obviously, p ∈ W0 and p ∈ B1 . Since G1 is Hamiltonian laceable, there is a Hamiltonian path R of G1 joining p to v. Then u, Q, p, p, R, v forms a Hamiltonian path of G − (F ∪ {z}) joining u to v. Case 3.
u ∈ G1 and v ∈ G1 .
Case 3.1. |F0 | ≤ k − 3. Let p be a vertex in B1 with (p, p) ∈ / F. We set F = {(v, z) | z ∈ B1 and (z, z) ∈ F}. Obviously, |F1 ∪ F | ≤ |F|. Since G1 is (k − 2)-edge fault-tolerant Hamiltonian laceable, there is a Hamiltonian path R of G1 − F1 joining u to p. Without loss of generality, we write R = u, R1 , q, v, R2 , p. Since G0 is (k − 3)-edge fault-tolerant hyper Hamiltonian laceable, there is a Hamiltonian path H of G0 − (F0 ∪ {z}) joining q to p. Then u, R1 , q, q, H, p, p, R2−1 , v forms a Hamiltonian path of G − (F ∪ {z}) joining u to v. Case 3.2. |F0 | = k − 2. Let p be any vertex in W1 . Since G0 is (n − 2)-edge faulttolerant Hamiltonian laceable, there is a Hamiltonian path H of G0 − F0 joining p to z. Without loss of generality, we write H = p, Q, q, z. Since G1 satisfies the 2H property, there are two disjoint paths H1 and H2 of G1 such that (1) H1 joins u to u, (2) H2 joins q to v, and (3) H1 ∪ H2 spans G1 . Then u, H1 , p, p, Q, q, q, H2 , v forms the desired path of G − F. By Theorems 13.3 through 13.5, we have the following result. THEOREM 13.6 For k ≥ 3, let G = G0 ⊕ G1 be a bipartite graph such that both G0 and G1 are k-regular super fault-tolerant Hamiltonian laceable satisfy the 2H property. Then G is super fault-tolerant Hamiltonian. Similarly, we have the following result. THEOREM 13.7 For k ≥ 3, let G = G(G0 , G1 , . . . , Gr−1 ; M) be a bipartite graph such that Gi is k-regular super fault-tolerant Hamiltonian laceable satisfies the 2H property. Then G is super fault-tolerant Hamiltonian.
ch013.tex
24/7/2008
14: 58
Page 301
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
13.5
301
CUBIC HAMILTONIAN-LACEABLE GRAPHS
In Section 13.4, we mentioned that several k-regular graphs are (k − 2)-edge faulttolerant Hamiltonian, (k − 2)-edge fault-tolerant Hamiltonian laceable, (k − 2)-edge fault-tolerant strongly Hamiltonian laceable, and (k − 3)-edge fault-tolerant hyper Hamiltonian laceable. It is reasonable to compare the differences among these concepts. However, not too many results are obtained. We begin with k = 3. Let G be the cubic graph shown in Figure 13.6. By brute force, we can confirm that G is both 1-edge fault-tolerant Hamiltonian and Hamiltonian laceable. However, it is neither 1-edge fault-tolerant Hamiltonian laceable nor hyper Hamiltonian laceable. More precisely, there is no Hamiltonian path of G − (1, 2) joining vertex 3 to vertex 6, and there is no Hamiltonian path of G − 18 joining vertex 15 to vertex 10. We have observed that the operation 3-join is used for constructing 1-fault-tolerant Hamiltonian graphs. We would like to know the corresponding results for cubic bipartite graphs. Let G1 = (B1 ∪ W1 , E1 ) be a cubic bipartite graph and u ∈ B1 . Let G2 = (B2 ∪ W2 , E2 ) be a cubic bipartite graph and v ∈ W2 . Let N(u) = {ui | i = 1, 2, 3}, N(v) = {vi | i = 1, 2, 3}, and G = J(G1 , N(u); G2 , N(v)). It is easy to confirm that G is a cubic bipartite graph with bipartition B = (B1 ∪ B2 ) − {u} and W = (W1 ∪ W2 ) − {v}. THEOREM 13.8 Let G1 = (B1 ∪ W1 , E1 ) be a cubic 1-edge fault-tolerant Hamiltonian laceable and hyper Hamiltonian-laceable graph with u ∈ B1 and G2 = (B2 ∪ W2 , E2 ) be a cubic 1-edge fault-tolerant Hamiltonian laceable and hyper Hamiltonianlaceable graph with v ∈ W2 . Then G = J(G1 , N(u); G2 , N(v)) is Hamiltonian laceable.
13
14 7
8
1
18
3
6
12
11
17
15 9
5
G
2
4
10
16
FIGURE 13.6 The graph G is both 1-edge fault-tolerant Hamiltonian and Hamiltonian laceable. However, it is neither 1-edge fault-tolerant Hamiltonian laceable nor hyper Hamiltonian laceable.
ch013.tex
302
24/7/2008
14: 58
Page 302
Graph Theory and Interconnection Networks
Moreover, G is neither 1-edge fault-tolerant Hamiltonian laceable nor hyper Hamiltonian laceable. Proof: Suppose that both G1 and G2 are 1-edge fault-tolerant Hamiltonian laceable. We first prove that G is Hamiltonian laceable. Let x and y be two vertices from different partite sets of G. We want to find a Hamiltonian path of G joining x to y. We have the following cases: Case 1. x and y are in V (Gi ) for i ∈ {1, 2}. Without loss of generality, we assume that x and y are in V (G1 ) with x ∈ W1 and y ∈ B1 . Since G1 is Hamiltonian laceable, there is a Hamiltonian path P1 of G1 joining x to y. Obviously, P1 can be written as
x, Q1 , ui , u, uj , Q2 , y. Obviously, {ui , uj } ⊂ W1 , {vi , vj } ⊂ B2 , and {(ui , vi ), (uj , vj )} ∈ E(G). Since G2 is hyper Hamiltonian laceable, there exists a Hamiltonian path Q3 of G2 − v joining vi and vj . Obviously, x, Q1 , ui , vi , Q3 , vj , Q2 , y forms a Hamiltonian path of G joining x to y. Case 2. x ∈ W1 and y ∈ B2 . Since G1 is Hamiltonian laceable, there is a Hamiltonian path P1 of G1 joining x to u. Obviously, P1 can be written as x, Q1 , ui , u. Obviously, ui ∈ W1 , vi ∈ B2 , and (ui , vi ) ∈ E(G). Since G2 is hyper Hamiltonian laceable, there exists a Hamiltonian path Q2 of G2 − v joining v2 to y. Obviously, x, Q1 , ui , vi , Q2 , y forms a Hamiltonian path of G joining x to y. Case 3. x ∈ B1 and y ∈ W2 . Since G1 is 1-edge fault-tolerant Hamiltonian laceable, there exists a Hamiltonian path P1 of G1 − (u, u1 ) joining x to u1 . Obviously, P1 can be written as x, Q1 , ui , u, uj , Q2 , u1 with {i, j} = {2, 3}. Since G2 is 1-edge faulttolerant Hamiltonian laceable, there exists a Hamiltonian path P2 of G2 − (v, vi ) joining y to vi . Obviously, P2 can either be written as y, Q3 , v1 , v, vj , Q4 , vi or
y, Q5 , vj , v, v1 , Q6 , vi . Suppose that P2 = y, Q3 , v1 , v, vj , Q4 , vi . Then x, Q1 , ui , vi , Q4−1 , vj , uj , Q2 , u1 , v1 , Q3−1 , y forms a Hamiltonian path of G joining x to y. Suppose that P2 = y, Q5 , vj , v, v1 , Q6 , vi . Then x, Q1 , ui , vi , Q6−1 , v1 , u1 , Q2−1 , uj , vj , Q5−1 , y forms a Hamiltonian path of G joining x to y. Thus, G is Hamiltonian laceable. Now, we prove that G is not 1-edge fault-tolerant Hamiltonian laceable. Let x be a vertex of G in B1 and y is a vertex of G in W2 . We will claim that any Hamiltonian path P of G joining x and y contains the edge set {(ui , vi ) | i = 1, 2, 3}. Obviously, there is no Hamiltonian path of G − (u1 , v1 ) joining x to y if our claim is true. Thus, G is not 1-edge fault-tolerant Hamiltonian laceable. Note that P uses either exactly one or three edges of the edge set {(ui , vi ) | i = 1, 2, 3} because x is a vertex in G1 and y is a vertex in G2 . Suppose that P includes exactly one edge of {(ui , vi ) | i = 1, 2, 3}. Without loss of generality, we assume that P includes the edge (u1 , v1 ). Then P can be written as x, Q1 , u1 , v1 , Q2 , y. Obviously, x, Q1 , u1 , u forms a Hamiltonian path of G1 . This is impossible because both x and u are in the same partite set. Finally, we prove that G is not hyper Hamiltonian laceable. Let x and y be two vertices in B2 . Suppose that G is hyper Hamiltonian laceable. Then there exists a Hamiltonian path P of G − u1 joining x to y. This implies that there exists a
ch013.tex
24/7/2008
14: 58
Page 303
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
303
Hamiltonian path Q of G2 joining x to y. This is impossible because x and y are of the same color in G2 . Thus, G is not hyper Hamiltonian laceable. The theorem is proved. However, we would like to conjecture that G = J(G1 , N(u); G2 , N(v)) is Hamiltonian laceable if both G1 and G2 are cubic Hamiltonian-laceable graphs.
13.6
1p -FAULT-TOLERANT HAMILTONIAN GRAPHS
Up to now, we have not discussed the Hamiltonian properties with vertex faults for bipartite graphs. Note that any cycle in a bipartite graph is of even length. Any vertex fault in a Hamiltonian bipartite graph is not Hamiltonian. However, some cubic bipartite Hamiltonian graphs remain Hamiltonian with a pair of vertices faults, one vertex fault from each partite set. A cubic bipartite Hamiltonian graph is said to be 1p -faulttolerant Hamiltonian if it remains Hamiltonian with a pair of vertices faults. In this section, we propose two families of cubic bipartite Hamiltonian graphs as examples of 1p -fault-tolerant Hamiltonian: spider web networks and brother trees.
13.6.1
SPIDER-WEB NETWORKS
To define the spider web network, we first introduce the honeycomb rectangular mesh. Assume that m and n are positive even integers with m ≥ 4. The honeycomb rectangular mesh HREM(m, n) is the graph with the vertex set {(i, j) | 0 ≤ i < m, 0 ≤ j < n} such that (i, j) and (k, l) are adjacent if they satisfy one of the following conditions: 1. i = k and j = l ± 1 2. j = l and k = i + 1 if i + j is odd 3. j = l and k = i − 1 if i + j is even For example, a honeycomb rectangular mesh HREM(8, 6) is shown in Figure 13.7.
(7, 5)
(0, 5)
(0, 0)
(1, 0)
FIGURE 13.7 HREM(8, 6).
(7, 0)
ch013.tex
24/7/2008
14: 58
304
Page 304
Graph Theory and Interconnection Networks
(0, 5) (0, 0) (1, 5)
(a)
(b)
FIGURE 13.8 SW (8, 6).
A spider web network SW(m, n), proposed by Kao and Hsu [190], is the graph with the vertex set {(i, j) | 0 ≤ i < m, 0 ≤ j < n} such that (i, j) and (k, l) are adjacent if they satisfy one of the following conditions: 1. i = k and j = l ± 1 2. j = l and k = [i + 1]m if i + j is odd or j = n − 1 3. j = l and k = [i − 1]m if i + j is even or j = 0 For example, a spider graph SW (8, 6) is shown in Figure 13.8a. Another layout of SW (8, 6) is shown in Figure 13.8b, with the dashed lines indicating the edges of SW (m, n) that are not in HREM(m, n). Obviously, HREM(m, n) is a spanning subgraph of SW (m, n). The inner cycle of SW (m, n) is (0, 0), (1, 0), . . . , (m − 1, 0), (0, 0), whereas the outer cycle of SW (m, n) is (0, n − 1), (1, n − 1), . . . , (m − 1, n − 1), (0, n − 1). It is obvious that any spider web network is a planar 3-regular bipartite graph. A vertex (i, j) is labeled black when i + j is even and white if otherwise. Since the honeycomb rectangular mesh HREM(m, n) is a spanning subgraph of SW (m, n), the spider web network can be viewed as a variation of the honeycomb mesh. Using the definition of a spider web network, SW (m, n + 2) can be constructed from SW (m, n) as follows: let S denote the edge subset {((i, n − 1), ([i − 1]m , n − 1)) | i = 0, 2, 4, . . . , m − 2} of SW (m, n). Let SW ∗ (m, n) denote the spanning subgraph of SW (m, n) with edge set E(SW (m, n)) − S. Let V n = {(i, k) | 0 ≤ i < m; k = n, n + 1} and E n = {((i, k), (i, k + 1)) | 0 ≤ i < m; k = n − 1, n} ∪ {((i, n), ([i − 1]m , n)) | i = 0, 2, 4, . . . , m − 2} ∪ {((i, n + 1), ([i + 1]m , n + 1)) | 0 ≤ i < m}. Then V (SW (m, n + 2)) = V (SW (m, n)) ∪ V n and E(SW (m, n + 2)) = (E(SW (m, n)) − S) ∪ E n . For this reason, we can view SW (m, n) as a substructure of SW (m, n + 2) if there is no confusion. Let F ⊂ V (SW ∗ (m, n)) ∪ E(SW ∗ (m, n)) be a faulty set such that |F | = 1 if F has an edge in E(SW ∗ (m, n)) and |F | = 2 if F consists of a pair of vertices in V (SW ∗ (m, n)), one from each partite set. Suppose that C is a Hamiltonian cycle of SW (m, n) − F , in which (i, n − 1) is fault-free for some 0 ≤ i < m. Now, we are going to construct a Hamiltonian cycle of SW (m, n + 2) as follows.
ch013.tex
24/7/2008
14: 58
Page 305
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
305
Case 1. There is some edge in S ∩ E(C). We can pick an edge ((r, n − 1), ([r − 1]m , n − 1)) ∈ C for some even integer 0 ≤ r < m − 1. For 0 ≤ i ≤ m − 2, we define e∗ = (([r + i]m , n − 1), ([r + i + 1]m , n − 1)), and Qi as Qi = ([r + i]m , n + 1), ([r + i + 1]m , n + 1)
if [r + i]2 = 0
Qi = ([r + i]m , n + 1), ([r + i + 1]m , n + 1)
if [r + i]2 = 1 and e∗ ∈ C
Qi = ([r + i]m , n + 1), ([r + i]m , n), ([r + i + 1]m , n), ([r + i + 1]m , n + 1) if otherwise. Then set the path Q as (r, n + 1), Q0 , ([r + 1]m , n + 1), Q1 , ([r + 2]m , n + 1), . . . , ([r − 2]m , n + 1), Qm−2 , ([r − 1]m , n + 1). Now we perform the following algorithm on C. ALGORITHM 3 EXTEND(C) 1. Replace those edges ((i, n − 1), ([i − 1]m , n − 1)) ∈ C, where i = r and i is even, with the path (i, n − 1), (i, n), ([i − 1]m , n), ([i − 1]m , n − 1). 2. Replace the edge ((r, n − 1), (r − 1, n − 1)) with the path (r, n − 1), (r, n), (r, n + 1), Q, (r − 1, n + 1), (r − 1, n), (r − 1, n − 1). Obviously, the resultant of Algorithm 3 is a Hamiltonian cycle of SW (m, n + 2) − F. Case 2. There is no edge in S ∩ E(C). Obviously, ((i, n − 1), (i − 1, n − 1)) ∈ C for every odd i with 1 ≤ i < m. The Hamiltonian cycle of SW (m, n + 2) − F can easily be constructed by replacing every ((i, n − 1), (i − 1, n − 1)), where i is odd and 1 ≤ i < m, with the path (i, n − 1), (i, n), (i, n + 1), (i − 1, n + 1), (i − 1, n), (i − 1, n − 1). Thus, we have the following theorem. THEOREM 13.9 Assume that F is a faulty subset of V (SW ∗ (m, n)) ∪ E(SW ∗ (m, n)) such that some (i, n − 1) with 0 ≤ i < m is fault-free. Then SW (m, n + 2) − F is Hamiltonian if SW (m, n) − F is Hamiltonian. LEMMA 13.18
SW (m, 2) is 1p -fault-tolerant Hamiltonian for m ≥ 4.
Proof: Let F ∈ F(SW (m, 2)). By the symmetric property of SW (m, 2), we may assume that (0, 0) ∈ F. So the other vertex in F is (x, y), where x + y is odd. Define two paths: pi (k, k + 1) = (i − 1, k), (i − 1, k + 1), (i, k + 1), (i, k), (i + 1, k) qi (k + 1, k) = (i − 1, k + 1), (i − 1, k), (i, k), (i, k + 1), (i + 1, k + 1) To simplify the notation, pi = pi (0, 1) and qi = qi (1, 0).
ch013.tex
24/7/2008
306
14: 58
Page 306
Graph Theory and Interconnection Networks
Suppose that y = 1. Then we have a Hamiltonian cycle of SW (m, 2) − F:
(1, 0), (2, 0), p3 , (4, 0), p5 , (6, 0), . . . , (x, 0), (x + 1, 0), px+2 , (x + 3, 0), px+4 , . . . , (m − 1, 0), (m − 1, 1), (0, 1), (1, 1), (1, 0) Suppose that y = 0. There exists a Hamiltonian cycle of SW (m, 2) − F:
(0, 1), (1, 1), q2 , (3, 1), q4 , (5, 1), . . . , (x, 1), (x + 1, 1), qx+2 , (x + 3, 1), . . . , qm−3 , (m − 2, 1), (m − 2, 0), (m − 1, 0), (m − 1, 1), (0, 1) Hence, SW (m, 2) is 1p -fault-tolerant Hamiltonian.
n LEMMA 13.19 There exist (m/2) − 1 disjoint paths, P1n , P2n , . . . , P(m/2)−1 , that n ∗ span SW (m, n) − {(0, 0)} such that Pl joins (2l, n − 1) to (2l + 1, n − 1) for 1 ≤ l < n (m/2) − 1, and P(m/2)−1 joins (0, n − 1) to (m − 2, n − 1).
Proof: We prove this lemma by induction. For n = 2, we set Pl2 as (2l, 1), 2 (2l + 1, 1) for 1 ≤ l < (m/2) − 1 and P(m/2)−1 as (0, 1), (1, 1), (1, 0), I0 (1, m − 1), (m − 1, 0), (m − 1, 1), (m − 2, 1). Obviously, Pl2 ’s satisfy the requirement of the lemma for 0 ≤ l ≤ (m/2) − 1. Now assume that the lemma holds for n = k, where k k is even. Then there exist (m/2) − 1 disjoint paths, P1k , P2k , . . . , P(m/2)−1 , that k ∗ span SW (m, k) − {(0, 0)} such that Pl joins (2l, k − 1) to (2l + 1, k − 1) for 1 ≤ l < k (m/2) − 1, and P(m/2)−1 joins (0, k − 1) to (m − 2, k − 1).
Now, we set Plk+2 as (2l, k + 1), (2l + 1, k + 1) for 1 ≤ l < (m/2) − 1. Define k+2 k , (i + 2, k − 1) and P(m/2)−1 as: fi = (i, k − 1), (i, k), (i + 1, k), (i + 1, k − 1), P(i+1)/2 +
(0, k + 1), (1, k + 1), (1, k), (2, k), (2, k − 1), P1k , (3, k − 1), f3 , (5, k − 1), f5 ,
(7, k − 1), . . . , fm−5 , (m − 3, k − 1), (m − 3, k), (m − 2, k), (m − 2, k − 2), , −1 Pkm −1 , (0, k − 1), (0, k), (m − 1, k), (m − 1, k + 1), (m − 2, k + 1) 2
Plk+2 , 1 ≤ l ≤ (m/2) − 1, satisfies the requirement of the lemma. Hence, the lemma is proved. See Figure 13.9a for illustration. LEMMA 13.20 Assume that r is an even integer, 0 < r ≤ m − 2. There exist r/2 n , that span SW ∗ (m, n) − {(r, 0)} such that Qn joins disjoint paths, Q1n , Q2n , . . . , Qr/2 l n joins (0, n − 1) to (r, n − 1). (2l, n − 1) to (2l + 1, n − 1) for 1 ≤ l ≤ (r/2) − 1 and Qr/2 Proof: We prove this lemma by induction. For n = 2, we set Ql2 as (2l, 1), 2 as (0, 1), (1, 1), (1, 0), (2l, 0), (2l + 1, 0), (2l + 1, 1) for 1 ≤ l ≤ (r/2) − 1 and Qr/2
ch013.tex
24/7/2008
14: 58
Page 307
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
P14
P24
P34
Q 14
(a) R14
R24
Q 24
(b) S34
R34
(c) T 24
307
S14
S24
(d) T 34
T 14
(e)
FIGURE 13.9 Illustration for Lemmas 13.19 through 13.23.
−1 −1 −1 (0, 0), (m − 1, 0), (m − 1, 1), qm−2 , (m − 3, 1), qm−4 , (m − 5, 1), . . . , qr+2 , (r + 1, 1), 2 (r, 1). Obviously, Ql ’s satisfy the requirement of the lemma for 1 ≤ l ≤ r/2. We assume that the lemma holds for n = k where k is even. Then there exist r/2 disjoint paths, Qlk , 1 ≤ l ≤ r/2, that span SW ∗ (m, k) − {(r, 0)} such that Qlk joins (2l, k − 1) to k joins (0, k − 1) to (r, k − 1). (2l + 1, k − 1) for 1 ≤ l < r/2 and Qr/2
Now, we set Qlk+2 as (2l, k + 1), (2l + 1, k + 1) for 1 ≤ l < r/2. Define k , (i + 1, k − 1), (i + 1, k), (i + 2, k), (i + 2, k − 1) and Qk+2 as: gi = (i, k − 1), Qi/2 r/2 +
(0, k + 1), (1, k + 1), (1, k), (2, k), (2, k − 1), g2 , (4, k − 1), g4 , (6, k − 1), . . . , gr−2 , −1 −1 (r, k − 1), Qkr , (0, k − 1), (0, k), (m − 1, k), (m − 1, k + 1), qm−2 (k + 1, k), 2 , −1 (m − 3, k + 1), . . . , qr+2 (k + 1, k), (r + 1, k + 1), (r, k + 1)
Obviously, Qlk+2 for 1 ≤ l ≤ r/2 satisfies the requirement of the lemma. Hence, the lemma is proved. See Figure 13.9b for illustration, where r = 4. LEMMA 13.21 Assume that s is a positive odd integer. There exist (m/2) − 1 disjoint paths, Rln , where 1 ≤ l < m/2 that span SW ∗ (m, n) − {(s, 1)} such that Rln joins (2(l − 1), n − 1) to (2l − 1, n − 1) for l = (s + 1)/2 and R(s+1)/2 joins (s − 1, n − 1) to (m − 2, n − 1).
ch013.tex
24/7/2008
308
14: 58
Page 308
Graph Theory and Interconnection Networks
Proof: We prove this lemma by induction. For n = 2, we set Rl = (2(l − 1), 1), (2(l − 1), 0), (2l − 1, 0), (2l − 1, 1) for 1 ≤ l ≤ s+3 m Rl = (2(l − 1), 1), (2l − 1, 1) for ≤l ≤ −1 2 2
s−1 2
2 as (s − 1, 1), (s − 1, 0), I0 (s − 1, m − 1), (m − 1, 0), (m − 1, 1), (m − Besides, R(s+1)/2 2, 1). Obviously, Rl2 satisfies the requirement of the lemma for 1 ≤ l ≤ (m/2) − 1. Now assume that the lemma holds for n = k where k is even. Then there exist (m/2) − 1 disjoint paths, Rlk ’s, that span SW ∗ (m, k) − {(s, 1)} such that Rlk joins (2(l − 1), k − 1) k to (2l − 1, k − 1) for 1 ≤ l < m/2, l = (s + 1)/2 and R(s+1)/2 joins (s − 1, k − 1) to (m − 2, k − 1). Now, we set Rlk+2 as (2(l − 1), k + 1), (2l − 1, k + 1) for 1 ≤ l < m/2, l = k , (i + 1, k − 1), (i + 1, k), (i + 2, k), (i + 2, k − 1) (s + 1)/2. Define gi = (i, k − 1), Ri/2 k+2 and R(s+1)/2 as:
+
(s − 1, k + 1), (s, k + 1), (s, k), (s + 1, k), (s + 1, k − 1), gs+1 , (s + 3, k − 1), . . . , −1 −1 gm−4 , (m − 2, k − 1), Rks+1 , (s − 1, k − 1), gs−3 , (s − 3, k − 1), . . . , 2 , g0−1 , (0, k − 1), (0, k), (m − 1, k), (m − 1, k + 1), (m − 2, k + 1)
Since Rlk+2 , for 1 ≤ l ≤ s/2, satisfies the requirement of the lemma, the lemma is proved. See Figure 13.9c, where s = 3. LEMMA 13.22 There exist (m/2) − 1 disjoint paths, Sln , where 1 ≤ l < m/2 that span SW ∗ (m, n) − {(0, 1)} such that Sln joins (2l + 2, n − 1) to (2l + 3, n − 1) for n 1 ≤ l ≤ (m/2) − 2 and S(m/2)−1 joins (1, n − 1) to (3, n − 1). Proof: We prove this lemma by induction. For n = 2, we set Sl2 as 2
(2l + 2, 1), (2l + 3, 1) for 1 ≤ l ≤ (m/2) − 2 and S(m/2)−1 as (1, 1), (1, 0), (0, 0), −1 2 (m − 1, 0), I0 (2, m − 1), (2, 0), (2, 1), (3, 1). Obviously, Sl ’s satisfy the requirement of the lemma for 1 ≤ l ≤ (m/2) − 1. Now assume that the lemma holds for n = k where k is even. Then there exist (m/2) − 1 disjoint paths, Slk ’s, that span SW ∗ (m, k) − {(0, 1)} k such that Slk joins (2l + 2, k − 1) to (2l + 3, k − 1) for 1 ≤ l ≤ (m/2) − 2 and S(m/2)−1 joins (1, k − 1) to (3, k − 1). Now, we set Slk+2 as (2l + 2, k + 1), (2l + 3, k + 1) for 1 ≤ l ≤ (m/2) − 2. Define k+2 k , (i + 2, k − 1) and S(m/2)−1 as: hi = (i, k − 1), (i, k), (i + 1, k), (i + 1, k − 1), S(i−1)/2 +
−1 , (1, k + 1), (0, k + 1), (0, k), (m − 1, k), (m − 1, k − 1), hm−3 −1 −1 (m − 3, k − 1), hm−5 , (m − 5, k − 1), . . . , h3−1 , (3, k − 1), S km −1 , 2 , (1, k − 1), (1, k), (2, k), (2, k + 1), (3, k + 1)
ch013.tex
24/7/2008
14: 58
Page 309
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
309
Slk+2 , 1 ≤ l ≤ (m/2) − 1, satisfies the requirement of the lemma, so the lemma is proved. See Figure 13.9d for illustration. LEMMA 13.23 Assume that t is an even integer, 0 < t ≤ m − 2. There exist (m/2) − 1 disjoint paths, Tln , where 1 ≤ l < m/2 that span SW ∗ (m, n) − {(t, 1)} such n that Tln joins (2l, n − 1) to (2l + 1, n − 1) for 1 ≤ l ≤ (m/2) − 1 and l = t/2, and Tt/2 joins (1, n − 1) to (t + 1, n − 1). 2 = (1, 1), (0, 1), (0, 0), Proof: We prove this lemma by induction. For n = 2, we set Tt/2 I0 (0, t + 1), (t + 1, 0), (t + 1, 1).
Tl = (2l, 1), (2l + 1, 1)
for 1 ≤ l ≤
t−2 2
Tl = (2l, 1), (2l, 0), (2l + 1, 0), (2l + 1, 1)
for
m−2 t+2 ≤l≤ 2 2
Obviously, Tl2 ’s satisfy the requirement of the lemma for 1 ≤ l ≤ (m/2) − 1. Now assume that the lemma holds for n = k where k is even. Then there exist (m/2) − 1 disjoint paths, Tlk ’s, that span SW ∗ (m, k) − {(t, 1)} such that Tlk joins (2l, k − 1) k joins (1, k − 1) to to (2l + 1, k − 1) for 1 ≤ l ≤ (m/2) − 1 and l = t/2, and Tt/2 (t + 1, k − 1). Now, we set Tlk+2 as (2l, k + 1), (2l + 1, k + 1) for 1 ≤ l ≤ (m/2) − 1 and l = t/2. k Define hi = (i, k − 1), (i, k), (i + 1, k), (i + 1, k − 1), T(i+1)/2 , (i + 2, k − 1) and set k+2 Tt/2 as:
+
−1 −1 (1, k + 1), (0, k + 1), (0, k), (m − 1, k), (m − 1, k − 1), hm−3 , (m − 3, k − 1), hm−5 , −1 −1 , (1, k − 1), h1 , (3, k − 1), . . . , ht−3 , , (t + 1, k − 1), T kt (m − 5, k − 1), . . . , ht+1 2 , (t − 1, k − 1), (t − 1, k), (t, k), (t, k + 1), (t + 1, k + 1)
Tlk+2 , 1 ≤ l ≤ (m/2) − 1, satisfies the requirement of the lemma, so the lemma is proved. See Figure 13.9e, where t = 4. THEOREM 13.10 SW (m, n) is 1p -fault-tolerant Hamiltonian for any even integer with m ≥ 4 and n ≥ 2. Proof: This theorem is proved by induction. Using Lemma 13.18, SW (m, 2) is 1p -Hamiltonian. Assume that SW (m, k) is 1p -Hamiltonian for some positive integer k with k ≥ 2. Now, we want to prove that SW (m, n + 2) is 1p -fault-tolerant Hamiltonian. Let F ∈ F(SW (m, n + 2)). Obviously, one of the following cases holds: (1) {(i, j) | 0 ≤ i < m, j = n, n + 1} ∩ F = ∅, (2) {(i, j) | 0 ≤ i < m, j = 0, 1} ∩ F = ∅, and (3) |{(i, j) | 0 ≤ i < m, j = n, n + 1} ∩ F| = 1 and |{(i, j) | 0 ≤ i < m, j = 0, 1} ∩ F| = 1.
ch013.tex
24/7/2008
14: 58
310
Page 310
Graph Theory and Interconnection Networks
Case 1. {(i, j) | 0 ≤ i < m, j = n, n + 1} ∩ F = ∅. Then F ∈ F(SW (m, n)). By induction, SW (m, n) − F is Hamiltonian. Applying Theorem 13.9, SW (m, n + 2) − F is Hamiltonian. Case 2. {(i, j) | 0 ≤ i < m, j = 0, 1} ∩ F = ∅. Since the inner cycle and the outer cycle are symmetrical in any spider web network, SW (m, n + 2) − F is Hamiltonian, as was Case 1. Case 3. |{(i, j) | 0 ≤ i < m, j = n, n + 1} ∩ F| = 1 and |{(i, j) | 0 ≤ i < m, j = 0, 1} ∩ F| = 1. By the symmetrical property of the spider web networks, we have the following five cases: (3.1) F = {(0, 0), (0, n + 1)}, (3.2) F = {(r, 0), (0, n + 1)} with r an nonzero even integer, (3.3) F = {(s, 1), (0, n + 1)} with s an odd integer, (3.4) F = {(0, 1), (0, n)}, and (3.5) F = {(t, 1), (0, n)} with t an nonzero even integer. Case 3.1. F = {(0, 0), (0, n + 1)}. Using Lemma 13.19, there exist (m/2) − 1 disn joint paths, P1n , P2n , . . . , P(m/2)−1 , that span SW ∗ (m, n) − {(0, 0)} such that Pln joins n (2l, n − 1) to (2l + 1, n − 1) for 1 ≤ l < (m/2) − 1 and P(m/2)−1 joins (0, n − 1) to (m − 2, n − 1). n )−1, (i − 2, n − 1). Define C1 (i) = (i, n − 1), (i, n), (i − 1, n), (i − 1, n − 1), (P(i−2)/2 n Obviously, (0, n − 1), P(m/2)−1 , (m − 2, n − 1), C1 (m − 2), (m − 4, n − 1), . . . , C1 (4), (2, n − 1), (2, n), (1, n), (1, n + 1), In + 1 (1, m − 1), (m − 1, n + 1), (m − 1, n), (0, n), (0, n − 1) forms a Hamiltonian cycle of SW (m, n + 2) − F. See Figure 13.10a.
(a)
(b)
(c)
(d)
(e)
FIGURE 13.10 Illustration for Theorem 13.10, cases 3.1–3.5.
ch013.tex
24/7/2008
14: 58
Page 311
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
311
Case 3.2. F = {(r, 0), (0, n + 1)}. By Lemma 1, there exist r/2 disjoint paths, n , that span SW ∗ (m, n) − {(r, 0)} such that Qn joins (2l, n − 1) to Q1n , Q2n , . . . , Qr/2 l n joins (0, n − 1) to (r, n − 1). (2l + 1, n − 1) for 1 ≤ l < r/2 and Qr/2 n Define C2 (i) = (i, n − 1), (i, n), (i − 1, n), (i − 1, n − 1), (Q(i−2)/2 )−1 , (i − 2, n − 1), B(i) ≡ (i, n + 1), (i, n), (i + 1, n), (i + 1, n + 1), (i + 2, n + 1). Obviously, n , (r, n − 1), C (r), (r − 2, n − 1), . . . , C (4), (2, n − 1), (2, n), (1, n), (1,
(0, n − 1), Qr/2 2 2 n + 1), In+1 (1, r + 1), (r + 1, n + 1), B(r + 1), (r + 3, n + 1), . . . , B(m − 3), (m − 1, n + 1), (m − 1, n), (0, n), (0, n − 1) forms a Hamiltonian cycle of SW (m, n + 2) − F. See Figure 13.10b, where r = 4. Case 3.3. F = {(s, 1), (0, n + 1)}. By Lemma 13.21, there exist (m/2) − 1 disn joint paths, R1n , R2n , . . . , R(m/2)−1 , that span SW ∗ (m, n) − {(s, 1)} such that Rln joins n joins (2l − 2, n − 1) to (2l − 1, n − 1) for 1 ≤ l < m/2 and l = (s + 1)/2, and R(s+1)/2 (s − 1, n − 1) to (m − 2, n − 1). n )−1 , (i − 2, n − 1), Define C3 (i) = (i, n − 1), (i, n), (i − 1, n), (i − 1, n − 1), (Ri/2 n C3 (i) ≡ (i, n − 1), R(i+2)/2 , (i + 1, n − 1), (i + 1, n), (i + 1, n + 1), (i + 2, n + 1), (i + 2, n n), (i + 2, n − 1). Then (s − 1, n − 1), R(s+1)/2 , (m − 2, n − 1), C3 (m − 2), (m − 4, n − 1), C3 (m − 4), (m − 6, n − 1), . . . , C3 (s + 3), (s + 1, n − 1), (s + 1, n), (s, n), (s, n + 1), In+1 (s, m − 1), (m − 1, n + 1), (m − 1, n), (0, n), (0, n − 1), C3 (0), (2, n − 1), C3 (2), (4, n − 1), . . . , C3 (s − 3), (s − 1, n − 1) forms a Hamiltonian cycle of SW (m, n + 2) − F. See Figure 13.10c, where s = 3. Case 3.4. F = {(0, 1), (0, n)}. By Lemma 13.22, there exist (m/2) − 1 disjoint paths, n S1n , S2n , . . . , S(m/2)−1 , that span SW ∗ (m, n) − {(0, 1)} such that Sln joins (2l + 2, n − 1) n to (2l + 3, n − 1) for 1 ≤ l ≤ (m/2) − 2 and S(m/2)−1 joins (1, n − 1) to (3, n − 1). Define C4 (i) = (i, n − 1), (i, n), (i, n + 1), (i + 1, n + 1), (i + 1, n), (i + 1, n − 1), n n S(i−1)/2 , (i + 2, n − 1). Then (1, n − 1), S(m/2)−1 , (3, n − 1), C4 (3), (5, n − 1), C4 (5), (7, n − 1), . . . , C4 (m − 3), (m − 1, n − 1), (m − 1, n), (m − 1, n + 1), (0, n + 1), (1, n + 1), (2, n + 1), (2, n), (1, n), (1, n − 1) forms a Hamiltonian cycle of SW (m, n + 2) − F. See Figure 13.10d. Case 3.5. F = {(t, 1), (0, n)}. By Lemma 13.23, there exist (m/2) − 1 disjoint paths, n T1n , T2n , . . . , Tm/2−1 , that span SW ∗ (m, n) − {(t, 1)} such that Tln joins (2l, n − 1) n joins (1, n − 1) to to (2l + 1, n − 1) for 1 ≤ l ≤ (m/2) − 1 and l = t/2, and Tt/2 (t + 1, n − 1). Define C5 (i) = (i, n − 1), (i, n), (i, n + 1), (i + 1, n + 1), (i + 1, n), (i + 1, n − 1), n n , (i + 2, n − 1) and C5 (i) = (i, n − 1), (T(i−1)/2 )−1 , (i − 1, n − 1), (i − 1, n), T(i+1)/2 (i − 2, n), (i − 2, n − 1). Then (1, n − 1), Tt/2 , (t + 1, n − 1), C5 (t + 1), (t + 3, n − 1), C5 (t + 3), (t + 5, n − 1), . . . , C5 (m − 3), (m − 1, n − 1), (m − 1, n), (m − 1, n + 1), (0, n + 1), In+1 (0, t), (t, n + 1), (t, n), (t − 1, n), (t − 1, n − 1), C5 (t − 1), (t − 3, n − 1), C5 (t − 3), (t − 5, n − 1), . . . , C5 (3), (1, n − 1) forms a Hamiltonian cycle of SW (m, n + 2) − F. See Figure 13.10e, where t = 4 The theorem is proved. Using a similar argument, we can prove the following theorem.
ch013.tex
24/7/2008
14: 58
Page 312
312
Graph Theory and Interconnection Networks
THEOREM 13.11 SW (m, n) is 1-edge fault-tolerant strongly Hamiltonian laceable and hyper Hamiltonian laceable for any even integers m and n with m ≥ 4 and n ≥ 2. Cho and Hsu [63] proved that the honeycomb rectangular torus HReT(m, n) is 1-edge fault-tolerant Hamiltonian and 1p -fault-tolerant Hamiltonian for any even integers m and n with n ≥ 6. It is very easy to see that the diameter of the spider web network SW (m, n) and the diameter of the honeycomb rectangular torus HReT(m, n) are√O(m + n). By choosing m = O(n), the diameter of these two families of graphs is O( N), where N = mn is the number of vertices.
13.6.2
BROTHER TREES
Kao and Hsu [189] present another family of 1-edge fault-tolerant Hamiltonian 1p -fault-tolerant Hamiltonian graphs, called brother tree’s BT (n). To define brother trees, first we will define brother cells. Assume that k is an integer with k ≥ 2. The kth brother cell BC(k) is the 5-tuple (Gk , wk , xk , yk , zk ), where Gk = (V , E) is a bipartite graph with bipartition W (white) and B (black) and contains four distinct vertices wk , xk , yk , and zk . wk is the white terminal, xk the white root, yk the black terminal, and zk the black root. We can recursively define BC(k) as follows: 1. BC(2) is the 5-tuple (G2 , w2 , x2 , y2 , z2 ) where V (G2 ) = {w2 , x2 , y2 , z2 , s, t} and E(G2 ) = {(w2 , s), (s, x2 ), (x2 , y2 ), (y2 , t), (t, z2 ), (w2 , z2 ), (s, t)}. 2. The kth brother cell BC(k) with k ≥ 3 is composed of two disjoint 1 , y1 , z 1 ) copies of (k − 1)th brother cells BC 1 (k − 1) = (G1k−1 , w1k−1 , xk−1 k−1 k−1 2 2 2 2 2 2 and BC (k − 1) = (Gk−1 , wk−1 , xk−1 , yk−1 , zk−1 ), a white root xk and a black root zk . To be specific, V (Gk ) = V (G1k−1 ) ∪ V (G2k−1 ) ∪ {xk , zk }, 1 ), (z , x 2 ), (x , z1 ), (x , z2 ), E(Gk ) = E(G1k−1 ) ∪ E(G2k−1 ) ∪ {(zk , xk−1 k k−1 k k−1 k k−1 1 2 1 2 . (yk−1 , wk−1 )}, wk = wk−1 , and yk = yk−1 BC(2), BC(3), and BC(4) are shown in Figure 13.11. We note that BC 1 (k − 1) and are isomorphic for k ≥ 3. This property is referred to as the symmetrical property of BC(k). For this reason, we define the degenerated case, BC(1), as the 5-tuple (G1 , w1 , x1 , y1 , z1 ) as V (G1 ) = {w1 , y1 }, E(G1 ) = {(w1 , y1 )} such that x1 = w1 and y1 = z1 . BC 2 (k − 1)
z4 x13
x3 z 12
z2 w2
t s x2
y2
x 23
z 22 y3y 22
y 12 w 22
w3w 12
y4 y 23
y 13 w4 w 13
w 23
x 22
x 12 z3
z 13
z 23 x4
(a)
(b)
FIGURE 13.11 (a) BC(2), (b) BC(3), and (c) BC(4).
(c)
ch013.tex
24/7/2008
14: 58
Page 313
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
313
We can also define the brother cell BC(k) from the complete binary tree B(k), where V (B(k)) = {1, 2, . . . , 2k − 1} and E(B(k)) = {(i, j) | j/2 = i}. Assume that k is a positive integer with k ≥ 2. The kth brother cell BC(k) = (Gk , wk , xk , yk , zk ) can be constructed by combining two B(k)’s, the upper tree B(k)u and the lower tree B(k)l , and adding edges between their leaf vertices. Let n be a positive integer with n ≥ 1. The brother tree, BT (n), is composed 1 , y1 , z1 ) and an nth of an (n + 1)th brother cell BC(n + 1) = (G1n+1 , w1n+1 , xn+1 n+1 n+1 1 2 2 2 2 2 brother cell BC(n) = (Gn , wn , xn , yn , zn ) with V (Gn+1 ) ∩ V (G2n ) = ∅. To be specific, 1 , x 2 ), (y1 , V (BT (n)) = V (G1n+1 ) ∪ V (G2n ) and E(BT (n)) = E(G1n+1 ) ∪ E(G2n ) ∪ {(zn+1 n n+1 1 1 2 2 2 wn ), (xn+1 , zn ), (wn+1 , yn )}. BT (1) and BT (3) are shown in Figure 13.12. Obviously, BT (n) is a 3-regular bipartite planar graph with 6 × 2n − 4 vertices. Because the (n + 1)th brother cell consists of two disjoint nth brother cells and two terminals, the nth brother tree BT (n) is composed of three disjoint nth brother cells, BC 1 (n), 1 , z1 }. Moreover, BC 1 (n), BC 2 (n), and BC 2 (n), BC 3 (n) and two terminals, {xn+1 n+1 3 BC (n) are arranged in a cyclic order in BT (n). Thus any two vertices of BT (n) are in 1 , z1 }. For the union of two in the vertex set of BC 1 (n), BC 2 (n), BC 3 (n), and {xn+1 n+1 this reason, we can assume without loss of generality that any two vertices of BT (n) are in G1n+1 and any edge of BT (n) is in G1n+1 . This property is referred to as the symmetrical property of BT (n). THEOREM 13.12 D(BT (n)) = 2n + 1 for any positive integer n with n ≥ 1. 1 , z1 ) = 2n + 1. Let u and Proof: It is easy to prove by induction that dBT (n) (xn+1 n+1 v be any two vertices of BT (n). We will prove that dBT (n) (u, v) ≤ 2n + 1. Using the symmetrical property of brother trees, we may assume that u and v are in the brother cell G1n+1 . Note that the brother cell G1n+1 is composed of two complete binary trees B(n + 1)u and B(n + 1)l . Thus, (1) both u and v are in V (B(n + 1)u ), or both u and v are in V (B(n + 1)l ), or (2) u ∈ V (B(n + 1)u ) and v ∈ V (B(n + 1)l ). Now, we will introduce some notations before our proof. Let V (B(n + 1)u ) = {1, 2, . . . , 2n+1 − 1}
z14 x23 y 14 w14
y23 w 23 z 23
(a)
x 14 (b)
FIGURE 13.12 (a) BT (1) and (b)BT (3).
ch013.tex
24/7/2008
314
14: 58
Page 314
Graph Theory and Interconnection Networks
and V (B(n + 1)l ) = {1 , 2 , . . . , (2n+1 − 1) }. Now, join B(n + 1)u and B(n + 1)l with the edge set {(2n + i, (2n + i) ), ((2n + i) , 2n + i + 1) | 0 ≤ i ≤ 2n − 2} ∪ {(2n+1 − 1, 1 , y1 , z1 ), where x (2n+1 − 1) )} to obtain the brother cell (G1n+1 , w1n+1 , xn+1 n+1 = 1 n+1 n+1 and zn+1 = 1 if n is even and xn+1 = 1 and zn+1 = 1 if otherwise. Moreover, wn+1 = 2n and yn+1 = (2n+1 − 1) . Case 1. By symmetry, we may assume that both u and v are in V (B(n + 1)u ). Suppose that u is labeled i and v is labeled j. Obviously, max{log2 (i + 1), log2 (j + 1)} ≤ n + 1. Since dB(n+1) (i, 1) = log2 (i + 1) − 1, there exists a path P1 of length log2 (i + 1) − 1 joining u to the root of B(n + 1)u . Similarly, there exists a path P2 of length log2 (j + 1) − 1 joining v to 1. Thus, u, P1 , 1, P2−1 , v forms a path joining u to v in B(n + 1)u . Thus, dBT (n) (u, v) ≤log2 (i + 1) + log2 (j + 1) − 2 ≤ 2n + 1. Case 2. We may assume that u is labeled i and v is labeled j . Without loss of generality, we assume that i ≥ j. There then exists a path P1 from i to some leaf vertex h of B(n + 1)u of length n − (log2 (i + 1) − 1). Let h be a neighborhood of h of BT (n) in B(n + 1)l . Obviously, there exists a path of length n from h to the root 1 of B(n + 1)l . Moreover, there exists a path P3 of length log2 (j + 1) − 1 joining v to 1 . Obviously, u, P1 , h, h , P2 , 1 , P3−1 , v forms a path joining u to v in G1n+1 . Thus, dBT (n) (u, v) ≤ 2n + 1 − log2 (i + 1) + log2 (j + 1). Since i ≥ j, dBT (n) (u, v) ≤ 2n + 1. The theorem is proved. LEMMA 13.24 Assume that BC(n) = (Gn , wn , xn , yn , zn ) for some integer n ≥ 2. There exists a Hamiltonian path Pn1 of Gn joining wn to yn . There exists a Hamiltonian path Pn2 of Gn joining wn to zn . There exists a Hamiltonian path Pn3 of Gn joining xn to yn . There exists a Hamiltonian path Pn4 of Gn joining xn to zn . There exist two disjoint paths Pn5 and Pn6 such that (a) they span Gn , (b) Pn5 joins wn to xn , and (c) Pn6 joins yn to zn . 6. There exist two disjoint paths Pn7 and Pn8 such that (a) they span Gn , (b) Pn7 joins wn to zn , and (c) Pn8 joins xn to yn .
1. 2. 3. 4. 5.
Proof: We prove this lemma by induction. It is easy to confirm that the lemma holds in BC(2). Assume that the lemma holds for BC(n). By definition, BC(n + 1) is composed of two disjoint copies of nth brother cells BC 1 (n) and BC 2 (n), a white root xn+1 and a black root zn+1 . By induction, {Pni,1 }8i=1 exists, satisfying the lemma for BC 1 (n) and {Pni,2 }8i=1 exists, satisfying the lemma for BC 2 (n). We then set −1 + 1 Pn+1 = wn+1 = w1n , Pn5,1 , xn1 , zn+1 , xn2 , Pn5,2 , w2n , yn1 , Pn6,1 , zn1 , xn+1 , , −1 2 zn2 , Pn6,2 , yn = yn+1
ch013.tex
24/7/2008
14: 58
Page 315
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
315
+ , −1 2 2 Pn+1 = wn+1 = w1n , Pn2,1 , zn1 , xn+1 , zn2 , Pn4,2 , xn , zn+1 , + −1 2 1 3,1 −1 1 3 = xn+1 , zn2 , Pn7,2 , wn , yn , Pn , xn , zn+1 , xn2 , Pn8,2 , yn2 = yn+1 Pn+1 , + −1 2 1 3,1 −1 1 4 Pn+1 , wn , yn , Pn , xn , zn+1 = xn+1 , zn2 , Pn2,2 . 5 Pn+1 = wn+1 = w1n , Pn1,1 , yn1 , w2n , Pn7,2 , zn2 , xn+1 , + −1 2 6 Pn+1 = yn+1 = yn2 , Pn8,2 , xn , zn+1 , + 7 Pn+1 = wn+1 = w1n , Pn5,1 , xn1 , zn+1 , + −1 1 2 1,2 2 8 Pn+1 = xn+1 , zn1 , Pn6,1 , yn , wn , Pn , yn = yn+1 The lemma is proved
LEMMA 13.25 Assume that BC(n) = (Gn , wn , xn , yn , zn ) for some integer n ≥ 2. Let e be any edge of BC(n). Then at least one of the following properties holds: 1. There exists a Hamiltonian path Qn1 (e) of Gn − e joining wn to yn .
2. There exists a Hamiltonian path Qn2 (e) of Gn − e joining wn to zn .
3. There exists a Hamiltonian path Qn3 (e) of Gn − e joining xn to yn . 4. There exists a Hamiltonian path Qn4 (e) of Gn − e joining xn to zn .
5. There exist two disjoint paths Qn5 (e) and Qn6 (e) such that (a) they span Gn − e, (b) Qn5 (e) joins wn to xn , and (c) Qn6 (e) joins yn to zn .
6. There exist two disjoint paths Qn7 (e) and Qn8 (e) such that (a) they span Gn − e, (b) Qn7 (e) joins wn to zn , and (c) Qn8 (e) joins xn to yn . Proof: We prove this lemma by induction. It is easy to confirm that the lemma holds for BC(2). Assume that the lemma holds for BC(n). By definition, BC(n + 1) is composed of two disjoint copies of nth brother cells BC 1 (n) and BC 2 (n), a white root xn+1 and a black root zn+1 . Let e be any edge of BC(n + 1). Using the symmetrical property of BC(n + 1), we may assume that e is (zn+1 , xn1 ), (zn1 , xn+1 ), (yn1 , w2n ), or an edge in BC 1 (n). By induction, there exists {Pni,1 }8i=1 , satisfying the lemma for / E(BC 1 (n)) and there exists {Pni,2 }8i=1 , satisfying the lemma for BC 2 (n) if BC 1 (n) if e ∈ 2 e∈ / E(BC (n)). 7 (e) as w 1 1,1 1 2 5,2 2 Case 1. e = (zn+1 , xn1 ). We set Qn+1 n+1 = wn , Pn , yn , wn , Pn , xn , zn+1 8 (e) as x 2 6,2 −1 2 and Qn+1 n+1 , zn , (Pn ) , yn = yn+1 . 5 (e) as w 1 1,1 1 2 7,2 2 Case 2. e = (zn1 , xn+1 ). We set Qn+1 n+1 = wn , Pn , yn , wn , Pn , zn , xn+1 6 2 8,2 −1 2 and Qn+1 (e) as yn+1 = yn , (Pn ) , xn , zn+1 .
Case 3. yn+1 .
3 (e) as x 1 4,1 −1 1 2 3,2 2 e = (yn1 , w2n ). We set Qn+1 n+1 , zn , (Pn ) , xn , zn+1 , xn , Pn , yn =
ch013.tex
24/7/2008
14: 58
316
Page 316
Graph Theory and Interconnection Networks
Case 4. e is in BC 1 (n). By induction hypothesis, one of the six properties of the lemma holds for BC 1 (n). In the following, we find the corresponding paths that satisfy the lemma for BC(n + 1): 7 1. Qn+1 (e) = wn+1 = w1n , Qn1,1 (e), yn1 , w2n , Pn5,2 , xn2 , zn+1 8 (e) = xn+1 , zn2 , (Pn6,2 )−1 , yn2 = yn+1 Qn+1 2 (e) = wn+1 = w1n , Qn2,1 (e), zn1 , xn+1 , zn2 , (Pn4,2 )−1 , xn2 , zn+1 2. Qn+1 4 (e) = xn+1 , zn2 , (Pn2,2 )−1 , w2n , yn1 , (Qn3,1 (e))−1 , xn1 , zn+1 3. Qn+1 3 (e) = xn+1 , zn1 , (Qn4,1 (e))−1 , xn1 , zn+1 , xn2 , Pn3,2 , yn2 = yn+1 4. Qn+1 7 (e) = wn+1 = w1n , Qn5,1 (e), xn1 , zn+1 5. Qn+1 8 (e) = xn+1 , zn1 , (Qn6,1 (e))−1 , yn1 , w2n , Pn1,2 , yn2 = yn+1 Qn+1 2 (e) = wn+1 = w1n , Qn7,1 (e), zn1 , xn+1 , zn2 , (Pn2,2 )−1 , w2n , yn1 , (Qn8,1 (e))−1 , 6. Qn+1
xn1 , zn+1 The lemma is proved.
LEMMA 13.26 Assume that n is an integer with n ≥ 2. Let BC(n) = (Gn , wn , xn , yn , zn ). Suppose that c is any vertex of Gn . There then exists a Hamiltonian path Rn (c) of Gn − c such that Rn (c) joins yn to zn if c is a white vertex and Rn (c) joins wn to xn if c is a black vertex. Proof: We prove this lemma by induction. It is easy to confirm that the lemma holds for BC(2). Assume that the lemma holds for BC(n). By definition, BC(n + 1) is composed of two disjoint copies of nth brother cells BC 1 (n) = (G1n , w1n , xn1 , yn1 , zn1 ) and BC 2 (n) = (G2n , w2n , xn2 , yn2 , zn2 ), a white root xn+1 and a black root zn+1 . We prove only the case that c is a black vertex. Using the symmetrical property of BC(n + 1), we may assume that c is a vertex in BC 1 (n) or c = zn+1 . Using Lemma 13.24, there exists {Pni,1 }8i=1 for BC 1 (n) if c ∈ / V (BC 1 (n)) and {Pni,2 }8i=1 for BC 2 (n) if c ∈ / V (BC 2 (n)). 1 Suppose that c is in BC (n). By induction, there exists a Hamiltonian path Rn1 (c) of G1n − c that joins w1n to xn1 . Then we set Rn+1 (c) as wn+1 = w1n , Rn1 (c), xn1 , zn+1 , xn2 , Pn4,2 , zn2 , xn+1 . Suppose that c = zn+1 . We set Rn+1 (c) as wn+1 = w1n , Pn1,1 , yn1 , w2n , Pn2,2 , zn2 , xn+1 . The lemma is proved. LEMMA 13.27 Assume that n is an integer with n ≥ 2. Let BC(n) = (Gn , wn , xn , yn , zn ). Let c be a white vertex of Gn and d be a black vertex of Gn . Then at least one of the following properties holds: 1. There exists a Hamiltonian path Sn1 (c, d) of Gn − {c, d} joining wn to yn . 2. There exists a Hamiltonian path Sn2 (c, d) of Gn − {c, d} joining wn to zn . 3. There exists a Hamiltonian path Sn3 (c, d) of Gn − {c, d} joining xn to yn .
ch013.tex
24/7/2008
14: 58
Page 317
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
317
4. There exists a Hamiltonian path Sn4 (c, d) of Gn − {c, d} joining xn to zn . 5. There exist two disjoint paths Sn5 (c, d) and Sn6 (c, d) such that (a) they span Gn − {c, d}, (b) Sn5 (c, d) joins wn to xn , and (c) Sn6 (c, d) joins yn to zn . 6. There exist two disjoint paths Sn7 (c, d) and Sn8 (c, d) such that (a) they span Gn − {c, d}, (b) Sn7 (c, d) joins wn to zn , and (c) Sn8 (c, d) joins xn to yn . Proof: We prove this lemma by induction. It is easy to confirm that the lemma holds for BC(2). Assume that the lemma holds for BC(n). By definition, BC(n + 1) is composed of two disjoint copies of nth brother cells BC 1 (n) and BC 2 (n), a white root xn+1 and a black root zn+1 . Using the symmetrical property of BC(n + 1), we may assume that one of the following cases holds: (1) c = xn+1 and d = zn+1 , (2) c = xn+1 and d ∈ V (BC 1 (n)), (3) c ∈ V (BC 1 (n)) and d = zn+1 , (4) c ∈ V (BC 1 (n)), d ∈ V (BC 2 (n)), or (5) {c, d} ⊂ V (BC 1 (n)). In the following discussion, we find the corresponding path(s) for each case. 1 (c, d) as w 1 1,1 1 2 1,2 2 Case 1. We set Sn+1 n+1 = wn , Pn , yn , wn , Pn , yn . 1 (c, d) as w 1 1 1 2 Case 2. With Lemma 13.26, we set Sn+1 n+1 = wn , Rn (d), xn , zn+1 , xn , 2 3,2 Pn , yn . 3 (c, d) as x 1 1 −1 1 2 Case 3. With Lemma 13.26, we set Sn+1 n+1 , zn , (Rn (c)) , yn , wn , 1,2 2 Pn , yn . 4 (c, d) as x 1 1 −1 1 2 Case 4. With Lemma 13.26, we set Sn+1 n+1 , zn , (Rn (c)) , yn , wn , Rn2 (d), xn2 , zn+1 .
Case 5. By induction hypothesis, one of the six properties of the lemma holds for BC 1 (n). Note that the endpoints of Sni (c, d) are the same as the endpoints of Qni (e) stated in Lemma 13.25. With a similar argument for Case 4 in Lemma 13.25, we can prove that the lemma is true for this case. Hence, the lemma is proved. THEOREM 13.13 The brother tree BT (n) is 1p -Hamiltonian for any positive integer n with n ≥ 1. Proof: Note that BT (1) is isomorphic to the hypercube Q3 . By brute force, we can check whether BT (1) is 1p -fault-tolerant Hamiltonian. Now we consider n ≥ 2. By definition, BT (n) is composed of an (n + 1)th brother cell, denoted 1 , y1 , z1 ) and an nth brother cell, denoted by by BC 1 (n + 1) = (G1n+1 , w1n+1 , xn+1 n+1 n+1 2 2 2 2 2 2 BC (n) = (Gn , wn , xn , yn , zn ). Let {c, d} be a pair of vertices in BT (n) from different partite sets. By the symmetrical property of BT (n), we assume that {c, d} ⊂ V (G1n+1 ). Using Lemma 13.24, {Pni,2 }8i=1 exists, satisfying the lemma for BC 2 (n). Obviously, one of the six properties of Lemma 13.27 holds for BC 1 (n + 1). In the following discussion, we find the corresponding Hamiltonian cycle Hc,d of BT (n) − e. 1,1 1 , w2 , P 1,2 , y2 , w1 (c, d), yn+1 1. Hc,d = w1n+1 , Sn+1 n n n n+1 2,1 1 , x 2 , P 3,2 , y2 , w1 2. Hc,d = w1n+1 , Sn+1 (c, d), zn+1 n n n n+1
ch013.tex
24/7/2008
14: 58
318
Page 318
Graph Theory and Interconnection Networks
1 , S 3,1 (c, d), y1 , w2 , P 2,2 , z2 , x 1 3. Hc,d = xn+1 n n n n+1 n+1 n+1 1 , S 4,1 (c, d), z1 , x 2 , P 4,2 , z2 , x 1 4. Hc,d = xn+1 n n+1 n+1 n n n+1 5,1 1 , z2 , (P 7,2 )−1 , w2 , y1 , S 6,1 (c, d), z1 , x 2 , (c, d), xn+1 5. Hc,d = w1n+1 , Sn+1 n n n n+1 n+1 n+1 n Pn8,2 , yn2 , w1n+1 7,1 1 , x 2 , (P 5,2 )−1 , w2 , y1 , (S 8,1 (c, d))−1 , x 1 , (c, d), zn+1 6. Hc,d = w1n+1 , Sn+1 n n n+1 n n+1 n+1 zn2 , (Pn6,2 )−1 , yn2 , w1n+1
The theorem is proved.
Using similar argument, we can prove the following theorem. THEOREM 13.14 BT (n) is 1-edge fault-tolerant strongly Hamiltonian laceable and hyper Hamiltonian laceable if n ≥ 2. It would be interesting to find other 3-regular 1-edge fault-tolerant Hamiltonian and 1p -fault-tolerant Hamiltonian graphs with smaller diameters.
13.7
HAMILTONIAN LACEABILITY OF FAULTY HYPERCUBES
It seems that we can discuss the Hamiltonian problem on the bipartite Hamiltonian graph G with bipartition X and Y with a faulty vertex set. However, the faulty vertex set FV must satisfy |FV ∩ X| = |FV ∩ Y |. However, this problem seems very difficult, even for hypercubes. We conjecture that Qn − F is Hamiltonian if F consists of vertex fault FV and Fe with |FV ∩ X| = |FV ∩ Y | = r and r + |Fe | ≤ n − 2. Sun et al. [289] restrict the faults on vertices occurring only on disjoint adjacent pairs. Let F be a subset of V (Qn ) ∪ E(Qn ) such that F can be decomposed into two parts Fav and Fe , where Fav is a union of fav disjoint adjacent pairs of Qn and fav Fe consists of fe edges. More precisely, Fav = ∪i=1 {bi , wi }, where (bi , wi ) ∈ E(Qn ) and {bi , wi } ∩ {bj , wj } = ∅ for i = j. Without loss of generality, we assume that {bi | 1 ≤ i ≤ fav } is a fav set in one of the partite sets and {wi | 1 ≤ i ≤ fav } is a fav set in the other partite set in Qn . Then we define Hav+e (Qn ) to be the largest integer k such that Qn − F remains Hamiltonian for any F = Fav ∪ Fe with fav + fe ≤ k. L (Qn ) to be the largest integer k such that Qn − F remains Again, we define Hav+e Hamiltonian laceable for any F = Fav ∪ Fe with fav + fe ≤ k. Similarly, we define SL (Q ) to be the largest integer k such that Q − F remains strongly HamiltoHav+e n n HL (Q ) to nian laceable for any F = Fav ∪ Fe with fav + fe ≤ k. Then we define Hav+e n be the largest integer k such that Qn − F remains hyper Hamiltonian laceable for any F = Fav ∪ Fe with fav + fe ≤ k. Finally, we prove that Hav+e (Qn ) = n − 2 if n ≥ 2, and L SL (Q ) = HHL (Q ) = n − 3 if n ≥ 3. (Qn ) = Hav+e Hav+e n av+e n We need the following properties for hypercubes. LEMMA 13.28 Qn − {x, y} is Hamiltonian if x and y are any two vertices from different partite sets of Qn with n ≥ 3. Proof: By the symmetric property of Qn , we may assume that x ∈ Qn0 and y ∈ Qn1 . Let u and v be any two different vertices in the partite set of Qn0 not containing x.
ch013.tex
24/7/2008
14: 58
Page 319
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
319
By Lemma 13.6, there exists a Hamiltonian path P of Qn0 − {x} joining u to v. Again, there exists a Hamiltonian path S of Qn1 − {y} joining un to vn . Then
u, P, v, vn , S −1 , un , u forms the desired cycle. The following lemma is proved in Ref. 290. LEMMA 13.29 Qn − {x, y} is Hamiltonian laceable if x and y are any two vertices from different partite sets of Qn with n ≥ 4. Proof: We prove this lemma by induction. The induction basis for n = 4 can be proved by brute force. Assume that this lemma is true for Qk with 4 ≤ k < n. By the symmetric property of Qn , we can assume that x = e. Thus, w(y) is odd. Let u and v be any two vertices from different partite sets of Qn − {x, y}. Without loss of generality, we may assume that u is a white vertex. We need to find a Hamiltonian path of Qn − {x, y} joining u to v. Case 1. w(y) < n. Without loss of generality, we assume that (y)n = 0. Obviously, {x, y} ⊂ Qn0 . Case 1.1. |{u, v} ∩ Qn0 | = 2. By induction, there exists a Hamiltonian path P of Qn0 − {x, y} joining u to v. Write P as u = y1 , y2 , . . . , y2n−1 − 2 = v. Since Qn1 is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 joining un to (y2 )n . Then u, un , S, (y2 )n , y2 , y3 , . . . , y2n−1 − 2 = v forms the desired path. Case 1.2. |{u, v} ∩ Qn0 | = 1. Without loss of generality, we assume that u ∈ Qn0 . Since there are 2n−2 black vertices in Qn0 , we can choose a black vertex r of Qn0 such that r = y. By induction, there exists a Hamiltonian path P of Qn0 − {x, y} joining u to r. Since Qn1 is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 joining rn to v. Then u, P, r, rn , S, v forms the desired path. Case 1.3. |{u, v} ∩ Qn0 | = 0. Thus, u and v are in Qn1 .Again, there exists a Hamiltonian path P of Qn1 between u and v. We write P as u = x1 , x2 , . . . , x2n −1 = v. Obviously, there exists some index i with 1 ≤ i < 2n − 1 such that {(xi )n , (xi+1 )n } ∩ {x, y} = ∅. By induction, there exists a Hamiltonian path S of Qn0 − {x, y} between (xi )n and (xi+1 )n . Then u = x1 , x2 , . . . , xi , (xi )n , S, (xi+1 )n , xi+1 , xi+2 , . . . , x2n−1 − 2 = v forms the desired path. Case 2. w(y) = n. Since w(y) is odd, n is odd. Moreover, w(v) < n because y = v. Without loss of generality, we assume that (v)n = 0. Therefore, v ∈ Qn0 and y ∈ Qn1 . Case 2.1. u ∈ Qn0 . Since Qn0 is hyper Hamiltonian laceable, there exists a Hamiltonian path P of Qn0 − {v} joining u to e. Write P as u, S, r, e. Similarly, there exists a Hamiltonian path R of Qn1 − {y} joining rn to vn . Then u, S, r, rn , R, vn , v forms the desired path. Case 2.2. u ∈ / Qn0 . Since there are 2n−2 black vertices in Qn0 , we can choose a black 0 vertex r of Qn such that r = v. Since Qn0 is hyper Hamiltonian laceable, there exists a Hamiltonian path P of Qn0 − {e} joining r to v. Similarly, there exists a Hamiltonian path S of Qn0 − {y} joining u to rn . Then u, S, rn , r, P, v forms the desired path. The lemma is proved.
ch013.tex
24/7/2008
320
14: 58
Page 320
Graph Theory and Interconnection Networks
LEMMA 13.30 Let (b, w) be an edge in Q4 . Q4 − {b, w} is hyper Hamiltonian laceable. Proof: Assume that x is any vertex of Q4 − {b, w}. Let u and v be two vertices in the partite set of Q4 not containing x such that {u, v} ∩ {b, w} = ∅. We want to construct a Hamiltonian path of Q4 − {b, w, x} joining u to v. By the symmetric property of Q4 , we may assume that u ∈ Q40 , v ∈ Q41 , and {b, w} ⊂ Q40 . Without loss of generality, we assume that u and b are in the same partite set. Case 1. x ∈ Q40 . By Lemma 13.6, there exists a Hamiltonian path P of Q40 − {x} joining u to b. Write P as u = y1 , y2 , . . . , y7 = b. Then w = yi for some i ∈ {2, 4, 6}. Case 1.1. i = 2 or 4. Suppose that (y6 )4 = v. By Lemma 13.6, there exists a Hamiltonian path S of Q41 − {v} joining (yi−1 )4 to (yi+1 )4 . Then u, y2 , . . . , yi−1 , (yi−1 )4 , S, (yi+1 )4 , yi+1 , . . . , y6 , v forms the desired path. Suppose that (y6 )4 = v. By Lemma 13.17, there exist two disjoint paths P1 and P2 such that (1) P1 joins (yi−1 )4 to (y6 )4 , (2) P2 joins (yi+1 )4 to v, and (3) P1 ∪ P2 spans Q41 . Then u, y2 , . . . , yi−1 , (yi−1 )4 , P1 , (y6 )4 , y6 , y5 , . . . , yi+1 , (yi+1 )4 , P2 , v forms the desired path. Case 1.2. i = 6. By Lemma 13.4, there exists a Hamiltonian path S of Q41 joining (y5 )4 to v. Then u, y2 , . . . , y5 , (y5 )4 , S, v forms the desired path. Case 2. x ∈ Q41 . By Lemma 13.28, there exists a Hamiltonian cycle C of Q40 − {b, w}. Write C as u = y1 , y2 , . . . , y6 , u. Since C can be traversed backward and forward, we can assume that (y6 )4 = v. By Lemma 13.6, there exists a Hamiltonian path S of Q41 − {x} joining (y6 )4 to v. Then u, y2 , . . . , y6 , (y6 )4 , S, v forms the desired path. LEMMA 13.31 Let x and y be adjacent vertices of Q4 and f be any edge of Q4 . Then Q4 − {x, y, f } is Hamiltonian laceable. Proof: With Lemmas 13.2 and 13.30, the lemma is true.
LEMMA 13.32 Let Fav = {{bi , wi } | (bi , wi ) ∈ E(Q4 ), 1 ≤ i ≤ 2} be a set of adjacent vertices of Q4 such that {b1 , w1 } ∩ {b2 , w2 } = ∅. Then Q4 − Fav is Hamiltonian. L LEMMA 13.33 Hav+e (Qn ) ≤ n − 3 if n ≥ 3.
Proof: Assume that n ≥ 3. Let Fav = {{(00 . . . 0) j , (010 . . . 0) j } | 3 ≤ j ≤ n}. Obviously, fav = n − 2. Since dQn −Fav ((00 . . . 0)) = dQn − Fav (010 . . . 0) = 2, there is no L Hamiltonian path from (10 . . . 0) to (110 . . . 0) in Qn − Fav . Thus, Hav+e (Qn ) ≤ n − 3 if n ≥ 3. See Figure 13.13 for illustration. LEMMA 13.34
HL (Q ) ≥ n − 3 if n ≥ 3. Hav+e n
HL (Q ) ≥ n − 3 if n ≥ 3 by induction. Suppose that F = ∅. Proof: We prove that Hav+e n av By Lemma 13.6, Qn − F is hyper Hamiltonian laceable. Thus, we discuss the case Fav = ∅ only. With Lemmas 13.6 and 13.30, the theorem is true for n = 3 and 4. HL (Q ) ≥ k − 3 for 4 ≤ k < n. Let F = F ∪ F , where F Assume that Hav+e k av e av is
ch013.tex
24/7/2008
14: 58
Page 321
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs 010
110
0100
1100
Force 011
111
001
101
321
Force
Force
0101
1101
0110
1110
0111
1111
0010
1010
0011
1011
Force
000
Force
100
0000
Q3
Force
1000
0001
1001
Q4
FIGURE 13.13 Illustration for Lemma 13.33.
a union of fav disjoint adjacent vertices of Qn and Fe consists of fe edges fav of Qn with fav + fe ≤ n − 3. Let Fav = ∪i=1 {bi , wi }, where (bi , wi ) ∈ E(Qn ) and {bi , wi } ∩ {bj , wj } = ∅ for i = j. Without loss of generality, we assume that {bi | 1 ≤ i ≤ fav } is a fav set in one of the partite sets and {wi | 1 ≤ i ≤ fav } is a fav set in the other partite set. Write Fe as {(bi , wi ) | fav + 1 ≤ i ≤ n − 3}. We want to prove that Qn − F is hyper Hamiltonian laceable. Let r be any vertex of Qn − Fav . Let u and v be any two different vertices of Qn − Fav in the partite set not containing r. First, we must construct a Hamiltonian path of Qn − F − {r} joining u to v. Without loss of generality, we may assume that r and bi are in the same partite set for 1 ≤ i ≤ fav . Let tj = |{(bi , wi ) | (bi , wi ) is a j-dimensional edge with 1 ≤ i ≤ n − 3}|. Without loss of generality, we assume that t1 ≥ t2 ≥ . . . ≥ tn = 0. Thus, both bi and wi are either in Qn0 or Qn1 for every i. Let Fi = F ∩ Qni , for i ∈ {0, 1}. j Let rj = |{bi | bi ∈ Qn , 1 ≤ i ≤ n − 3}| for j = 0, 1. Obviously, r0 + r1 = n − 3. ∪ F , where Since Fav = ∅, we may assume that {b1 , w1 } ⊂ Qn0 . Let F = Fav e Fav = Fav − {{b1 , w1 }}. Hence, fav = fav − 1 and fav + fe ≤ n − 4. Case 1. Case 1.1.
|{u, v} ∩ Qn0 | = 2. r0 = n − 3.
Case 1.1.1. r ∈ Qn0 . By induction, there exists a Hamiltonian path P of Qn0 − F − {r} / E(P). Since u and v are in the same partite set, joining u to v. Suppose that (b1 , w1 ) ∈ we can write P as u, P1 , w, b1 , x, P2 , z, w1 , y, P3 , v. Note that wn and xn are in a partite set, and zn and yn are in the other partite set. By Lemma 13.17, there exist two disjoint paths S1 and S2 such that (1) S1 joins wn to zn , (2) S2 joins xn to yn , and (3) S1 ∪ S2 spans Qn1 . Then u, P1 , w, wn , S1 , zn , z, P2−1 , x, xn , S2 , yn , y, P3 , v forms the desired path. See Figure 13.14a for illustration. Suppose that (b1 , w1 ) ∈ E(P). Since u and v are in the same partite set, we can rewrite P as u, P1 , w, b1 , w1 , y, P2 , v. Note that wn and yn are in different partite sets. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 joining wn to yn . Then u, P1 , w, wn , S, yn , y, P2 , v forms the desired path. See Figure 13.14b for illustration. Case 1.1.2. r ∈ Qn1 . Note that u and v are in the partite set not containing b1 . By induction, there exists a Hamiltonian path P of Qn0 − F − {b1 } joining u to v. Write
ch013.tex
24/7/2008
14: 58
Page 322
322
Graph Theory and Interconnection Networks Q 0n
F
Q 1n
Q 0n
F
u
Q n1
w b1 x
xn
P2
z
z w1 y
r
r
yn
v
(a)
Q 0n
F0
n
S2
P3
wn
P1
S1
w b1 w1 y
Q n1 F1
xn
S
b1
Q n1
v
(c)
Q 0n
F0
r
yn
P2
v
(b)
S
w1 y
yn
Q 0n
F0
P1 x
P2
u
Q n1
u
wn
P1
Q 0n
F
u
Q n1
F1
u
x1 n
P1 y
(d)
Q 1n
Q
(e)
Q n1
xn
F
Q 1n
P2z
S v
Q
v
(j)
Q n1
F1
b1
P
u
r
v
w1
(k)
Q 0n
F
v
Q n1
S
(m)
Q 0n
(l)
Q 0n
F
x
Q n1 v
xn
Q
yn
Q 1n
v
Q
n
(n)
F1
Q n1
F0
u
y y
b1
b1
Q 0n
F0
S2
y
w1
r
x
S1
x
F
x
r
u
xn
S n
r x
P
S r
w1
(o)
Q 0n
Q n1
u xn
x
Q
v y
b1
P1
y w
S
S
S
P2 r
n
x
F1 u
P1
yn
u r
w1
F1
S x
Q 0n
Q n1
(i)
v
zn
P2 r
z
Q 0n
F0
yn
P1 y z
b1
S2 n
u
x w1
F0
Q 1n
S1
yn
P2z
r
u
S
xn
(h)
v
xn
w1
Q 0n
F
v
u
Qn1
x b1 y
w1
(g)
(f)
P1
yn
r
Q 0n
x
Qn0
F
r
n
u
x b1 y
x b1 w1
r
x2
P1
S
xn
x v
r
u
v
S
n
(t 2)
Q 0n
F v
u
yn
P
S
y
P2
v
Q 0n
F
S
yn
P2
v
t1 u t2
x
r
(x1)
P1
xn
xn
x y
yn
P2
x
v r
v
(p)
(q)
(r)
FIGURE 13.14 Illustration for Lemma 13.34.
P as u, P1 , x, w1 , y, P2 , v. Note that xn and yn are in the partite set not containing r. By Lemma 13.6, there is a Hamiltonian path S of Qn1 − {r} joining xn to yn . Then u, P1 , x, xn , S, yn , y, P2 , v forms the desired path. See Figure 13.14c for illustration.
ch013.tex
24/7/2008
14: 58
Page 323
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
Case 1.2.
323
r0 ≤ n − 4.
Case 1.2.1. r ∈ Qn0 . By induction, there exists a Hamiltonian path P of Qn0 − F0 − {r} joining u to v. Since there are at least 2n−1 − 2(n − 4) − 1 vertices in P, there exist adjacent vertices x and y of P such that {xn , yn } ∩ F1 = ∅. Write P as u, P1 , x, y, P2 , v. Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 4. By induction, there exists a Hamiltonian path S of Qn1 − F1 joining xn to yn . Then u, P1 , x, xn , S, yn , y, P2 , v forms the desired path. See Figure 13.14d for illustration. Case 1.2.2. r ∈ Qn1 . Assume that r0 = n − 4. Since dQn0 (v) = n − 1, there exist two neighbors x1 and x2 of v such that {x1 , x2 , (x1 )n , (x2 )n } ∩ F = ∅. By induction, there exists a Hamiltonian path P of Qn0 − F0 − {v} joining x1 to x2 . Write P as
x1 , P1 , t1 , u, t2 , P2 , x2 . Since r1 = 1, |{(t1 )n , (t2 )n } ∩ F1 | ≤ 1. Without loss of generality, we may assume that (t2 )n ∈ / F1 . By induction, there exists a Hamiltonian path S of Qn1 − F1 − {r} joining (x1 )n to (t2 )n . Then u, t1 , P1−1 , x1 , (x1 )n , S, (t2 )n , t2 , P2 , x2 , v forms the desired path. See Figure 13.14e for illustration. Assume that r0 ≤ n − 5. Since dQn0 (v) = n − 1, there exists a neighbor x of v such that {x, xn } ∩ F = ∅. Since there are at least 2n−2 − (n − 4) vertices in the partite set of Qn0 − F0 − {x} not containing u, we can choose a vertex y of Qn0 − F0 − {x} such that {yn } ∩ F1 = ∅. By induction, there exists a Hamiltonian path P of Qn0 − F0 − {v, x} joining u to y. Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 4. By induction, there exists a Hamiltonian path S of Qn1 − F1 − {r} joining yn to xn . Then u, P, y, yn , S, xn , x, v forms the desired path. See Figure 13.14f for illustration. Case 2. Case 2.1.
|{u, v} ∩ Qn0 | = 1. Without loss of generality, we assume that u ∈ Qn0 . r0 = n − 3.
Case 2.1.1. r ∈ Qn0 . Note that u and w1 are in the partite set not containing r. By induction, there exists a Hamiltonian path P of Qn0 − F − {r} joining u to w1 . Suppose that (b1 , w1 ) ∈ E(P). Write P as u, Q, x, b1 , w1 . Note that xn and v are in different partite sets. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 joining xn to v. Then u, Q, x, xn , S, v forms the desired path. See Figure 13.14g for illustration. Suppose that (b1 , w1 ) ∈ / E(P). We can write P as
u, P1 , x, b1 , y, P2 , z, w1 . Note that xn and yn are in the same partite set. Assume that zn = v. By Lemma 13.6, there exists a Hamiltonian path S of Qn1 − {v} joining xn to yn . Then u, P1 , x, xn , S, yn , y, P2 , z, v forms the desired path. See Figure 13.14h for illustration. Assume that zn = v. By Lemma 13.17, there exist two disjoint paths S1 and S2 such that (1) S1 joins xn to zn , (2) S2 joins yn to v, and (3) S1 ∪ S2 spans Qn1 . Then u, P1 , x, xn , S1 , zn , z, P2−1 , y, yn , S2 , v forms the desired path. See Figure 13.14i for illustration. Case 2.1.2. r ∈ Qn1 . Note that u and w1 are in the partite set not containing b1 . By induction, there exists a Hamiltonian path P of Qn0 − F − {b1 } joining u to w1 . Write P as u, Q, x, w1 . Suppose that xn = v. By Lemma 13.6, there exists a Hamiltonian path S of Qn1 − {r} joining xn to v. Then u, Q, x, xn , S, v forms the desired path. See Figure 13.14j for illustration. Suppose that xn = v. Since there are at least 2n−1 − 2(n − 3) vertices in Q, we can choose adjacent vertices y and z of Q such that
ch013.tex
24/7/2008
14: 58
324
Page 324
Graph Theory and Interconnection Networks
{yn , zn } ∩ {r, v} = ∅. Rewrite P as u, P1 , y, z, P2 , x, w1 . By Lemma 13.29, there exists a Hamiltonian path S of Qn1 − {r, v} joining yn to zn . Then u, P1 , y, yn , S, zn , z, P2 , x, v forms the desired path. See Figure 13.14k for illustration. Case 2.2.
r0 ≤ n − 4.
Case 2.2.1. r ∈ Qn0 . Let x be a vertex of Qn0 − F0 such that (1) x and u are two different vertices in the same partite set of Qn0 − F0 and (2) {xn } ∩ F1 = ∅. By induction, there exists a Hamiltonian path P of Qn0 − F0 − {r} joining u to x. Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 4. By induction, there exists a Hamiltonian path S of Qn1 − F1 joining xn to v. Then u, P, x, xn , S, v forms the desired path. See Figure 13.14l for illustration. Case 2.2.2. r ∈ Qn1 . Let x be a vertex of Qn0 − F0 such that (1) x and u are two vertices from different partite sets of Qn0 − F0 and (2) {xn } ∩ F1 = ∅. By induction, there exists a Hamiltonian path P of Qn0 − F0 joining u to x. Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 4. Again, there exists a Hamiltonian path S of Qn1 − F1 − {r} joining xn to v. Then u, P, x, xn , S, v forms the desired path. See Figure 13.14m for illustration. Case 3. Case 3.1.
|{u, v} ∩ Qn0 | = 0. r0 = n − 3.
Case 3.1.1. r ∈ Qn0 . Note that r and b1 are in the partite set not containing w1 . By induction, there exists a Hamiltonian path P of Qn0 − F − {w1 } joining r to b1 . Write P as r, x, Q, y, b1 . Note that xn and yn are in the partite set not containing u. By Lemma 13.17, there exist two disjoint paths S1 and S2 such that (1) S1 joins u to xn , (2) S2 joins yn to v, and (3) S1 ∪ S2 spans Qn1 . Then u, S1 , xn , x, Q, y, yn , S2 , v forms the desired path. See Figure 13.14n for illustration. Case 3.1.2. r ∈ Qn1 . Since dQn1 (v) = n − 1, there is a neighbor x of v in Qn1 − {r} such that {xn } ∩ F0 = ∅. Note that xn and w1 are in the partite set not containing b1 . By induction, there exists a Hamiltonian path P of Qn0 − F − {b1 } joining xn to w1 . Write P as xn , Q, y, w1 . Suppose that {yn } ∩ {u, v} = ∅. By induction, there exists a Hamiltonian path S of Qn1 − {r, v, x} joining u to yn . Then u, S, yn , y, Q−1 , xn , x, v forms the desired path. See Figure 13.14o for illustration. Suppose that {yn } ∩ {u, v} = ∅. Assume that yn = v. By Lemma 13.29, there exists a Hamiltonian path S of Qn1 − {r, v} joining u to x. Then u, S, x, xn , Q, y, v forms the desired path. See Figure 13.14p for illustration. Assume that yn = u. By Lemma 13.29, there exists a Hamiltonian path S of Qn1 − {r, u} joining v to x. Then v, S, x, xn , Q, y, u forms the desired path. Case 3.2.
r0 ≤ n − 4.
Case 3.2.1. r ∈ Qn0 . Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 4. Since there are at least 2n−2 − (n − 4) vertices in the partite set of Qn1 − F1 not containing u, we can choose a vertex x of Qn1 − F1 such that {x, xn } ∩ F = ∅. By induction, there exists a Hamiltonian path P of Qn1 − F1 − {x} joining u to v. Since dQn1 (x) = n − 1, we can choose an edge (y, w) in E(P) such that (1) w ∈ NQn1 −F1 (x) and (2) {yn } ∩ F0 = ∅. Depending on the
ch013.tex
24/7/2008
14: 58
Page 325
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
325
order of y and w on P, we write P as u, P1 , y, w, P2 , v or u, P1 , w, y, P2 , v. Since the role of u and v are symmetric with respect to P, we can assume without loss of generality that P = u, P1 , y, w, P2 , v. By induction, there exists a Hamiltonian path S of Qn0 − F0 − {r} joining yn to xn . Then u, P1 , y, yn , S, xn , x, w, P2 , v forms the desired path. See Figure 13.14q for illustration. Case 3.2.2. r ∈ Qn1 . Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 4. By induction, there exists a Hamiltonian path P of Qn1 − F1 − {r} joining u to v. Since there are at least 2n−1 − 2(n − 4) − 1 vertices in P, we can choose adjacent vertices x and y of P such that {xn , yn } ∩ Fav = ∅. Write P as u, P1 , x, y, P2 , v. By induction, there exists a Hamiltonian path S of Qn0 − F0 joining xn to yn . Then u, P1 , x, xn , S, yn , y, P2 , v forms the desired path. See Figure 13.14r for illustration. HL (Q ) ≥ n − 3 if n ≥ 3. Finally, by Lemma 13.1, Hav+e n HL (Q ) = HSL (Q ) = HL THEOREM 13.15 Hav+e n av+e n av+e (Qn ) = n − 3 if n ≥ 3. HL (Q ) ≤ HSL (Q ) ≤ HL Proof: By definition, Hav+e n av+e n av+e (Qn ) ≤ n − 3 if n ≥ 3. With HL (Q ) = HSL (Q ) = HL Lemmas 13.33 and 13.34, Hav+e n av+e n av+e (Qn ) = n − 3 if n ≥ 3.
THEOREM 13.16 Hav+e (Qn ) = n − 2 if n ≥ 3. Proof: We first prove that Hav+e (Qn ) ≤ n − 2 if n ≥ 3. Let n ≥ 3. Assume that F = {((00 . . . 0), (00 . . . 0)j ) | 1 ≤ j ≤ n − 1}. Obviously, fe = n − 1. Since dQn −F ((00 . . . 0)) = 1, there is no Hamiltonian cycle in Qn − F. Thus Hav+e (Qn ) ≤ n − 2 if n ≥ 3. Now, we prove that Hav+e (Qn ) ≥ n − 2 if n ≥ 3 by induction. With Lemmas 13.6, 13.28, 13.31, and 13.32, the theorem is true for n = 3 and 4. Assume that Hav+e (Qk ) ≥ k − 2 for 4 ≤ k < n. Let F = Fav ∪ Fe , where Fav is a union of disjoint fav adjacent vertices of Qn and Fe consists of fe edges of Qn with fav + fe ≤ n − 2. fav Let Fav = ∪i=1 {bi , wi }, where (bi , wi ) ∈ E(Qn ) and {bi , wi } ∩ {bj , wj } = ∅ for i = j. Without loss of generality, we assume that {bi | 1 ≤ i ≤ fav } is a fav set in one of the partite sets and {wi | 1 ≤ i ≤ fav } is a fav set in the other partite set in Qn . Write Fe as {(bi , wi ) | fav + 1 ≤ i ≤ n − 2}. We want to prove that Qn − F is Hamiltonian. Suppose that Fav = ∅. By Lemma 13.6, Qn − F is Hamiltonian. Thus, we discuss the case Fav = ∅ only. We must construct a Hamiltonian cycle of Qn − F. Let tj = |{(bi , wi ) | (bi , wi ) is a j-dimensional edge with 1 ≤ i ≤ n − 2}|. Without loss of generality, we assume that t1 ≥ t2 ≥ · · · ≥ tn = 0. Thus, both bi and wi are either in Qn0 or Qn1 for every i. Let Fi = F ∩ Qni , for i ∈ {0, 1}. j Let rj = |{bi | bi ∈ Qn , 1 ≤ i ≤ n − 2}| for j = 0, 1. Obviously, r0 + r1 = n − 2. ∪ F , where Since Fav = ∅, we may assume that {b1 , w1 } ⊂ Qn0 . Let F = Fav e Fav = Fav − {{b1 , w1 }}. Hence, fav = fav − 1 and fav + fe ≤ n − 3. Case 1. F ⊂ Qn0 . By induction, there exists a Hamiltonian cycle C of Qn0 − F . Suppose that (b1 , w1 ) ∈ E(C). We can write C as b1 , w1 , x, P, y, b1 . Note that x and y are in different partite sets. Again, there exists a Hamiltonian path S of Qn1 joining yn to
ch013.tex
24/7/2008
14: 58
Page 326
326
F
Graph Theory and Interconnection Networks Qn0
Qn1
F
Qn0
Qn1
P
x
xn
w1 b1
yn
b1 x
S
y
(a)
P2
F
Qn0
Qn1 F1
vn
v
xn
P1
yn
y w1 u
n
y
S1
yn
P
S
S2 u
(b)
xn
x
(c)
FIGURE 13.15 Illustration for Theorem 13.16.
xn . Then x, P, y, yn , S, xn , x forms the desired cycle. See Figure 13.15a for illustra/ E(C). We can write C as b1 , x, P1 , y, w1 , u, P2 , v, b1 . tion. Suppose that (b1 , w1 ) ∈ Note that x and v are in a partite set, and y and u are in the other partite set. By Lemma 13.17, there exist two disjoint paths S1 and S2 such that (1) S1 joins yn to vn , (2) S2 joins un to xn , and (3) S1 ∪ S2 spans Qn1 . Then
x, P1 , y, yn , S1 , vn , v, P2−1 , u, un , S2 , xn , x forms the desired cycle. See Figure 13.15b for illustration. Case 2. F Qn0 . Obviously, r0 ≤ n − 3. Since {b1 , w1 } ⊂ Qn0 , r1 ≤ n − 3. Since n ≥ 5 and r0 + r1 ≤ n − 2, ri ≤ n − 4 for some i ∈ {0, 1}. Without loss of generality, we assume that r1 ≤ n − 4. By induction, there exists a Hamiltonian cycle C of Qn0 − F0 . Since there are at least 2n−1 − 2(n − 3) vertices in C, we can choose adjacent vertices x and y of C such that {xn , yn } ∩ F1 = ∅. Write C as x, P, y, x. By Theorem 13.15, there exists a Hamiltonian path S of Qn1 − F1 joining yn to xn . Then x, P, y, yn , S, xn , x forms the desired cycle. See Figure 13.15c for illustration. COROLLARY 13.2 If F is a vertex subset of Qn with |F| ≤ n − 2, then Qn − F contains a path of length at least 2n − 2|F| − 2 between any two vertices in Qn − F, n ≥ 2. Proof: We prove this theorem by induction. Obviously, the theorem holds for n = 2 and 3. Assume that Qm − F contains a path of length at least 2m − 2|F| − 2 between any two vertices of Qm − F for 3 ≤ m < n and |F| ≤ m − 2. Let F = {x1 , x2 , . . . , xk } be a subset of V (Qn ) with k ≤ n − 2. Let u and v be any two vertices in Qn − F. By the j j symmetric property of Qn , we assume that F ∩ Qn = ∅ for j = 0, 1. Let F ∩ Qn = F j 1 for j = 0, 1. Without loss of generality, we assume that F = {x1 , . . . , xt }. Obviously, t ≤ n − 3. j
Case 1. |{u, v} ∩ Qn | = 2 for j = 0 or 1. Without loss of generality, we may assume that {u, v} ⊂ Qn0 . By induction, there exists a path P of length at least 2n−1 − 2(k − t) − 2 joining u to v in Qn0 − F 0 . Since there are 2n−1 − 2(k − t) − 1 vertices in P, we can choose a path r, z, w of P such that (1) r, w, and x1 are in the same partite set and (2) {rn , wn } ∩ F 1 = ∅. Write P as u, P1 , r, z, w, P2 , v. Since dQn1 (xi ) = n − 1, there exists a neighbor yi of xi such that (1) yi ∈ / F 1 and (2) yi = yj for i = j. Let Fav = {{xi , yi } | 2 ≤ i ≤ t}. By Theorem 13.15, there exists a Hamiltonian
ch013.tex
24/7/2008
14: 58
Page 327
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
327
path S of Qn1 − Fav − {x1 } joining rn to wn . Obviously, the length of S is 2n−1 − 2t. Then u, P1 , r, rn , S, wn , w, P2 , v forms the desired path. Case 2. |{u, v} ∩ Qn0 | = 1. Without loss of generality, we may assume that u ∈ Qn0 and v ∈ Qn1 . Since there are at least 2n−2 − (k − t) vertices in Qn0 − F 0 , we can choose a vertex r in the partite set of Qn0 − F 0 not containing u such that {rn } ∩ {F 1 ∪ {v}} = ∅. Note that u and r are in different partite sets. By induction, there exists a path P of length at least 2n−1 − 2(k − t) − 1 joining u to r in Qn0 − F 0 . Again, there exists a path S of length at least 2n−1 − 2t − 2 joining rn to v in Qn1 − F 1 . Then u, P, r, rn , S, v forms the desired path. The theorem is proved. Recently, Fu [117] proved that Qn − F consists of a path of length 2n − 2|F| − 2 between any two vertices in Qn − F where n ≥ 2 and F is a vertex subset of Qn with |F| ≤ n − 2. With Corollary 13.2, our result includes this as a special case.
13.8
CONDITIONAL FAULT HAMILTONICITY AND CONDITIONAL FAULT HAMILTONIAN LACEABILITY OF THE STAR GRAPHS
Obviously, δ(G) − 2 is an immediate upper bound for Hfe (G). For this reason, Chan and Lee [38] studied the existence of a Hamiltonian cycle in the n-dimensional hypercube when each vertex is incident to at least two nonfaulty edges. A graph G is called k-edge-fault conditional Hamiltonian if G − F is Hamiltonian for every F ⊆ E(G) with |F| ≤ k and δ(G − F) ≥ 2. Clearly, whenever a graph is k-edge-fault Hamiltonian, it is also k-edge-fault conditional Hamiltonian, but the conditional Hamiltonicity could be much larger. Chan and Lee [38] showed that the n-dimensional hypercube is (2n − 5)-edge-fault conditional Hamiltonian. Fu [115] showed that the n-dimensional star graph is (2n − 7)-edge-fault conditional Hamiltonian. Similarly, we can define a Hamiltonian-laceable graph G to be k-edge-fault conditional Hamiltonian laceable if G − F is Hamiltonian laceable for every set of edges F ⊆ E(G) with |F| ≤ k and δ(G − F) ≥ 2. Again, k-edge-fault Hamiltonian laceability implies k-edge-fault conditional Hamiltonian laceability, but the conditional Hamiltonian laceability could be much larger. Tsai [301] showed that the n-dimensional hypercube is (2n − 5)edge-fault conditional Hamiltonian laceable. Lin et al. [237] proved that for n ≥ 4, the n-dimensional star graph Sn is (3n − 10)-edge-fault conditional Hamiltonian and (2n − 7)-edge-fault conditional Hamiltonian laceable. The following results are proved in Ref. 235. LEMMA 13.35 [235] Assume that r and s are any two adjacent vertices of Sn with n ≥ 4. Then, for any white vertex u in Sn − {r, s} and for any i ∈ n, there exists a Hamiltonian path P of Sn − {r, s} joining u to some black vertex v of Sn − {r, s} with (v)1 = i. Proof: Since Sn is vertex-transitive and edge-transitive, we assume that r = e and {n} s = (e)2 . Obviously, both e and (e)2 are in Sn . We prove this lemma by induction on n.
ch013.tex
24/7/2008
328
14: 58
Page 328
Graph Theory and Interconnection Networks
Suppose that n = 4. The required Hamiltonian paths of S4 − {1234, 2134} are listed here.
1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 4312, 2314, 3214, 4213, 2413, 1423, 3421, 2431, 4231, 3241, 1243
1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 4312, 2314, 3214, 4213, 1243, 3241, 4231, 2431, 3421, 1423, 2413
1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 3412, 2413, 1423, 3421
1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 2431, 3421, 1423, 2413, 3412, 4312, 2314, 3214, 4213, 1243, 3241, 4231
1423, 3421, 4321, 2341, 1342, 4312, 3412, 2413, 4213, 3214, 2314, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243
1423, 3421, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413
1423, 3421, 2431, 4231, 3241, 1243, 4213, 2413, 3412, 1432, 4132, 3142, 2143, 4123, 3124, 1324, 4321, 2341, 1342, 4312, 2314, 3214
1423, 3421, 2431, 4231, 3241, 1243, 2143, 3142, 4132, 1432, 3412, 2413, 4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123
2143, 3142, 4132, 1432, 3412, 2413, 1423, 4123, 3124, 1324, 4321, 3421, 2431, 4231, 3241, 2341, 1342, 4312, 2314, 3214, 4213, 1243
2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 1324, 3124, 4123, 1423, 3421, 4321, 2341, 1342, 4312, 3412, 2413
2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 1324, 3124, 4123, 1423, 2413, 3412, 4312, 1342, 2341, 4321, 3421
2143, 3142, 4132, 1432, 2431, 3421, 4321, 2341, 1342, 4312, 3412, 2413, 1423, 4123, 3124, 1324, 2314, 3214, 4213, 1243, 3241, 4231
2314, 3214, 4213, 1243, 3241, 4231, 2431, 3421, 1423, 2413, 3412, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432
2314, 3214, 4213, 1243, 3241, 4231, 2431, 1432, 4132, 3142, 2143, 4123, 3124, 1324, 4321, 3421, 1423, 2413, 3412, 4312, 1342, 2341
2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 3421, 2431, 4231, 3241, 1243, 4213, 3214
2314, 3214, 4213, 1243, 3241, 4231, 2431, 3421, 1423, 2413, 3412, 1432, 4132, 3142, 2143, 4123, 3124, 1324, 4321, 2341, 1342, 4312
2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 4321, 3421, 1423, 2413, 3412, 1432, 4132, 3142, 2143, 4123, 3124, 1324
2431, 4231, 3241, 1243, 4213, 3214, 2314, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 4312, 1342, 2341, 4321, 3421, 1423, 2413
2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 3421
2431, 3421, 4321, 1324, 3124, 4123, 1423, 2413, 3412, 1432, 4132, 3142, 2143, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 3241, 4231
3124, 4123, 2143, 3142, 4132, 1432, 2431, 4231, 3241, 2341, 1342, 4312, 3412, 2413, 1423, 3421, 4321, 1324, 2314, 3214, 4213, 1243
3124, 4123, 2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 1324, 4321, 3421, 1423, 2413, 3412, 4312, 1342, 2341
3124, 4123, 2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 1324, 4321, 2341, 1342, 4312, 3412, 2413, 1423, 3421
3124, 4123, 2143, 3142, 4132, 1432, 2431, 3421, 1423, 2413, 3412, 4312, 1342, 2341, 4321, 1324, 2314, 3214, 4213, 1243, 3241, 4231
3241, 4231, 2431, 1432, 4132, 3142, 1342, 2341, 4321, 3421, 1423, 2413, 3412, 4312, 2314, 3214, 4213, 1243, 2143, 4123, 3124, 1324
3241, 4231, 2431, 1432, 4132, 3142, 2143, 1243, 4213, 3214, 2314, 1324, 3124, 4123, 1423, 3421, 4321, 2341, 1342, 4312, 3412, 2413
3241, 4231, 2431, 1432, 4132, 3142, 2143, 1243, 4213, 3214, 2314, 1324, 3124, 4123, 1423, 2413, 3412, 4312, 1342, 2341, 4321, 3421
3241, 1243, 2143, 4123, 3124, 1324, 4321, 2341, 1342, 3142, 4132, 1432, 3412, 4312, 2314, 3214, 4213, 2413, 1423, 3421, 2431, 4231
3412, 2413, 1423, 3421, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432
3412, 2413, 1423, 3421, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341
3412, 2413, 1423, 3421, 4321, 1324, 3124, 4123, 2143, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 3241, 4231, 2431, 1432, 4132, 3142
3412, 2413, 1423, 3421, 2431, 1432, 4132, 3142, 1342, 4312, 2314, 3214, 4213, 1243, 2143, 4123, 3124, 1324, 4321, 2341, 3241, 4231
4132, 3142, 2143, 4123, 3124, 1324, 4321, 2341, 1342, 4312, 2314, 3214, 4213, 1243, 3241, 4231, 2431, 3421, 1423, 2413, 3412, 1432
4132, 3142, 2143, 4123, 3124, 1324, 4321, 3421, 1423, 2413, 3412, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341
4132, 3142, 2143, 4123, 3124, 1324, 4321, 2341, 1342, 4312, 2314, 3214, 4213, 1243, 3241, 4231, 2431, 1432, 3412, 2413, 1423, 3421
4132, 3142, 2143, 4123, 3124, 1324, 2314, 3214, 4213, 1243, 3241, 4231, 2431, 1432, 3412, 2413, 1423, 3421, 4321, 2341, 1342, 4312
4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 3421, 2431, 4231, 3241, 1243
4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 1423, 3421, 2431, 4231, 3241, 1243, 2143, 3142, 4132, 1432, 3412, 2413
4213, 3214, 2314, 4312, 1342, 2341, 4321, 1324, 3124, 4123, 2143, 1243, 3241, 4231, 2431, 3421, 1423, 2413, 3412, 1432, 4132, 3142
4213, 3214, 2314, 4312, 1342, 2341, 3241, 1243, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 4123, 3124, 1324, 4321, 3421, 2431, 4231
4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 3421, 2431, 4231, 3241, 2341, 1342, 4312, 2314, 3214, 4213, 1243
4321, 1324, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 3421, 2431, 4231, 3241, 1243, 4213, 3214, 2314, 4312, 1342, 2341
4321, 1324, 3124, 4123, 2143, 1243, 4213, 3214, 2314, 4312, 1342, 2341, 3241, 4231, 2431, 3421, 1423, 2413, 3412, 1432, 4132, 3142
4321, 1324, 3124, 4123, 2143, 1243, 3241, 2341, 1342, 3142, 4132, 1432, 3412, 4312, 2314, 3214, 4213, 2413, 1423, 3421, 2431, 4231
Assume that this result holds in Sk for every 4 ≤ k ≤ n − 1. We have the following cases: {n}
{n}
Case 1. u ∈ Sn . By induction, there is a Hamiltonian path P of Sn − {e, (e)2 } join{n−1} . ing u to a black vertex x with (x)1 = n − 1. Note that (x)n is a white vertex of Sn
n−2 with (v)1 = i. By Lemma 13.9, there is a HamilWe choose a black vertex v in Sn
n−1 joining (x)n to v. Then u, P, x, (x)n , Q, v forms the desired tonian path Q of Sn Hamiltonian path of Sn − {e, (e)2 } joining u to v with (v)1 = i. See Figure 13.16a for illustration.
ch013.tex
24/7/2008
14: 58
Page 329
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
329
{k}
Case 2. u ∈ Sn for some k ∈ n − 1. By Lemma 13.7, there are (n − 2)!/2 ≥ 3 {k} {n} edges joining black vertices of Sn to white vertices of Sn . We can choose a white {n} vertex x ∈ Sn − {e, (e)2 } with (x)1 = k. By Theorem 13.2, there is a Hamiltonian {k} path P of Sn joining u to the black vertex (x)n . By induction, there is a Hamilto{n} nian path Q of Sn − {e, (e)2 } joining x to a black vertex y with (y)1 ∈ n − 1 − {k}.
n−1−{k,(y)1 } with (v)1 = i. By Lemma 13.9, there We choose a black vertex v in Sn
n−1−{k} joining the white vertex (y)n to v. Then exists a Hamiltonian path R of Sn
u, P, (x)n , x, Q, y, (y)n , R, v forms the desired Hamiltonian path of Sn − {e, (e)2 } joining u to v with (v)1 = i. See Figure 13.16b for illustration. THEOREM 13.17 Let n ≥ 5 and I = {a1 , a2 , . . . , ar } be a subset of n for some r ∈ n. Then SnI is Hamiltonian laceable. Proof: Let u be a white vertex and v be a black vertex of SnI . By Lemma 13.9, this theorem holds for either r = 1 or r ≥ 2 and (u)n = (v)n . Thus, we assume that r ≥ 2 and (u)n = (v)n . Without loss of generality, we assume that (u)n = (v)n = a1 . {a }
Case 1. (v)n ∈ SnI . Without loss of generality, we assume that (v)n ∈ Sn r . By The{a } orem 13.2, there is a Hamiltonian path P of Sn 1 − {v} joining u to a white vertex I−{a } x with (x)1 = a2 . By Lemma 13.9, there is a Hamiltonian path Q of Sn 1 joining n n n n the black vertex (x) to the white vertex (v) . Then u, P, x, (x) , Q, (v) , v forms the desired Hamiltonian path of SnI joining u to v. See Figure 13.17a for illustration. Case 2. (u)n ∈ / SnI and (v)n ∈ / SnI . We can choose a white vertex y with y being a {a1 } neighbor of v in Sn and (y)1 = ar . Obviously, y = u. By Lemma 13.35, there is a {a } Hamiltonian path P of Sn 1 − {v, y} joining u to a black vertex x with (x)1 = a2 . By I−{a } Lemma 13.9, there is a Hamiltonian path Q of Sn 1 joining the white vertex (x)n to the black vertex (y)n . Then u, P, x, (x)n , Q, (y)n , y, v is the desired Hamiltonian path of SnI joining u to v. See Figure 13.17b for illustration. THEOREM 13.18 Let I = {i1 , i2 , . . . , it } be a nonempty subset of n with n ≥ 5, {i } and let F be a set of edges of Sn such that |F ∩ E(Sn k )| ≤ n − 4 for every k ∈ t and Sn{ n } { e, ( e)2 } Sn{ n1 } P u x ( x) n
Sn< n2 >
Sn{ k }
Q
v
u
P
(x)
n
Sn{ n } { e, ( e)2 } Q x y
(a)
Sn{k} (y)n R
v
(b)
FIGURE 13.16 Illustration for Lemma 13.35.
Sn{ a 1} {v} P u
SnI {a 1} x
n
( x)
Q
n
(v)
v
Sn{ a 1} {v, y} P u
(a)
FIGURE 13.17 Illustration for Theorem 13.17.
SnI {a 1} x
( x) n (b)
Q
( y) n
y v
ch013.tex
330
24/7/2008
14: 58
Page 330
Graph Theory and Interconnection Networks {i }
|F ∩ E ik ,ik+1 | ≤ [(n − 2)!/2] − 1 for every k ∈ t − 1. If u is a white vertex of Sn 1 and {i } v is a black vertex of Sn t , then there is a Hamiltonian path P of SnI − F joining u to v. Proof: Since Snik is isomorphic to Sn−1 for every k ∈ t and Sn−1 is hamiltonian laceable, this statement holds for t = 1. If 2 ≤ t ≤ n, then we set x1 = u and yt = v. {j} {i} Since there are (n − 2)!/2 edges joining black vertices of Sn to white vertices of Sn for every two distinct elements i and j in n and (n − 2)!/2 > [(n − 2)!/2] − 1 if n ≥ 5, {i } {i } we can choose a black vertex yk in Sn k such that (yk )n ∈ Sn k+1 and (yk , (yk )n) ∈ /F for every k t − 1. Set xk+1 = (yk )n for every k ∈ t − 1. Obviously, xk is a white vertex for every k ∈ t. Since Sk is (k − 3)-edge fault-tolerant Hamiltonian laceable {i } for any k ≥ 4, there is a Hamiltonian path Hk of Sn k − F joining xk to yk for every k ∈ t. Hence, u = x1 , H1 , y1 , x2 , H2 , y2 , . . . , xt , Ht , yt = v is a Hamiltonian path of SnI − F joining u to v. LEMMA 13.36 Let F be a subset of E(Sn ) with |F| ≤ 3n − 10 such that δ(Sn − F) ≥ 2, for n ≥ 5. If A is the set of vertices of degree 2 in Sn − F, then |A| ≤ 4. Moreover, if n ≥ 6, then |A| ≤ 3. Proof: Suppose first that X = {x1 , x2 , x3 , x4 , x5 } ⊆ A, and let H be the subgraph with vertex set X consisting of those edges of F that join two vertices in X. Since Sn is bipartite, so is H. At least one partite set can be chosen such that it has at least three vertices. If we count the number of edges in F incident to these three vertices, then no edges of F is counted twice, so we get that |F| ≥ 3(n − 3) ≥ 3n − 9, a contradiction. Thus, |A| ≤ 4. Next assume that |A| = 4. Again consider the subgraph H with vertex set A including those edges of F that join two vertices in A. Since H has no cycles, it is a forest and it has at most 3 edges. Counting the number of edges in F at each vertex of A, we count each edge of H twice, so we get that |F| ≥ 4(n − 3) − 3 = 4n − 15. Since |F| ≤ 3n − 10, this implies that n ≤ 5, and the lemma is proved. {i}
LEMMA 13.37 Let x, y, p, and q be four distinct vertices of Sn for some i ∈ n with (x, y) ∈ E(Sn ) and (p, q) ∈ E(Sn ), for n ≥ 5. Then there are two disjoint paths P1
n−{i} and P2 of Sn such that (1) P1 joins (x)n to (y)n , (2) P2 joins (p)n to (q)n , and
n−{i} . (3) P1 ∪ P2 spans Sn {n}
Proof: Without loss of generality, we may assume that {x, y, p, q} ⊂ Sn . By Lemma 13.8, (x)1 = (y)1 and (p)1 = (q)1 . We have the following cases depending {n} on the location of the neighbors of x, y, p, q outside Sn . Case 1. |{(x)1 , (y)1 } ∩ {(p)1 , (q)1 }| = 0. By Theorem 13.18, there is a Hamiltonian {(x) ,(y) } path P1 of Sn 1 1 joining (y)n to (x)n . Similarly, there is a Hamiltonian path P2 of
n−1−{(x)1 ,(y)1 } joining (p)n to (q)n . Then P1 and P2 are the desired paths. Sn Case 2. |{(x)1 , (y)1 } ∩ {(p)1 , (q)1 }| = 1. By symmetry, we may assume that (x)1 ∈ / {(p)1 , (q)1 } and (y)1 = (p)1 . Since ((y)n )1 = ((p)n )1 = n, by Lemma 13.8 there
ch013.tex
24/7/2008
14: 58
Page 331
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
331
{(p) }
is a vertex z in Sn 1 such that z is a neighbor of (y)n and (z)1 = (x)1 . By The{(x) } orem 13.18, there is a Hamiltonian path H of Sn 1 joining (x)n to (z)n . Let t be any integer in n − 1 − {(x)1 , (p)1 , (q)1 }. By Lemma 13.35, there is a Hamil{(p) } tonian path R of Sn 1 − {(y)n , z} joining (p)n to a vertex w such that (w)1 = t.
n−1−{(x)1 ,(p)1 } joining (w)n By Theorem 13.18, there is a Hamiltonian path Q of Sn n n n n n n to (q) . Then P1 = (x) , H, (z) , z, (y) and P2 = (p) , R, w, (w) , Q, (q)n are the desired paths. Case 3. |{(x)1 , (y)1 } ∩ {(p)1 , (q)1 }| = 2. By symmetry, we may assume that (x)1 = (p)1 and (y)1 = (q)1 . Let t and s be any two distinct integers in
n − 1 − {(p)1 , (q)1 }. Since ((x)n )1 = n and ((p)n )1 = n, by Lemma 13.8 there is a ver{(p) } tex w in Sn 1 such that w is a neighbor of (x)n and (w)1 = t. Similarly, there is a vertex {(q)1 } such that z is a neighbor of (y)n and (z)1 = t. By Theorem 13.18, there z in Sn {t} is a Hamiltonian path H of Sn joining (w)n to (z)n . By Lemma 13.35, there is a {(p) } Hamiltonian path R1 of Sn 1 − {(x)n , w} joining (p)n to a vertex u such that (u)1 = s. {(q) } By Lemma 13.35, there is a Hamiltonian path R2 of Sn 1 − {(y)n , z} joining a vern tex v such that (v)1 = s to (q) . By Theorem 15.18 there is a Hamiltonian path Q of
n−1−{t,(p)1 ,(q)1 } joining (u)n to (v)n . Then P1 = (x)n , w, (w)n , H, (z)n , z, (y)n and Sn n P2 = (p) , R1 , u, (u)n , Q, (v)n , v, R2 , (q)n are the desired paths. THEOREM 13.19 Let F be a subset of E(Sn ) with |F| ≤ 3n − 10 and δ(Sn − F) ≥ 2, for n ≥ 4. Then Sn − F is Hamiltonian. Proof: We prove this statement by induction on n. We can prove that the statement holds for n = 4 and 5 by brute force. The reader can read Ref. 237 for the detailed proof. Suppose now that the statement holds for Sk for every 5 ≤ k ≤ n − 1, where n ≥ 6. Let A = {u | degSn − F (u) = 2}. Since n ≥ 6, by Lemma 13.36 we have |A| ≤ 3. {i} We set Fi = F ∩ E(Sn ) for every i ∈ n and Fj,k = F ∩ E j,k for every two distinct elements j, k ∈ n. We consider cases depending on the size of A. Case 1. 2 ≤ |A| ≤ 3. We consider cases depending on whether there is an edge of F joining two vertices in A. Case 1.1. There are {u, v} ⊂ A with (u, v) ∈ F. Since Sn is vertex-transitive and {n} {n−1} . Clearly, |Fn | ≥ n − 4, edge-transitive, we may assume that u ∈ Sn and v ∈ Sn |Fn−1 | ≥ n − 4, and |Fi | ≤ n − 3 for every i ∈ n − 2, and |E i,j | ≤ n − 2 for every distinct i, j ∈ n. {i}
Case 1.1.1. δ(Sn − Fi ) ≥ 2 for every i ∈ n. Since |F| ≤ 3n − 10, |Fi | ≥ n − 3 can occur for at most two different i ∈ n. Let a, b be integers in n such that |Fa | ≥ |Fi | for every i ∈ n and |Fb | ≥ |Fj | for every j ∈ n − {a}. By induction, there is a {a} {b} Hamiltonian cycle C1 of Sn − Fa and there is a Hamiltonian cycle C2 of Sn − Fb . {a} For every vertex p ∈ Sn with p1 = b, we set A(p) = {p} ∪ NC1 (p) ∪ NC2 ((p)n ) and n B(p) = {(q, q ) | q ∈ A(p)}. Since |E a,b | = (n − 2)! > n − 2 if n ≥ 5, there is a ver{a} tex z ∈ Sn with z1 = b such that B(z) ∩ F = ∅. Let p be a neighbor of z on C1 .
ch013.tex
24/7/2008
332
14: 58
Page 332
Graph Theory and Interconnection Networks
By Lemma 13.8, the two neighbors of (z)n on C2 have different first coordinates, so at least one of them is different from (p)1. Let q be such a vertex. Then we have C1 = z, R1 , p, z and C2 = q, R2 , (z)n , q and (p)n = (q)n . Since n ≥ 6, (n − 2)!/2 > n − 2. Hence, by Theorem 13.18, there is a Hamiltonian path H of
n − {a,b} − F joining (p)n to (q)n , and then z, R1 , p, (p)n , H, (q)n , q, R2 , (z)n , z is Sn a Hamiltonian cycle of Sn − F. {t}
{t}
Case 1.1.2. δ(Sn − Ft ) = 1 for some t ∈ n. Let y be the vertex in Sn with / F. Moreover, |A| = 3, degSn{t} − F (y) = 1. Obviously, y is neither u nor v, and (y, (y)n ) ∈ t and we have identified all but one edge in F. Suppose first that y is adjacent to neither u nor v. Then we have identified all edges of F; hence |Fi | ≤ n − 4 for every i ∈ n − {t}. Since degSn{t} − F (y) = 1 and n ≥ 6, we t can choose an edge (y, z) ∈ Ft such that z is neither u nor v. By induction, there is {t} a Hamiltonian cycle C of Sn − (Ft − {(y, z)}). Clearly, edge (y, z) must be in C, so we can write C = y, R, z, y. By Theorem 13.18, there is a Hamiltonian path H of
n − {t} − F joining (z)n to (y)n . Then y, R, z, (z)n , H, (y)n , y forms a Hamiltonian Sn cycle of Sn − F. Second, if y is adjacent to either u or v, then without loss of generality we may {n} assume that (y, u) ∈ E(Sn ), so y ∈ Sn . Since all but one edge of F have been iden{n} tified so far, out of the n − 3 faulty edges incident to y in Sn , at most one can go to a vertex z = u such that (z, (z)n ) ∈ F. Since n ≥ 6, we can choose an edge / F. By induction, there is a Hamiltonian cycle C of (y, z) ∈ Fn such that (z, (z)n ) ∈ {n} Sn − (Fn − {(y, z)}). Clearly, edge (y, z) must be in C, so we can write C = y, R, z, y. If the as-of-yet unidentified edge of F is not in Fn−1 , then |Fn−1 | = n − 4, and by
n−1 − F joining (z)n to (y)n , Theorem 13.18, there is a Hamiltonian path H of Sn n n hence, y, R, z, (z) , H, (y) , y forms a Hamiltonian cycle of Sn − F. On the other hand, if the last unidentified edge of F is in Fn−1 , then |Fn−1 | = n − 3, and we have |Fi | = 0 for every i ∈ n − 1 and |Fi,j | = 0 for every two different i, j ∈ n − 1. Since (u)1 = n − 1, and y is adjacent to both u and z, by Lemma 13.8, it implies that (y)1 = (z)1 , (y)1 = n − 1, and (z)1 = n − 1. Then we can choose a vertex w in {n−1} such that its color is different from the color of y, and (w)1 = (y)1 . Since Sn {n−1} − Fn−1 ) = 2, by induction, there is a Hamilton − 3 ≤ 3n − 13 for n ≥ 5 and δ(Sn {n−1} − Fn−1 . We can write C = w, p, P, q, w. By Lemma 13.8, nian cycle C in Sn (p)1 , (w)1 , and (q)1 are all different, so without loss of generality, we may assume {(y) } that (p)1 = n. By Theorem 15.18, there is a Hamiltonian path H1 of Sn 1 joining
n−2−{(y) } 1 joining (z)n to (p)n . (w)n to (y)n and there is a Hamiltonian path H2 of Sn n n n n Then y, R, z, (z) , H2 , (p) , p, P, q, w, (w) , H1 , (y) , y forms a Hamiltonian cycle of Sn − F. Case 1.2. (u, v) ∈ / F for every two distinct vertices u, v ∈ A. Counting the edges of F at each vertex of A, we get |A|(n − 3) ≤ F ≤ 3n − 10; hence |A| ≤ 2. Thus |A| = 2, so let A = {u, v}. Since Sn is vertex-transitive and edge-transitive, we may assume that (u)n = n and (u, (u)n ) ∈ F. Now we consider cases depending on the location of v.
ch013.tex
24/7/2008
14: 58
Page 333
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
333
Case 1.2.1. (v)n = n and (v, (v)n ) ∈ F. Clearly, 2n − 8 ≤ |Fn | ≤ 3n − 12, so there {n} can be at most n − 4 edges of F outside Sn different from (u, (u)n ) and (v, (v)n ). If {n} |Fn | ≤ 3n − 13, then by induction, there is a Hamiltonian cycle C of Sn − Fn . Since {n} /F |V (Sn )| = (n − 1)! > 2(n − 2), there is an edge (p, q) ∈ E(C) such that (p, (p)n ) ∈ and (q, (q)n ) ∈ / F. Then we can write C = p, H, q, p. Since n − 4 < (n − 2)!/2 for
n−1 joining (q)n n ≥ 6, Theorem 13.18 implies that there is a Hamiltonian path R of Sn n n n to (p) , and then p, H, q, (q) , R, (p) , p is a Hamiltonian cycle of Sn − F. On the other hand, if |Fn | = 3n − 12, then every edge in F is located. Since 2(n − 4) < 3n − 12, there is an edge f ∈ Fn such that f is incident to neither u nor v. {n} By induction, there is a Hamiltonian cycle C of Sn − (Fn − {f }). However, f may be not in C. If f ∈ C, let f = (p, q); otherwise, pick an edge (p, q) in C such that {p, q} ∩ {u, v} = ∅. Then we can write C = p, H, q, p. By Theorem 13.18, there is
n−1 joining (q)n to (p)n ; hence, p, H, q, (q)n , R, (p)n , p a Hamiltonian path R of Sn is a Hamiltonian cycle of Sn − F. {n}
/ F. Within Sn , there are n − 4 faulty edges inciCase 1.2.2. (v)n = n and (v, (v)n ) ∈ dent to u and n − 3 faulty edges incident to v. Since (n − 3) + (n − 4) > n − 2 for n ≥ 6, there must be an integer i ∈ n − {1} such that (u, (u)i ) ∈ F and (v, (v)i ) ∈ F. Using vertices of having the same ith coordinate instead of the same nth coordinate {j} to define the sets Sn for j ∈ n will change this case to Case 1.2.1. Case 1.2.3. (v)n = n and (v, (v)n ) ∈ F. Without loss of generality, we may assume {n} that (v)n = n − 1. By induction, there is a Hamiltonian cycle C1 of Sn − Fn and {n−1} {n} − Fn−1 . For every vertex p in Sn with there is a Hamiltonian cycle C2 of Sn n n (p)1 = n − 1, we set A(p) = {p} ∪ NC1 (p) ∪ NC2 ((p) ) and B(p) = {(q, (q) ) | q ∈ A(p)}. {n} Since |E n−1,n | = (n − 2)! > n − 4 if n ≥ 5, there is a vertex z ∈ Sn with (z)1 = n − 1 such that B(z) ∩ F = ∅. Let p be a neighbor of z on C1 . Then by Lemma 13.8, the two neighbors of (z)n on C2 have different first coordinates, so at least one of them is different from (p)1 . Let q be such a vertex. Then we can write C1 = z, R1 , p, z and
n−2 −F C2 = q, R2 , (z)n , q. By Theorem 13.18, there is a Hamiltonian path H of Sn joining (p)n to (q)n , and then z, R1 , p, (p)n , H, (q)n , q, R2 , (z)n , z is a Hamiltonian cycle of Sn − F. Case 1.2.4. (v)n = n and (v, (v)n ) ∈ / F. There are n − 3 faulty edges incident to both u and v. Since 2(n − 3) > n − 1 for n ≥ 6, there must be an integer i ∈ n − {1} such that (u, (u)i ) ∈ F and (v, (v)i ) ∈ F. Using vertices of having the same ith coordinate {j} instead of the same nth coordinate to define the sets Sn for j ∈ n will change this case to either Case 1.2.1 (if u and v have the same ith coordinate) or Case 1.2.3 (if u and v have different ith coordinates). Case 2. 0 ≤ |A| ≤ 1. Let x be a vertex in Sn − F of minimum degree. Since {i} Sn is edge-transitive, we may assume that (x, (x)n ) ∈ F, thus δ(Sn − Fi ) ≥ 2 and |Fi | ≤ 3n − 11 for every i ∈ n. Without loss of generality, we may assume that |Fn | ≥ |Fn−1 | ≥ · · · ≥ |F1 |. Thus, |Fi | ≤ n − 4 for every i ∈ n − 2. Now we look at cases depending on the sizes of Fn and Fn−1 .
ch013.tex
334
24/7/2008
14: 58
Page 334
Graph Theory and Interconnection Networks
Case 2.1. |Fn | ≤ 3n − 13 and |Fn−1 | ≥ n − 3. By induction, there is a Hamilto{n} {n−1} − Fn−1 . nian cycle C1 of Sn − Fn and there is a Hamiltonian cycle C2 of Sn {n} For every vertex w ∈ Sn with (w)1 = n − 1, let w1 and w2 be its two neigh{n} bors in Sn on C1 , and let w3 and w4 be the two neighbors of (w)n in C2 . {n} Since (n − 2)! > n − 4 for n ≥ 6, there is a vertex z in Sn such that (z)1 = n − 1, n n / F, and (zi , (zi ) ) ∈ / F for every 1 ≤ i ≤ 4. By Lemma 13.8, (z1 )1 = (z2 )1 (z, (z) ) ∈ and (z3 )1 = (z4 )1 . Without loss of generality, we may assume that (z2 )1 = (z3 )1 . Then we can write C1 = z, z1 , R1 , z2 , z and C2 = (z)n , z3 , R2 , z4 , (z)n . By Theo n−2 − F joining (z2 )n to (z3 )n , and then rem 13.18, there is a Hamiltonian path H of Sn n n n
z, z1 , R1 , z2 , (z2 ) , H, (z3 ) , z3 , R2 , z4 , (z) , z is a Hamiltonian cycle of Sn − F. Case 2.2. |Fn | ≤ 3n − 13 and |Fn−1 | ≤ n − 4. If |Fi,j | ≤ [(n − 2)!/2] − 1 for every {n} distinct i, j ∈ n − 1, then by induction, there is a Hamiltonian cycle C of Sn − Fn . {n} Since |V (Sn )| = (n − 1)! > 2(3n − 10) if n ≥ 6, there is an edge (u, v) ∈ C such n / F and (v, (v)n ) ∈ / F. Then we can write C = u, H, v, u. By Thethat (u, (u) ) ∈
n−1 − F joining (v)n to (u)n , orem 13.18, there is a Hamiltonian path R of Sn n n and then u, H, v, (v) , R, (u) , u is a Hamiltonian cycle of Sn − F. On the other hand, if |Fi,j | > [(n − 2)!/2] − 1 for some i, j ∈ n − 1, then since |F| ≤ 3n − 10 and [(n − 2)!/2] − 1 > 3n − 10 if n ≥ 6, we get n = 5. Case 2.3. |Fn | = 3n − 12. Since |Fn | = 3n − 12 > 2(n − 4) if n ≥ 6, there is an edge (p, q) ∈ Fn such that edges (p, (p)n ) and (q, (q)n ) are not in F. By induction, there is {n} a Hamiltonian cycle C of Sn − (Fn − {(p, q)}). We can write C = u, H, v, u, where {u, v} = {p, q} if edge (p, q) is part of C; otherwise, (u, v) is an arbitrary edge of C such that edges (u, (u)n ) and (v, (v)n ) are not in F. By Theorem 13.18, there is a Hamil n−1 − F joining (v)n to (u)n , and then u, H, v, (v)n , R, (u)n , u is tonian path R of Sn a Hamiltonian cycle of Sn − F. {n}
Case 2.4. |Fn | = 3n − 11 and degSn −F (x) = 2. Clearly, x ∈ Sn , and all edges of F are accounted for. Since |Fn | = 3n − 11 > 2(n − 4) if n ≥ 5, there are two edges (u, v) and (p, q) in Fn such that (u, (u)n ) ∈ / F, (v, (v)n ) ∈ / F, (p, (p)n ) ∈ / F, (q, (q)n ) ∈ / F, and vertices u, v, p, q are all different. By induction, there is a Hamiltonian cycle C in {n} Sn − (Fn − {(u, v), (p, q)}). If either (u, v) or (p, q) is not in C, then without loss of generality, we may assume that (p, q) ∈ / C. We can write C = w, R, z, w, where {w, z} = {u, v} if (u, v) ∈ E(C); otherwise, (w, z) is chosen to be an arbitrary edge of C such that (w, (w)n ) ∈ / F and (z, (z)n ) ∈ / F. By Theorem 13.18, there is a Hamil n−1 n joining (z) to (w)n , and then w, R, z, (z)n , H, (w)n , w is tonian path H of Sn a Hamiltonian cycle of Sn − F. On the other hand, if both (u, v) and (p, q) are in C, then without loss of generality, we can write C = u, R1 , p, q, R2 , v, u. By Lemma 13.37, there are two disjoint paths
n−1 such that (1) Q1 joins (v)n to (u)n , (2) Q2 joins (p)n to (q)n , Q1 and Q2 of Sn
n−1 . Then u, R1 , p, (p)n , Q2 , (q)n , q, R2 , v, (v)n , Q1 , (u)n , u and (3) Q1 ∪ Q2 spans Sn is a Hamiltonian cycle of Sn − F. ) * − 11 Case 2.5. |Fn | = 3n − 11 and degSn −F (x) ≥ 3. Since 3nn − ≥ 2 if n ≥ 6, there is 2 an integer 2 ≤ i ≤ n − 1 such that there are at least two faulty edges among the edges
ch013.tex
24/7/2008
14: 58
Page 335
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
Fault edges
335
Fault edges u1
u2
u6
u3
u5 u4 Fault edges
FIGURE 13.18 Illustration of Sn with (3n − 9) edge faults.
{j}
of dimension i in Sn . Define the sets Sn for j ∈ n using vertices of having the same ith coordinate instead of the same nth coordinate. Then degSn −F (x) ≥ 3 will imply {j} that the minimum degree in Sn − Fj is at least 2 and |Fj | ≤ 3n − 12 for every j ∈ n. Hence, this case reduces to one of Cases 2.1 through 2.3. This finishes the proof of the theorem. Let n ≥ 4 and let H = u1 , u2 , . . . , u6 , u1 be a cycle with six vertices in Sn . We set the faulty set F to be all the edges incident to u2 , u4 , and u6 that are not edges of H shown in Figure 13.18. Obviously, |F| = 3n − 9. Since degSn −F (v) = 2 for every vertex in {u2 , u4 , u6 }, Sn − F is not Hamiltonian. Thus, the bound 3n − 10 in Theorem 13.19 is tight. LEMMA 13.38 Let F be a subset of E(Sn ) with |F| ≤ 2n − 7 and δ(Sn − F) ≥ 2 with n ≥ 4. Let A = {u | degSn − F (u) = 2}. Then |A| ≤ 2, moreover, if A = {u, v}, then (u, v) ∈ F. Proof: Suppose that |A| ≥ 3; say, {x1 , x2 , x3 } ⊆ A. Let H be the subgraph of Sn with the vertex set {x1 , x2 , x3 } containing those edges of F that join two vertices in H. Since Sn is bipartite, so is H. At least one of the partite sets can be chosen to have at least two vertices. We count the number of edges in F at each of these vertices. Since no edge of F is counted twice, we get |F| ≥ 2(n − 3) = 2n − 6, which is a contradiction. When |A| = 2, the same counting argument implies that the two vertices of A must be joined by an edge, which must belong to F. THEOREM 13.20 Let I = {i1 , i2 , . . . , it } be any nonempty subset of n with n ≥ 5. Assume that Sn−1 is (2n − 9)-edge-fault conditional Hamiltonian laceable. Let F be {i } {i } a set of edges of Sn such that |F ∩ E(Sn k )| ≤ 2n − 9 with δ(Sn k − F) ≥ 2 for every k ∈ t, and |F ∩ E ik ,ik+1 | ≤ [(n − 2)!/2] − 1 for every k ∈ t − 1. If u is a white vertex {i } {i } of Sn 1 and v is a black vertex of Sn t , then there is a Hamiltonian path P of SnI − F joining u to v. Proof: The proof of this statement is similar to the proof of Theorem 13.18.
ch013.tex
336
24/7/2008
14: 58
Page 336
Graph Theory and Interconnection Networks
THEOREM 13.21 Let F be a subset of E(Sn ) with |F| ≤ 2n − 7 and δ(Sn − F) ≥ 2 with n ≥ 4. Then Sn − F is Hamiltonian laceable. Proof: We prove this statement by induction on n. Since S4 is 1-edge fault-tolerant Hamitonian laceable, this statement holds for n = 4. Suppose that this statement holds for Sk for every 4 ≤ k ≤ n − 1 and show it for Sn . Let F be a subset of E(Sn ) with |F| ≤ 2n − 7 and δ(Sn − F) ≥ 2. We need to show that Sn − F is Hamiltonian laceable. {i} Without loss of generality, we may assume that |F| = 2n − 7. We set Fi = F ∩ E(Sn ) for every i ∈ n and Fj,k = F ∩ E j,k for every two distinct elements j, k ∈ n. Let A = {x | degSn − F (x) = 2}. By Lemma 13.38, |A| ≤ 2. We consider the following cases, depending on the size of A. Case 1. |A| = 2. Let A = {x, y}. By Lemma 13.38, (x, y) ∈ F, and F is completely identified. Since Sn is edge-transitive, we may assume that x = (y)n . Hence, xn = (y)n , |Fi | = n − 4 for i ∈ {(x)n , (y)n }, |Fj | = 0 for j ∈ n − {(x)n , (y)n }, and |Fs,t | ≤ 1 for every two distinct s, t ∈ n. Let u be any white vertex in Sn and let v be any black vertex in Sn . If (u)n = (v)n , then by Theorem 13.18, there is a Hamiltonian path H of Sn − F joining u to v. On the other hand, if (u)n = (v)n , then by induction, there is a Hamiltonian path {(u) } Q of Sn n − F(u)n joining u to v. Since (n − 1)! > 8 if n ≥ 5, there is an edge (p, q) in Q such that |{p, q} ∩ {x, y, (x)n , (y)n }| = 0. Then we can write Q = u, Q1 , p, q, Q2 , v.
n − {(u)n } − F joining (p)n to By Theorem 13.18, there is a Hamiltonian path H of Sn (q)n . Thus, u, Q1 , p, (p)n , H, (q)n , q, Q2 , v is a Hamiltonian path of Sn − F joining u to v. Case 2. |A| ≤ 1. Let x be a vertex of minimum degree in Sn − F. Since Sn is vertex{i} transitive and edge-transitive, we may assume that (x, (x)n ) ∈ F. Thus δ(Sn − Fi ) ≥ 2 for every i ∈ n. Without loss of generality, we may assume that |Fn | ≥ |Fi | for every i ∈ n − 1. Let u be any white vertex in Sn and let v be any black vertex in Sn . We now consider cases depending on the size of Fn . Case 2.1. |Fn | = 2n − 8. Then Fi = 0 for every i ∈ n − 1 and |Fi,j | = 0 for every distinct i, j ∈ n except that {i, j} = {(x)n , ((x)n )n}. Since 3n − 13 ≥ 2n − 8 for n ≥ 5, {n} by Theorem 13.19 there is a Hamiltonian cycle C in Sn − Fn . Now we look at cases depending on the location of u and v. Case 2.1.1. (u)n = (v)n = n and (u, v) ∈ / E(C). Then we can write C = u, p, Q1 , q, v, {n} w, Q2 , z, u for some vertices p, q, w, z ∈ Sn . Obviously, either {x, (x)n } ∩ {p, w} = ∅ n or {x, (x) } ∩ {q, z} = ∅. By symmetry, we may assume that {x, (x)n } ∩ {q, z} = ∅. By
n−1 joining (q)n to (z)n . Thus Theorem 13.18, there is a Hamiltonian path H of Sn −1 n n
u, p, Q1 , q, (q) , H, (z) , z, Q2 , w, v is a Hamiltonian path of Sn − F joining u to v. Case 2.1.2. (u)n = (v)n = n and (u, v) ∈ E(C). Choose an edge (p, q) ∈ E(C) − {(u, v)} such that neither p nor q is x or (x)n . Then we can write
n−1 C = u, Q1 , p, q, Q2 , v, u. By Theorem 13.18, there is a Hamiltonian path H of Sn joining (p)n to (q)n ; thus u, Q1 , p, (p)n , H, (q)n , q, Q2 , v is a Hamiltonian path of Sn − F joining u to v.
ch013.tex
24/7/2008
14: 58
Page 337
Optimal k-Fault-Tolerant Hamiltonian-Laceable Graphs
337
Case 2.1.3. (u)n = (v)n = i for some i ∈ n − 1. Since |E n,(u)n | = (n − 2)! > 2 if {(u) } n ≥ 5, there is a black vertex w in Sn n − {v} such that (w, (w)n ) ∈ E n,(u)n − {(x, (x)n )}. n Then we can write C = (w) , p, Q, q, (w)n . Clearly, either p ∈ / {x, (x)n } or n n / {x, (x) }. By Theorem 13.18, there q∈ / {x, (x) }. By symmetry, we may assume that p ∈ {(u)n } joining u to v. We can write R = u, R1 , y, w, z, R2 , v. is a Hamiltonian path R of Sn By Lemma 13.8, (y)1 = (z)1 , and by symmetry, we may assume that (y)1 = (p)1. By
n−1−{(u)n } joining (y)n to (p)n , and Theorem 13.18, there is a Hamiltonian path H of Sn n n n then u, R1 , y, (y) , H, (p) , p, Q, q, (w) , w, z, R2 , v is a Hamiltonian path of Sn − F joining u to v. Case 2.1.4. (u)n = n and (v)n ∈ n − 1. Note that the cases where (v)n = n and (u)n ∈ n − 1 are identical, so it is enough to prove one of them. We can write / {x, (x)n }. By symmetry, we may C = u, p, Q, q, u. Clearly, p ∈ / {x, (x)n } or q ∈ n assume that q ∈ / {x, (x) }. Since u is a white vertex and q is a black vertex.
n−1 If (q)1 = (v)n , then by Theorem 13.18, there is a Hamiltonian path H of Sn joining (q)n to v, and then u, p, Q, q, (q)n , v is a Hamiltonian path of Sn − F joining u to v. On the other hand, if (q)1 = (v)n , then let w be any white vertex in {(v) } {(v) } Sn n such that (v, w) ∈ E(Sn n ) and (w)1 ∈ n − 1 − {(v)n }. Since there are no {(v)n } faulty edges in Sn , Lemma 13.35 implies that there is a Hamiltonian path R of {(v) } Sn n − {w, v} joining (q)n to a vertex z such that (z)1 ∈ n − 1 − {(v)n , (w)1 }. By
n−1−{(v)n } joining (z)n to (w)n , and Theorem 13.18, there is a Hamiltonian path H of Sn n n n then u, p, Q, q, (q) , R, z, (z) , H, (w) , w, v is a Hamiltonian path of Sn − F joining u to v. Case 2.1.5. (u)n ∈ n − 1 and (v)n ∈ n − 1 with (u)n = (v)n . Since there {(u) } are (n − 2)!/2 > 2 edges joining black vertices of Sn n to white vertices {n} {n} {(u) } of Sn , we can choose a white vertex w in Sn such that (w)n ∈ Sn n n and {x, (x) } ∩ (NC (w) ∪ {w}) = ∅. Then we can write C = w, p, Q, q, w. By Lemma 13.8, (p)1 = (q)1 . By symmetry, we may assume that (q)1 = (v)n . By {(u) } Theorem 13.18, there is a Hamiltonian path H of Sn n joining u to (w)n
n−1−{(u)n } joining (q)n to v. Then and there is a Hamiltonian path R of Sn
u, H, (w)n , w, p, W , q, (q)n , R, v is a Hamiltonian path of Sn − F joining u to v. Case 2.2. |Fn | ≤ 2n − 9. Then |Fi | ≤ 2n − 9 for every i ∈ n. If (u)n = (v)n then by Theorem 13.20, there is a Hamiltonian path H of Sn − F joining u to v. On the other {(u) } hand, if (u)n = (v)n , then by induction, there is a Hamiltonian path Q of Sn n − F(u)n joining u to v. Since (n − 1)! − 1 > 2(2n − 7) if n ≥ 5, there is an edge (p, q) ∈ E(Q) v1
Fault edges
v2
v3
v4
Fault edges
FIGURE 13.19 Illustration of Sn with (2n − 6) edge faults.
ch013.tex
338
24/7/2008
14: 58
Page 338
Graph Theory and Interconnection Networks
such that (p, (p)n ) ∈ / F and (q, (q)n ) ∈ / F. Then we can write Q = u, Q1 , p, q, Q2 , v.
n−{(u)n } joining (p)n to (q)n , By Theorem 13.20, there is a Hamiltonian path H of Sn n n and then u, Q1 , p, (p) , H, (q) , q, v is a Hamiltonian path of Sn − F joining u to v. This finishes the proof. Let n ≥ 4 and let P = v1 , v2 , v3 , v4 be a path with four vertices in Sn . We set the faulty set F to be all the edges incident to v2 and v3 that are not edges of P shown in Figure 13.19. Obviously, |F| = 2n − 6. Since degSn −F (v2 ) = 2 and degSn −F (v3 ) = 2, there is no Hamiltonian path of Sn − F joining v1 to v4 . Thus, Sn − F is not Hamiltonian laceable. Thus, the bound 2n − 7 in Theorem 13.21 is tight.
ch014.tex
25/7/2008
14 14.1
14: 27
Page 339
Spanning Connectivity
INTRODUCTION
Assume that G is a k-connected graph. It follows from Menger’s Theorem that there are k internally vertex-disjoint (abbreviated as disjoint) paths joining any two distinct vertices u and v. A k-container C(u, v) of G is a set of k disjoint paths joining u to v. Here, we discuss another type of container, called spanning container. A spanning k-container, (abbreviated as k ∗ -container), C(u, v) is a k-container that contains all vertices of G. A graph G is k∗ -connected if there exists a k ∗ -container between any two distinct vertices. In particular, a graph G is 1∗ -connected if and only if it is Hamiltonian-connected, and a graph G is 2∗ -connected if and only if it is Hamiltonian. All 1∗ -connected graphs except that K1 and K2 are 2∗ -connected. Thus, we defined the spanning connectivity of a graph G, κ∗ (G), to be the largest integer k such that G is w∗ -connected for all 1 ≤ w ≤ k if G is a 1∗ -connected graph. Obviously, spanning connectivity is a hybrid concept of Hamiltonicity and connectivity. A graph G is super spanning connected if κ∗ (G) = κ(G). Obviously, the complete graph Kn is super spanning connected if n ≥ 2. A graph G is bipartite if its vertex set can be partitioned into two subsets V1 and V2 such that every edge joins vertices between V1 and V2 . Let G be a k-connected bipartite graph with bipartition V1 and V2 such that |V1 | ≥ |V2 |. Suppose that there exists a k ∗ -container C(u, v) = {P1 , P2 , . . . , Pk } in a bipartite graph joining u to v with u, v ∈ V1 . Obviously, the number of vertices in Pi is 2ki + 1 for some integer ki . There are ki − 1 vertices of Pi in V1 other than u and v, and ki vertices of Pi in V2 . As a consequence, |V1 | = ki=1 (ki − 1) + 2 and |V2 | = ki=1 ki . Therefore, any bipartite graph G with κ(G) ≥ 3 is not k ∗ -connected for any 3 ≤ k ≤ κ(G). For this reason, a bipartite graph is k ∗ -laceable if there exists a k ∗ -container between any two vertices from different partite sets. Obviously, any bipartite k ∗ laceable graph with k ≥ 2 has the equal size of bipartition. A 1∗ -laceable graph is also known as a Hamiltonian-laceable graph. Moreover, a graph G is 2∗ -laceable if and only if it is Hamiltonian. All 1∗ -laceable graphs except that K1 and K2 are 2∗ -laceable. A bipartite graph G is super spanning laceable if G is i∗ -laceable for all 1 ≤ i ≤ κ(G).
14.2
SPANNING CONNECTIVITY OF GENERAL GRAPHS
By Theorem 9.13, any graph G with at last four vertices and δ(G) ≥ (n(G)/2) + 1 is 1∗ -connected. Obviously, every complete graph is super spanning connected. Lin et al. [230,232] begin the study of the spanning connectivity of a noncomplete graph with δ(G) ≥ (n(G)/2) + 1. We set κ(G) = 2δ(G) − n(G) + 2. Thus, κ(G) ≥ 4 for noncomplete graph with δ(G) ≥ (n(G)/2) + 1. Let H be a subgraph of G. The neighborhood 339
ch014.tex
25/7/2008
14: 27
Page 340
340
Graph Theory and Interconnection Networks
of u with respect to H, denoted by NbdH (u), is {v ∈ V (H) | (u, v) ∈ E(G)}. We use H (u) to denote |NbdH (u)|. Obviously, G (u) = deg (u) for every u ∈ V (G). LEMMA 14.1 Let k be a positive integer. Suppose that there exist two nonadjacent vertices u and v with degG (u) + degG (v) ≥ n(G) + k. Then for any two distinct vertices x and y, G has a (k + 2)∗ -container between x and y if and only if G + (u, v) (k + 2)∗ container between x and y. Proof: Suppose that G has a (k + 2)∗ -container between x and y. Obviously, G + (u, v) has a (k + 2)∗ -container between x and y. For the other direction, suppose that G + (u, v) has a (k + 2)∗ -container between x and y. Let x and y be any two different vertices of G. Let C(x, y) = {P1 , P2 , . . . , Pk+2 } be a (k + 2)∗ -container of G + (u, v). Suppose that the edge (u, v) ∈ / C(x, y). Then C(x, y) forms a desired (k + 2)∗ container of G. Thus, we suppose that (u, v) ∈ C(x, y). Without loss of generality, we assume that (u, v) ∈ P1 . We write P1 as x, H1 , u, v, H2 , y. (Note that l(H1 ) = 0 if x = u, and l(H2 ) = 0 if y = v.) Let Pi be the path obtained from Pi by deleting x and yi . Thus, we can write Pi as x, Pi , y for 1 ≤ i ≤ k + 2. We set Ci = x, Pi , y, H2−1 , v, u, H1−1 , x for 2 ≤ i ≤ k + 2. Case 1. Ci (u) + Ci (v) ≥ n(Ci ) for some 2 ≤ i ≤ k + 2. Without loss of generality, we may assume that C2 (u) + C2 (v) ≥ n(C2 ). By Theorem 9.4, there is a Hamiltonian cycle C of the subgraph of G induced by C2 . Let C = x, R1 , y, R2 , x. We set Q1 = x, R1 , y, Q2 = x, R2−1 , y, and Qi = Pi for 3 ≤ i ≤ k + 2. Then {Q1 , Q2 , . . . , Qk+2 } forms a (k + 2)∗ -container of G between x and y. Case 2. Ci (u) + Ci (v) ≤ n(Ci ) − 1 for all 2 ≤ i ≤ k + 2. Since k+2
(Ci (u) + Ci (v)) =
i=2
k+2 i=2
=
k+2 i=2
(Pi (u) + P1 (u) + Pi (v) + P1 (v))
(Pi (u) + Pi (v)) + (k + 1)(P1 (u) + P1 (v))
= G (u) + G (v) + k(P1 (u) + P1 (v)) ≥ n(G) + k + k(P1 (u) + P1 (v)) k+2
(n(Ci ) − 1) =
i=2
k+2 i=2
=
k+2 i=2
(n(Pi ) + n(P1 )) − (k + 1) n(Pi ) + (k + 1)(n(P1 )) − (k + 1)
= n(G) + k(n(P1 )) − (k + 1)
ch014.tex
25/7/2008
14: 27
Page 341
Spanning Connectivity
341
n(G) + k + k(P1 (u) + P1 (v)) ≤ n(G) + k(n(P1 )) − (k + 1). Therefore, P1 (u) + P1 (v) ≤ n(P1 ) − 1/k. Since k ≥ 1, P1 (u) + P1 (v) ≤ n(P1 ). We claim that Pi (u) + Pi (v) ≥ n(Pi ) + 2 for some 2 ≤ i ≤ k + 2. Suppose that Pi (u) + Pi (v) ≤ n(Pi ) + 1 for all 2 ≤ i ≤ k + 2. Then degG (u) + degG (v) =
≤
k+2 i=2 k+2 i=2
(Pi (u) + Pi (v)) + (P1 (u) + P1 (v)) (n(Pi ) + 1) + n(P1 )
= n(G) + k − 1 This contradicts with the fact that degG(u) + degG (v) ≥ n + k. Without loss of generality, we may assume that P2 (u) + P2 (v) ≥ n(P2 ) + 2. Obviously, n(P2 ) ≥ 2. We write P2 = z1 , z2 , . . . , zr . We claim that there exists an index j in {1, 2, . . . , r − 1} such that (zj , v) ∈ E(G) and (zj+1 , u) ∈ E(G). Suppose there does not. Then P2 (u) + P2 (v) ≤ r + r − (r − 1) = r + 1 = n(P2 ) + 1. We get a contradiction. We set Q1 = x, z1 , z2 , . . . , zj , v, H2 , y, Q2 = x, H1 , u, zj+1 , zj+2 , . . . , zr , y, and Qi = Pi for 3 ≤ i ≤ k + 2. Then {Q1 , Q2 , . . . , Qk+2 } forms a (k + 2)∗ -container of G between x and y. See Figure 14.1 for illustration. Note that the statement of Theorem 14.1 is very similar to the statement of Theorems 9.2 and 9.3. Obviously, we have the following corollary. COROLLARY 14.1 Assume that k is any positive integer and there exist two nonadjacent vertices u and v with degG (u) + degG (v) ≥ n(G) + k. Then G is (k + 2)∗ connected if and only if G + (u, v) is (k + 2)∗ -connected. Moreover, G is i∗ -connected if and only if G + (u, v) is i∗ -connected for 1 ≤ i ≤ k + 2.
Q1
zj
z j1
Q2
x
u Qk2
v
Qk1 Qk
FIGURE 14.1 Illustration for Case 2 of Lemma 14.1.
y
ch014.tex
342
25/7/2008
14: 27
Page 342
Graph Theory and Interconnection Networks
THEOREM 14.1 Let k be a positive integer. Assume that degG (u) + degG (v) ≥ n(G) + k for all nonadjacent vertices u and v. Then G is r ∗ -connected for every 1 ≤ r ≤ k + 2. Proof: By Theorem 9.4, G is 2∗ -connected. By Theorem 9.12, G is 1∗ -connected. Let x and y be two distinct vertices in G. Suppose there exists an r ∗ -container {P1 , P2 , . . . , Pr } of G between x and y for some 2 ≤ r ≤ k + 1. We need to construct only an (r + 1)∗ -container of G between x and y. We claim that degG (y) ≥ k + 2. Suppose not. Let w ∈ / NG (y). Then degG (y) + degG (w) ≤ (k + 1) + (n(G) − 2) = n(G) + k − 1, given a contradiction. We can choose a vertex u in NG (y) − {x} such that (u, y) ∈ / E(Pi ). Without loss of generality, we assume that u ∈ Pr . We write Pr as x, H1 , u, v, H2 , y. We set Qi = Pi for 1 ≤ i ≤ r − 1, Qr = x, H1 , u, y, and Qr+1 = x, v, H2 , y. Suppose that (x, v) ∈ E(G). Then {Q1 , Q2 , . . . , Qr+1 } forms an (r + 1)∗ -container of G between x and y. Suppose that (x, v) ∈ / E(G). Then, {Q1 , Q2 , . . . , Qr+1 } forms an (r + 1)∗ -container of G + (x, u) between x and y. By Lemma 14.1, there exists an (r + 1)∗ -container of G between x and y. We give an example to show that the bound (k + 2) in the previous theorem is optimal. Let G = (K1 + Kb ) ∨ Ka where b ≥ 2 and a ≥ 3. We set k = a − 2. Obviously, δ(G) = a and degG (u) + degG (v) ≥ 2a + b − 1 = n(G) + a − 2 = n(G) + k for any two distinct vertices u and v. By the previous theorem, G is r ∗ -connected for any r ≤ a. However, G is not r ∗ -connected for any r > a because δ(G) = a. THEOREM 14.2 Assume that G is a noncomplete graph with (n(G)/2) + 1 ≤ δ(G) ≤ n(G) − 2. Then G is r ∗ -connected for 1 ≤ r ≤ κ(G). Proof: Since (n(G)/2) + 1 ≤ δ(G) ≤ n(G) − 2, n(G) ≥ 6. Let k be a positive integer and m ≥ 3. Suppose that n(G) = 2m and δ(G) = m + k for some m ≥ 3 and 1 ≤ k ≤ m − 2. Then degG (u) + degG (v) ≥ 2δ(G) = 2m + 2k. By Theorem 14.1, G is r ∗ -connected for 1 ≤ r ≤ 2k + 2 = κ(G). Suppose that n(G) = 2m + 1 and δ(G) = m + 1 + k for some m ≥ 3 and 1 ≤ k ≤ m − 2. We have degG (u) + degG (v) ≥ 2δ(G) = 2m + 2 + 2k. By Theorem 14.1, G is r ∗ -connected for 1 ≤ r ≤ 2k + 3 = κ(G). COROLLARY 14.2 Assume that G is a graph with (n(G)/2) + 1 ≤ δ(G) with at least five vertices. Then κ∗ (G) ≥ 4. LEMMA 14.2 Suppose that G is a noncomplete graph with δ(G) ≥ (n(G)/2) + 1. Then |NG (u) ∩ NG (v)| ≥ κ(G) − 2 if (u, v) ∈ E(G), otherwise |NG (u) ∩ NG (v)| ≥ κ(G). Proof: Obviously, |NG (u) ∩ NG (v)| = |NG (u)|+|NG (v)|−|NG (u) ∪ NG (v)| ≥ 2δ(G)− |NG (u) ∪ NG (v)|. Suppose that (u, v) ∈ E(G). Apparently, |NG (u) ∪ NG (v)| ≤ n(G). / E(G). Thus, Then |NG (u) ∩ NG (v)| ≥ 2δ(G) − n(G) = κ(G) − 2. Suppose that (u, v) ∈ |NG (u) ∪ NG (v)| ≤ n(G) − 2. Then |NG (u) ∩ NG (v)| ≥ 2δ(G) − (n(G) − 2) = κ(G). With Theorem 14.2, we have the following corollary.
ch014.tex
25/7/2008
14: 27
Page 343
Spanning Connectivity
343
COROLLARY 14.3 κ(G) ≤ κ∗ (G) ≤ κ(G) ≤ δ(G) if G is a graph with (n(G)/2) + 1 ≤ δ(G) ≤ n(G) − 2. Moreover, G is super spanning connected if κ(G) = κ(G). In particular, G is super spanning connected if δ(G) = n(G) − 2. Among those graphs G with κ(G) ≤ κ(G) ≤ n(G) − 3, we give the following examples to illustrate the following cases: (1) κ(G) = κ∗ (G) = κ(G), (2) κ(G) = κ∗ (G) < κ(G), (3) κ(G) < κ∗ (G) = κ(G), and (4) κ(G) < κ∗ (G) < κ(G). To verify the spanning connectivity of the following examples, we need the following lemmas. LEMMA 14.3 Assume that G is a k ∗ -connected graph and S is a vertex subset of G. Then the graph G − S has at most |S| − k + 2 components. LEMMA 14.4 Assume that a is any positive integer with a ≥ 3. Let G be the complete 3-partite graph Ka,a,a with the vertex partite sets V1 , V2 , and V3 . Then κ∗ (G) = a + 2. Proof: It is easy to see that κ(G) = 2a and κ(G) = a + 2. Thus, κ∗ (G) ≥ a + 2. To prove this lemma, we need to prove that there is no (a + 3)∗ -container between any two vertices u and v in V1 . Suppose that there exists an (a + 3)∗ -container C(u, v) = {P1 , P2 , . . . , Pa+3 } of G between u and v. Let A = {i | l(Pi ) = 2 for 1 ≤ i ≤ a + 3} and B = {1, 2, . . . , a + 3} − A. Obviously, a+3 i=1 |V (Pi ) ∩ (V2 ∪ V3 )| = 2a. Let P be any path of G joining u to v. Obviously, |V (P) ∩ (V1 − {u, v})| ≤ ∪ V3 )| − 1. Since C(u, v) is an (a + 3)∗ -container of G between |V (P) ∩ (V2 a+3 u and v, V3 )| ≥ 1 and i=1 |V (Pi ) ∩ (V1 − {u, v})| = a − 2. Since |V (Pi ) ∩ (V2 ∪ a+3 |V (Pi ) ∩ (V1 − {u, v})| ≤ |V (P ) ∩ (V ∪ V )| − 1 for every i ∈ B, i 2 3 i=1 |V (Pi ) ∩ (V2 ∪ V )| = |V (P ) ∩ (V ∪ V )| + |A| = (|V (P ) ∩ (V ∪ V )| i 2 3 i 2 3 − 1) + |B| + i∈B i∈B 3 |A| ≥ i∈B |V (Pi ) ∩ (V1 − {u, v})| + a + 3 = 2a + 1. We obtained a contradiction because a+3 i=1 |V (Pi ) ∩ (V2 ∪ V3 )| = 2a. Recall that the Harary graph H2r,n can be described with V (H2r,n ) = {0, 1, . . . , n − 1} and E(H2r,n ) = {{i, j} | |i − j| ∈ {1, 2, . . . , r} mod n}. LEMMA 14.5 H2r,n is 1∗ -spanning connected. Proof: Let u and v be any two distinct vertices of H2,n . Without loss of generality, we assume that u = 0 and 1 ≤ v ≤ n/2. Let t be any integer with 1 ≤ t ≤ n/4. We set P as follows: P = 0, n − 1, n − 2, . . . , 1
if v = 1
P = 0, n − 1, n − 2, . . . , 2t + 1, 2t − 1, 2t − 3, . . . , 1, 2, 4, . . . , 2t
if v = 2t
P = 0, n − 1, n − 2, . . . , 2t + 2, 2t, 2t − 2, . . . , 2, 1, 3, . . . , 2t + 1
if v = 2t + 1
Thus, P forms a Hamiltonian path of H2,n between u and v. Since H2,n is a spanning subgraph of H2r,n , H2r,n is 1∗ -spanning connected.
ch014.tex
344
25/7/2008
14: 27
Page 344
Graph Theory and Interconnection Networks
LEMMA 14.6 Let v and k be any two distinct positive integers with v > k. Let G be a graph with V (G ) = {0, 1, . . . , v} and E(G ) = {{i, j} | 1 ≤ |i − j| ≤ k}. Then there is a k ∗ -container of G between u = 0 and v. Proof: Let v − 1 = qk + r for some two integers q and r with 0 ≤ r ≤ k − 1. Since v > k, p ≥ 1. Case 1. r = 0. We set Pi = 0, i, i + k, . . . , i + (q − 1)k, v for every i ≤ k. Then {P1 , P2 , . . . , Pk } forms a k ∗ -container of G between u and v. Case 2. r ≥ 1. We set Pi = 0, i, i + k, . . . , i + qk, v for every 1 ≤ i ≤ r and Pj =
0, j, j + k, . . . , j + (q − 1)k, v for every r + 1 ≤ j ≤ k. Then {P1 , P2 , . . . , Pk } forms a k ∗ -container of G between u and v. LEMMA 14.7 Let n ≥ 4 and 2 ≤ r ≤ (n/2) − 1. Then H2r,n is w∗ -connected with w ∈ {2r − 1, 2r}. Proof: Let u and v be any two distinct vertices of H2r,n . Without loss of generality, we assume that u = 0 and 1 ≤ v ≤ n/2. We have the following cases: Case 1. v = 1. We set Pi = 0, i + 1, v for every 1 ≤ i ≤ r − 1, Pj = 0, n − 1 + r − j, v for every r ≤ j ≤ 2r − 2, P2r−1 = 0, n − r, n − r − 1, . . . , r + 1, v, and P2r =
0, v. Then {P1 , P2 , . . . , P2r−1 } forms a (2r − 1)∗ -container of H2r,n between u and v and {P1 , P2 , . . . , P2r } forms a (2r)∗ -container of H2r,n between u and v. Case 2. 1 < v < r. We set Pi = 0, i, v for every 1 ≤ i ≤ v − 1, Pj = 0, j + 1, v for every v ≤ j ≤ r − 1, and Pt = 0, n − 1 + r − t, v for every r ≤ t ≤ 2r − v − 1. Let H be a subgraph of H2r,n induced by {0, n − r + v − 1, n − r + v − 2, . . . , r + 1, v}. By Lemma 14.6, there is a v∗ -container {P2r−v , P2r−v+1 , . . . , P2r−1 } of H between u and v. We set P2r = 0, v. Then {P1 , P2 , . . . , P2r−1 } forms a (2r − 1)∗ -container of H2r,n between u and v and {P1 , P2 , . . . , P2r } forms a (2r)∗ -container of H2r,n between u and v. Case 3. v = r. Let H be a subgraph of H2r,n induced by {0, n − 1, n − 2, . . . , v}. By Lemma 14.6, there is a r ∗ -container {P1 , P2 , . . . , Pr } of H between u and v. We set Pi = 0, i − r, v for every r + 1 ≤ i ≤ 2r − 1 and P2r = 0, v. Then {P1 , P2 , . . . , P2r−1 } forms a (2r − 1)∗ -container of H2r,n between 0 and v and {P1 , P2 , . . . , P2r } forms a (2r)∗ -container of H2r,n between u and v. Case 4. v > r. Let H1 be a subgraph of H2r,n induced by {0, 1, 2, . . . , v} and H2 be a subgraph of H2r,n induced by {0, n − 1, n − 2, . . . , v}. By Lemma 14.6, there is a r ∗ -container {P1 , P2 , . . . , Pr } of H1 between u and v. Case 4.1. By Lemma 14.6, there is a (r − 1)∗ -container {Pr+1 , Pr+2 , . . . , P2r−1 } of H2 between u and v. Then {P1 , P2 , . . . , P2r−1 } forms a (2r − 1)∗ -container of H2r,n between u and v. Case 4.2. By Lemma 14.6, there is a r ∗ -container {Pr+1 , Pr+2 , . . . , P2r } of H2 between u and v. Then {P1 , P2 , . . . , P2r } forms a 2r ∗ -container of H2r,n between u and v.
ch014.tex
25/7/2008
14: 27
Page 345
Spanning Connectivity
345
FIGURE 14.2 Illustration for K4 ∨ (K3 + K3 ).
LEMMA 14.8 H2r,n is super spanning connected if n ≥ 4 and 2 ≤ r ≤ n/2. Proof: Let t = n2 . Since H2t,n = Kn , H2t,n is super spanning connected. By Lemmas 14.5 and 14.7, H2,n is super spanning connected. Thus, we assume that 3 ≤ r ≤ (n/2) − 1. Since 3 ≤ (n/2) − 1, n ≥ 8. Note that H2i,n is a spanning subgraph of H2j,n if 1 ≤ i ≤ j ≤ (n/2) − 1. By Lemma 14.7, H2r,n is w∗ -connected for every 3 ≤ w ≤ 2r. Hence, H2r,n is super spanning connected if n ≥ 4 and 2 ≤ r ≤ (n/2).
Example 14.1 κ(G) = κ∗ (G) = κ(G). Let G = Ka ∨ (Kb + Kb ) with a ≥ 4 and b ≥ 2. Obviously, κ(G) = κ(G) = a. By Corollary 14.3, κ(G) = κ∗ (G) = κ(G) = a. See Figure 14.2. 2
Example 14.2 κ(G) = κ∗ (G) < κ(G). Let G = Ka,a,a be the complete 3-partite graph with vertex partite set V1 , V2 , and V3 where |V1 | = |V2 | = |V3 | = a ≥ 3. Obviously, κ(G) = 2a and κ(G) = a + 2. By Lemma 14.4, κ∗ (G) = a + 2. 2
Example 14.3 κ(G) < κ∗ (G) = κ(G). Let G be the Harary graph H2s,n where s is a positive integer with s > 3. In Example 7.2, we know that κ(G) = δ(G) = 2s. By Lemma 14.8, κ∗ (G) = 2s. Thus, G is super spanning connected. Suppose that we choose n = 4(s − 1). Then κ(G) = 2δ(G) − n(G) + 2 = 6. Thus, κ(G) < κ∗ (G) = κ(G). 2
Example 14.4 κ(G) < κ∗ (G) < κ(G). Let G = Ka ∨ (Kbc + Kc ) for a ≥ b + c, b ≥ 2, and c ≥ 2. Obviously, κ(G) = a and κ(G) = a − b − c + 2. Since G − Ka = Kbc + Kc , G − Ka has b + 1 components. By Lemma 14.3, G is not w∗ -connected for all w > a − b + 1. Thus, κ(G) = a > a − b + 1 ≥ κ∗ (G). It is easy to construct a w∗ -container joining any two vertices u, v in G. Hence, κ∗ (G) = a − b + 1. 2
We can also study the spanning connectivity of a faulty graph.
ch014.tex
346
25/7/2008
14: 27
Page 346
Graph Theory and Interconnection Networks
LEMMA 14.9 Assume that G is a graph with at least four vertices and δ(G) ≥ (n(G)/2) + 1. Let T be a vertex subset of G with |T | ≤ κ(G) − 3. Then the graph G − T is 1∗ -connected. Proof: Suppose that G is a complete graph. Obviously, G − T is also a complete graph. Thus, G − T is 1∗ -connected. Thus, we assume that δ(G) ≤ n(G) − 2. By Theorem 9.13, G is 1∗ -connected if |T | = 0. Thus, we assume that 1 ≤ t = |T | ≤ κ(G) − 3. Case 1. n(G) = 2s and δ(G) = s + r for some 1 ≤ r ≤ s − 2. Since t ≤ κ(G) − 3 = (2δ(G) − n(G) + 2) − 3 = (2r + 2) − 3, r ≥ (t + 1)/2. Case 1.1. t = 2a for some a ≥ 1. Obviously, δ(G − T ) ≥ δ(G) − |T | = s + r − t ≥ s + (t + 1)/2 − t = s − a + 1/2. Since δ(G − T ) is an integer, δ(G − T ) ≥ s − a + 1 = (n(G − T )/2) + 1. By Theorem 9.13, G − T is 1∗ connected. Case 1.2. t = 2a + 1 for some a ≥ 0. Choose an element z in T , and set T = T − {z}. We claim that G − T is 1∗ -connected. Suppose that T = ∅. Obviously, G − T is 1∗ -connected. Suppose that T = ∅. Since |T | = 2a, by Case 1.1, G − T is 1∗ connected. Let P = x1 , . . . , xi , . . . , x2s−2a where x1 = u, x2s−2a = v, and xi = z, be a Hamiltonian path of G − T joining u to v. Suppose that {xi−1 , xi+1 } ∈ E(G). Then x1 , . . . , xi−1 , xi+1 , . . . , x2s−2a forms a Hamiltonian path of G − T joining u to v. Thus, we assume that {xi−1 , xi+1 } ∈ / E(G). Since r ≥ (t + 1)/2 = a + 1 and n(G − T ) = 2s − 2a − 1, degG−T (xi−1 ) + degG−T (xi+1 ) ≥ 2δ(G − T ) ≥ 2δ(G) − 2|T | = 2s + 2r − 4a − 2 ≥ n(G − T ) + 1. Therefore, there exists an index j ∈ {1, 2, . . . , i − 2} ∪ {i + 2, . . . , 2s − 2a} such that {xj , xi−1 } ∈ E(G) and {xj+1 , xi+1 } ∈ E(G). Suppose j ∈ {1, . . . , i − 2}. Then x1 , . . . , xj , xi−1 , xi−2 , . . . , xj+1 , xi+1 , xi+2 , . . . , x2s−2a forms a Hamiltonian path of G − T joining u to v. Suppose j ∈ {i + 2, . . . , 2s − 2a}. Then x1 , . . . , xi−1 , xj , xj−1 , xj−2 , . . . , xi+1 , xj+1 , xj+2 , . . . , x2s−2a forms a Hamiltonian path of G − T joining u to v. Case 2. n(G) = 2s + 1 and δ(G) = s + r + 1 for some 1 ≤ r ≤ s − 2. Since t ≤ κ(G) − 3 = (2δ(G) − n(G) + 2) − 3 = 2r, δ(G) ≥ s + (t/2) + 1. Case 2.1. t = 2a + 1 for some a ≥ 0. Since δ(G − T ) is a positive integer and δ(G − T ) ≥ δ(G) − t ≥ s + (t/2) + 1 − t = s − ((2a + 1)/2) + 1, δ(G − T ) ≥ ((2s + 1 − (2a + 1))/2) + 1 = (n(G − T )/2) + 1. By Theorem 9.13, G − T is 1∗ -connected. Case 2.2. t = 2a for some a ≥ 1. Choose an element z in T , and set T = T − {z}. Obviously, |T | = 2a − 1. By Case 2.1, G − T is 1∗ -connected. Let P =
x1 , x2 , . . . , xi , . . . , x2s−2a+2 be a Hamiltonian path of G − T joining u to v with where x1 = u, x2s−2a+2 = v, and xi = z. Suppose that {xi−1 , xi+1 } ∈ E(G). Obviously, x1 , . . . , xi−1 , xi+1 , . . . , x2s−2a+2 forms a Hamiltonian path of G − T joining u to v. Suppose that {xi−1 , xi+1 } ∈ / E(G). Since r ≥ t/2 = a and n(G − T ) = 2s − 2a + 1, degG−T (xi−1 ) + degG−T (xi+1 ) ≥ 2δ(G − T ) ≥ 2δ(G) − 2|T | = 2s + 2r + 2 − 4a ≥ n(G − T ) + 1. There exists an index j ∈ {1, . . . , i − 2} ∪ {i + 2, . . . , 2s − 2a + 2} such that {xj , xi−1 } ∈ E(G) and {xj+1 , xi+1 } ∈ E(G). We use the same reasoning as in Case 1.2 to find a Hamiltonian path of G − T joining u to v.
ch014.tex
25/7/2008
14: 27
Page 347
Spanning Connectivity
347
THEOREM 14.3 Assume that G is a graph with (n(G)/2) + 1 ≤ δ(G) ≤ n(G) − 2 and n(G) ≥ 6. Suppose that T is a vertex subset of G with |T | ≤ κ(G) − 3. Then κ∗ (G − T ) ≥ κ(G) − |T |. Proof: Assume that |T | = t. By Theorem 14.2, this statement holds on t = 0. Thus, we suppose that t ≥ 1. By Lemma 14.9, G − T is 1∗ -connected. Since every 1∗ -connected graph except K1 and K2 is also 2∗ -connected, G − T is 2∗ connected. To prove our theorem, we still need to construct a k ∗ -container of G − T between any two distinct vertices u and v for any 3 ≤ k ≤ κ(G) − t. By Lemma 14.2, |NG (u) ∩ NG (v)| ≥ κ(G) − 2. Thus, |NG−T (u) ∩ NG−T (v)| ≥ k − 2. Let S = {z1 , . . . , zk−2 } be a (k − 2) vertex subset of NG−T (u) ∩ NG−T (v). Since k ≤ κ(G) − t, this implies that δ(G) ≥ (n(G) + k + t − 2)/2 and δ(G − (S ∪ T )) ≥ δ(G) − |S ∪ T | ≥ ((n(G) + k + t − 2)/2) − (k − 2 + t) = (n(G) − k + t + 2)/2 = n(G − (S ∪ T ))/2. By Theorem 9.2, there is a 2∗ -container {R1 , R2 } of G − (S ∪ T ) between u and v. We set that Pi = Ri for 1 ≤ i ≤ 2, and Pi = u, zi−2 , v for 3 ≤ i ≤ k. Then {P1 , P2 , . . . , Pk } forms a k ∗ -container of G − T between u and v. The following example shows that the inequality in Theorem 14.3 is tight.
Example 14.5 Assume that a is any positive integer with a ≥ 3. Let G be the complete 3-partite graph Ka,a,a with the vertex partite sets V1 , V2 , and V3 . Obviously, n(G) = 3a, δ(G) = 2a. Hence, κ(G) = 2δ(G) − n(G) + 2 = a + 2. Let T be a vertex subset of V (G) with |T | = t ≤ κ(G) − 3 = a − 1. By Theorem 14.3, κ∗ (G − T ) ≥ κ(G) − t = a + 2 − t. However, it is possible to find a vertex subset of V (G) with |T | = t ≤ a − 1 such that κ∗ (G − T ) = κ(G) − t = a + 2 − t. Let T be a subset of V2 ∪ V3 with |T | = t. Let u and v be any two distinct vertices in V1 . Suppose that there exists an (a − t + 3)∗ -container C(u, v) = {P1 , P2 , . . . , Pa−t+3 } of G − T between u and v. Let A = {i | l(Pi ) = 2 for 1 ≤ i ≤ a − t + 3} and B = {1, 2, . . . , a − t + 3} − A. Obviously, a+3 i=1 |V (Pi ) ∩ ((V2 ∪ V3 ) − T )| = 2a − t. Let P be any path of G − T joining u to v. Obviously, |V (P) ∩ (V1 − {u, v})| ≤ |V (P) ∩ ((V2 ∪ V3 ) − T )| − 1. Since C(u, v) is an (a − t + 3)∗ -container of G between u and v, a−t+3 |V (Pi ) ∩ (V1 − {u, v})| = a − 2. Since |V (Pi ) ∩ ((V2 ∪ V3 ) − T )| ≥ 1 and i=1 |V (Pi ) ∩ (V1 − {u, v})| for every i ∈ B, a−t+3 i = 1 |V (Pi ) ∩ ≤ |V (Pi ) ∩ ((V2 ∪ V3 ) − T )| − 1 T )| = i ∈ B |V (Pi ) ∩ (V2 ∪ V3 )| + |A| = i ∈ B (|V (Pi ) ∩ (V2 ∪ V3 )| − 1) + ((V2 ∪ V3 ) − |B| + |A| ≥ i ∈ B |V (Pi ) ∩ (V1 − {u, v})| + a − t + 3 = 2a − t + 1. We obtained a contra |V (Pi ) ∩ ((V2 ∪ V3 ) − T )| = 2a − t. 2 diction because a−t+3 i=1
14.3
SPANNING CONNECTIVITY AND SPANNING LACEABILITY OF THE HYPERCUBE-LIKE NETWORKS
Among all interconnection networks proposed in the literature, the hypercube Qn is one of the most popular topologies [220]. Chang et al. [43] study the spanning laceability of Qn . Lin et al. [239] discuss the spanning connectivity and the spanning laceability of hypercube-like networks.
ch014.tex
25/7/2008
348
14: 27
Page 348
Graph Theory and Interconnection Networks
As noted in Chapter 3, the hypercube does not have the smallest diameter for its resources. Various networks are proposed by twisting some pairs of links in hypercubes [1,76,93,94]. Because of the lack of the unified perspective on these variants, results of one topology are hard to extend to others. To make a unified study of these variants, Vaidya et al. introduced the class of hypercube-like graphs [322]. We denote these graphs as H -graphs. The class of H -graphs, consisting of simple, connected, and undirected graphs, contains most of the hypercube variants. The hypercube-like graphs are constructed using the operation G0 ⊕ G1 discussed in Chapter 7. Here, we recall the definition of G0 ⊕ G1 . Suppose that G0 = (V0 , E0 ) and G1 = (V1 , E1 ) are two disjoint graphs with |V0 | = |V1 |. A 1-1 connection between G0 and G1 is defined as an edge set Er = {(v, φ(v)) | v ∈ V0 , φ(v) ∈ V1 and φ : V0 → V1 is a bijection}. G0 ⊕ G1 denotes the graph G = (V0 ∪ V1 , E0 ∪ E1 ∪ Er ). Thus, φ induces a perfect matching M in G0 ⊕ G1 . For convenience, G0 and G1 are called components. Let x be any vertex of G0 ⊕ G1 . We use x to denote the vertex matched under φ. Now, we can define the set of n-dimensional H -graph, Hn , as follows: 1. H1 = {K2 }, where K2 is the complete graph with two vertices. . 2. Assume that G0 , G1 ∈ Hn . Then G = G0 ⊕ G1 is a graph in Hn+1 Note that some n-dimensional H -graphs are bipartite. We can define the set of bipartite n-dimensional H -graph, Bn , as follows: 1. B1 = {K2 }, where K2 is the complete graph defined on {a, b} with bipartition V0 = {a} and V1 = {b}. 2. For i = 0, 1, let Gi be a graph in Bn with bipartition V0i and V1i . Then G = G0 ⊕ G1 is a graph in Bn+1 where φ is a perfect matching between 0 0 1 1 1 V0 ∪ V1 and V0 ∪ V1 such that M joining vertices in Vi0 to vertices in V1−i if v ∈ Vi0 . Every graph in Hn is an n-regular graph with 2n vertices, and every graph in Bn contains 2n−1 vertices in each bipartition. We use Nn to denote the set of nonbipartite graphs in Hn . Clearly, we have Qn ∈ Bn . By brute force, we can check whether Q1 is the only graph in H1 and Q2 is the only graph in H2 . Thus, we have the following lemma. LEMMA 14.10 Assume that G is graph in Nn . Then n ≥ 3. The following lemma follows from Theorem 11.15. LEMMA 14.11 Let n ≥ 3. Every graph in Nn is Hamiltonian connected and Hamiltonian. The following lemma follows from Theorem 11.17. LEMMA 14.12 Every graph in Bn is Hamiltonian laceable and every graph in Bn is Hamiltonian if n ≥ 2.
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 349
349
THEOREM 14.4 [268] Let n ≥ 2. Suppose that G is a graph in Bn with bipartition V0 and V1 . Suppose that u1 and u2 are two distinct vertices in Vi and that v1 and v2 are two distinct vertices in V1−i with i ∈ {0, 1}. Then there are two disjoint paths P1 and P2 of G such that (1) P1 joins u1 to v1 , (2) P2 joins u2 to v2 , and (3) P1 ∪ P2 spans G. Proof: We prove this theorem by induction on n. Clearly, Q2 is the only graph in B2 and this theorem holds on Q2 . Moreover, Q3 is the only graph in B3 and this theorem holds on Q3 . Suppose that this theorem holds for every graph in Bn−1 with n ≥ 4. Let i i G = G0 ⊕ G1 be a graph in Bn . Let V0 and V1 be the bipartition of Gi for i = 0, 1. Without loss of generality, we assume that V00 ∪ V01 and V10 ∪ V11 form the bipartition of G. Suppose that u1 and u2 are two distinct vertices in V00 ∪ V01 and v1 and v2 are two distinct vertices in V10 ∪ V11 . Without loss of generality, we assume that u1 is a vertex in V00 . We have the following cases: Case 1. u2 in V00 , v1 in V10 , and v2 in V10 . By induction, there are two disjoint paths R1 and R2 of G0 such that (1) R1 joins u1 to v1 , (2) R2 joins u2 to v2 , and (3) R1 ∪ R2 spans G0 . Without loss of generality, we write R2 = u2 , z, R, v2 . By Theorem 14.12, there is a Hamiltonian path Q of G1 joining u2 to z. We set P1 = R1 and P2 = u2 , u2 , Q, z, z, R, v2 . Then P1 and P2 form the desired paths. Case 2. u2 in V00 , v1 in V10 , and v2 in V11 . Let z be any vertex in V01 − {v1 }. By induction, there are two disjoint paths R1 and R2 of G0 such that (1) R1 joins u1 to v1 , (2) R2 joins u2 to z, and (3) R1 ∪ R2 spans G0 . By Theorem 14.12, there is a Hamiltonian path Q of G1 joining z to v2 . We set P1 = R1 and P2 = u2 , R2 , z, z, Q, v2 . Then P1 and P2 form the desired paths. Case 3. u2 in V00 , v1 in V11 , and v2 in V11 . Let y and z be any two distinct vertices in V01 . By induction, there are two disjoint paths R1 and R2 of G0 such that (1) R1 joins u1 to y, (2) R2 joins u2 to z, and (3) R1 ∪ R2 spans G0 . Moreover, there are two disjoint paths Q1 and Q2 of G1 such that (1) Q1 joins y to v1 , (2) Q2 joins z to v2 , and (3) Q1 ∪ Q2 spans G1 . We set P1 = u1 , R1 , y, y, Q1 , v1 and P2 = u2 , R2 , z, z, Q2 , v2 . Then P1 and P2 form the desired paths. Case 4. u2 in V01 , v1 in V10 , and v2 in V11 . By Theorem 14.12, there is a Hamiltonian path P1 of G0 joining u1 to v1 . Moreover, there is a Hamiltonian path P2 of G1 joining u2 to v2 . Then P1 and P2 form the desired paths. Case 5. u2 in V01 , v1 in V11 , and v2 in V10 . By Theorem 14.12, there is a Hamiltonian path P of G0 joining u1 to v2 . We write P = u1 = z1 , z2 , z3 , . . . , z2n−1 = v2 . Since n ≥ 4, 2n−1 ≥ 8. Thus, this is an index t in {1, 2, 3} such that {z2t , z2t+1 } ∩ {u2 , v1 } = ∅. By induction, there are two disjoint paths Q1 and Q2 of G1 such that (1) Q1 joins z2t to v1 , (2) Q2 joins u2 to z2t+1 , and (3) Q1 ∪ Q2 spans G1 . We set P1 = u1 = z1 , z2 , . . . , z2t , z2t , Q1 , v1 and P2 = u2 , Q2 , z2t+1 , z2t+1 , z2t , . . . , z2n−1 = v2 . Then P1 and P2 form the desired paths. THEOREM 14.5 Let G be a graph in Bn with bipartition V0 and V1 for n ≥ 2. Suppose that z is a vertex in Vi and that u and v are two distinct vertices in V1−i with i ∈ {0, 1}. Then there is a Hamiltonian path of G − {z} joining u to v.
ch014.tex
25/7/2008
14: 27
Page 350
350
Graph Theory and Interconnection Networks
Proof: We prove this statement by induction on n. Since Q2 is the only graph in B2 , it is easy to check whether this statement holds for n = 2. Thus, we assume that for i = 0, 1. Let V0i and V1i be the G = G0 ⊕ G1 in Bn with n ≥ 3. We have Gi ∈ Bn−1 bipartition of Gi for i = 0, 1. Without loss of generality, we assume that V00 ∪ V01 and V10 ∪ V11 form the bipartition of G. Let z be any vertex in V10 ∪ V11 , and let u and v be any two distinct vertices in V00 ∪ V01 . We need to show that there is a Hamiltonian path of G − {z} joining u to v. Without loss of generality, we assume that z ∈ V10 . We have the following cases: Case 1. u ∈ V00 and v ∈ V00 . By induction, there is a Hamiltonian path Q in G0 − {z} joining u to v. Without loss of generality, we write Q as u, x, R, v. Since u ∈ V00 , x ∈ V10 . By Lemma 14.12, there is a Hamiltonian path W of G1 joining the vertex u ∈ V11 to the vertex x ∈ V01 . Then u, u, W , x, x, R, v is the Hamiltonian path of G − {z} joining u to v. See Figure 14.3a for illustration. Case 2. u ∈ V00 and v ∈ V10 . Since n ≥ 3, |V00 | = 2n−1 ≥ 2. We can choose a vertex x in V00 − {u}. By induction, there is a Hamiltonian path Q in G0 − {z} joining u to x. Since x ∈ V00 , x ∈ V11 . By Lemma 14.12, there is a Hamiltonian path W of G1 joining x to v. Then u, Q, x, x, W , v is the Hamiltonian path of G − {z} joining u to v. See Figure 14.3b for illustration. Case 3. u ∈ V01 and v ∈ V01 . We can choose a vertex x in V11 . By Lemma 14.12, there is a Hamiltonian path W in G1 joining u to x. Without loss of generality, we write W as u, W1 , y, v, W2 , x. Since v ∈ V01 , y ∈ V11 . By induction, there is a Hamiltonian path Q in G0 − {z} joining the vertex y ∈ V00 to the vertex x ∈ V00 . Then u, W1 , y, y, Q, x, x, W2−1 , v is the Hamiltonian path of G − {z} joining u to v. See Figure 14.3c for illustration. Let n be any positive integer. To prove that every graph in Bn is w∗ -laceable for every w, 1 ≤ w ≤ n, we need the concept of spanning fan. We note that there is another Menger-type theorem. Let u be a vertex of G and S = {v1 , v2 , . . . , vk } be a subset of V (G) not including u. An (u, S)-fan is a set of disjoint paths {P1 , P2 , . . . , Pk } of G such that Pi joins u and vi . By Theorem 7.8, a graph G is k-connected if and only if there exists a (u, S)-fan between any vertex u and any k-subset of V (G) such that u∈ / S. Thus, we define a spanning fan as a fan that spans G. Naturally, we can study ∗ (G) as the largest integer k such that there exists a spanning (u, S)-fan between any κfan vertex u and any k-vertex subset S with u ∈ / S. However, we defer such a study for the following reasons. G0{z} u x R v
G1
u W x
(a)
G0{z} u
G0{z}
G1 x
R
W
x
v
(b)
FIGURE 14.3 Illustrations for Theorem 14.5.
y R x
G1 u W1 y v 1 W2 x (c)
ch014.tex
25/7/2008
14: 27
Page 351
Spanning Connectivity
351
First, let S be a cut set of a graph G. Let u be any vertex of V (G) − S. It is easy ∗ (G) < κ(G) if G is not a to see that there is no spanning (u, S)-fan in G. Thus, κfan complete graph. Second, let G be a bipartite graph with bipartition V0 and V1 and |V0 | = |V1 |. Let u be a vertex in Vi , S = {v1 , v2 , . . . , vk } be a subset of G not containing u, and k ≤ κ(G). Suppose that |S ∩ V1−i | = r. Without loss of generality, we assume that {v1 , v2 , . . . , vr } ⊂ V1−i . Let {P1 , P2 , . . . , Pk } be any spanning (u, S)-fan of G. Then l(Pi ) is odd if i ≤ r, and l(Pi ) is even if r < i ≤ k. Let l(Pi ) = 2ti + 1 if i ≤ r and l(Pi ) = 2ti if i > r. For i ≤ r, there are ti − 1 vertices of Pi in Vi other than u and there are ti vertices of Pi in V1−i . For i > r, there are ri vertices of Pi in Vi other than u and there are ti vertices of Pi in V1−i . Thus, |Vi | = 1 − r + ki=1 ti and |V1−i | = ki=1 ti . Since |Vi | = |V1−i |, r = 1. Thus, r = 1 is a requirement as we study the spanning fan of bipartite graphs with equal size of bipartition. THEOREM 14.6 Let n and k be any two positive integers with k ≤ n. Let G be a graph in Bn with bipartition V0 and V1 . There exists a spanning (u, S)-fan in G for any vertex u in Vi and any vertex subset S with |S| ≤ n such that |S ∩ V1−i | = 1 with i ∈ {0, 1}. Proof: We prove this statement by induction on n. Let G = G0 ⊕ G1 in Bn such that V0i and V1i are the bipartition of Gi for every i = 0, 1. Without loss of generality, we assume that V00 ∪ V01 and V10 ∪ V11 form the bipartition of G. Let u be any vertex in V00 ∪ V10 and S = {v1 , v2 , . . . , vk } be any vertex subset in G − {u} with v1 being the unique vertex in (V10 ∪ V11 ) ∩ S. Without loss of generality, we assume that u ∈ V00 . By Lemma 14.12, this statement holds for k = 1. Thus, we assume that k = 2 and n ≥ 2. By Lemma 14.12, there is a Hamiltonian path P of G joining v1 to v2 . Without loss of generality, we write P as v1 , P1 , u, P2 , v2 . Then {P1 , P2 } forms the spanning (u, S)-fan of G. Thus, this statement holds for k = 2. Moreover, this statement holds for n = 2. We assume that 3 ≤ k ≤ n. Suppose that this statement holds for Bn−1 , and Gi ∈ Bn−1 for i = 0 and 1. Without loss of generality, we assume that u ∈ G0 . Let T = S − {v1 }. We have the following cases: Case 1. |T ∩ V00 | = |T |. Then vi ∈ V00 for every i, 2 ≤ i ≤ k. Case 1.1. v1 ∈ V01 . Let H = S − {vk }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)-fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that Pi is joining u to vi for every i, 1 ≤ i ≤ k − 1. Suppose that vk ∈ V (P1 ). Without loss of generality, we write P1 as
u, Q1 , vk , x, Q2 , v1 . Since vk ∈ V00 , x ∈ V10 . (Note that x = v1 if l(Q2 ) = 0.) By Lemma 14.12, there is a Hamiltonian path R of G1 joining vertex u ∈ V11 to vertex x ∈ V01 . We set W1 = u, u, R, x, x, Q2 , v1 , Wi = Pi for every i, 2 ≤ i ≤ k − 1, and Wk = u, Q1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.4a for illustration, where k = 6. Suppose that vk ∈ V (Pi ) for some 2 ≤ i ≤ k − 1. Without loss of generality, we assume that vk ∈ V (Pk−1 ) and we write Pk−1 as u, Q1 , vk , x, Q2 , vk−1 . Since vk ∈ V00 , x ∈ V10 . By Lemma 14.12, there is a Hamiltonian path R of G1 joining vertex u ∈ V11 to vertex x ∈ V01 . We set Wi = Pi for every i ∈ k − 2, Wk−1 = u, u, R, x, x, Q2 , vk−1 ,
ch014.tex
25/7/2008
14: 27
Page 352
352
Graph Theory and Interconnection Networks
G0 u
v6 x
G1 G0 u
u
x
x
v2 v3 v4 v5 v1
y
y
G1 G0 u
v1 x
(c)
x
u x
v6 y
G1
u
y
v2 v3 v4 v5 x
(b) v1
x (d)
v6
v1 v2 v3 v4 v5
v6 v2 v3 v4 v5 x
y
x
(a)
G0 u
G1 G 0 u
u v6
v1 y
v2 v3 v4 v5
G1 G 0 u
x v6 y
v1
x
G1
y
v2 v3 v4 v5 (e)
(f)
FIGURE 14.4 Illustrations for Case 1 of Theorem 14.6.
and Wk = u, Q1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.4b for illustration, where k = 6. Case 1.2. v1 ∈ V11 . We choose a vertex x in V10 . Let H = (T ∪ {x}) − {vk }. So H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that P1 is joining u to x and Pi is joining u to vi for every 2 ≤ i ≤ k − 1. We have u ∈ V11 and x ∈ V10 . Case 1.2.1. vk ∈ V (P1 ). Without loss of generality, we write P1 as u, Q1 , y, vk , Q2 , x. Since vk ∈ V00 , y ∈ V10 and y ∈ V01 . Suppose that v1 = u. By Theorem 14.4, there are two disjoint paths R1 and R2 in G1 such that (1) R1 joins y to v1 , (2) R2 joins u to x, and (3) R1 ∪ R2 spans G1 . We set W1 = u, Q1 , y, y, R1 , v1 , Wi = Pi for every 2 ≤ i ≤ k − 1, and Wk = u, u, R2 , x, x, Q2−1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.4c for illustration, where k = 6. Suppose that v1 = u. By Theorem 14.5, there is a Hamiltonian path R of G1 − {v1 } joining y to x. We set W1 = u, u = v1 , Wi = Pi for every 2 ≤ i ≤ k − 1, and Wk = u, Q1 , y, y, R, x, x, Q2−1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.4d for illustration, where k = 6. Case 1.2.2. vk ∈ V (Pi ) for some 2 ≤ i ≤ k − 1. Without loss of generality, we assume that vk ∈ V (Pk−1 ) and we write Pk−1 as u, Q1 , vk , y, Q2 , vk−1 . Since vk ∈ V00 , y ∈ V10 and y ∈ V10 . Suppose that v1 = u. By Theorem 14.4, there are two disjoint paths R1 and R2 in G1 such that (1) R1 joins x to v1 , (2) R2 joins u to y, and (3) R1 ∪ R2 spans G1 . We set W1 = u, P1 , x, x, R1 , v1 , Wi = Pi for every 2 ≤ i ≤ k − 2, Wk−1 =
u, u, R2 , y, y, Q2 , vk−1 , and Wk = u, Q1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.4e for illustration, where k = 6. Suppose that v1 = u. By Theorem 14.5, there is a Hamiltonian path R of G1 − {v1 } joining x to y. We set W1 = u, u = v1 , Wi = Pi for every 2 ≤ i ≤ k − 2, Wk−1 = u, P1 , x, x, R, y, y, Q2 , vk−1 , and Wk = u, Q1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.4f for illustration, where k = 6.
ch014.tex
25/7/2008
14: 27
Page 353
Spanning Connectivity
353
G0 u
u
v1 v2 v3 v4 v5
v6
G1 G 0 u
u x
v6
v2 v3 v4 v5
(a)
G1
x
v1
(b)
FIGURE 14.5 Illustrations for Case 2 of Theorem 14.6.
Case 2. |T ∩ V01 | = 1. Without loss of generality, we assume that vk ∈ V01 . We have u ∈ V11 . Case 2.1. v1 ∈ V10 . Let H = S − {vk }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)-fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that Pi is joining u to vi for every 1 ≤ i ≤ k − 1. By Lemma 14.12, there is a Hamiltonian path R of G1 joining u to vk . We set Pk = u, u, R, vk . Then {P1 , P2 , . . . , Pk } is the spanning (u, S)-fan of G. See Figure 14.5a for illustration, where k = 6. Case 2.2. v1 ∈ V11 . By Lemma 14.12, there is a Hamiltonian path R of G1 joining v1 to vk . Without loss of generality, we write R as v1 , R1 , u, x, R2 , vk . (Note that v1 = u if l(R1 ) = 0 and x = vk if l(R2 ) = 0.) Since u ∈ V11 , x ∈ V01 and x ∈ V10 . Let H = (T ∪ {x}) − {vk }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)-fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that P1 is joining u to x and Pi is joining u to vi for every 2 ≤ i ≤ k − 1. We set W1 = u, u, R1−1 , v1 , Wi = Pi for every 2 ≤ i ≤ k − 1, and Wk = u, P1 , x, x, R2 , vk . Then {W1 , W2 , . . . , Wk } is the (u, S)-fan of G. See Figure 14.5b for illustration, where k = 6. Case 3. |T ∩ V01 | = 2. Without loss of generality, we assume that {vk−1 , vk } ⊂ V01 . We have |V00 | ≥ n ≥ k. We can choose a vertex x in V00 − {u, v2 , v3 , . . . , vk−2 }. Obviously, {x, u} ⊂ V11 with x = u. By Theorem 14.4, there are two disjoint paths R1 and R2 in G1 such that (1) R1 joins x to vk−1 , (2) R2 joins u to vk , and (3) R1 ∪ R2 spans G1 . Case 3.1. v1 ∈ V10 . Let H = (S ∪ {x}) − {vk−1 , vk }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)-fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that Pi is joining u to vi for every 1 ≤ i ≤ k − 1 and Pk−1 is joining u to x. We set Wi = Pi for every 1 ≤ i ≤ k − 2, Wk−1 = u, Pk−1 , x, x, R1 , vk−1 , and Wk = u, u, R2 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.6a for illustration, where k = 6. Case 3.2. v1 ∈ V11 and v1 ∈ V (R1 ). Without loss of generality, we write R1 as
x, Q1 , v1 , y, Q2 , vk−1 . Since v1 ∈ V11 , y ∈ V01 and y ∈ V10 . Let H = (T ∪ {x, y}) − {vk−1 , vk }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)-fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that P1 is joining u to x, Pi is joining u to vi for every i ∈ k − 2, and Pk−1 is joining u to y. We set W1 = u, P1 , x, x, Q1 , v1 , Wi = Pi for every 2 ≤ i ≤ k − 1,
ch014.tex
25/7/2008
14: 27
Page 354
354
Graph Theory and Interconnection Networks
G0 u
u
G1 G0 u y
v6 v1 v2 v3 v4 x
x (a)
v5 y v1
v5
v2 v3 v4 x
u G1 G0 u v6
x (b)
v5
y v2 v3 v4 x
x
u G1 v1 y v6
(c)
FIGURE 14.6 Illustrations for Case 3 of Theorem 14.6.
Wk−1 = u, Pk−1 , y, y, Q2 , vk−1 , and Wk = u, u, R2 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.6b for illustration, where k = 6. Case 3.3. v1 ∈ V11 and v1 ∈ V (R2 ). Without loss of generality, we write R2 as u, Q1 , v1 , y, Q2 , vk . Since v1 ∈ V11 , y ∈ V01 and y ∈ V10 . Let H = (T ∪ {x, y}) − {vk−1 , vk }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H| = k − 1. By induction, there is a spanning (u, H)-fan {P1 , P2 , . . . , Pk−1 } of G0 . Without loss of generality, we assume that P1 is joining u to x, Pi is joining u to vi for every 2 ≤ i ≤ k − 2, and Pk−1 is joining u to y. We set W1 = u, u, Q1 , v1 , Wi = Pi for every 2 ≤ i ≤ k − 2, Wk−1 = u, P1 , x, x, R1 , vk−1 , and Wk = u, Pk−1 , y, y, Q2 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.6c for illustration, where k = 6. Case 4. |T ∩ V01 | ≥ 3 and |T ∩ V00 | ≥ 1. We have n ≥ k = |S| ≥ 5. Without loss of generality, we assume that A = T ∩ V00 = {v2 , v3 , . . . , vt } and B = T ∩ V01 = {vt+1 , vt+2 , . . . , vk } for some 2 ≤ t ≤ k − 3. Since t ≤ k − 3 and k ≤ n, |A| = t − 1 ≤ n − 4 and |B| ≤ n − 2. Since n ≥ 5, (n−1)|A| + |B| ≤ (n − 1)(n − 4) + (n − 2) < 2n−2 = |V11 |. Thus, we can choose a vertex x in V10 − B such that vi ∈ / NG1 (x) for every 2 ≤ i ≤ t. Since 2 ≤ t ≤ k − 3 and k ≤ n, k − t + 1 ≤ n − 1. Let H = B ∪ {u}. Obviously, H ⊂ G1 , |H ∩ V11 | = 1, and |H| = k − t + 1. By induction, there is a spanning (x, H)-fan {P1 , P2 , . . . , Pk−t+1 } of G1 . Without loss of generality, we assume that P1 is joining x to u and Pi is joining x to vt+i−1 for every 2 ≤ i ≤ k − t + 1. Moreover, we write P1 = x, x1 , R1 , u and Pi = x, xi , Ri , vt+i−1 for every 2 ≤ i ≤ k − t + 1. Since x ∈ V10 , xi ∈ V11 and x i ∈ V00 for every 1 ≤ i ≤ k − t + 1. We set C = {x 2 , x 3 , . . . , x k−t }. Case 4.1. v1 ∈ V10 . Let H = A ∪ C ∪ {v1 }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H | = k − 1. By induction, there is a spanning (u, H )-fan {Q1 , Q2 , . . . , Qk−1 } of G0 . Without loss of generality, we assume that Qi is joining u to vi for every 1 ≤ i ≤ t and Qj is joining u to x j−t+2 for every t + 1 ≤ j ≤ k − 1. We set Wi = u, Qi , vi for every 1 ≤ i ≤ t, Wj = u, Qj , x i−t+2 , xi−t+2 , Ri−t+2 , vj for every t + 1 ≤ j ≤ k − 1, and Wk = u, u, P1−1 , x, Pk−t+1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.7a for illustration, where k = 6 and t = 3. Case 4.2. v1 ∈ V11 and v1 ∈ V (P1 ). Without loss of generality, we write P1 as
x, Z1 , y, v1 , Z2 , u. Since v1 ∈ V11 , y ∈ V01 and y ∈ V10 . Let H = A ∪ C ∩ {y}. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H | = k − 1. By induction, there is a spanning (u, H )-fan {Q1 , Q2 , . . . , Qk−1 } of G0 . Without loss of generality, we assume that Q1 is joining u to y, Qi is joining u to vi for every 2 ≤ i ≤ t, and Qj is joining u to x j−t+2 for every t + 1 ≤ j ≤ k − 1. We set W1 = u, u, Z2−1 , v1 , Wi = u, Qi , vi
ch014.tex
25/7/2008
14: 27
Page 355
Spanning Connectivity
355
u G1 G0 u
G0 u v1
x3
x3
x1
y
x x4
x3
x2
x2
u G1 G0 u
x3 x2
x2
v3
v1 y x x4
v4 v5 v6 (a)
G1 x
y y x3
x3
x2
x2
v3
v2
u
v3
v2
v4 v5 v6 (b)
v2
v4 v5 v6 (c)
FIGURE 14.7 Illustrations for Case 4 of Theorem 14.6.
for every 2 ≤ i ≤ t, Wj = u, Qj , x i−t+2 , xi−t+2 , Ri−t+2 , vj for every t + 1 ≤ j ≤ k − 1, and Wk = u, Q1 , y, y, Z1−1 , x, Pk−t+1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.7b for illustration, where k = 6 and t = 3. Case 4.3. v1 ∈ V11 and v1 ∈ V (Pi ) for some 2 ≤ i ≤ k − t + 1. Without loss of generality, we assume that v1 ∈ V (Pk−t+1 ) and we write Pk−t+1 as x, Z1 , v1 , y, Z2 , vk . Since v1 ∈ V11 , y ∈ V01 and y ∈ V10 . Let H = A ∪ C ∪ {y}. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H | = k − 1. By induction, there is a spanning (u, H )-fan {Q1 , Q2 , . . . , Qk−1 } of G0 . Without loss of generality, we assume that Q1 is joining u to y, Qi is joining u to vi for every 2 ≤ i ≤ t, and Qj is joining u to x j−t+2 for every t + 1 ≤ j ≤ k − 1. We set W1 = u, u, P1−1 , x, Z1 , v1 , Wi = u, Qi , vi for every 2 ≤ i ≤ t, Wj = u, Qj , x i−t+2 , xi−t+2 , Ri−t+2 , vj for every t + 1 ≤ j ≤ k − 1, and Wk = u, Q1 , y, y, Z2 , vk . Then {W1 , W2 , . . . , Wk } forms the spanning (u, S)-fan of G. See Figure 14.7c for illustration, where k = 6 and t = 3. Case 5. |T ∩ V01 | = |T | ≥ 3. Let H = (T ∪ {u}) − {vk }. Obviously, H ⊂ G1 , |H ∩ V11 | = 1, and |H| = k − 1. By induction, there is a spanning (vk , H)-fan {P1 , P2 , . . . , Pk−1 } of G1 . Without loss of generality, we assume that P1 is joining vk to u and Pi is joining vk to vi for every 2 ≤ i ≤ k − 1. Without loss of generality, we write P1 = vk , x1 , R1 , u and write Pi = vk , xi , Ri , vi for every 2 ≤ i ≤ k − 1. Since vk ∈ V10 , xi ∈ V11 and x i ∈ V00 for every 1 ≤ i ≤ k − 1. We set C = {x 2 , x 3 , . . . , x k−t }. Case 5.1. v1 ∈ V10 . Let H = C ∪ {v1 }. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H | = k − 1. By induction, there is a spanning (u, H )-fan {Q1 , Q2 , . . . , Qk−1 } of G0 . Without loss of generality, we assume that Q1 is joining u to v1 and Qi is joining u to x i for every 2 ≤ i ≤ k − 1. We set W1 = Q1 , Wi = u, Qi , x i , xi , Ri , vi for every 2 ≤ i ≤ k − 1, and Wk = u, u, P1−1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.8a for illustration, where k = 6. Case 5.2. v1 ∈ V11 and v1 ∈ V (P1 ). Without loss of generality, we write P1 = vk , Z1 , y, v1 , Z2 , u. Since v1 ∈ V11 , y ∈ V01 and y ∈ V10 . Let H = C ∪ {y}. Obviously, H ⊂ G0 , |H ∩ V01 | = 1, and |H | = k − 1. By induction, there is a spanning (u, H )-fan {Q1 , Q2 , . . . , Qk−1 } of G0 . Without loss of generality, we assume that Q1 is joining u to y and Qi is joining u to x i for every 2 ≤ i ≤ k − 1. We set W1 = u, u, Z2−1 , v1 , Wi = u, Qi , x i , xi , Ri , vi for every 2 ≤ i ≤ k − 1, and
ch014.tex
25/7/2008
14: 27
Page 356
356
Graph Theory and Interconnection Networks
G0 u
u
v1
x1 v6
x2
y
x2 v2 v3 v4 v5 (a)
x2
x2
v2 v3 v4 v5 (b)
y
y x4
x4
x3
x3 x2
G1
x5 v1
x5
x5
x3
v6
u
v6
x4
x4
x3
G1 G 0 u
y
x5
x4
x4
v1
u
x5
x5 x3
G1 G0 u
x3 x2 v2 v3 v4 v5 (c)
FIGURE 14.8 Illustrations for Case 5 of Theorem 14.6 .
Wk = u, Q1 , y, y, Z1−1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.8b for illustration, where k = 6. Case 5.3. v1 ∈ V11 and v1 ∈ V (Pi ) for some 2 ≤ i ≤ k − 1. Without loss of generality, we assume that v1 ∈ V (Pk−1 ) and write Pk−1 = vk , xk−1 , Z1 , v1 , y, Z2 , vk−1 . Since v1 ∈ V11 , y ∈ V01 and y ∈ V10 . Let H = C ∪ {y}. Obviously, H ⊂ G0 , |H ∩ V10 | = 1, and |H | = k − 1. By induction, there is a (u, H )-fan {Q1 , Q2 , . . . , Qk−1 } of G0 . Without loss of generality, we assume that Q1 is joining u to y and Qi is joining u to x i for every 2 ≤ i ≤ k − 1. We set W1 = u, Qk−1 , x k−1 , xk−1 , Z1 , v1 , Wi = u, Qi , x i , xi , Ri , vi for every 2 ≤ i ≤ k − 2, Wk−1 = u, Q1 , y, y, Z2 , vk−1 , and Wk = u, u, P1−1 , vk . Then {W1 , W2 , . . . , Wk } is the spanning (u, S)-fan of G. See Figure 14.8c for illustration, where k = 6. THEOREM 14.7 Every graph in Bn is super spanning laceable for n ≥ 1. Proof: Suppose that G = G0 ⊕ G1 in Bn with bipartition V0 and V1 . Let u be any vertex in V0 and v be any vertex in V1 . We need to show that there is a k ∗ -container of G between u and v for every positive integer k with k ≤ n. By Lemma 14.12, there is a 1∗ -container of G joining u to v. Thus, we assume that k ≥ 2 and n ≥ 2. Since k ≤ n and |NG (v)| = n, we can choose (k − 1) distinct vertices x1 , x2 , . . . , xk−1 in NG (v) − {u}. Since v is in V1 , xi is in V0 − {u} for i = 1 to k − 1. We set S = {v, x1 , x2 , . . . , xk−1 }. By Theorem 14.6, there is a spanning (u, S)-fan {R1 , R2 , . . . , Rk } of G. Without loss of generality, we assume that R1 is joining u to v and Ri is joining u to xi−1 for every 2 ≤ i ≤ k. We set P1 = R1 and Pi = u, Ri , xi−1 , v for every 2 ≤ i ≤ k. Then {P1 , P2 , . . . , Pk } is the k ∗ -container of G between u and v. Let n ≥ 2. Let G = G0 ⊕ G1 ∈ Nn+1 with G0 ∈ Hn and G1 ∈ Hn . Depending on whether G0 and G1 is bipartite, we prove that G = G0 ⊕ G1 is 3∗ -connected with the following lemmas.
LEMMA 14.13 According to isomorphism, there is only one graph in N3 . Moreover, this graph is 3∗ -connected.
ch014.tex
25/7/2008
14: 27
Page 357
Spanning Connectivity
357
0 1
7 6
2 5
3 4
FIGURE 14.9 The only graph T in N3 .
Proof: By brute force, we can check whether the graph T in Figure 14.9 is the only graph in N3 . Let x and y be two distinct vertices of T . By the symmetric of T , we can assume that x = 0 and y ∈ {1, 2, 3, 4}. The 3∗ -containers {P1 , P2 , P3 } of T between x and y are listed here: y=1 y=2 y=3 y=4
{P1 = 0, 1, P2 = 0, 4, 3, 2, 1, P3 = 0, 7, 6, 5, 1} {P1 = 0, 1, 2, P2 = 0, 7, 3, 2, P3 = 0, 4, 5, 6, 2} {P1 = 0, 4, 3, P2 = 0, 7, 3, P3 = 0, 1, 5, 6, 2, 3} {P1 = 0, 4, P2 = 0, 1, 2, 3, 4, P3 = 0, 7, 6, 5, 4}
Thus, T is 3∗ -connected.
LEMMA 14.14 Let n ≥ 3. Assume that G = G0 ⊕ G1 in Nn+1 with both G0 and G1 in Nn . Then G is 3∗ -connected.
Proof: Let u and v be any two distinct vertices of G. We need to construct a 3∗ container of G between u and v. Case 1. u, v ∈ G0 . By Lemma 14.11, there is a 2∗ -container {P1 , P2 } of G0 between u and v. By Lemma 14.11 again, there is a Hamiltonian path P of G1 joining u to v. We set P3 as u, u, P, v, v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 2. u ∈ G0 and v ∈ G1 with u = v. Since there are 2n vertices in G0 and 2n > 3 for n ≥ 3, we can choose two distinct vertices x and y in G0 − {u}. By Lemma 14.11, there is a Hamiltonian path R of G0 joining x to y. Again, there is a Hamiltonian path W of G1 joining x to y. We write R = x, R1 , u, R2 , y and W = x, W1 , v, W2 , y. We set P1 = u, R1−1 , x, x, W1 , v, P2 = u, R2 , y, y, W2−1 , v, and P3 = u, v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 3. u ∈ G0 and v ∈ G1 with u = v. Since there are 2n vertices in G0 , we choose a vertex x in G0 − {u, v}. By Lemma 14.11, there is a Hamiltonian path R of G0 joining x to v. Again, there is a Hamiltonian path W of G1 joining x to u. We write R = x, R1 , u, R2 , v and W = x, W1 , v, W2 , u. We set P1 = u, u, W2−1 , v, P2 = u, R1−1 , x, x, W1 , v, and P3 = u, R2 , v, v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v.
ch014.tex
358
25/7/2008
14: 27
Page 358
Graph Theory and Interconnection Networks
LEMMA 14.15 Let n ≥ 3. Assume that G = G0 ⊕ G1 in Nn+1 with G0 in Bn and G1 ∗ in Nn . Then G is 3 -connected.
Proof: Let V0 and V1 be the bipartition of G0 . Let u and v be any two distinct vertices of G. We need to construct a 3∗ -container of G between u and v. Case 1. u, v ∈ G0 . By Lemma 14.12, there is a 2∗ -container {P1 , P2 } of G0 between u and v. By Lemma 14.11, there is a Hamiltonian path P of G1 joining u to v. We set P3 = u, u, P, v, v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 2. u, v ∈ G1 . Without loss of generality, we assume that u ∈ V0 . Case 2.1. v ∈ V0 . Since there are 2n−1 vertices in V1 and 2n−1 ≥ 4 for n ≥ 3, we can choose two distinct vertices x and y in V1 . By Lemma 14.11, there is a Hamiltonian path R of G1 joining x to y. Without loss of generality, we write R = x, R1 , u, R2 , v, R3 , y. By Theorem 14.4, there are two disjoint paths T1 and T2 of G0 such that (1) T1 joins u to y, (2) T2 joins x to v, and (3) T1 ∪ T2 spans G1 . We set P1 = u, R2 , v, P2 = u, R1−1 , x, x, T2 , v, v, and P3 = u, u, T1 , y, y, R3−1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 2.2. v ∈ V1 . By Lemma 14.11, there is a 2∗ -container {P1 , P2 } of G1 between u and v. By Lemma 14.12, there is a Hamiltonian path P of G0 joining u to v. We set P3 = u, u, P, v, v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 3. u ∈ G0 and v ∈ G1 with u = v. By Lemma 14.12, there is a Hamiltonian cycle C of G0 . Without loss of generality, we write C = u, R1 , v, x, R2 , u. By Lemma 14.11, there is a Hamiltonian path T of G1 joining u to x. Without loss of generality, we write T = u, T1 , v, T2 , x. We set P1 = u, R1 , v, v, P2 = u, u, T1 , v, and P3 =
u, R2−1 , x, x, T2−1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 4. u ∈ G0 and v ∈ G1 with u = v. Without loss of generality, we assume that u ∈ V0 . We can choose a vertex x in V0 − {u} and a vertex y in V1 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to y. By Lemma 14.11, there is a Hamiltonian path T of G1 joining x to y. Without loss of generality, we write R = x, R1 , u, R2 , y and T = x, T1 , v, T2 , y. We set P1 = u, v, P2 = u, R1−1 , x, x, T1 , v, and P3 = u, R2 , y, y, T2−1 , v. Then {P1 , P2 , P3 } is the 3∗ container of G between u and v. LEMMA 14.16 Assume that G = G0 ⊕ G1 in Nn+1 with both G0 and G1 in Bn for ∗ n ≥ 2. Then G is 3 -connected.
Proof: Let V0i and V1i be the bipartition of Gi for i = 0, 1. Let u and v be two distinct vertices of G. Without loss of generality, we assume that u ∈ V00 and u ∈ V11 . We need to construct a 3∗ -container of G between u and v. Case 1. v ∈ V00 ∪ V10 and v ∈ V01 . By Lemma 14.12, there is a 2∗ -container {P1 , P2 } of G0 between u and v. By Lemma 14.12, there is a Hamiltonian path P of G1 joining u to v. We set P3 = u, u, P, v, v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v.
ch014.tex
25/7/2008
14: 27
Spanning Connectivity
Page 359
359
Case 2. v ∈ V00 and v ∈ V11 . Since u ∈ V00 , u ∈ V11 , v ∈ V00 , and v ∈ V11 , we can choose a vertex x in V10 such that x ∈ V01 and choose a vertex y in V00 such that y ∈ V01 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to y. Without loss of generality, we write R = x, R1 , p, R2 , q, R3 , y where {p, q} = {u, v}. Without loss of generality, we assume that p = u and q = v. By Theorem 14.4, there are two disjoint paths T1 and T2 of G1 such that (1) T1 joins x to v, (2) T2 joins u to y, and (3) T1 ∪ T2 spans G1 . We set P1 = u, R2 , v, P2 = u, R1−1 , x, x, T1 , v, v, and P3 = u, u, T2 , y, y, R3−1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 3. v ∈ V10 and v ∈ V11 . Since u ∈ V00 and u ∈ V11 , v ∈ V10 , and v ∈ V11 , we can choose a vertex x in V10 such that x ∈ V01 and choose a vertex y in V00 such that y ∈ V01 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to y. Without loss of generality, we write R = x, R1 , p, R2 , q, R3 , y where {p, q} = {u, v}. Without loss of generality, we assume that p = u and q = v. By Theorem 14.4, there are two disjoint paths T1 and T2 of G1 such that (1) T1 joins x to v, (2) T2 joins u to y, and (3) T1 ∪ T2 spans G1 . We set P1 = u, R2 , v, P2 = u, R1−1 , x, x, T1 , v, v, and P3 = u, u, T2 , y, y, R3−1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 4.
v ∈ V01 ∪ V11 and u = v.
Case 4.1. v ∈ V00 . Since u ∈ V00 , u ∈ V11 , and v ∈ V00 , we can choose a vertex x ∈ V10 such that x ∈ V01 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to v. Again, by Lemma 14.12, there is a Hamiltonian path T of G1 joining x to u. Write R = x, R1 , u, R2 , v and T = x, T1 , v, T2 , u. We set P1 = u, u, T2−1 , v, P2 = u, R2 , v, v, and P3 = u, R1−1 , x, x, T1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 4.2. v ∈ V10 and v ∈ V01 . Since u ∈ V00 , u ∈ V11 , v ∈ V01 , and v ∈ V10 , we can choose a vertex x ∈ V00 such that x ∈ V01 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to v, and there is a Hamiltonian path T of G1 joining x to u. We write R = x, R1 , u, R2 , v and T = x, T1 , v, T2 , u. We set P1 = u, u, T2−1 , v, P2 = u, R2 , v, v, and P3 = u, R1−1 , x, x, T1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 4.3. v ∈ V10 and v ∈ V11 . Since u ∈ V00 , u ∈ V11 , and v ∈ V11 , we can choose a vertex x ∈ V00 such that x ∈ V01 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to v, and there is a Hamiltonian path T of G1 joining x to u. We write R = x, R1 , u, R2 , v and T = x, T1 , v, T2 , u. We set P1 = u, u, T2−1 , v, P2 = u, R2 , v, v, and P3 = u, R1−1 , x, x, T1 , v. Then {P1 , P2 , P3 } is the 3∗ -container of G between u and v. Case 5. v = u. Since u ∈ V00 and u ∈ V11 , we can choose a vertex x ∈ V00 such that x ∈ V01 and choose a vertex y ∈ V10 such that y ∈ V11 . By Lemma 14.12, there is a Hamiltonian path R of G0 joining x to y, and there is a Hamiltonian path T of G1 joining x to y. Without loss of generality, we write that R = x, R1 , u, R2 , y and T = x, T1 , v, T2 , y. We set P1 = u, v, P2 = u, R1−1 , x, x, T1 , v, and Pi s = u, R2 , y, y, T2−1 , v. Then {P1 , P2 , P3 } forms the 3∗ -container of G between u and v.
ch014.tex
360
25/7/2008
14: 27
Page 360
Graph Theory and Interconnection Networks
With Lemmas 14.13 through 14.16, we have the following theorem. THEOREM 14.8 Every graph in Nn is 3∗ -connected. Now, we present an Nn -graph H that is not 4∗ -connected. Note that Qn is a bipartite graph with bipartition {u | w(u) is even} and {u | w(u) is odd}. Let Qni be the subgraph of Qn induced by {u ∈ V (Qn ) | (u)n = i} for i ∈ {0, 1}. Then Qni is isomorphic to Qn−1 . By the definition of Qn , Qn ∈ Bn . Let n ≥ 4 and let e = 00 . . . 0 be a vertex in Qn . We n 1 n 1 n set v = (e) , p = (e) , and q = ((e) ) . Let H be the graph with V (H) = V (Qn ) and E(H) = (E(Qn ) − {(e, p), (v, q)}) ∪ {(e, q), (v, p)}. Obviously, H − {(e, q), (v, p)} is a bipartite graph with bipartition A = {x | w(x) is even} and B = {x | w(x) is odd}. Moreover, H is in Nn and H = G(Qn0 ; Qn1 ; M) for some perfect matching M. We will show that H is not k ∗ -connected for k ≥ 4. Suppose that there is a k ∗ -container C = {P1 , P2 , . . . , Pk } of H between e and q for some k ≥ 4. We have the following cases: " " Case 1. (e, q) ∈ ki=1 Pi and (v, p) ∈ ki=1 Pi . Without loss of generality, we assume that (e, q) ∈ P1 . Thus, P1 = e, q. Again, we can assume without loss of generality that (v, p) ∈ P2 . Obviously, the number of vertices in P2 is 2t2 for some integer t2 and the number of vertices in Pi is 2ti + 1 for some integer ti for every 3 ≤ i ≤ n. Therefore, there are t2 vertices of V (P1 ) ∩ B and (t2 − 2) vertices of V (P1 ) ∩ A other than e and q, and there are ti vertices of V (Pi ) ∩ B and (ti − 1) vertices of V (Pi ) ∩ A other than e and q for every 3 ≤ i ≤ k. As a consequence, |A| = ki=2 ti + 2 − k and |B| = ki=2 ti . Thus, |A| = |B|. " " Case 2. (e, q) ∈ ki=1 Pi and (v, p) ∈ / ki=1 Pi . Without loss of generality, we assume that (e, q) ∈ P1 . Obviously, the number of vertices in Pi is (2ti + 1) for some integer ti for every 2 ≤ i ≤ k. Moreover, there are ti vertices of V (Pi ) ∩ B, and (ti − 1) vertices of V (Pi ) ∩ A other thane and q for every 2 ≤ i ≤ k. As a consequence, |A| = ki=2 ti + 3 − k and |B| = ki=2 ti . Thus, |A| = |B|. " " Case 3. (e, q) ∈ / ki=1 Pi and (v, p) ∈ ki=1 Pi . Without loss of generality, we assume that (v, p) ∈ P1 . Obviously, the number of vertices in P1 is 2t1 for some integer t1 , and the number of vertices in Pi is (2ti + 1) for some integer ti for every 2 ≤ i ≤ k. Moreover, there are t1 vertices of V (P1 ) ∩ B and (t1 − 2) vertices of V (P1 ) ∩ A other than e and q, and there are ti vertices of V (Pi ) ∩ B and (ti − 1) vertices of V (Pi ) ∩ A other than e and q for every 2 ≤ i ≤ k. As a consequence, |A| = ki=1 ti + 1 − k and |B| = ki=1 ti . Thus, |A| = |B|. " " Case 4. (e, q) ∈ / ki=1 Pi and (v, p) ∈ / ki=1 Pi . Obviously, the number of vertices in Pi is (2ti + 1) for some integer ti for every 1 ≤ i ≤ k. Moreover, there are ti vertices of V (Pi ) ∩ B, and (ti − 1) vertices of V (Pi ) ∩ A other than e and q for every 1 ≤ i ≤ k. As a consequence, |A| = ki=1 ti + 2 − k and |B| = ki=1 ti . Thus, |A| = |B|. With Cases 1 through 4, C is not a k ∗ -container of H between e and q. Thus, H is not k ∗ -connected for any k, where 4 ≤ k ≤ n.
ch014.tex
25/7/2008
14: 27
Page 361
Spanning Connectivity
14.4
361
SPANNING CONNECTIVITY OF CROSSED CUBES
In Section 14.3, we have seen an Nn -graph H that is not super spanning connected. However, some Nn -graphs are super spanning connected. Yet, Lin et al. [227] proved that the n-dimensional cross cube CQn is super spanning connected if n ≥ 7. Recall that the n-dimension crossed cube CQn is recursively defined as follows. CQ1 is the complete graph on two vertices which labeled by 0 and 1. Let n ≥ 2. CQn 0 1 . The consists of two identical (n − 1)-dimension crossed cubes CQn−1 and CQn−1 0 1 vertex 0un−2 . . . u0 ∈ V (CQn−1 ) and the vertex 1vn−2 . . . v0 ∈ V (CQn−1 ) are adjacent in CQn if and only if 1. un−2 = vn−2 if n is even 2. (u n2i+1 u2i , v2i+1 v2i ) ∈ {(00, 00), (10, 10), (01, 11), (11, 01)} for every 0 ≤ i < −1 2
According to the definition of the n-dimensional crossed cube, two distinct vertices u = un−1 un−2 . . . u0 and v = vn−1 vn−2 . . . v0 are adjacent in CQn if and only if there is an integer i such that 1. 2. 3. 4.
uj = vj if j > i ui = 1 − vi ui−1 = vi−1 if i is odd (u2j+1 u2j , v2j+1 v2j ) ∈ {(00, 00), (10, 10), (01, 11), (11, 01)} for every 0 ≤ j < i−1 2
Now, we define another family of graphs Gn . Later, we will prove that Gn is isomorphic to CQn . Let Gn be a graph with vertex set V = V (CQn ) and two distinct vertices u = un−1 un−2 . . . u0 and v = vn−1 vn−2 . . . v0 are adjacent in Gn if and only if there is an integer i such that 1. 2. 3. 4.
uj = vj if j > i ui = 1 − vi ui−1 = vi−1 if i is odd (u2j+1 u2j , v2j+1 v2j ) ∈ {(00, 00), (01, 01), (10, 11), (11, 10)} for every 0 ≤ j < i−1 2
THEOREM 14.9 CQn is isomorphic to Gn . Proof: Since G1 is isomorphic to the complete graph with two vertices, G1 is isomorphic to CQ1 . Since G2 is isomorphic to a cycle with four vertices, G2 is isomorphic to CQ2 . Thus, we assume that n ≥ 3. We set f : V (Gn ) → V (CQn ) denoted f (xn−1 xn−2 . . . x0 ) = yn−1 yn−2 . . . y0 with (1) yn−1 = xn−1 if n is odd and (2) y2j+1 = x2j
and y2j = x2j+1 for every 0 ≤ j < n−1 2 .
ch014.tex
25/7/2008
14: 27
Page 362
362
Graph Theory and Interconnection Networks
We claim that f is an isomorphism from Gn to CQn . Obviously, f is a bijection function. Let R0 = {(00, 00), (10, 10), (01, 11), (11, 01)} and R1 = {(00, 00), (01, 01), (10, 11), (11, 10)}. Let u and v be any two adjacent vertices of Gn . Thus, there is an integer i such that (1) uj = vj if j > i, (2) ui = 1 − vi , (3) ui−1 = vi−1 if i is odd, and (4) (u2j+1 u2j , v2j+1 v2j ) ∈ R1 for every 0 ≤ j < i−1 2 . For fix i, let p = f (u) and q = f (v). We write p = pn−1 pn−2 . . . p0 and q = qn−1 qn−2 . . . q0 . We have the following cases: Case 1.
Suppose that i = 2t and n − 1 = 2s for some positive integers t and s.
Case 1.1. Assume that t = s. Obviously, p2s = u2s = 1 − v2s = 1 − q2s . By condition 2 of the function f , we have (u2j+1 u2j , v2j+1 v2j ) ∈ R1 such that ( p2j+1 p2j , q2j+1 q2j ) ∈ R0 for every 0 ≤ j ≤ s − 1. Thus, p and q are adjacent in CQn . Case 1.2. Assume that t < s. Obviously, pj = uj = vj = qj for every 2t + 1 ≤ j ≤ 2s. Since u2t+1 = v2t+1 and u2t = v2t , p2t+1 = q2t+1 and p2t = q2t . Also, we have (u2j+1 u2j , v2j+1 v2j ) ∈ R1 such that ( p2j+1 p2j , q2j+1 q2j ) ∈ R0 for every 0 ≤ j ≤ t − 1. Thus, p and q are adjacent in CQn . Case 2. Suppose that i = 2t + 1 and n − 1 = 2s for some positive integers t and s. Obviously, pj = uj = vj = qj for every 2t + 2 ≤ j ≤ 2s. Since u2t+1 = v2t+1 , we obtain u2t = v2t , p2t+1 = q2t+1 , and p2t = q2t . Similarly, we have (u2j+1 u2j , v2j+1 v2j ) ∈ R1 such that ( p2j+1 p2j , q2j+1 q2j ) ∈ R0 for every 0 ≤ j ≤ t − 1. Thus, p and q are adjacent in CQn . Case 3. Suppose that i = 2t and n − 1 = 2s + 1 for some positive integers t and s. Obviously, pj = uj = vj = qj for every 2t + 1 ≤ j ≤ 2s + 1. Since u2t+1 = v2t+1 and u2t = v2t , we obtain p2t+1 = q2t+1 and p2t = q2t . Also, we have (u2j+1 u2j , v2j+1 v2j ) ∈ R1 such that ( p2j+1 p2j , q2j+1 q2j ) ∈ R0 for every 0 ≤ j ≤ t − 1. Thus, p and q are adjacent in CQn . Case 4.
Suppose that i = 2t + 1 and n − 1 = 2s + 1 for some positive integers t and s.
Case 4.1. Assume that t = s. Since u2t+1 = v2t+1 , u2t = v2t . Thus, p2t+1 = q2t+1 and p2t = q2t . Since (u2j+1 u2j , v2j+1 v2j ) ∈ R1 for every 0 ≤ j ≤ s − 1, ( p2j+1 p2j , q2j+1 q2j ) ∈ R0 for every 0 ≤ j ≤ s − 1. Thus, p and q are adjacent in CQn . Case 4.2. Assume that t < s. Obviously, pj = uj = vj = qj for every 2t + 1 ≤ j ≤ 2s + 1. Since u2t+1 = v2t+1 , we have u2t = v2t , p2t+1 = q2t+1 , and p2t = q2t . Since (u2j+1 u2j , v2j+1 v2j ) ∈ R1 every 0 ≤ j ≤ t − 1, we obtain ( p2j+1 p2j , q2j+1 q2j ) ∈ R0 for every 0 ≤ j ≤ t − 1. Thus, (p, q) ∈ E(CQn ). Thus, Gn is isomorphic to CQn .
According to Theorem 14.9, we denote the n-dimensional crossed cube CQn as Gn . The crossed cubes of redefined CQ3 and CQ4 are illustrated in Figure 14.10. Let u = un−1 un−2 . . . u0 . We say that ui is the ith coordinate of u, denoted by (u)i , for 0 ≤ i ≤ n − 1. By the redefined of CQn , we say u and v are adjacent by an edge in dimension (i + 1) and we use (u)i to denote v for every 0 ≤ i ≤ n − 1. It follows immediately, ((u)i )i = u. Let n ≥ 3 and i and j be two integers with 0 ≤ i ≤ 1 and
ch014.tex
25/7/2008
14: 27
Page 363
Spanning Connectivity
363
000
001
0000 0001
1001 1000
010
011
0010 0011
1011 1010
110
111
0110 0111
1111 1110
100
101
0100 0101
1101 1100
CQ3 CQ4
FIGURE 14.10 Illustrations for CQ3 and CQ4 . ij
0 ≤ j ≤ 1. We set CQn−2 as a subgraph of CQn induced by {x | x ∈ V (CQn ), (x)n = i and ij 00 ∪ CQ01 , (x)n−1 = j}. Obviously, CQn−2 is isomorphic to CQn−2 . Moreover, CQn−2 n−2 00 10 01 11 10 11 CQn−2 ∪ CQn−2 , CQn−2 ∪ CQn−2 , and CQn−2 ∪ CQn−2 are isomorphic to CQn−1 . A graph G is t-fault-tolerant k ∗ -connected if G − F is k ∗ -connected for any F with F ⊂ V (G) ∪ E(G) and |F| = t. The following theorem can be proved with Corollary 11.5. THEOREM 14.10 [178] CQn is (n − 2)-fault-tolerant 2∗ -connected and (n − 3)fault-tolerant 1∗ -connected if n ≥ 3. THEOREM 14.11 [271] Suppose that u1 , u2 , v1 , and v2 are four distinct vertices of CQn for n ≥ 5. Then there are two disjoint paths P1 and P2 of CQn such that (1) P1 joins u1 to v1 , (2) P2 joins u2 to v2 , and (3) P1 ∪ P2 contains all the vertices in CQn . Proof: We have the following cases: t Case 1. {u1 , u2 , v1 , v2 } ⊂ V (CQn−1 ) for some t ∈ {0, 1}. By Theorem 14.10, there is t a Hamiltonian path R of CQn−1 joining u1 to v1 . Without loss of generality, we write R = u1 , R1 , x, p, R2 , q, y, R3 , v1 where {p, q} = {u2 , v2 }. By Theorem 14.10, there is 1−t a Hamiltonian path Q of CQn−1 joining (x)n to (y)n . We set P1 = u1 , R1 , x, (x)n , Q, n (y) , y, R3 , v1 and P2 = R2 . Then P1 and P2 form the desired paths. 1−t t Case 2. {u1 , u2 , v1 } ⊂ V (CQn−1 ) and {v2 } ⊂ V (CQn−1 ) for some t ∈ {0, 1}. By t Theorem 14.10, there is a Hamiltonian path R of CQn−1 joining u2 to v1 . Without loss of generality, we write R = u2 , R1 , x, u1 , y, R2 , v1 . Suppose that (x)n = v2 . By Theorem 14.10, there is a Hamiltonian path Q of 1−t CQn−1 joining (x)n to v2 . We set P1 = u1 , y, R2 , v1 and P2 = u2 , R1 , x, (x)n , Q, v2 . Then P1 and P2 form the desired paths.
ch014.tex
25/7/2008
14: 27
Page 364
364
Graph Theory and Interconnection Networks
Suppose that (x)n = v2 . By Theorem 14.10, there is a Hamiltonian path Q of 1−t CQn−1 − {v2 } joining (u1 )n to (y)n . We set P1 = u1 , (u1 )n , Q, (y)n , y, R2 , v1 and P2 = u2 , R1 , x, (x)n = v2 . Then P1 and P2 form the desired paths. 1−t Case 3. {u1 , v1 } ⊂ V (CQn−1 )t and {u2 , v2 } ⊂ V (CQn−1 ) for some t ∈ {0, 1}. By t Theorem 14.10, there is a Hamiltonian path P1 of CQn−1 joining u1 to v1 . More1−t over, there is a Hamiltonian path P2 of CQn−1 joining u2 to v2 . Then P1 and P2 form the desired paths.
Case 4.
1−t t ) and {u2 , v1 } ⊂ V (CQn−1 ) for some t ∈ {0, 1}. {u1 , v2 } ⊂ V (CQn−1
Case 4.1. u1 = (v1 )n or u2 = (v2 )n . Without loss of generality, we assume that u1 = (v1 )n . By Theorem 14.10, there is a Hamiltonian path R of CQn − {u1 , v1 } joining u2 to v2 . We set P1 = u1 , v1 and P2 = R. Then P1 and P2 form the desired paths. Case 4.2.
u1 = (v1 )n and u2 = (v2 )n .
Case 4.2.1. u1 = (u2 )n or v2 = (v1 )n . Without loss of generality, we assume that 1−t − {u2 } joining u1 = (u2 )n . By Theorem 14.10, there is a Hamiltonian path R1 of CQn−1 t n (u1 ) to v1 . Moreover, there is a Hamiltonian path R2 of CQn−1 − {u1 } joining (u2 )n to v2 . We set Pi = ui , (ui )n , Ri , vi for every i ∈ {1, 2}. Then P1 and P2 form the desired paths. Case 4.2.2.
u1 = (u2 )n or v2 = (v1 )n .
Case 4.2. Either u1 = (v1 )n and v2 = (u2 )n or u1 = (v1 )n and v2 = (u2 )n . Without loss of generality, we assume that u1 = (v1 )n and v2 = (u2 )n . By Theorem 14.10, there is a Hamiltonian path R of CQn − {u1 , v1 } joining u2 to v2 . Moreover, there is t − {u1 } joining (u2 )n to v2 . We set P1 = u, v1 and a Hamiltonian path R2 of CQn−1 P2 = R. Then P1 and P2 form the desired paths. Case 4.3. u1 = (v1 )n and v2 = (u2 )n . ts ) for some s ∈ {0, 1}. We have {u , v } ⊂ Suppose that {u1 , v2 } ⊂ V (CQn−2 2 1 (1−t)s (1−t)s ts V (CQn−2 ). Since CQn−2 ∪ CQn−2 is isomorphic to CQn−1 , by Theorem 14.10, ts ∪ CQ(1−t)s joining u to v . Without there is a Hamiltonian path R of CQn−2 1 1 n−2 loss of generality, we write R = u1 , R1 , x, p, R2 , q, y, R3 , v1 where {p, q} = {u2 , v2 }. (1−t)(1−s) t(1−s) is isomorphic to CQn−1 , by Theorem 14.10, there is Since CQn−2 ∪ CQn−2 t(s−1) (1−t)(1−s) joining (x)n−1 to (y)n−1 . We set a Hamiltonian path Q of CQn−2 ∪ CQn−2 n−1 n−1 P1 = u1 , R1 , x, (x) , Q, (y) , y, R3 , v1 and P2 = R2 . Then P1 and P2 form the desired paths. ts ) and v ∈ V (CQt(1−s) ) for some s ∈ {0, 1}. We have Suppose that u1 ∈ V (CQn−2 2 n−2 (1−t)s (1−t)(1−s) ). Let x and y be two distinct vertices u2 ∈ V (CQn−2 ) and v1 ∈ V (CQn−2 ts − {u , (v )n−1 }. By Theorem 14.10, there is a Hamiltonian path R of of CQn−2 1 2 1 t(1−s) ts joining x to y. Moreover, there is a Hamiltonian path R2 of CQn−2 joinCQn−2 ing (y)n−1 to (x)n−1 . Without loss of generality, we write R1 = x, Q1 , p, u1 , Q2 , y and R2 = (y)n−1 , Q3 , q, v2 , Q2 , (x)n−1 . By Theorem 14.10, there is a Hamiltonian (1−t)(1−s) path W1 of CQn−2 joining (q)n to v1 . Moreover, there is a Hamiltonian path
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 365
365
(1−t)s
W2 of CQn−2 joining u2 to (p)n . We set P1 = u1 , Q2 , y, (y)n−1 , Q3 , q, (q)n , W1 , v1 and P2 = u2 , W2 , (p)n , p, Q1−1 , x, (x)n−1 , Q2−1 , v1 . Then P1 and P2 form the desired paths. THEOREM 14.12 Let n ≥ 3 and k ≤ n − 1. Let F be any subset of V (CQn ) ∪ E(CQn ) with |F| ≤ n − 3 and |F| + k ≤ n − 1. Suppose that u is a vertex of CQn − F and S = {v1 , v2 , . . . , vk } is a subset of vertices in CQn − (F ∪ {u}) with vi = vj for every i = j. Then there is a set of k disjoint paths {P1 , P2 , . . . , Pk } of CQn such that Pi " joins u to vi for every 1 ≤ i ≤ k and ki=1 Pi contains all the vertices in CQn . Proof: We prove this theorem by induction on n. By Theorem 14.10, this theorem holds for CQ3 . Suppose that this theorem holds for CQn−1 for n ≥ 4. Let k be any positive integer with k ≤ n − 1 and let F be a subset of V (CQn ) ∪ E(CQn ) with |F| ≤ n − 3 and |F| + k ≤ n − 1. By Theorem 14.10, this theorem holds on k = 1 with |F| ≤ n − 3 and k = 2 with |F| ≤ n − 3. Thus, we assume that k ≥ 3 and |F| = n − k − 1. Suppose that u is a vertex of CQn − F and S = {v1 , v2 , . . . , vk } is a subset of vertices in CQn − (F ∪ u) with vi = vj for every i = j. By Theorem 14.10, this theorem holds for k = 1 and k = 2. Thus, we assume that k ≥ 3. Without loss of generality, we assume that 0 . We set S = S ∩ V (CQi i i u is a vertex in CQn−1 i n−1 ) and Fi = F ∩ V (CQn−1 ) ∪ E(CQn−1 ) for every 0 ≤ i ≤ 1, and we set F2 = F − (F0 ∪ F1 ). We have the following cases: Case 1. |S0 | + |F0 | = |S| + |F|. By induction, there is a set of k − 1 disjoint paths 0 such that Pi joins u to vi for every 1 ≤ i ≤ k − 1 and {P1 , P2 , . . . , Pk−1 } of CQn−1 "k−1 0 i=1 Pi contains all the vertices in CQn−1 . Without loss of generality, we assume that vk ∈ Pk−1 and we write Pk−1 = u, R1 , vk , z, R2 , vk−1 . By Theorem 14.10, 1 joining (u)n to (z)n . We set Wi = Pi for there is a Hamiltonian path Q of CQn−1 n n every 1 ≤ i ≤ k − 2, Wk−1 = u, (u) , Q, (z) , z, R2 .vk−1 , and Pk = u, R1 , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Case 2. |S1 | + |F1 | = |S| + |F|. Without loss of generality, we assume that vk = (u)n . 1 such By induction, there is a set of k − 1 disjoint paths {P1 , P2 , . . . , Pk−1 } of CQn−1 "k−1 that Pi joins vk to vi for every 1 ≤ i ≤ k − 1 and i=1 Pi contains all the vertices 1 . Without loss of generality, we assume that (u)n ∈ V (P in CQn−1 k−1 ), and we write Pi = vk , zi , Pi , vi for every 1 ≤ i ≤ k − 2. Case 2.1. (u)n = vk−1 . We write Pk−1 = vk , Q, x, vk−1 . By induction, there is 0 a set of k − 1 disjoint paths {R1 , R2 , . . . , Rk−1 } of CQn−1 such that Ri joins u "k−1 0 . n to (zi ) for every 1 ≤ i ≤ k − 1 and i=1 Ri contains all the vertices in CQn−1 n We set Wi = u, Ri , (zi ) , zi , Pi , vi for every 1 ≤ i ≤ k − 2, Wk−1 = u, vk−1 , and Wk = u, Rk−1 , (zk−1 )n , zk−1 , Q−1 , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Case 2.2. (u)n = vi for every 1 ≤ i ≤ k − 1. We write Pk−1 = vk , Q, x, vk−1 . By 0 induction, there is a set of k − 1 disjoint paths {R1 , R2 , . . . , Rk−1 } of CQn−1 such that " k−1 Ri joins u to (zi )n for every 1 ≤ i ≤ k − 1 and i=1 Ri contains all the vertices in 0 . We set W = u, R , (z )n , z , P , v for every 1 ≤ i ≤ k − 2, W CQn−1 i i i i i i k−1 = u, vk−1 ,
ch014.tex
366
25/7/2008
14: 27
Page 366
Graph Theory and Interconnection Networks
and Wk = u, Rk−1 , (zk−1 )n , zk−1 , Q−1 , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Case 3. |S0 | + |F0 | < |S| + |F| and |S1 | = 0. By induction, there is a set of k dis0 such that Pi joins u to vi for every 1 ≤ i ≤ k joint paths {P1 , P2 , . . . , Pk } of CQn−1 "k 0 . Since (2n−1 − (n − 2))/(n − 2) > and i=1 Pi contains all the vertices in CQn−1 2(n − 3), there are two adjacent vertices x and y in some path Pi such that {(x)n , (y)n , (x, (x)n ), (y, (y)n )} ∩ F = ∅. Without loss of generality, we assume that both x and y are in Pk , and we write Pk = u, R1 , x, y, R2 , vk . By Theorem 14.10, there is a Hamil1 tonian path Q of CQn−1 joining (x)n to (y)n . We set Wi = Pi for every 1 ≤ i ≤ k − 1 and n Wk = u, R1 , x, (x) , Q, (y)n , y, R2 , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Case 4.
|S1 | + |F1 | < |S| + |F| and |S1 | > 0.
Case 4.1. |F0 | < |F|. Since 2n−1 − (n − 3)(n − 1) − (n − 2) > 0, there is a vertex x 1 in CQn−1 − (F1 ∪ {(u)n , v1 , v2 , . . . , vk }) such that {y, (y)n , (y, (y)n )} ∩ F = ∅ for every 1 y ∈ NCQ1 (x). By induction, there is a set of k disjoint paths {P1 , P2 , . . . , Pk } of CQn−1 n−1 "k such that Pi joins x to vi for every 1 ≤ i ≤ k and i=1 Pi contains all the vertices in 1 . Without loss of generality, we write P = x, y , R , v for every 1 ≤ i ≤ k − 1. CQn−1 i i i i 0 By induction, there is a set of k disjoint paths {Q1 , Q2 , . . . , Qk } of CQn−1 such that " k n n Qi joins u to (yi ) for every 1 ≤ i ≤ k − 1, Qk joining u to (x) , and i=1 Qi contains 0 . We set W = u, Q , (y )n , y , R , v for every 1 ≤ i ≤ k − 1 all the vertices in CQn−1 i i i i i i n and Wk = u, Qk , (x) , x, Pk , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Case 4.2. |F0 | = |F|. Without loss of generality, we assume that S1 = {vt , vt + 1, . . . , vk } for some 1 ≤ t ≤ k. Case 4.2.1. t = k. By induction, there is a set of k disjoint paths " {P1 , P2 , . . . , Pk } of 0 such that Pi joins u to vi for every 1 ≤ i ≤ k − 1 and k−1 CQn−1 i=1 Pi contains all the 0 vertices in CQn−1 . Suppose that (u)n = vk . Since 2n−1 > n − 1, we assume that l(Pk−1 ) > 1 and we write Pk−1 = u, R, x, vk−1 . By Theorem 14.10, there is a Hamiltonian path Q 1 − {vk } joining (x)n to (vk−1 )n . We set Wi = Pi for every 1 ≤ i ≤ k − 2, of CQn−1 Wk−1 = u, R, x, (x)n , Q, (vk−1 )n , vk−1 , and Wk = u, vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Suppose that (u)n = vk . By Theorem 14.10, there is a Hamiltonian path 1 Q of CQn−1 joining (u)n to vk . We set Wi = Pi for every 1 ≤ i ≤ k − 1 and n Wk = u, (u) , Q, vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Case 4.2.2. 2 ≤ t ≤ k − 1. Suppose that (u)n ∈ S1 . Without loss of generality, we assume that (u)n = vk . Since 2n−1 − (n − 2)(n − 1) > 0, there is a vertex x in 1 − S1 such that (y)n ∈ / F0 ∪ S0 for every y ∈ NCQ1 (x). By induction, there is a CQn−1 n−1
1 set of k − t disjoint paths {P1 , P2 , . . . , Pk−t } of CQn−1 − {vk } such that Pi joins x to "k−t 1 vt+i−1 for every 1 ≤ i ≤ k − t and i=1 Pi contains all the vertices in CQn−1 − {vk }. Without loss of generality, we write Pi = x, yi , Ri , vt+i−1 for every 1 ≤ i ≤ k − t − 1.
ch014.tex
25/7/2008
14: 27
Page 367
Spanning Connectivity
367
0 By induction, there is a set of k − 1 disjoint paths {Q1 , Q2 , . . . , Qk−1 } of CQn−1 − F0 n such that Qi joins u to vi for every 1 ≤ i ≤ t − 1, Qj joining u to (yt−j+1 ) for every " 0 t ≤ j ≤ k − 2, Qk−1 joining u to (x)n , and k−1 i=1 Qi contains all the vertices in CQn−1 . We set Wi = Qi for every 1 ≤ i ≤ t − 1, Wi = u, Qi , (yt−j+1 )n , yt−j+1 , Rt−j+1 , vj for every t ≤ j ≤ k − 2, Wk−2 = u, Qk−1 , (x)n , Pk−t−1 , vk−1 , and Wk = u, vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Suppose that (u)n ∈ / S1 . We set A = {((u)n , (x)n ) | x ∈ (F ∪ S0 ) − {v1 }}. By induc1 − A such tion, there is a set of k − t disjoint paths {P1 , P2 , . . . , Pk−t+1 } of CQn−1 "k−t+1 n that Pi joins (u) to vt+i−1 for every 1 ≤ i ≤ k − t + 1 and i=1 Pi contains all 1 . Without loss of generality, we write P = (u)n , y , R , v the vertices in CQn−1 i i t+i−1 i for every 1 ≤ i ≤ k − t + 1, and we assume that yj = (v1 )n for every 1 ≤ j ≤ k − t. By 0 induction, there is a set of k − 1 disjoint paths {Q1 , Q2 , . . . , Qk−1 } of CQn−1 − F0 n such that Qi joins u to vi for every 1 ≤ i ≤ t − 1, Qj joining u to (yt−j+1 ) for every " 0 t ≤ j ≤ k − 1, and k−1 i=1 Qi contains all the vertices in CQn−1 . We set Wi = Qi for every 1 ≤ i ≤ t − 1, Wj = u, Qj , (yt−j+1 )n , yt−j+1 , Rt−j+1 , vj for every t ≤ j ≤ k − 1, and Wk = u, (u)n , Pk−t+1 , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn .
Case 4.2.3. t = 1. Suppose that (u)n ∈ S1 . Without loss of generality, we assume that (u)n = vk . By induction, there is a set of (k − 1) disjoint paths " {P1 , P2 , . . . , Pk−1 } of 1 such that Pi joins vk to vi for every 1 ≤ i ≤ k − 1 and k−1 CQn−1 i=1 Pi contains all the 1 . Without loss of generality, we write P = v , y , R , v for every vertices in CQn−1 i k i i i 1 ≤ i ≤ k − 1. By induction, there is a set of k − 1 disjoint paths {Q1 , Q2 , . ." . , Qk−1 } 0 of CQn−1 − F0 such that Qi joins u to (yi )n for every 1 ≤ i ≤ k − 1 and k−1 i=1 Qi 0 n contains all the vertices in CQn−1 − F0 . We set Wi = u, Qi , (yi ) , yi , Ri , vi for every 1 ≤ i ≤ k − 1 and Wk = u, vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . Suppose that (u)n ∈ / S1 . By induction, there is a set of k − 1 disjoint paths 1 {P1 , P2 , . . . , Pk−1 } of CQn−1 such that Pi joins vk to vi for every 1 ≤ i ≤ k − 1 "k−1 1 . Without loss of generality, we and i=1 Pi contains all the vertices in CQn−1 n assume that (u) ∈ Pk−1 , and we write Pi = vk , yi , Ri , vi for every 1 ≤ i ≤ k − 2 and Pk−1 = vk , Rk , (u)n , yk−1 , Rk−1 , vk−1 . By induction, there is a set of k − 1 0 disjoint paths {Q1 , Q2 , . . . , Qk−1 } of CQn−1 − F0 such that Qi joins u to (yi )n for "k−1 0 every 1 ≤ i ≤ k − 1 and i=1 Qi contains all the vertices in CQn−1 − F0 . We set n Wi = u, Qi , (yi ) , yi , Ri , vi for every 1 ≤ i ≤ k − 1 and Wk = u, (u)n , Rk−1 , vk . Then {W1 , W2 , . . . , Wk } forms a desired set of paths of CQn . LEMMA 14.17 CQn is k ∗ -connected for all 1 ≤ k ≤ n − 1 and n ≥ 3. Proof: Let u and v be two distinct vertices of CQn . By Theorem 14.10, this statement holds for k = 1. Thus, we consider that 2 ≤ k ≤ n − 1. Since degCQn(v) = n, we can choose a set of (k − 1) neighbors {x1 , x2 , . . . , xk−1 } of v without u. By Theorem 14.12, } of CQn such that (1) Ri joins u to xi for there is a set of k disjoint paths {R1 , R2 , . . . , Rk" every 1 ≤ i ≤ k − 1, (2) Rk joins u to v, and (3) ki=1 Ri contains all the vertices in CQn . We set Pi = u, Ri , xi , v for every 1 ≤ i ≤ k − 1 and Pk = Rk . Then {P1 , P2 , . . . , Pk } forms the k ∗ -container of CQn between u and v.
ch014.tex
25/7/2008
14: 27
Page 368
368
Graph Theory and Interconnection Networks
LEMMA 14.18 Suppose that u and v are two distinct vertices of CQn with (u)n−1 = (v)n−1 for n ≥ 7. Then there is an n∗ -container of CQn between u and v. 0 Proof: Let (u)n−1 = (v)n−1 = 0. Since CQn−1 is isomorphic to CQn−1 , by 0 ∗ Lemma 14.17, there is an (n − 2) -container {R1 , R2 , . . . , Rn−2 } of CQn−1 between 0 u and v. Since degCQ0 (u) = n − 1, there is a vertex x in CQn−1 such that n−1 " 0 ) and (x, u) ∈ / n−2 (x, u) ∈ E(CQn−1 i=1 E(Ri ). Similarly, there is a vertex y in " 0 0 / n−2 CQn−1 such that (y, v) ∈ E(CQn−1 ) and (y, v) ∈ i=1 E(Ri ). We have the following cases:
Case 1. Suppose that x = v. Since x = v, y = u. By Theorem 14.10, there is a Hamil1 tonian path H of CQn−1 joining (u)n to (v)n . We set Pi = Ri for every 1 ≤ i ≤ n − 2, Pn−1 = u, v, and Pn = u, (u)n , H, (v)n , v. Then {P1 , P2 , . . . , Pn } is the n∗ -container of CQn between u and v. See Figure 14.11a for illustration. Case 2. Suppose that x = v. Since x = v, we have y = u. CQ 0n1 P1
P2
1 ( u) n CQn1
u Pn2
Pn1
Pn
0 CQ n1
P1 P2
Pn3
(v)n
v
1
v
W1 q 1
( q 1) n
W2 x y W q2
( q 2) n
P1 P2
( u)
Pn3
y
CQ 0n1
P1 P2 Pn3
Q
H3
( v) n
v
P
P1 Pn4
Z1 z w Z2
v
W2
(z )
n
( q)
n
Q2
Q1
Z2 v
(e)
P1 P2 Pn3
( u) y
1
( q 1)
n
n
Q1
1 CQn1
CQ 0n1 P1
W2 x v
W3
Q1 ( v )n
q2 ( q ) 2
y q x Z1 wz
1 ( u)n CQn1
( q) n Q2 ( z )n
Q1
( v )n
(f)
u W1 q
Q2 ( q)n
u
P1 P2 Pn3
(v)n
v CQ 0n1
( y )n
(d) 1 0 ( u) n CQ n1 CQ n1
q x
z y q x W3
(c) u y
1 ( u)n CQn1
u
x
CQ 0n1
(v)n
(b) 1 CQ n1
n
u H1
Q 2 Q1
3
(a) CQ 0n1
( u) n CQ n1
u
n
Q2 (v)n
(g)
FIGURE 14.11 Illustrations for Lemma 14.18.
1 ( u)n CQ n1
u
Pn4 H2
H1 W1
( q)n
q y x W2 z
( z )n
Q2
Q1
( v )n
v (h)
ch014.tex
25/7/2008
14: 27
Page 369
Spanning Connectivity
369
Case 2.1. Assume that x ∈ Ri and y ∈ Ri for 1 ≤ i ≤ n − 2. We assume that x ∈ Rn−2 and y ∈ Rn−2 . We denote Rn−2 = u, H1 , p1 , H2 , p2 , H3 , v with {p1 , p2 } = {x, y}. (Note that p1 = p2 if x = y.) Case 2.1.1. Assume that p1 = x and p2 = y. The Rn−2 is written as u, W1 , q1 , x, / E(Rn−2 ), u = q1 and v = q2 . W2 , y, q2 , W3 , v. Since (x, u) ∈ / E(Rn−2 ) and (y, v) ∈ 1 Since CQn−1 is isomorphic to CQn−1 , by Theorem 14.11, there are two disjoint paths 1 Q1 and Q2 of CQn−1 such that (1) Q1 joins (u)n to (v)n , (2) Q2 joins (q1 )n to (q2 )n , 1 . We set and (3) Q1 ∪ Q2 contains all the vertices in CQn−1 P i = Ri
for every 1 ≤ i ≤ n − 3
Pn−2 = u, x, W2 , y, v Pn−1 = u, W1 , q1 , (q1 )n , Q2 , (q2 )n , q2 , W3 , v Pn = u, (u)n , Q1 , (v)n , v Hence, {P1 , P2 , . . . , Pn } is the n∗ -container of CQn between u and v as illustrated in Figure 14.11b. 1 is isoCase 2.1.2. Assume that x = y, p1 = y, p2 = x, and l(H2 ) = 1. Since CQn−1 1 morphic to CQn−1 , by Theorem 14.10, there is a Hamiltonian path Q of CQn−1 joining (u)n to (v)n . We set
Pi = Ri
for every 1 ≤ i ≤ n − 3
Pn−2 = u, x, H3 , v Pn−1 = u, H1 , y, v Pn = u, (u)n , Q, (v)n , v Then {P1 , P2 , . . . , Pn } forms the n∗ -container of CQn between u and v. See Figure 14.11c for illustration. Case 2.1.3. Assume that x = y, p1 = y, p2 = x, and l(H2 ) = 2. We rewrite Rn−2 =
u, W1 , y, q, x, W2 , v. Case 2.1.3.1. Assume that l(W1 ) ≥ 2. Let W1 = u, P, z, y. By Theorem 14.11, there 1 are two disjoint paths Q1 and Q2 of CQn−1 such that (1) Q1 joins (u)n to (v)n , (2) Q2 1 . We set n n joins (z) to (q) , and (3) Q1 ∪ Q2 contains all the vertices in CQn−1 P i = Ri
for every 1 ≤ i ≤ n − 3
Pn−2 = u, x, W2 , v Pn−1 = u, (u)n , Q1 , (v)n , v Pn = u, P, z, (z)n , Q2 , (q)n , q, y, v Then {P1 , P2 , . . . , Pn } is the n∗ -container of CQn between u and v as shown in Figure 14.11d.
ch014.tex
25/7/2008
14: 27
Page 370
370
Graph Theory and Interconnection Networks
Case 2.1.3.2. Assume that l(W1 ) = 1. Thus, W1 = u, y. Since NCQ0 (u) = n−1
0 ). NCQ0 (q), there is a vertex w in NCQ0 (q) − NCQ0 (u). Note that (u, w) ∈ / E(CQn−1 n−1
n−1
n−1
Case 2.1.3.2.1. Suppose that w ∈ Rn−3 . We write that Rn−3 = u, Z1 , z, w, Z2 , v. By 1 Theorem 14.11, there are two disjoint paths Q1 and Q2 of CQn−1 such that (1) Q1 joins (u)n to (v)n , (2) Q2 joins (z)n to (q)n , and (3) Q1 ∪ Q2 contains all the vertices 1 . We set in CQn−1 Pi = Ri
for every 1 ≤ i ≤ n − 4
Pn−3 = u, x, W2 , v Pn−2 = u, (u)n , Q1 , (v)n , v Pn−1 = u, Z1 , z, (z)n , Q2 , (q)n , q, w, Z2 , v Pn = u, y, v Then the n∗ -container of CQn between u and v is composed of {P1 , P2 , . . . , Pn }. See Figure 14.11e for illustration. Case 2.1.3.2.2. Suppose that w ∈ W2 . Since w ∈ / NCQ0 (u), w = x. Let W2 = n−1
x, Z1 , z, w, Z2 , v. By Theorem 14.11, there are two disjoint paths Q1 and Q2 of 1 CQn−1 such that (1) Q1 joins (u)n to (v)n , (2) Q2 joins (z)n to (q)n , and (3) Q1 ∪ Q2 1 . We set contains all the vertices in CQn−1 P i = Ri
for every 1 ≤ i ≤ n − 3
Pn−2 = u, x, Z1 , z, (z)n , Q2 , (q)n , q, w, Z2 , v Pn−1 = u, (u)n , Q1 , (v)n , v Pn = u, y, v Then we have constructed the n∗ -container {P1 , P2 , . . . , Pn } of CQn between u and v as illustration in Figure 14.11f. Case 2.1.4. Assume that x = y, p1 = y, p2 = x, and l(H2 ) ≥ 3. We rewrite Rn−2 = u, W1 , y, q1 , W2 , q2 , x, W3 , v. By Theorem 14.11, there are two disjoint paths 1 Q1 and Q2 of CQn−1 such that (1) Q1 joins (u)n to (q1 )n , (2) Q2 joins (q2 )n to (v)n , 1 . We set and (3) Q1 ∪ Q2 contains all the vertices in CQn−1 P i = Ri
for every 1 ≤ i ≤ n − 3
Pn−2 = u, x, W3 , v Pn−1 = u, W1 , y, v Pn = u, (u)n , Q1 , (q1 )n , q1 , W2 , q2 , (q2 )n , Q2 , (v)n , v Then {P1 , P2 , . . . , Pn } forms the n∗ -container of CQn between u and v. See Figure 14.11g for illustration.
ch014.tex
25/7/2008
14: 27
Page 371
Spanning Connectivity
371
Case 2.2. Assume that x ∈ Ri and y ∈ Rj for some 1 ≤ i ≤ n − 2 and 1 ≤ j ≤ n − 2 with i = j. We assume that x ∈ Rn−3 and y ∈ Rn−2 . We write Rn−3 = u, H1 , q, x, H2 , v and Rn−2 = u, W1 , y, z, W2 , v. By Theorem 14.11, there are two disjoint paths Q1 1 such that (1) Q1 joins (u)n to (v)n , (2) Q2 joins (q)n to (z)n , and (3) and Q2 of CQn−1 1 . We set Q1 ∪ Q2 contains all the vertices in CQn−1 Pi = Ri
for every 1 ≤ i ≤ n − 4
Pn−3 = u, x, H2 , v Pn−2 = u, W1 , y, v Pn−1 = u, H1 , q, (q)n , Q2 , (z)n , z, W2 , v Pn = u, (u)n , Q1 , (v)n , v Then {P1 , P2 , . . . , Pn } is the n∗ -container of CQn between u and v. See Figure 14.11h for illustration. Thus, this lemma is proved. LEMMA 14.19 Suppose that u and v are two distinct vertices of CQn with (u)n−2 = (v)n−2 and (u)n−1 = (v)n−1 for n ≥ 7. Then there is an n∗ -container of CQn between u and v. 00 and Proof: We assume that (u)n−2 = 0 and (u)n−1 = 0. Thus, we have u ∈ CQn−2 10 . Since CQ00 ∪ CQ10 is isomorphic to CQ v ∈ CQn−2 n−1 , by Lemma 14.18, there n−2 n−2 is an n∗ -container of CQn between u and v. Hence, this lemma is proved.
LEMMA 14.20 Let n ≥ 7. Suppose that u and v are two distinct vertices of CQn with (u)n−2 = (v)n−2 and (u)n−1 = (v)n−1 . Then there is an n∗ -container of CQn between u and v. 00 and v ∈ CQ11 . Proof: Assume that (u)n−2 = 0 and (u)n−1 = 0. Thus, u ∈ CQn−2 n−2 We have the following cases: 01 )| = 2n−2 ≥ 2n − 6 if n ≥ 7, there is a set of Case 1. u = ((v)n )n−1 . Since |V (CQn−2 01 ) − {(u)n−1 } such that (x )n−1 is (n − 3) distinct vertices {x1 , x2 , . . . , xn−3 } of V (CQn−2 i not a neighbor of u for every 1 ≤ i ≤ n − 3. By Theorem 14.12, there are (n − 3) disjoint 01 such that R joins x to (u)n−1 for every 1 ≤ i ≤ n − 3 paths R1 , R2 , . . . , Rn−3 of CQn−2 i i "n−3 01 . We write R = x , S , y , (u)n−1 for and i=1 Ri contains all the vertices in CQn−2 i i i i every 1 ≤ i ≤ n − 3. 00 such that H joins Also, there are (n − 3) disjoint paths H1 , H2 , . . . , Hn−3 of CQn−2 i "n−3 00 . n−1 for every 1 ≤ i ≤ n − 3 and i=1 Hi contains all the vertices in CQn−2 u to (xi ) 11 such that W Again, there are (n − 3) disjoint paths W1 , W2 , . . . , Wn−3 of CQn−2 i "n−3 11 . n joins (yi ) to v for every 1 ≤ i ≤ n − 3 and i=1 Wi contains all the vertices in CQn−2 00 such that (p, u) ∈ E(CQ00 ) Since degCQ00 (u) = n − 2, there is a vertex p in CQn−2 n−2 n−2 "n−3 and (p, u) ∈ / i=1 E(Hi ).
ch014.tex
25/7/2008
14: 27
Page 372
372
Graph Theory and Interconnection Networks
11 Since degCQ11 (v) = n − 2, there is a vertex q in CQn−2 such that (q, v) ∈ n−2 " n−3 11 / i=1 E(Wi ). We assume that p ∈ Hn−3 and q ∈ Wt . Let E(CQn−2 ) and (q, v) ∈ Hn−3 = u, P1 , w, p, r, P2 , (xn−3 )n−1 and Wt = (yt )n , Q1 , q, z, Q2 , v.
Case 1.1. Suppose that t ∈ {1, 2, . . . , n − 3}. Without loss of generality, we assume that t = n − 3. We set Ti = u, Hi , (xi )n−1 , xi , Si , yi , (yi )n , Wi , v n
n−1
Tn−3 = u, (u) = (v) n−1
Tn−2 = u, (u)
for every 1 ≤ i ≤ n − 4
, v
n
= (v) , v
To construct two paths Tn−1 and Tn , the following two sub cases are considered: Case 1.1.1. Suppose that (w)n = (z)n−1 . By Theorem 14.10, there is a Hamiltonian 10 − {(u)n } joining (w)n to (z)n−1 . We set path Z of CQn−2 Tn−1 = u, P1 , w, (w)n , Z, (z)n−1 , z, Q2 , v Tn = u, p, r, P2 , (xn−3 )n−1, xn−3 , Sn−3 , yn−3 , (yn−3 )n, Q1 , q, v Then {T1 , T2 , . . . , Tn } is the n∗ -container of CQn between u and v. Case 1.1.2. Suppose that (w)n = (z)n−1 . By Theorem 14.10, there is a Hamiltonian 10 − {(u)n , (w)n } joining (p)n to (r)n . We set path Z of CQn−2 Tn−1 = u, P1 , w, (w)n = (z)n−1 , z, Q2 , v Tn = u, p, (p)n , Z, (r)n , r, P2 , (xn−3 )n−1 , xn−3 , Sn−3 , yn−3 , (yn−3 )n , Q1 , q, v Then {T1 , T2 , . . . , Tn } forms the n∗ -container of CQn between u and v. Case 1.2. Suppose that t = n − 4. The paths Ti are constructed as in Case 1.1 for every 1 ≤ i ≤ n − 5. Two paths Tn−4 and Tn−3 are the same as Tn−3 and Tn−2 in Case 1.1, respectively. The paths Tn−2 , Tn−1 , and Tn are constructed as follows. Case 1.2.1. Suppose that (w)n = (z)n−1 . By Theorem 14.10, there is a Hamilto10 − {(u)n } joining (w )n to (z)n−1 . The path T nian path Z of CQn−2 3 n−2 is the same n−1 as Tn−1 in Case 1.1.1. We set Tn−1 = u, Hn−4 , (xn−4 ) , xn−4 , Sn−4 , yn−4 , (yn−4 )n , Q1 , q, v and Tn = u, p, r, P2 , (xn−3 )n−1 , xn−3 , Sn−3 , yn−3 , (yn−3 )n , Wn−3 , v. Then the n∗ -container of CQn between u and v is composed of {T1 , T2 , . . . , Tn }. Case 1.2.2. Suppose that (w)n = (z)n−1 . By Theorem 14.10, there is a Hamilto10 − {(u)n , wn } joining (p)n to (r)n . Two paths T nian path Z of CQn−2 n−2 and Tn−1 are the same as Tn−2 and Tn in Case 1.2.1, respectively. We set Tn = u, p, (p)n , Z, (r)n , r, P2 , (xn−3 )n−1 , xn−3 , Sn−3 , yn−3 , (yn−3 )n , Wn−3 , v. Then we have constructed the n∗ -container {T1 , T2 , . . . , Tn } of CQn between u and v. 01 )| = 2n−2 ≥ 2n − 6 if Case 2. Suppose that u = ((v)n )n−1 . Since |V (CQn−2 n ≥ 7, there is a set of (n − 3) distinct vertices {x1 , x2 , . . . , xn−3 } of
ch014.tex
25/7/2008
14: 27
Page 373
Spanning Connectivity
373
01 ) − {(u)n−1 , (v)n } such that (x )n−1 is not a neighbor of u for every V (CQn−2 i 1 ≤ i ≤ n − 3. By Theorem 14.12, there is a set of (n − 3) disjoint paths {R1 , R2 , . . . , Rn−3 } 01 such that (1) Ri joins xi to (u)n−1 for every 1 ≤ i ≤ n − 3 and (2) of CQn−2 "n−3 01 n i=1 Ri contains all the vertices in CQn−2 . Assume that (v) in Rn−3 . We write n−1 Ri = xi , Si , yi , (u) for every 1 ≤ i ≤ n − 4 and Rn−3 = xn−3 , Sn−3 , yn−3 , (v)n , S, (u)n−1 . Note that Si is a " path joining xi to yi for every 1 ≤ i ≤ n − 3, S is a path 01 joining (v)n to (u)n−1 , and ( n−3 i=1 Si ) ∪ S contains all the vertices in CQn−2 . 00 such Similarly, there is a set of (n − 3) disjoint paths {H1 , H2 , . . . , Hn−3 } of CQn−2 " that (1) Hi joins u to (xi )n−1 for every 1 ≤ i ≤ n − 3 and (2) n−3 i=1 Hi contains all the 00 . vertices in CQn−2 11 such Also, there is a set of (n − 3) disjoint paths {W1 , W2 , . . . , Wn−3 } of CQn−2 " that (1) Wi joins (yi )n to v for every 1 ≤ i ≤ n − 3 and (2) n−3 i=1 Wi contains all the 11 . vertices in CQn−2 00 Since degCQ00 (u) = n − 2, there is a vertex p in CQn−2 such that n−2 " n−3 00 / i=1 E(Hi ). Since degCQ11 (v) = n − 2, there is (p, u) ∈ E(CQn−2 ) and (p, u) ∈ n−2 " 00 11 ) and (q, v) ∈ / n−3 a vertex q in CQn−2 such that (q, v) ∈ E(CQn−2 i=1 E(Hi ). Without loss of generality, we assume that p ∈ Hn−3 and q ∈ Wt . We write Hn−3 = u, P1 , w, p, r, P2 , (xn−3 )n−1 and Wt = (yt )n , Q1 , q, z, Q2 , v.
Case 2.1. Suppose that t = n − 3. We set Ti = u, Hi , (xi )n−1 , xi , Si , yi , (yi )n , Wi , v for every 1 ≤ i ≤ n − 4 and Tn−3 = u, (u)n−1 , S −1 , (v)n , v. Case 2.1.1. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . By Theorem 14.11, there 10 such that (1) Z joins (u)n to (v)n−1 , (2) Z are two disjoint paths Z1 and Z2 of CQn−2 1 2 10 . We set n n−1 joins (w) to (z) , and (3) Z1 ∪ Z2 contains all the vertices in CQn−2 Tn−2 = u, P1 , w, (w)n , Z2 , (z)n−1 , z, Q2 , v Tn−1 = u, (u)n , Z1 , (v)n−1 , v Tn = u, p, r, P2 , (xn−3 )n−1 , xn−3 , Sn−3 , yn−3 , (yn−3 )n , Q1 , q, v Then {T1 , T2 , . . . , Tn } forms the n∗ -container of CQn between u and v. Case 2.1.2. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . By Theorem 14.10, 10 − {(u)n } joining (w)n to (v)n−1 . The path there is a Hamiltonian path Z of CQn−2 Tn−2 is the same as Tn in Case 2.1.1. We set Tn−1 = u, P1 , w, (w)n , Z, (v)n−1 , v and Tn = u, (u)n = (z)n−1 , z, Q2 , v. Then we have constructed the n∗ -container {T1 , T2 , . . . , Tn } of CQn between u and v. Case 2.1.3. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . The proof of this case is similar to that of Case 2.1.2. Case 2.1.4. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . By Theorem 14.10, there 10 − {(u)n , (v)n−1 } joining (p)n to (r)n . The path is a Hamiltonian path Z of CQn−2 Tn−2 is the same as Tn in Case 2.1.2. We set Tn−1 = u, P1 , w, (w)n = (v)n−1 , v and
ch014.tex
25/7/2008
374
14: 27
Page 374
Graph Theory and Interconnection Networks
Tn = u, p, (p)n , Z, (r)n , r, P2 , (xn−3 )n−1 , xn−3 , Sn−3 , yn−3 , (yn−3 )n , Q1 , q, v. Then the n∗ -container of CQn between u and v is composed of {T1 , T2 , . . . , Tn }. Case 2.2. Suppose that t = n − 4. We set Ti = u, Hi , (xi )n−1 , xi , Si , yi , (yi )n , Wi , v for every 1 ≤ i ≤ n − 5 and Tn−4 = u, (u)n−1 , S −1 , (v)n , v. Case 2.2.1. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . By Theorem 14.11, there 10 such that (1) Z joins (u)n to (v)n−1 , (2) Z are two disjoint paths Z1 and Z2 of CQn−2 1 2 10 . Two paths T n n−1 joins (w) to (z) , and (3) Z1 ∪ Z2 contains all the vertices in CQn−2 n−3 and Tn−2 are the same as Tn−2 and Tn−1 in Case 2.1.1, respectively. Two paths Tn−1 and Tn are the same as Tn−1 and Tn in Case 1.2.1, respectively. Then {T1 , T2 , . . . , Tn } is the n∗ -container of CQn between u and v. Case 2.2.2. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . By Theorem 14.10, there 10 − {(u)n } joining (w)n to (v)n−1 . The two paths T is a Hamiltonian path Z of CQn−2 n−3 and Tn−2 are the same as Tn−1 and Tn in Case 2.1.2, respectively. Also, the two paths Tn−1 and Tn are the same as Tn−1 and Tn in Case 1.2.1, respectively. We say that {T1 , T2 , . . . , Tn } forms the n∗ -container of CQn between u and v. Case 2.2.3. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . The proof of this case is similar to that of Case 2.2.2. Case 2.2.4. Suppose that (u)n = (z)n−1 and (v)n−1 = (w)n . By Theorem 14.10, there 10 − {(u)n , (v)n−1 } joining (p)n to (r)n . The path T is a Hamiltonian path Z of CQn−2 n−3 is the same as Tn−1 in Case 1.2.1. Also, the path Tn−2 is the same as Tn in Case 2.1.2. Two paths Tn−2 and Tn−1 are the same as Tn−1 and Tn in Case 2.1.4, respectively. Then {T1 , T2 , . . . , Tn } is the n∗ -container of CQn between u and v. Thus, this lemma is proved. With Lemmas 14.17 through 14.20, we have the following result. THEOREM 14.13 CQn is super spanning connected if n ≥ 7.
14.5
SPANNING CONNECTIVITY AND SPANNING LACEABILITY OF THE ENHANCED HYPERCUBE NETWORKS
The folded hypercube FQn is an important variation of hypercube proposed by El-Amawy and Latifi [96]. The enhanced hypercube Qn,m (2 ≤ m ≤ n) is another important variation of hypercube proposed by Tzeng and Wei [317]. The folded hypercube FQn is obtained from a hypercube Qn with add-on edges defined by joining any vertex u = u1 u2 . . . un−1 un to u = u1 u2 . . . un−1 un , where ui = 1 − ui is the complement of ui . The enhanced hypercube Qn,m is obtained from a hypercube Qn with add-on edges defined by joining any vertex u = u1 u2 . . . un−1 un to (u)c = u1 u2 . . . um um+1 um+2 . . . un−1 un . Obviously, FQn = Qn,n and FQn and Qn,m are (n + 1)-regular. Moreover, FQn is a bipartite graph if and only if n is odd and Qn,m is a bipartite graph if and only if m is odd.
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 375
375
Chang et al. [44] prove that the folded hypercube FQn is super spanning laceable if n is an odd integer and super spanning connected if otherwise. Moreover, Chang et al. prove that the enhanced hypercube Qn,m is super spanning laceable if m is an odd integer and super spanning connected if otherwise. Let x be a vertex of Qn and U = {y1 , y2 , . . . , yk } be a subset of V (Qn ) − {x}. If there exist k paths {P1 , P2 , . . . , Pk } of Qn such that (1) Pi joining x to yi for 1 ≤ i ≤ k, (2) x is the only common vertex of Pi and Pj for any 1 ≤ i = j ≤ k. We called {P1 , P2 , . . . , Pk } a k-container joining x to U, denoted by C(x, U). A k-container C(x, U) is a k ∗ -container of Qn if it contains all vertices of Qn . THEOREM 14.14 Assume that k ≤ n and x is a vertex of Qn . Let U = {y1 , y2 , . . . , yk } be a subset of V (Qn ) − {x} with yi = yj for every i = j and yk is the only vertex in {y1 , y2 , . . . , yk } such that yk and x are in different partite sets. Then there are k disjoint paths P" 1 , P2 , . . . , Pk in Qn joining x to U such that (1) Pi joins x to yi for 1 ≤ i ≤ k and (2) ki=1 Pi spans Qn . Proof: By Theorem 14.7, this statement holds for every Qn if k = 1. Suppose that k = 2 and n ≥ 2. By Theorem 14.7, there is a Hamiltonian path P = y1 , R1 , x, R2 , y2 of Qn joining y1 to y2 . We set P1 = x, R1−1 , y1 and P2 = x, R2 , y2 . Then P1 and P2 form the required paths. Thus, we assume that 3 ≤ k ≤ n, and this theorem is true for Qn−1 . Since Qn is vertex-transitive, we assume that x = 0n . Thus, x is an even vertex 0 . We have the following cases: and x ∈ Qn−1 Case 1. (yk )i = 0 for some 1 ≤ i ≤ n. Since Qn is edge-transitive, we assume that 0 . For 0 ≤ j ≤ 1, we set U = {y | y ∈ Qj (yk )n = 0. Thus, yk ∈ Qn−1 j i i n−1 for 1 ≤ i ≤ k}. 0 Without loss of generality, we assume that U0 = {ym+1 , ym+2 , . . . , yk } ⊆ Qn−1 and 1 U1 = {y1 , y2 , . . . , ym } ⊆ Qn−1 for some 0 ≤ m ≤ k − 1. ˜ = k − 1. By induction, there Case 1.1. m = 0. Let U˜ = U0 − {yk−1 }. Obviously, |U| 0 are (k − 1) disjoint paths {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U˜ such that (1) Ri " joins x to yi for every 1 ≤ i ≤ k − 2, (2) Rk−1 joins x to yk , and (3) k−1 i=1 Ri spans 0 . Obviously, y ∈ R for some 1 ≤ i ≤ k − 1. Qn−1 k−1 i Suppose that yk−1 ∈ Ri for some 1 ≤ i ≤ k − 2. Without loss of generality, we assume that yk−1 ∈ Rk−2 . We write Rk−2 as x, H1 , yk−1 , z, H2 , yk−2 . Since yk−1 is 0 . By Theorem 14.7, there is a Hamilan even vertex, z is an odd vertex in Qn−1 1 n tonian path W of Qn−1 joining (x) to (z)n . We set Pi = Ri for every 1 ≤ i ≤ k − 3, Pk−2 = x, (x)n , W , (z)n , z, H2 , yk−2 , Pk−1 = x, H1 , yk−1 , and Pk = Rk−1 . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12a for illustration, for k = 6. Suppose that yk−1 ∈ Rk−1 . We can write Rk−1 as x, H1 , yk−1 , z, H2 , yk . (Note 1 that z = yk if l(H2 ) = 0.) By Theorem 14.7, there is a Hamiltonian path W of Qn−1 n n joining (x) to (z) . We set Pi = Ri for every 1 ≤ i ≤ k − 2, Pk−1 = x, H1 , yk−1 , and Pk = x, (x)n , W , (z)n , z, H2 , yk . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12b for illustration, for k = 6. 1 . By induction, there are (k − 1) disjoint paths Case 1.2. m = 1. Thus, y1 ∈ Qn−1 0 {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U0 such that (1) Ri joins x to yi+1 for every
ch014.tex
25/7/2008
14: 27
Page 376
376
Graph Theory and Interconnection Networks
0 Qn1 x
(x)n
y6 H1 y 5
R1 R2
0 Qn1 x
0 Qn1
R5
(z)n
R3 H2 z
0 Qn1 x
(x) n R5
R4
u S1 S 2 y1 y2
0 n1
R2
W
Q
x
R5
v2
(v1)n
0 Qn1 x
R1 W3
v1 W1 W2
y1 y2 y3
R5 n R4 (v5) R3 (v4)n
R2 (v )n 3 y6 (v2)n
(e) 1 n1
Q (x)
R5 n
H1 H2
y1 y2 y3 y4
0 n1
Q
x
y5 y6
Q
(z)
R1
(g)
H1
n
(x)
y 6 S2
u H2 y4 y5
0 n1
x
R1 R2
R3
4
(v4)n
y1 y2 (v3)n
n
v4
v2 W2 W3 W4 , W1 y2 y3 y4 y5
R1
R5 R2 (u)n R3 R4 z
y1 y2 y3
(x)n H1 y 6 u
(z)n H2 S1 y4 y5
(i)
0 n1
1 n1
n
(x) H 2 y 6 Q Q (x) u v x 5 z R W6 H 1 1 R5 y6 H1 z R2 R4 n v4 u v4 (z) v5 v3 v3 n H2 R3 (v4) W3 W4 W3 W 4 W5 n y3 y4 y5 y1 y2 (v3) y3 y4 y5 Q
R5 n R (z)
1 n1
v3
1 Q n1
x
(h)
0 n1
1 (x)n y1 Q n1 W1 v5
(f) 1 n1 n
R5 z R2 R4 R3 (u)n y1 y2 y3
u
Q
R1 (v2)
y1
(c)
n
y4 y5 y6
n
R3 R4 (u)
y2 y3 y4 y5 y6 0 Q n1 (x)n W4 u
R2
(d) R1
R 2 R3 R 4 R5
(z)n
0 Qn1 x
R3
(u)n
y3 y4 y5 ya Q
W
(b)
0 Qn1
R4
(x)n
R1
y1 y2 y3 y4 y6
(a)
R2 R3
1 Q n1
4
y1 y2 y3 y4
R1
(x)n
H1 R1 y5 z R2 R 3 R H2
W
0 Qn1 x
0 Qn1
(j)
(k)
FIGURE 14.12 Illustrations for Theorem 14.14.
" 0 1 ≤ i ≤ k − 1 and (2) k−1 i=1 Ri spans Qn−1 . By Theorem 14.7, there is a Hamiltonian 1 n path W of Qn−1 joining (x) to y1 . We set P1 = x, (x)n , W , y1 and Pi = Ri−1 for every 2 ≤ i ≤ k. Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12c for illustration, for k = 6. 1 . Since there are 2n−2 even vertices in Case 1.3. m = 2. We have {y1 , y2 } ⊆ Qn−1 0 Qn−1 and 2n−2 − |U0 ∪ {x}| − 1 = 2n−2 − (k − 2) ≥ 2n−2 − n + 2 ≥ 1 if n ≥ 3, we can 0 choose an even vertex u in Qn−1 − (U0 ∪ {x}). By induction, there are (k − 1) dis0 joint paths {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U0 ∪ {u} such that (1) Ri joins x " 0 to yi+2 for every 1 ≤ i ≤ k − 2, (2) Rk−1 joins x to u, and (3) k−1 i=1 Ri spans Qn−1 . 1 By Theorem 14.4, there exist two disjoint paths S1 and S2 of Qn−1 such that (1) 1 . We set S1 joins (u)n to y1 , (2) S2 joins (x)n to y2 , and (3) S1 ∪ S2 spans Qn−1 n n P1 = x, Rk−1 , u, (u) , S1 , y1 , P2 = x, (x) , S2 , y2 , and Pi = Ri−2 for every 3 ≤ i ≤ k.
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 377
377
Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12d for illustrations, for k = 6. Case 1.4. 3 ≤ m ≤ k − 2. We have k ≥ 5. Hence, n ≥ 5. Since m ≥ 3 and k ≤ n, |U0 − {yk }| = k − m − 1 ≤ k − 4 ≤ n − 4. 1 We claim that there exists an even vertex u in Qn−1 − U1 such that n (yi ) ∈ / NQ1 (u) for every m + 1 ≤ i ≤ k − 1. Such a claim holds, because n−1
(n − 1)|U0 − {yk }| + |U1 | ≤ (n − 1)(n − 4) + (n − 2) ≤ (n − 1)(n − 3) − 1 < 2n−2 for all n ≥ 5. Since m ≤ k − 2 and k ≤ n, m + 1 ≤ n − 1. By induction, there are (m + 1) disjoint 1 paths {W1 , W2 , . . . , Wm+1 } of Qn−1 joining u to U1 ∪ {(x)n } such that (1) Wi joins u " 1 to yi for every 1 ≤ i ≤ m, (2) Wm+1 joins u to (x)n , and (3) m+1 i=1 Wi spans Qn−1 . We 1 , write Wi as u, vi , Wi , yi for every 1 ≤ i ≤ m − 1. Since u is an even vertex in Qn−1 1 0 vi is an odd vertex in Qn−1 and (vi )n is an even vertex in Qn−1 for every 1 ≤ i ≤ m − 1. n Let U˜0 = U0 ∪ {(vi ) | 1 ≤ i ≤ m − 1}. Obviously, |U˜0 | = (k − m) + (m − 1) = k − 1. 0 joining x By induction, there are (k − 1) disjoint paths {R1 , R2 , . . . , Rk−1 } of Qn−1 to (vi )n for every 1 ≤ i ≤ m − 1, (2) Ri joins x to yi+1 for to U˜0 such that (1) Ri joins x " 0 n every m ≤ i ≤ k − 1, and (3) k−1 i=1 Ri spans Qn−1 . We set Pi = x, Ri , (vi ) , vi , Wi , yi −1 n for every 1 ≤ i ≤ m − 1, Pm = x, (x) , Wm+1 , u, Wm , ym , and Pi = Ri−1 for every m + 1 ≤ i ≤ k. Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12e for illustration, for k = 6 and m = 3. Case 1.5. m = k − 1 and k − 1 ≥ 3. Let U˜1 = (U1 − {y1 }) ∪ {(x)n }. Obviously, |U˜1 | = k − 1. By induction, there are (k − 1) disjoint paths {W1 , W2 , . . . , Wk−1 } of 1 joining y1 to U˜1 such that (1) W1 joins y1 to (x)n , (2) Wi joins y1 to yi for Qn−1 " 1 every 2 ≤ i ≤ k − 1, and (3) k−1 i=1 Wi spans Qn−1 . We write Wi as y1 , vi , Wi , yi 1 for every 2 ≤ i ≤ k − 1. Since y1 is an even vertex in Qn−1 , vi is an odd ver1 0 tex in Qn−1 and (vi )n is an even vertex in Qn−1 for every 2 ≤ i ≤ k − 1. Let n U˜0 = {yk } ∪ {(vi ) | 2 ≤ i ≤ k − 1}. Obviously, |U˜0 | = k − 1. By induction, there are 0 (k − 1) disjoint paths {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U˜0 such that (1) R1 joins " 0 n x to yk , (2) Ri joins x to (vi ) for every 2 ≤ i ≤ k − 1, and (3) k−1 i=1 Ri spans Qn−1 . We −1 n n set P1 = x, (x) , W1 , y1 , Pi = x, Ri , (vi ) , vi , Wi , yi for every 2 ≤ i ≤ k − 1, and Pk = R1 . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12f for illustration, for k = 6. 1 . Case 2. (yk )i = 1 for every 1 ≤ i ≤ n. Obviously, n is odd with n ≥ 3 and yk ∈ Qn−1 0 Since Qn is edge-transitive, we assume that U0 = {y1 , y2 , . . . , ym } ⊆ Qn−1 and 1 U1 = {ym+1 , ym+2 , . . . , yk } ⊆ Qn−1 for some 1 ≤ m ≤ k − 2. 1 . Let H be a Hamiltonian path of Case 2.1. m = k − 2. We have {yk−1 , yk } ⊆ Qn−1 1 Qn−1 joining yk−1 to yk . We write H as yk−1 , H1 , u, (x)n , H2 , yk . Since (x)n is an 0 . (Note that y odd vertex, u is an even vertex and (u)n is an odd vertex in Qn−1 k−1 = u n if l(H1 ) = 0 or (x) = yk if l(H2 ) = 0.) By induction, there are (k − 1) disjoint paths 0 {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U0 ∪ {(u)n } such that (1) Ri joins x to yi for " 0 1 ≤ i ≤ k − 2, (2) Rk−1 joins x to (u)n , and (3) k−1 i=1 Ri spans Qn−1 . We set Pi = Ri for
ch014.tex
378
25/7/2008
14: 27
Page 378
Graph Theory and Interconnection Networks
1 ≤ i ≤ k − 2, Pk−1 = x, Rk−1 , (u)n , u, H1−1 , yk−1 , and Pk = x, (x)n , H2 , yk . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12g for illustration, for k = 6. 1 . Since Case 2.2. m = k − 3. We have n ≥ 5 and {yk−2 , yk−1 , yk } ⊆ Qn−1 0 n−2 m + 1 ≤ n − 2 < 2 , we can pick an even vertex z ∈ Qn−1 − ({yi | 1 ≤ i ≤ k − 3} ∪ 1 {x}). By Theorem 14.4, there exist two disjoint paths S1 and S2 of Qn−1 such that (1) 1 n n S1 joins (z) to yk−2 , (2) S2 joins (x) to yk−1 , and (3) S1 ∪ S2 spans Qn−1 . Obviously, yk ∈ Si for some 1 ≤ i ≤ 2. Suppose that yk ∈ S1 . We write S1 as (z)n , H1 , yk , u, H2 , yk−2 . Obviously, u 0 . (Note that (x)n = y if is an even vertex and (u)n is an odd vertex in Qn−1 k l(H1 ) = 0 or u = yk−2 if l(H2 ) = 0.) Let U˜0 = U0 ∪ {z, (u)n }. Obviously, |U˜0 | = k − 1. 0 joinBy induction, there are (k − 1) disjoint paths R1 , R2 , . . . , Rk−1 in Qn−1 ˜ ing x to U0 such that (1) Ri joins x to y"i for 1 ≤ i ≤ k − 3, (2) Rk−2 joins x 0 to z, (3) Rk−1 joins x to (u)n , and (4) k−1 i=1 Ri spans Qn−1 . We set Pi = Ri n for 1 ≤ i ≤ k − 3, Pk−2 = x, Rk−1 , (u) , u, H2 , yk−2 , Pk−1 = x, (x)n , S2 , yk−1 , and Pk = x, Rk−2 , z, (z)n , H1 , yk . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12h for illustration, for k = 6. Suppose that yk ∈ S2 . We write S2 as (x)n , H1 , yk , u, H2 , yk−1 . Obviously, u is 1 0 . (Note that (x)n = y if and (u)n is an odd vertex in Qn−1 an even vertex in Qn−1 k l(H1 ) = 0 or u = yk−1 if l(H2 ) = 0.) Let U˜0 = U0 ∪ {z, (u)n }. Obviously, |U˜0 | = k − 1. 0 By induction, there are (k − 1) disjoint paths R1 , R2 , . . . , Rk−1 in Qn−1 joining ˜ yi for 1 ≤ i ≤ k − 3, (2) Rk−2 joins x to x to U0 such that (1) Ri joins x to " 0 z, (3) Rk−1 joins x to (u)n , and (4) k−1 i=1 Ri spans Qn−1 . We set Pi = Ri for n 1 ≤ i ≤ k − 3, Pk−2 = x, Rk−2 , z, (z) , S1 , yk−2 , Pk−1 = x, Rk−1 , (u)n , u, H2 , yk−1 , and Pk = x, (x)n , H1 , yk . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12i for illustration, for k = 6.
Case 2.3. 1 ≤ m ≤ k − 4. We have k ≥ 5. Moreover, n ≥ 5. Since m ≤ k − 4 and k ≤ n, |U0 | = m ≤ k − 4 ≤ n − 4. 1 / NQ1 (u) We claim that there exists an even vertex u in Qn−1 − U1 such that (yi )n ∈ n−1 for every 1 ≤ i ≤ m. Such a claim holds, because (n − 1)|U0 | + |U1 − {yk }| = (n − 1) m + (k − m) − 1 = (n − 2)m + k − 1 ≤ (n − 2)(n − 4) + n − 1 = (n − 1)(n − 4) + 3 < 2n−2 for all n ≥ 5. Let U˜1 = (U1 − {yk }) ∪ {(x)n }. Obviously, |U˜1 | = k − m. By induction, there are 1 (k − m) disjoint paths {Wm+1 , Wm+2 , . . . , Wk } of Qn−1 joining u to U˜1 such that (1) Wi joins u to yi for every m + 1 ≤ i ≤ k − 1, (2) Wk joins u to (x)n , and (3) ∪ki=m+1 Wi 1 . We write W as u, v , W , y for every m + 1 ≤ i ≤ k − 1. Since u is an spans Qn−1 i i i i 1 , v is an odd vertex in Q1 0 n even vertex in Qn−1 i n−1 and (vi ) is an even vertex in Qn−1 for every m + 1 ≤ i ≤ k − 2. Suppose that yk ∈ Wk . We write Wk as u, H1 , z, yk , H2 , (x)n . (Note that u = z if l(H1 ) = 0 or yk = (x)n if l(H2 ) = 0.) Since yk is an odd 1 , 1 , z is an even vertex in Qn−1 and (z)n is an odd vertex in Qn−1 0 n ˜ vertex in Qn−1 . Let U0 = U0 ∪ {(vi ) | m + 1 ≤ i ≤ k − 2} ∪ {(z)n }. Obviously, |U˜0 | = m + (k − m − 2) + 1 = k − 1. By induction, there are (k − 1) disjoint paths
ch014.tex
25/7/2008
14: 27
Page 379
Spanning Connectivity
379
0 {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U˜0 such that (1) Ri joins x to yi for 1 ≤ i ≤ m, n (2) R joins x to (v ) for every m + 1 ≤ i ≤ k − 2, (3) Rk−1 joins x to (z)n , and (4) i i "k−1 0 n i=1 Ri spans Qn−1 . We set Pi = Ri for every 1 ≤ i ≤ m, Pi = x, Ri , (vi ) , vi , Wi , yi −1 ,y for every m + 1 ≤ i ≤ k − 2, Pk−1 = x, Rk−1 , (z)n , z, H1 , u, vk−1 , Wk−1 k−1 , and −1 n Pk = x, (x) , H2 , yk . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12j for illustration, for k = 6 and m = 2. Suppose that yk ∈ Wi for some 1 ≤ i ≤ k − 1. Without loss of generality, we assume that yk ∈ Wk−1 . We write Wk−1 as u, vk−1 , H1 , yk , z, H2 , yk−1 . (Note that vk−1 = yk if l(H1 ) = 0 or z = yk−1 if l(H2 ) = 0.) Since yk is an 1 , z is an even vertex in Q1 n odd vertex in Qn−1 n−1 and (z) is an odd ver0 . Let U˜ = U ∪ {(v )n | m + 1 ≤ i ≤ k − 2} ∪ {(z)n }. Obviously, |U˜ | = tex in Qn−1 0 i 0 0 m + (k − m − 2) + 1 = k − 1. By induction, there are (k − 1) disjoint paths 0 {R1 , R2 , . . . , Rk−1 } of Qn−1 joining x to U˜0 such that (1) Ri joins x to yi for every 1 ≤ i ≤ m, (2) Ri joins " x to (vi )n for every m + 1 ≤ i ≤ k − 2, (3) k−1 0 Rk−1 joins x to (z)n , and (4) i=1 Ri spans Qn−1 . We set Pi = Ri for every 1 ≤ i ≤ m, Pi = x, Ri , (vi )n , vi , Wi , yi for every m + 1 ≤ i ≤ k − 2, Pk−1 =
x, Rk−1 , (z)n , z, H2 , yk−1 , and Pk = x, (x)n , Wk−1 , u, vk−1 , H1 , yk . Then {P1 , P2 , . . . , Pk } forms a set of required paths of Qn . See Figure 14.12k for illustration, for k = 6 and m = 2.
Let u = u1 u2 . . . un−1 un be a vertex of FQn . The c-neighbor of u in FQn , (u)c , is u1 u2 . . . un . Note that (u)c and u are of the same parity if and only if n is an even integer. Let E c = {(u1 u2 . . . un , u1 u2 . . . un ) | u1 u2 . . . un ∈ V (FQn )}. By definition, the n-dimensional folded hypercube FQn is obtained from Qn by adding E c . Let f be a function on V (FQn ) defined by f (u) = u if (u)n = 0 and f (u) = ((u)c )n if otherwise. The following theorem can be proved easily. THEOREM 14.15 The function f is an isomorphism of FQn into itself. j
Let FQn−1 be the subgraph of FQn induced by {v ∈ V (FQn ) | (v)n = j} for j 0 ≤ j ≤ 1. Obviously, FQn−1 is isomorphic to Qn−1 for 0 ≤ j ≤ 1. LEMMA 14.21 Let x be an even vertex and y be an odd vertex of FQn for any positive integer n ≥ 2. Then there exists a k ∗ -container of FQn between x and y for every 1 ≤ k ≤ n + 1. Proof: Since FQ2 is isomorphic to the complete graph K4 , this statement holds for n = 2. Suppose that n ≥ 3. Since Qn is a spanning subgraph of FQn , by Theorem 14.7, there exists a k ∗ -container between x and y for every 1 ≤ k ≤ n. Thus, we need only to construct an (n + 1)∗ -container of FQn between x and y. Since FQn is vertex-transitive, 0 . we assume that x = 0n ∈ FQn−1 Case 1.
0 . We have the following sub cases: y ∈ FQn−1
Case 1.1. n = 3. Without loss of generality, we assume that y = 100. We set P1 = 000, 001, 101, 100, P2 = 000, 010, 110, 100, P3 = 000, 100, and
ch014.tex
25/7/2008
14: 27
Page 380
380
Graph Theory and Interconnection Networks
P4 = 000, 111, 011, 100. Then {P1 , P2 , P3 , P4 } forms a 4∗ -container of FQ3 between x and y. 0 Case 1.2. n ≥ 4 and (x)c = (y)n . Since FQn−1 is isomorphic to Qn−1 , by Theorem 0 ∗ 14.7, there is an (n − 1) -container {P1 , P2 , . . . , Pn−1 } of FQn−1 between x and y. 1 c c Obviously, (x) and (y) are of different parity. Since FQn−1 is isomorphic to Qn−1 , 1 by Theorem 14.4, there exist two disjoint paths S1 and S2 of FQn−1 such that (1) 1 . We n n c c S1 joins (x) to (y) , (2) S2 joins (x) to (y) , and (3) S1 ∪ S2 spans FQn−1 c c n n set Pn = x, (x) , S1 , (y) , y and Pn+1 = x, (x) , S2 , (y) , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of FQn between x and y. See Figure 14.13a for illustration, for n = 5.
Case 1.3. n ≥ 4 and (x)c = (y)n . Then (y)c = (x)n and n is even. Suppose that n = 4. We have x = 0000 and y = 1110. We set P1 = 0000, 0001, 1110, P2 = 0000, 0010, 0110, 1110, P3 = 0000, 0100, 0101, 0111, 0011, 1011, 1001, 1101, 1100, 1110, P4 = 0000, 1000, 1010, 1110, and P5 = 0000, 1111, 1110. Then {P1 , P2 , P3 , P4 , P5 } forms a 5∗ -container of FQ4 between x and y. Suppose that n ≥ 6. By Theorem 14.7, there is an (n − 1)∗ -container 0 {P1 , P2 , . . . , Pn−1 } of FQn−1 between x and y. Since 2n−1 − 2 ≥ 3(n − 1) for n ≥ 6, there is one path Pi in {P1 , P2 , . . . , Pn−1 } such that I(Pi ) ≥ 3. Without loss of generality, we may assume that I(Pn−1 ) ≥ 3. We write Pn−1 as x, u, v, H, y where u is an odd vertex and v is an even vertex. By 1 Lemma 18.6, there is a Hamiltonian path W of Qn−1 − {(x)n , (y)n } joining (u)n n n n to (v) . We set Pn−1 = x, u, (u) , W , (v) , v, H, y, Pn = x, (x)n = (y)c , y, and Pn+1 = x, (x)c = (y)n , y. Then {P1 , P2 , . . . , Pn−2 , Pn−1 , Pn , Pn+1 } forms an (n + 1)∗ container of FQn between x and y. See Figure 14.13b for illustration, for n = 6. Case 2.
F Q 04
1 . We have the following sub cases: y ∈ FQn−1
F Q 14 F Q 05 5 (x) (x) P1
x
P1 P2 P3 P4
u
P2 P3 P4
S2 S1
v
c
(y) y
(y)5
0 (x)6 F Q 15 F Q 4 x 6 (u) R1 R3 5 W R 2 R 4 (y) 6 (v)
x
c
H c
y
(x)(y)6
(a)
(x)c H3 (x) 5
c u1(y) v
(b)
(c)
R 5(y)c (x)c H5 H R3 R 4 u4 (u4)6 4 H3 R2 u3 (u3)6 H2 u2 (u2) (6u )6 u (d)
(e)
1
F Q 5 F Q 05 y x H1 R1
R1
1
1
FIGURE 14.13 Illustrations for Lemma 14.21.
1
1
H4
(v) 5 (u ) 5 1
(y)c y F Q 15 R 5 H5 c (x) H1 H4 R4 H3 R3 (y)6 (x)6 R2 u3 (u3)6 H 2 u2 (u2)6(u )6 u
0
FQ 5 x
F Q 14 y H1
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 381
381
Case 2.1. n is odd and y ∈ {(x)n , (x)c }. By Theorem 14.15, we consider only that y = (x)c . By Theorem 14.7, there is an n∗ -container {P1 , P2 , . . . , Pn } of Qn between x and y. We set Pn+1 = x, y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of FQn between x and y. 1 Case 2.2. n is odd and y ∈ / {(x)c , (x)n }. Since y ∈ FQn−1 and y is an odd vertex, we n c have y = (x) or y = (x) if n = 3. Thus, n ≥ 5. Since there are 2n−2 even vertices in 0 FQn−1 and 2n−2 ≥ n − 1 for n ≥ 5, we can choose (n − 4) distinct even vertices {u1 , 0 u2 , . . . , un−4 } of FQn−1 − {x, (y)c , (y)n } such that (ui )n = (x)c for 1 ≤ i ≤ n − 4. Let v 0 be an odd vertex of FQn−1 and let U0 = {ui | 1 ≤ i ≤ n − 4} ∪ {(y)c , (y)n , v}. Obviously, |U0 | = n − 1. By Theorem 14.14, there are (n − 1) disjoint paths {R1 , R2 , . . . , Rn−1 } 0 of FQn−1 joining x to U0 such that (1) Ri joins x to ui for 1 ≤ i ≤ n − 4, (2) Rn−3 " joins x to (y)c , (3) Rn−2 joins x to (y)n , (4) Rn−1 joins x to v, and (5) n−1 i=1 Ri spans 0 . Let U = {(u )n | 1 ≤ i ≤ n − 4} ∪ {(x)c , (x)n , (v)n }. Obviously, |U | = n − 1. FQn−1 i 1 1 1 By Theorem 14.14, there are (n − 1) disjoint paths {H1 , H2 , . . . , Hn−1 } of FQn−1 n joining U1 to y such that (1) Hi joins (ui ) to y for 1 ≤ i ≤ n − 4, " (2) Hn−3 joins (x)c to y, (3) Hn−2 joins (x)n to y, (4) Hn−1 joins (v)n to y, and (5) n−1 i=1 Hi spans 1 . We set P = x, R , u , (u )n , H , y for 1 ≤ i ≤ n − 4, P c =
x, R FQn−1 i n−3 n−3 , (y) , y, i i i i n n c Pn−2 = x, Rn−2 , (y) , y, Pn−1 = x, Rn−1 , v, (v) , Hn−1 , y, Pn = x, (x) , Hn−3 , y, and Pn+1 = x, (x)n , Hn−2 , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of FQn between x and y. See Figure 14.13c for illustration, for n = 5.
Case 2.3. n is even with n ≥ 4 and y = (x)n . Since there are 2n−2 even ver0 tices in FQn−1 and 2n−2 ≥ n − 1 for n ≥ 4, we can choose (n − 2) distinct even 0 vertices {u1 , u2 , . . . , un−2 } of FQn−1 − {x}. Let U0 = {ui | 1 ≤ i ≤ n − 2} ∪ {(y)c }. Obviously, |U0 | = n − 1. By Theorem 14.14, there are (n − 1) disjoint paths {R1 , 0 R2 , . . . , Rn−1 } of FQn−1 joining x to U0 such that (1) Ri joins x to ui for 1 ≤ " 0 i ≤ n − 2, (2) Rn−1 joins x to (y)c , and (3) n−1 i=1 Ri spans FQn−1 . Let U1 = c n {(ui ) | 1 ≤ i ≤ n − 2} ∪ {(x) , }. Obviously, |U1 | = n − 1. By Theorem 14.14, there 1 are (n − 1) disjoint paths {H1 , H2 , . . . , Hn−1 } of FQn−1 joining U1 to y such that (1) " n Hi joins (ui ) to y for 1 ≤ i ≤ n − 2, (2) Hn−1 joins (x)c to y, and (3) n−1 i=1 Hi spans 1 . We set P = x, R , u , (u )n , H , y for 1 ≤ i ≤ n − 2, P c FQn−1 =
x, R i i i i i n−1 n−1 , (y) , y, c n Pn = x, (x) , Hn−1 , y, and Pn+1 = x, y = (x) . Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of FQn between x and y. See Figure 14.13d for illustration, for n = 6. Case 2.4. n is even with n ≥ 4 and y = (x)n . Since there are 2n−2 even vertices 0 and 2n−2 ≥ n − 1 for n ≥ 4, we can choose (n − 3) distinct even vertices in FQn−1 0 {u1 , u2 , . . . , un−3 } of FQn−1 − {x, (y)n } such that (ui )n = (x)n for 1 ≤ i ≤ n − 3. Let U0 = {ui | 1 ≤ i ≤ n − 3} ∪ {(y)n , (y)c }. Obviously, |U0 | = n − 1. By Theorem 14.14, 0 such that (1) Ri joins there are (n − 1) disjoint paths {R1 , R2 , . . . , Rn−1 } of FQn−1 n x to"ui for 1 ≤ i ≤ n − 3, (2) Rn−2 joins x to (y) , (3) Rn−1 joins x to (y)c , and 0 n n c (4) n−1 i=1 Ri spans FQn−1 . Let U1 = {(ui ) | 1 ≤ i ≤ n − 3} ∪ {(x) , (x) }. Obviously, |U1 | = n − 1. By Theorem 14.14, there are (n − 1) disjoint paths {H1 , H2 , . . . , Hn−1 } 1 of FQn−1 joining U1 to y such that (1) Hi joins (ui )n to y for 1 ≤ i ≤ n − 3, "n−1 (2) Hn−2 joins (x)n to y, (3) Hn−1 joins (x)c to y, and (4) i=1 Hi spans
ch014.tex
382
25/7/2008
14: 27
Page 382
Graph Theory and Interconnection Networks
1 . We set P = x, R , u , (u )n , H , y for 1 ≤ i ≤ n − 3, P n FQn−1 i i i i i n−2 = x, Rn−2 , (y) , y, c n c Pn−1 = x, Rn−1 , (y) , y, Pn = x, (x) , Hn−2 , y, and Pn+1 = x, (x) , Hn−1 , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of FQn between x and y. See Figure 14.13e for illustration, for n = 6.
THEOREM 14.16 FQn is super spanning laceable if n is an odd integer and FQn is super spanning connected if n is an even integer. Proof: Since FQ1 is isomorphic to Q1 , this statement holds for n = 1. By Lemma 14.21, this statement holds if n is odd and n ≥ 3. Thus, we assume that n is even. Let x and y be any two different vertices of FQn . We need to find a k ∗ -container of FQn between x and y for 1 ≤ k ≤ n + 1. Without loss of generality, we assume that x is an even vertex. By Lemma 14.21, this statement holds if y is an odd vertex. Thus, we assume that y is an even vertex. Without loss of generality, we assume that (x)n = 0 and (y)n = 1. Let f be the function on V (FQn ) defined by f (u) = u if (u)n = 0 and f (u) = ((u)c )n if otherwise. By Theorem 14.15, f is an isomorphism from FQn into itself. In other words, we still get FQn if we relabel all the vertices u with f (u). However, f (x) = x is an even vertex and f (y) = ((y)c )n is an odd vertex. By Lemma 14.21, there exists a k ∗ -container of FQn between f (x) and f (y) for every 1 ≤ k ≤ n + 1. Thus, there exists a k ∗ -container of FQn between x and y for every 1 ≤ k ≤ n + 1. This theorem is proved. Let u = u1 u2 . . . un−1 un be a vertex of Qn,m . Similar to before, the c-neighbor of u in Qn,m , (u)c , is u1 u2 . . . um um+1 um+2 . . . un−1 un . Note that (u)c and u are of the same parity if and only if m is even. Let E c = {(u1 u2 . . . un , u1 u2 . . . um um+1 um+2 . . . un−1 un ) | u1 u2 . . . un ∈ V (Qn,m )}. By definition, the n-dimensional enhanced hypercube Qn,m is obtained from Qn by adding E c . Obviously, Qn,m is FQn if j m = n. We use Qn,m to denote the subgraph of Qn,m induced by {v ∈ V (Qn,m ) | (v)n = j} ij for 0 ≤ j ≤ 1. Moreover, we use Qn,m to denote the subgraph of Qn,m induced by {v ∈ V (Qn,m ) | (v)n−1 = i and (v)n = j} for 0 ≤ i, j ≤ 1. j
LEMMA 14.22 Let x and y be any two distinct vertices of Qn,m with n − m ≥ 1 for j some j. Suppose that there is a k ∗ -container of Qn,m between x and y and there is 1−j 1∗ -container of Qn,m between (x)n and (y)n . Then there is a (k + 1)∗ -container of Qn,m between x and y. j
Proof: Let {P1 , P2 , . . . , Pk } be a k ∗ -container of Qn,m between x and y and W be a 1−j Hamiltonian path of Qn,m joining (x)n to (y)n . Set Pk+1 = x, (x)n , W , (y)n , y. Then {P1 , P2 , . . . , Pk+1 } forms a (k + 1)∗ -container of Qn,m between x and y. LEMMA 14.23 Let x be an even vertex and y be an odd vertex of Qn,n−1 for any positive integer n ≥ 3. Then there exists a k ∗ -container of Qn,n−1 between x and y for every 1 ≤ k ≤ n + 1. Proof: Since Qn is a spanning subgraph of Qn,n−1 , by Theorem 14.7, there exists a k ∗ -container of Qn,n−1 between x and y for every 1 ≤ k ≤ n. Thus, we need only to
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 383
383
construct an (n + 1)∗ -container of Qn,n−1 between x and y. Without loss of generality, 00 we assume that x ∈ Qn,n−1 . We have the following cases: 10 0 00 10 00 ∪ Qn,n−1 . Since Qn,n−1 ∪ Qn,n−1 = Qn,n−1 is isomorphic to Case 1. y ∈ Qn,n−1 0 ∗ FQn−1 , by Lemma 14.21, there exists an n -container of Qn,n−1 between x and y. 01 11 1 ∪ Qn,n−1 = Qn,n−1 is isomorphic to FQn−1 , by Lemma 14.21, there exists Since Qn,n−1 1 a Hamiltonian path of Qn,n−1 joining (x)n to (y)n . By Lemma 14.22, there exists an (n + 1)∗ -container of Qn,n−1 between x and y. 01 Case 2. y ∈ Qn,n−1 . Suppose that n = 3. We have x = 000 and y = 001. We set P1 = 000, 001, P2 = 000, 010, 011, 001, P3 = 000, 100, 101, 001, and P4 = 000, 110, 111, 001. Then {P1 , P2 , P3 , P4 } forms a 4∗ -container of Q3,2 between x and y. 01 00 Now, we consider n ≥ 4. Since Qn,n−1 ∪ Qn,n−1 is isomorphic to Qn−1 , by 00 01 ∗ ∪ Qn,n−1 Lemma 14.7, there exists an (n − 1) -container {P1 , P2 , . . . , Pn−1 } of Qn,n−1 c c n−1 joining x to y. Obviously, (x) and (y) are of different parity. Note that (x) is an odd vertex and (y)n−1 is an even vertex. By Theorem 14.4, there exist two disjoint paths 10 11 ∪ Qn,n−1 such that (1) S1 joins (x)n−1 to (y)n−1 , (2) S2 joins (x)c S1 and S2 of Qn,n−1 10 11 to (y)c , and (3) S1 ∪ S2 spans Qn,n−1 ∪ Qn,n−1 . We set Pn = x, (x)n−1 , S1 , (y)n−1 , y c c and Pn+1 = x, (x) , S2 , (y) , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,m between x and y. See Figure 14.14a for illustration. 11 Case 3. y ∈ Qn,n−1 . Suppose that n = 3. We have x = 000 and y = 111. We set P1 = 000, 100, 101, 111, P2 = 000, 010, 011, 111, P3 = 000, 001, 111, and P4 = 000, 110, 111. Then {P1 , P2 , P3 , P4 } forms a 4∗ -container of Q3,2 between x and y. Now, we consider n ≥ 4. Since y is adjacent to (n − 2) even vertices in 11 11 Qn,n−1 , we can choose an even vertex z ∈ Qn,n−1 that is a neighbor of y such that c n n−1 n n (z) = (x) and (z) = (x) . Let v = (z) . Obviously, v is an odd vertex. Since 00 10 0 Qn,n−1 ∪ Qn,n−1 = Qn,n−1 is isomorphic to FQn−1 , by Lemma 14.21, there exists an 00 10 ∗ ∪ Qn,n−1 between x and v. Since v is adjan -container {R1 , R2 , . . . , Rn } of Qn,n−1 10 00 cent to n vertices in Qn,n−1 ∪ Qn,n−1 , by relabeling, we can write Ri as x, Ri , ui , v for 1 ≤ i ≤ n − 3, write Rn−2 as x, Rn−2 , (y)n , v, write Rn−1 as x, Rn−1 , (v)c , v, n−1 n and write Rn as x, Rn , (v) , v. Let A = {(ui ) | 1 ≤ i ≤ n − 3}. Obviously, A is a 11 11 . Since Qn,n−1 is isomorphic to Qn−2 , by Theset of (n − 3) odd vertices of Qn,n−1 11 joining y orem 14.14, there are (n − 2) disjoint paths {H1 , H2 , . . . , Hn−2 } of Qn,n−1 n to A ∪ {z} such that (1) H joins (u ) to y for 1 ≤ i ≤ n − 3, (2) H joins z to y, i i n−2 " 11 n and (3) n−2 i=1 Hi spans Qn,n−1 . We set Pi = x, Ri , ui , (ui ) , Hi , y for 1 ≤ i ≤ n − 3 and , (y)n , y. Pn−2 = x, Rn−2 Suppose that (n − 1) is an odd integer. We set Pn−1 = x, Rn−1 , (v)c , v, z, Hn−2 , y. 01 Since Qn,n−1 is isomorphic to Qn−2 , by Theorem 14.4, there exist two disjoint paths 01 such that (1) S1 joins ((v)n−1 )n to (y)c , (2) S2 joins (x)n to (y)n−1 , S1 and S2 of Qn,n−1 01 . Let Pn = x, Rn , (v)n−1 , ((v)n−1 )n , S1 , (y)c , y, and and (3) S1 ∪ S2 spans Qn,n−1 Pn+1 = x, (x)n , S2 , (y)n−1 , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,n−1 between x and y. See Figure 14.14b for illustration.
ch014.tex
25/7/2008
14: 27
Page 384
384
Graph Theory and Interconnection Networks 00 Qn,m
00 01 Qn,m Qn,m x
P1 P2
(v)n1
x
(x)c 10 Q n,m
y Pn1
(v)c
S1
v (z)n (y)n un3 u2
(x)n1 (y) n1
(y)c
n1 ((v)n1)n (y)
(y)c z
(a)
(un3) (u2)n
11 (u1)nQ n,m
(b)
00 01 Qn,m Qn,m (x)n (y)c x
00 Qn,m x
(v)c
(y)n1
v(z)n (y)n un3 u2
z (un3) (u2)n
n
v(z)n (y) n un3 u2
11 10 u 1 (u1)n Qn,m Qn,m
(c)
(y)n1
((v)c )n
(v)n1 y
01 Qn,m
(x)n (v)c
((v)c )n
(v)n1
10 u 1 Qn,m
y n
11 10 u1 Qn,m Qn,m
S2
01 Q n,m
(x) n
(y)c z
y n
(un3) (u2)n
11 (u1)n Qn,m
(d)
FIGURE 14.14 Illustrations for Lemma 14.23.
Suppose that (n − 1) is an even integer. We set Pn−1 = x, Rn , (v)n−1 , v, z, Hn−2 , y. 01 Suppose that (y)c = (x)n . Note that Qn−2 is a spanning subgraph of Qn,n−1 . Since Qn−2 is hyper Hamiltonian laceable, there exists a Hamiltonian path S of 01 Qn,n−1 − {(x)n } joining ((v)c )n to (y)n−1 . Set Pn = x, Rn−1 , (v)c , ((v)c )n , S, (y)n−1 , y n c and Pn+1 = x, (x) = (y) , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,n−1 between x and y. See Figure 14.14c for illustration. Thus, we assume that 01 such (y)c = (x)n . By Theorem 14.4, there exist two disjoint paths S1 and S2 of Qn,n−1 c n c n n−1 that (1) S1 joins ((v) ) to (y) , (2) S2 joins (x) to (y) , and (3) S1 ∪ S2 spans 01 Qn,n−1 . Let Pn = x, Rn−1 , (v)c , ((v)c )n , S1 , (y)c , y and Pn+1 = x, (x)n , S2 , (y)n−1 , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,n−1 between x and y. See Figure 14.14d for illustration. LEMMA 14.24 Let x be an even vertex and y be an odd vertex of Qn,m for any two positive integers n ≥ m ≥ 2. Then there exists a k ∗ -container of Qn,m between x and y for every 1 ≤ k ≤ n + 1. Proof: Since Q2,2 is isomorphic to complete graph K4 , this statement holds for n = 2. Suppose that n ≥ 3. Since Qn is a spanning subgraph of Qn,m , by Theorem 14.7, there exists a k ∗ container of Qn,m between x and y for every 1 ≤ k ≤ n. Thus, we need only to construct
ch014.tex
25/7/2008
14: 27
Page 385
Spanning Connectivity
385
an (n + 1)∗ -container of Qn,m between x and y. Without loss of generality, we assume 00 . We prove our claim by induction on t = n − m. The induction bases are that x ∈ Qn,m t = 0 and 1. By Lemma 14.21, our claim holds for t = 0. With Lemma 14.23, our claim holds for t = 1. Consider t ≥ 2 and assume that our claim holds for (t − 1). We have the following cases: 00 ∪ Q10 . Since Q00 ∪ Q10 is isomorphic to Q Case 1. y ∈ Qn,m n−1,m , by induction, n,m n,m n,m ∗ 00 10 01 ∪ Q11 is there exists an n -container of Qn,m ∪ Qn,m between x and y. Since Qn,m n,m 01 11 joining isomorphic to Qn−1,m , by induction, there is a Hamiltonian path of Qn,m ∪ Qn,m (x)n to (y)n . Thus, by Lemma 14.22, there exists an (n + 1)∗ -container of Qn,m between x and y. 01 . Note that Q01 and Q10 are symmetric with respect to Q Case 2. y ∈ Qn,m n,m and n,m n,m 00 01 ∗ Qn,m ∪ Qn,m is isomorphic to Qn−1,m . Similar to Case 1, there is an (n + 1) -container of Qn,m between x and y. 11 . Since y is adjacent to (n − 1) vertices in Q11 , we can choose Case 3. y ∈ Qn,m n,m 11 such that z = (y)c and (z)n = (x)n−1 . Let v = (z)n . a neighbor z of y in Qn,m 00 ∪ Q10 is isomorphic to Q Obviously, v is an odd vertex. Since Qn,m n−1,m , by n,m ∗ 00 ∪ Q10 joining x induction, there exists an n -container {R1 , R2 , . . . , Rn } of Qn,m n,m 00 ∪ Q10 , by relabeling, we can to v. Since v is adjacent to n vertices in Qn,m n,m , (y)n , v, and write Ri as x, Ri , ui , v for 1 ≤ i ≤ n − 2, write Rn−1 as x, Rn−1 11 is isomorphic to Q write Rn as x, Rn , (v)n−1 , v. Since Qn,m n−2,m , by induc∗ 11 joining z to y. tion, there exists an (n − 1) -container {H1 , H2 , . . . , Hn−1 } of Qn,m 11 and (z, y) ∈ E(Q11 ), one of these Since y is adjacent to (n − 1) vertices in Qn,m n,m paths is z, y. Without loss of generality, we assume that Hi = z, (ui )n , Hi , y for 1 ≤ i ≤ n − 2 and Hn−1 = z, y. We set Pi = x, Ri , ui , (ui )n , Hi , y for 1 ≤ i ≤ n − 2, 01 is isomorphic Pn−1 = x, Rn−1 , (y)n , y, and Pn = x, Rn , (v)n−1 , v, z, y. Since Qn,m 01 joining (x)n to Qn−2,m , by induction, there exists a Hamiltonian path W in Qn,m n−1 n n−1 to (y) . We set Pn+1 = x, (x) , W , (y) , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,m between x and y. See Figure 14.15 for illustration.
00
01
Q n,m
n
x
Q n,m
( x)
( y)n1
(v)n1 n
v(z)
(y)
z
y
n
un2 u2 10
Q n,m u1
FIGURE 14.15 Illustration for Lemma 14.24.
( un2)n ( u2)n 11
( u1)n Q n,m
ch014.tex
25/7/2008
14: 27
Page 386
386
Graph Theory and Interconnection Networks 0 Q n,n1
X
0 Q n,n1
v R
(X)n
0 Q n,n1
H
0 Q n,n1
R ((v)n
y
x
(z)n
H y
z
(a)
(b)
FIGURE 14.16 Illustration for Lemma 14.25.
LEMMA 14.25 Qn,n−1 is 1∗ -connected and 2∗ -connected if n is an odd integer with n ≥ 3. Proof: Since any 1∗ -connected graph with more than three vertices is 2∗ -connected, we need to show only that Qn,n−1 is 1∗ -connected. Suppose that x and y are two distinct 0 . vertices of Qn,n−1 . Without loss of generality, we assume that x ∈ Qn,n−1 0 Suppose that y ∈ Qn,n−1 . By Theorem 14.16, there exists a Hamiltonian path 0 1 joining x to y and there exists a Hamiltonian path H in Qn,n−1 R = x, v, R , y in Qn,n−1 n n n n joining (x) to (v) . Set P = x, (x) , H, (v) , v, R , y. Thus, P forms a Hamiltonian path in Qn,n−1 joining x to y. See Figure 14.16a for illustration. 1 0 Suppose that y ∈ Qn,n−1 . Note that there are (2n−1 − 1) vertices in Qn,n−1 − {x} 0 n−1 − 1 ≥ 3 for n ≥ 3. We can pick a vertex z in Qn,n−1 such that (z)n = y. By and 2 0 joining x to z and there Theorem 14.16, there exists a Hamiltonian path R in Qn,n−1 1 n exists a Hamiltonian path H in Qn,n−1 joining (z) to y. Set P = x, R, z, (z)n , H, y. Thus, P forms a Hamiltonian path in Qn,n−1 joining x to y. See Figure 14.16b for illustration. LEMMA 14.26
Q3,2 is super spanning connected.
Proof: Let x and y be any two different vertices of Q3,2 . By Lemma 14.25, Q3,2 is 1∗ -connected and 2∗ -connected. Hence, we need to construct a 3∗ -container and a 4∗ -container between x and y. Without loss of generality, we assume that x = 000. By Lemma 14.23, this statement holds if y is an odd vertex. Thus, we assume that y is an even vertex. We list all possible cases, as follows: y
3∗ -container
4∗ -container
110
000, 010, 110
000, 100, 110
000, 001, 011, 101, 111, 110
000, 010, 110
000, 100, 110
000, 001, 011, 101, 111, 110
000, 110
011
000, 010, 011
000, 100, 101, 001, 011
000, 110, 111, 011
000, 001, 011
000, 010, 011
000, 100, 101, 011
000, 110, 111, 011
101
000, 001, 011, 101
000, 010, 110, 111, 101
000, 100, 101
000, 001, 101
000, 010, 011, 101
000, 100, 101
000, 110, 111, 101
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 387
387
LEMMA 14.27 Suppose that n ≥ 3 is an odd integer. Let x and y be any two different even vertices of Qn,n−1 . Then there exists a k ∗ -container of Qn,n−1 between x and y for every 1 ≤ k ≤ n + 1. Proof: By Lemma 14.26, this statement holds for Q3,2 . Thus, we assume that n ≥ 5. By Lemma 14.25, Qn,n−1 is 1∗ -connected and 2∗ -connected. Thus, we need to construct a k ∗ -container between x and y for every 3 ≤ k ≤ n + 1. Without loss of 00 generality, we assume that x ∈ Qn,n−1 . 00 10 is isomorphic to FQn−1 , by Theorem 14.16, ∪ Qn,n−1 Case 1. (y)n = 0. Since Qn,n−1 00 10 ∗ ∪ Qn,n−1 between x and there exists a (k − 1) -container {P1 , P2 , . . . , Pk−1 } of Qn,n−1 ∗ y for every 2 ≤ k − 1 ≤ n. By Lemma 14.22, there is a k -container of Qn,n−1 between x and y for every 3 ≤ k ≤ n + 1.
Case 2. (y)n = 1. Since y is an even vertex, |{i | i = n and (y)i = 1}| is odd. Without 11 . We have the following loss of generality, we assume that (y)n−1 = 1. Thus, y ∈ Qn,n−1 cases. 11 , we can Case 2.1. n ≤ k ≤ n + 1. Since y is adjacent to (n − 2) vertices in Qn,n−1 11 n n−1 n choose a neighbor z of y in Qn,n−1 such that (z) = (x) . Let v = (z) . Obviously, v 10 00 ∪ Qn,n−1 is isomorphic to FQn−1 , by Theorem 14.16, is an even vertex. Since Qn,n−1 00 10 ∗ ∪ Qn,n−1 between x and v. Since there exists an n -container {R1 , R2 , . . . , Rn } of Qn,n−1 00 10 v is adjacent to n vertices in Qn,m ∪ Qn,m , by relabeling, we can write Ri as x, Ri , ui , v , (v)c , v, write Rn−1 as x, Rn−1 , (y)n , v, and for 1 ≤ i ≤ n − 3, write Rn−2 as x, Rn−2 n−1 n write Rn as x, Rn , (v) , v. Let A = {(ui ) | 1 ≤ i ≤ n − 3}. Obviously, A is a set of 11 (n − 3) even vertices of Qn,n−1 . 11 , by TheoCase 2.1.1. k = n + 1. Since Qn−2 is a spanning subgraph of Qn,n−1 11 rem 14.14, there are (n − 2) disjoint paths H1 , H2 , . . . , Hn−2 in Qn,n−1 joining y to A ∪ {z} such (ui )n to y for 1 ≤ i ≤ n − 3, (2) Hn−2 joins z to y, "n−2that (1) Hi joins 11 and (3) i=1 Hi spans Qn,n−1 . We set Pi = x, Ri , ui , (ui )n , Hi , y for 1 ≤ i ≤ n − 3, , (v)c , v, z, Hn−2 , y, and Pn−1 = x, Rn−1 , (y)n , y. Pn−2 = x, Rn−2 01 Suppose that (y)n−1 = (x)n . Note that Qn−2 is a spanning subgraph of Qn,n−1 . Since Qn−2 is hyper Hamiltonian laceable, there exists a Hamiltonian path S of 01 Qn,n−1 − {(x)n } joining ((v)n−1 )n to (y)c . Set Pn = x, Rn , (v)n−1 , ((v)n−1 )n , S, (y)c , y and Pn+1 = x, (x)n = (y)n−1 , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,n−1 between x and y. See Figure 14.17a for illustration. 01 Now, we consider (y)n−1 = (x)n . Since Qn−2 is a spanning subgraph of Qn,n−1 , by 01 Lemmas 13.16 and 13.17, there exist two disjoint paths S1 and S2 of Qn,n−1 such that 01 . (1) S1 joins ((v)n−1 )n to (y)n−1 , (2) S2 joins (x)n to (y)c , and (3) S1 ∪ S2 spans Qn,n−1 n−1 n−1 n n−1 n c Let Pn = x, Rn , (v) , ((v) ) , S1 , (y) , y and Pn+1 = x, (x) , S2 , (y) , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1)∗ -container of Qn,n−1 between x and y. See Figure 14.17b for illustration.
Case 2.1.2. k = n. Obviously, A ∪ {((v)n−1 )n } is a set of (n − 2) even ver01 11 01 11 tices of Qn,n−1 ∪ Qn,n−1 . Since Qn−1 is a spanning subgraph of Qn,n−1 ∪ Qn,n−1 , by Theorem 14.14, there are (n − 1) disjoint paths {H1 , H2 , . . . , Hn−1 } of
ch014.tex
25/7/2008
14: 27
Page 388
388
Graph Theory and Interconnection Networks 01 00 Qn,n1 Qn,n1 (x)n (y)n1 x
00 Qn,n1 x
01 Q n,n1
(x)
(( v)n1)n
((v) n-1) n (v)n1
n
(v) n1
S c
(y)
c
(v )
(v)
c
y
( y)n v ( z)n u n3 u2
z
z ( un3) n ( u 2) n n
(v)
((v)
c
11 (u 1) Q n,n1
(b) 01 0 ) Q n,n1 Qn,n1 uk
n1 n
(y)n (v)
y
n
n1
x
(y)
n1
10 11 u1 (u 1) Q n,n1 Q n,n-1
(a) 00 Qn,n1
(y)c
(y) n v(z) n u n3 u2
(un3) n (u 2)n
00 u 1 Q n,n1
n
y z
x
v
1 (v)n Qn,n1
uk1 (uk1)n
y
v(z)
n
( un3) n ( u 2) n
un3 u2
(u 1) n
u1 (c)
u2 (u2)n n u1 (u1)
(d)
FIGURE 14.17 Illustrations for Lemma 14.27.
11 01 Qn,n−1 ∪ Qn,n−1 joining y to A ∪ {z, ((v)n−1 )n } such that (1) Hi joins (ui )n to y for 1 ≤ ≤ n − 3, (2) Hn−2 joins z to y, (3) Hn−1 joins ((v)n−1 )n to y, "in−1 01 11 n and (4) i=1 Hi spans Qn,n−1 ∪ Qn,n−1 . We set Pi = x, Ri , ui , (ui ) , Hi , y for c 1 ≤ i ≤ n − 3, Pn−2 = x, Rn−2 , (v) , v, z, Hn−2 , y, Pn−1 = x, Rn−1 , (y)n , y, and Pn = x, Rn , (v)n−1 , ((v)n−1 )n , Hn−1 , y. Then {P1 , P2 , . . . , Pn } forms an n∗ -container of Qn,n−1 between x and y. See Figure 14.17c for illustration. 00 10 Case 2.2. 3 ≤ k ≤ n − 1. Let v be an even vertex of Qn,n−1 ∪ Qn,n−1 such that v = x 00 10 n and (y) is not a neighbor of v. Since Qn,n−1 ∪ Qn,n−1 is isomorphic to FQn−1 , 00 10 ∪ Qn,n−1 by Theorem 14.16, there exists a k ∗ -container {R1 , R2 , . . . , Rk } of Qn,n−1 between x and v. We write Ri = x, Ri , ui , v for 1 ≤ i ≤ k. Let A = {u1 , u2 , . . . , uk }. Since k ≥ 3, at most one vertex of A is an even vertex. Without loss of generality, we assume that {u1 , u2 , . . . , uk−1 } is a set of (k − 1) odd vertices. Obviously, 01 11 {(ui )n | 1 ≤ i ≤ k − 1} is a set of (k − 1) even vertices of Qn,n−1 ∪ Qn,n−1 . Since Qn−1 01 11 is a spanning subgraph of Qn,n−1 ∪ Qn,n−1 , by Theorem 14.14, there are k disjoint 01 11 ∪ Qn,n−1 joining y to {(ui )n | 1 ≤ i ≤ k − 1} ∪ {(v)n } paths {H1 , H2 , . . . , Hk } of Qn,n−1 n such that (1) Hi joins (ui ) to y for 1 ≤ i ≤ k − 1, (2) Hk joins (v)n to y, and (3) " k 01 11 n i=1 Hi spans Qn,n−1 ∪ Qn,n−1 . We set Pi = x, Ri , ui , (ui ) , Hi , y for 1 ≤ i ≤ k − 1 n and Pk = x, Rk , uk , v, (v) , Hk , y. Then {P1 , P2 , . . . , Pk } forms a k ∗ -container of Qn,n−1 between x and y. See Figure 14.17d for illustration.
ch014.tex
25/7/2008
Spanning Connectivity
14: 27
Page 389
389
LEMMA 14.28 Suppose that n ≥ 3 and m is even. Let x and y be any two different even vertices of Qn,m . Then there exists a Hamiltonian path P of Qn,m between x and y. Proof: For the fixed number m, we prove this statement by induction on t = n − m. Suppose that x and y are any two different even vertices of Qn,m . By Lemma 14.26, this statement holds for t = 1. Consider t ≥ 2 and assume that our claim holds for 0 . (t − 1). Without loss of generality, we assume that x ∈ Qn,m 0 0 Suppose that y ∈ Qn,m . Since Qn,m is isomorphic to Qn−1,m , by induction, there 0 exists a Hamiltonian path R = x, v, R , y in Qn,m joining x to y and there exists a 1 Hamiltonian path H in Qn,m joining (x)n to (v)n . Set P = x, (x)n , H, (v)n , v, R , y. Thus, P forms a Hamiltonian path in Qn,m joining x to y. 1 . We pick an even vertex z in Q0 Suppose that y ∈ Qn,m n,m such that z = x. By 0 induction, there exists a Hamiltonian path R in Qn,m joining x to z. Obviously, (z)n is 1 . Since Q 1 an odd vertex of Qn,m n−1 is a spanning subgraph of Qn,m , by Theorem 14.7, 1 joining (z)n to y. Set P = x, R, z, (z)n , H, y. there exists a Hamiltonian path H in Qn,m Thus, P forms a Hamiltonian path in Qn,m joining x to y. LEMMA 14.29 Suppose that n ≥ 3 and m is even. Let x and y be any two different even vertices of Qn,m . Then there exists a k ∗ -container of Qn,m between x and y for every 1 ≤ k ≤ n + 1. Proof: By Lemma 14.26, this statement holds for n = 3. Suppose that n ≥ 4. We claim that there exists a k ∗ -container between x and y for every 1 ≤ k ≤ n + 1. By Lemma 14.28, this statement holds for k = 1. Note that Qn is a spanning subgraph of Qn,m and Qn is Hamiltonian. So, this statement holds for k = 2. We claim that there exists a k ∗ -container between x and y for every 3 ≤ k ≤ n + 1. Without loss of 00 . We prove our claim by induction on t = n − m. generality, we assume that x ∈ Qn,m The induction bases are t = 0 and 1. By Theorem 14.16, our claim holds for t = 0. With Lemma 14.27, this statement holds for t = 1. Consider t ≥ 2 and assume that this statement holds for (t − 1). We have the following cases: 00 ∪ Q10 . Since Q00 ∪ Q10 is isomorphic to Q Case 1. y ∈ Qn,m n−1,m , by induction, n,m n,m n,m 00 ∪ Q10 between x and y there exists a (k − 1)∗ -container {P1 , P2 , . . . , Pk−1 } of Qn,m n,m for every 2 ≤ k − 1 ≤ n. By Lemma 14.22, there exists a k ∗ -container of Qn,m between x and y. 01 . Note that Q01 and Q10 are symmetric with respect to Q Case 2. y ∈ Qn,m n,m and n,m n,m 01 00 Qn,m ∪ Qn,m is isomorphic to Qn−1,m . Similar to Case 1, there is a k ∗ -container of Qn,m between x and y for every 3 ≤ k ≤ n + 1.
Case 3.
11 . y ∈ Qn,m
11 , we can Case 3.1. n ≤ k ≤ n + 1. Since y is adjacent to (n − 1) vertices in Qn,m 11 such that z = (y)c and (z)n = (x)n−1 . Let v = (z)n . choose a neighbor z of y in Qn,m n−1 00 ∪ Q10 is isomorphic Obviously, both v and ((v) )n are even vertices. Since Qn,m n,m ∗ 00 ∪ Q10 to Qn−1,m , by induction, there exists an n -container {R1 , R2 , . . . , Rn } of Qn,m n,m 00 ∪ Q10 , by relabeling, we can between x and v. Since v is adjacent to n vertices in Qn,m n,m
ch014.tex
25/7/2008
14: 27
Page 390
390
Graph Theory and Interconnection Networks
write Ri as x, Ri , ui , v for 1 ≤ i ≤ n − 3, write Rn−2 as x, Rn−2 , (v)c , v, write Rn−1 n n−1 as x, Rn−1 , (y) , v, and write Rn as x, Rn , (v) , v. Let A = {(ui )n | 1 ≤ i ≤ n − 3}. 11 . Obviously, A is a set of (n − 3) even vertices of Qn,m 11 , by TheoCase 3.1.1. k = n + 1. Since Qn−2 is a spanning subgraph of Qn,m 11 between z ∗ rem 14.7, there exists an (n − 2) -container {H1 , H2 , . . . , Hn−2 } of Qn,m 11 and (z, y) ∈ E(Q11 ), one of and y. Since y is adjacent to (n − 1) vertices in Qn,m n,m c these paths is z, y and (y) ∈ Hi for some 1 ≤ i ≤ n − 2. Without loss of generality, we assume that (y)c ∈ Hn−3 . We can write Hi as z, (ui )n , Hi , y for 1 ≤ i ≤ n − 4, , (y)c , w, H , y, and write H write Hn−3 as z, (un−3 )n , Hn−3 n−2 as z, y. Obvin−3 ously, w is an odd vertex. We set Pi = x, Ri , ui , (ui )n , Hi , y for 1 ≤ i ≤ n − 4, , (y)c , y, Pn−3 = x, Rn−3 , un−3 , (un−3 )n , Hn−3 Pn−2 = x, Rn−2 , (v)c , v, z, Hn−2 , y, n and Pn−1 = x, Rn−1 , (y) , y. 01 Suppose that (y)n−1 = (x)n . Note that Qn−2 is a spanning subgraph of Qn,n−1 . Since 01 Qn−2 is hyper Hamiltonian laceable, there exists a Hamiltonian path S of Qn,m − {(x)n } , y joining ((v)n−1 )n to (w)n−1 . Set Pn = x, Rn , (v)n−1 , ((v)n−1 )n , S, (w)n−1 , w, Hn−3 n n−1 ∗ and Pn+1 = x, (x) = (y) , y. Then {P1 , P2 , . . . , Pn+1 } forms an (n + 1) -container of Qn,m between x and y. See Figure 14.18a for illustration. Now, we consider (y)n−1 = (x)n . Since Qn−2 is a spanning subgraph of 11 Qn,m , by Lemmas 13.16 and 13.17, there exist two disjoint paths S1 and S2 11 such that (1) S joins ((v)n−1 )n to (y)n−1 , (2) S joins (x)n to (w)n−1 , of Qm,n 1 2 01 and (3) S1 ∪ S2 spans Qn,n−1 . Set Pn = x, Rn , (v)n−1 , ((v)n−1 )n , S1 , (y)n−1 , y and , y. Then {P , P , . . . , P ∗ Pn+1 = x, (x)n , S2 , (w)n−1 , w, Hn−3 1 2 n+1 } forms an (n + 1) container of Qn,m between x and y. See Figure 14.18b for illustration.
Case 3.1.2. k = n. Obviously, A ∪ {((v)n−1 )n } is a set of (n − 2) even ver01 ∪ Q11 . Since Q 01 11 tices of Qn,m n−1 is a spanning subgraph of Qn,m ∪ Qn,m , n,m by Theorem 14.14, there are (n − 1) disjoint paths {H1 , H2 , . . . , Hn−1 } of 01 ∪ Q11 joining y to A ∪ {z, ((v)n−1 )n } such that (1) H joins (u )n to Qn,m i i n,m 00 Q n,m
00 00 Q n,m Q n,m
(x)n (y)n1
x
01 Q n,m
(x)n
x
((v)n1)n
((v)n1)n (v)
n1
n1
(w)n1
(v) n1
(y)n1
w
w (y)n v(z)n z y un3 (un3)n (y)c
(w) c
(v)
(y)n v(z)n z y un3 (un3)n (y)c
(v)
(un4)n (u2)n
un4 u2 10 u 1 Q n,m
c
(un4)n (u2) n
un4 u2
11 10 u 1 (u1)n Q n,m Q n,m
(a)
FIGURE 14.18 Illustration for Lemma 14.28.
11 (u1) n Q n,m
(b)
ch014.tex
25/7/2008
14: 27
Page 391
Spanning Connectivity
391
y for 1 ≤ i ≤ − 3, (2) Hn−2 joins z to y, (3) Hn−1 joins ((v)n−1 )n to "nn−1 01 11 n y, and (4) i=1 Hi spans Qn,m ∪ Qn,m . We set Pi = x, Ri , ui , (ui ) , Hi , y for c 1 ≤ i ≤ n − 3, Pn−2 = x, Rn−2 , (v) , v, z, Hn−2 , y, Pn−1 = x, Rn−1 , (y)n , y, and Pn = x, Rn , (v)n−1 , ((v)n−1 )n , Hn−1 , y. Then {P1 , P2 , . . . , Pn } forms an n∗ -container of Qn,m between x and y. 00 ∪ Q10 such that v = x and Case 3.2. 3 ≤ k ≤ n − 1. Let v be an even vertex of Qn,m n,m n 00 10 (y) is not a neighbor of v. Since Qn,m ∪ Qn,m is isomorphic to Qn−1,m , by induc00 ∪ Q10 between x and v. tion, there exists a k ∗ -container {R1 , R2 , . . . , Rk } of Qn,m n,m We write Ri = x, Ri , ui , v for 1 ≤ i ≤ k. Let A = {u1 , u2 , . . . , uk }. Since k ≥ 3, at most one vertex of A is an even vertex. Without loss of generality, we assume that {u1 , u2 , . . . , uk−1 } is a set of (k − 1) odd vertices. Obviously, {(ui )n | 1 ≤ i ≤ k − 1} 01 ∪ Q11 . Since Q is a set of (k − 1) even vertices of Qn,m n−1 is a spanning subgraph n,m 01 11 of Qn,m ∪ Qn,m , by Theorem 14.14, there are k disjoint paths {H1 , H2 , . . . , Hk } of 01 ∪ Q11 joining y to {(u )n | 1 ≤ i ≤ k − 1} ∪ {(v)n } such that (1) H joins (u )n to Qn,m i i i n,m "k n 01 11 y for 1 ≤ i ≤ k − 1, (2) Hk joins (v) to y, and (3) i=1 Hi spans Qn,m ∪ Qn,m . We set Pi = x, Ri , ui , (ui )n , Hi , y for 1 ≤ i ≤ k − 1 and Pk = x, Rk , uk , v, (v)n , Hk , y. Then {P1 , P2 , . . . , Pk } forms a k ∗ -container of Qn,m between x and y.
With Lemmas 14.24 and 14.29, we have the following theorem. THEOREM 14.17 The enhanced hypercube Qn,m is super spanning laceable if m is an odd integer and Qn,m is super spanning connected if m is an even integer. Proof: Since Q2,2 is isomorphic to the complete graph K4 . Obviously, this theorem holds for n = 2. By Lemma 14.24, this theorem holds if n ≥ 3 and m is an odd integer. Thus, we suppose that n ≥ 3 and m is an even integer. Let x and y be any two different vertices of Qn,m . We need to find a k ∗ -container of Qn,m between x and y for every 1 ≤ k ≤ n + 1. Without loss of generality, we assume that x is an even vertex. By Lemma 14.24, this theorem holds if y is an odd vertex. By Lemma 14.29, this theorem holds if y is an even vertex. Thus, this theorem is proved.
14.6
SPANNING CONNECTIVITY OF THE PANCAKE GRAPHS
Lin et al. [233] discuss the spanning connectivity of the pancake graphs. Now, we review some basic background information on the properties of pancake graphs. We will use boldface to denote a vertex of Pn . Hence, u1 , u2 , . . . , un denote a sequence of vertices in Pn . In particular, e denotes the vertex 12 . . . n. Let u = u1 u2 . . . un be any vertex of Pn . We use (u)i to denote the ith component ui {i} of u, and use Pn to denote the ith subgraph of Pn induced by those vertices u with {i} (u)n = i. Obviously, Pn can be decomposed into n vertex-disjoint subgraphs Pn for {i} every i ∈ n such that each Pn is isomorphic to Pn−1 . Thus, the pancake graph can be constructed recursively. Let H ⊆ n, we use PnH to denote the subgraph of Pn induced {i} by ∪i∈H V (Pn ). By definition, there is exactly one neighbor v of u such that u and v are adjacent through an i-dimensional edge with 2 ≤ i ≤ n. For this reason, we use
ch014.tex
25/7/2008
14: 27
Page 392
392
Graph Theory and Interconnection Networks {(u) }
(u)i to denote the unique i-neighbor of u. We have ((u)i )i = u and (u)n ∈ Pn 1 . For {j} {i} 1 ≤ i, j ≤ n and i = j, we use E i,j to denote the set of edges between Pn and Pn . The following lemma follows from Theorem 11.15. LEMMA 14.30 Pn is 1∗ -connected if n = 3, and Pn is 2∗ -connected if n ≥ 3. {t}
LEMMA 14.31 Let n ≥ 5. Let u and v be any two distinct vertices in Pn for some t ∈ n. If Pn−1 is k ∗ -connected, then there is a (k + 1)∗ -container of Pn between u and v. {t}
Proof: Since Pn is isomorphic to Pn−1 , there is a k ∗ -container {Q1 , Q2 , . . . , Qk } of {t} Pn joining u to v. We need to find a (k + 1)∗ -container of Pn joining u to v. We set p = (u)1 and q = (v)1 . {p}
Case 1. p = q. Thus, (u)n and (v)n are in Pn . By Lemma 11.13, there is a {p} Hamiltonian path Q of Pn joining (u)n to (v)n . We write Q as (u)n , Q , y, z, (v)n . By Lemma 11.12, (y)1 = (z)1 , (y)1 = t, and (z)1 = t. By Lemma 11.13, there
n − {t,p} is a Hamiltonian path R of Pn joining (y)n to (z)n . We set Qk+1 as n n n n
u, (u) , Q , y, (y) , R, (z) , z, (v) , v. Then {Q1 , Q2 , . . . , Qk+1 } forms a (k + 1)∗ container of Pn joining u to v. See Figure 14.19a for illustration. {p}
{q}
Case 2. p = q. Thus, (u)n and (v)n are in different subgraphs Pn and Pn . By
n−{t} joining (u)n to (v)n . We set Lemma 11.13, there is a Hamiltonian path Q of Pn n n Qk+1 as u, (u) , Q, (v) , v. Then {Q1 , Q2 , . . . , Qk+1 } forms a (k + 1)∗ -container of Pn joining u to v. See Figure 14.19b for illustration. Thus, the theorem is proved. LEMMA 14.32 Let n ≥ 5 and k be any positive integer with 3 ≤ k ≤ n − 1. Let u be {s} {t} any vertex in Pn and v be any vertex in Pn such that s = t. Suppose that Pn−1 is k ∗ -connected. Then there is a k ∗ -container of Pn between u and v not using the edge (u, v) if (u, v) ∈ E(Pn ). {s}
Proof: Since |E s,t | = (n − 2)! ≥ 6, we can choose a vertex y in Pn − {u} and a vertex {t} {s} {t} z in Pn − {v} with (y, z) ∈ E s,t . Note that Pn and Pn are both isomorphic to Pn−1 . {s} Let {R1 , R2 , . . . , Rk } be a k ∗ -container of Pn joining u to y, and {H1 , H2 , . . . , Hk } be {t} a k ∗ -container of Pn joining z to v. We write Ri = u, Ri , yi , y and Hi = z, zi , Hi , v. (Note that yi = u if the length of Ri is zero and zi = v if the length of Hi is zero.) Let I = {yi | 1 ≤ i ≤ k} and J = {zi | 1 ≤ i ≤ k}. Note that (yi )1 = (y)j for some j ∈ {2, 3, . . . , n − 1}, and (y)l = (y)m if l = m. By Lemma 11.12, {(yi )1 | 1 ≤ i ≤ k} ∩ {t}
Pn
< n> {t,p}
{p}
Pn
u
{t }
Pn
Pn
(y)n Qk1 (z)n
Q1 Q2
< n> {t}
Pn
u
n
Q1 Q2 v
Qk
(u)
(v)n
y z
(a)
FIGURE 14.19 Illustration for Lemma 14.31.
Qk
(u)n (v)n
v
(b)
Qk1
ch014.tex
25/7/2008
14: 27
Page 393
Spanning Connectivity
393
{ ( y1) 1 , ( z1) 1}
{s}
Pn
{t }
Pn y
( y1 )
1
T1
Pn (z1)
n
z1
H1
R1
{( y k2 ) 1 , ( zk2) 1 }
Pn
u
Rk2
( yk2 )n
yk2
Rk1 yk1
y
Tk2 (z k2 )n
zk2
z
< n >X
( yk1 )n
v
zk1
Pn yk
Hk2
Hk1 Tk1 (z k )n
Rk
zk
Hk
FIGURE 14.20 Illustration for Lemma 14.32.
{s, t} = ∅. Similarly, {(zi )1 | 1 ≤ i ≤ k} ∩ {s, t} = ∅. Let A = {yi | yi ∈ I and there exists an element zj ∈ J such that (yi )1 = (zj )1 }. Then we relabel the indices of I and J such that (yi )1 = (zi )1 for 1 ≤ i ≤ |A|. We set X as {(yi )1 | 1 ≤ i ≤ k − 2} ∪ {(zi )1 | 1 ≤ i ≤ k − 2} ∪ {s, t}. By Lemma 11.13, there is a {(y ) ,(z ) } Hamiltonian path Ti of Pn i 1 i 1 joining (yi )n to (zi )n for every 1 ≤ i ≤ k − 2, and
n − X joining (yk−1 )n to (zk )n . (Note that there is a Hamiltonian path Tk−1 of Pn {(yi )1 , (zi )1 } = {(yi )1 } if (yi )1 = (zi )1 .) We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v Qk−1 = Qk =
for 1 ≤ i ≤ k − 2
u, Rk−1 , yk−1 , (yk−1 )n , Tk−1 , (zk )n , zk , Hk , v
u, Rk , yk , y, z, zk−1 , Hk−1 , v
It is easy to check whether {Q1 , Q2 , . . . , Qk } forms a k ∗ -container of Pn joining u to v not using the edge (u, v) if (u, v) ∈ E(Pn ). See Figure 14.20 for illustration. THEOREM 14.18 Pn is (n − 1)∗ -connected if n ≥ 2. Proof: It is easy to see that P2 is 1∗ -connected and P3 is 2∗ -connected. Since P4 is vertex-transitive, we claim that P4 is 3∗ -connected by listing all 3∗ -containers from 1234 to any vertex, as follows:
(1234), (2134), (4312)
(1234), (3214), (4123), (2143), (3412), (4312)
(1234), (4321), (2341), (1432), (4132), (2314), (1324), (3124), (4213), (1243), (3421), (2431), (4231), (3241), (1423), (2413), (3142), (1342), (4312)
(1234), (2134), (3124), (1324), (4231), (2431), (1342)
(1234), (3214), (2314), (4132), (1432), (2341), (3241), (1423), (4123), (2143), (3412), (4312), (1342)
(1234), (4321), (3421), (1243), (4213), (2413), (3142), (1342)
(1234),(2134),(3124),(4213),(2413),(1423),(3241),(2341),(1432),(3412),(4312),(1342),(3142),(4132),(2314),(1324), (4231), (2431), (3421)
(1234), (3214), (4123), (2143), (1243), (3421)
(1234), (4321), (3421)
ch014.tex
394
25/7/2008
14: 27
Page 394
Graph Theory and Interconnection Networks
(1234), (2134), (3124), (1324), (4231), (2431), (3421), (4321)
(1234), (3214), (2314), (4132), (1432), (3412), (4312), (1342), (3142), (2413), (4213), (1243), (2143), (4123), (1423), (3241), (2341), (4321)
(1234), (4321)
(1234), (2134), (3124), (1324), (4231), (2431)
(1234), (3214), (2314), (4132), (3142), (2413), (4213), (1243), (2143), (4123), (1423), (3241), (2341), (1432), (3412), (4312), (1342), (2431)
(1234), (4321), (3421), (2431)
(1234), (2134), (3124), (4213), (1243), (2143), (3412), (4312), (1342), (3142), (2413), (1423)
(1234), (3214), (4123), (1423)
(1234), (4321), (3421), (2431), (4231), (1324), (2314), (4132), (1432), (2341), (3241), (1423)
(1234), (2134), (3124), (4213), (2413), (3142), (1342), (4312), (3412), (1432), (4132), (2314), (1324), (4231), (2431), (3421), (1243), (2143), (4123)
(1234), (3214), (4123)
(1234), (4321), (2341), (3241), (1423), (4123)
(1234), (2134), (3124), (4213), (2413), (1423), (3241), (4231)
(1234), (3214), (4123), (2143), (1243), (3421), (2431), (4231)
(1234), (4321), (2341), (1432), (3412), (4312), (1342), (3142), (4132), (2314), (1324), (4231)
(1234), (2134), (3124), (1324), (2314), (4132), (3142), (1342), (4312), (3412), (1432), (2341), (3241)
(1234), (3214), (4123), (2143), (1243), (4213), (2413), (1423), (3241)
(1234), (4321), (3421), (2431), (4231), (3241)
(1234), (2134), (4312), (1342), (2431), (3421), (1243), (4213), (3124), (1324), (4231), (3241), (2341)
(1234), (3214), (2314), (4132), (3142), (2413), (1423), (4123), (2143), (3412), (1432), (2341)
(1234), (4321), (2341)
(1234), (2134), (3124), (4213), (2413)
(1234), (3214), (4123), (2143), (1243), (3421), (2431), (4231), (1324), (2314), (4132), (1432), (3412), (4312), (1342), (3142), (2413)
(1234), (4321), (2341), (3241), (1423), (2413)
(1234), (2134), (3124), (1324), (4231), (2431), (3421), (1243)
(1234), (3214), (2314), (4132), (1432), (3412), (4312), (1342), (3142), (2413), (4213), (1243)
(1234), (4321), (2341), (3241), (1423), (4123), (2143), (1243)
(1234), (2134), (3124), (1324), (2314), (3214)
(1234), (3214)
(1234), (4321), (3421), (2431), (4231), (3241), (2341), (1432), (4132), (3142), (1342), (4312), (3412), (2143), (1243), (4213), (2413), (1423), (4123), (3214)
(1234), (2134), (3124), (4213), (2413), (3142), (4132), (2314)
(1234), (3214), (2314)
(1234), (4321), (3421), (1243), (2143), (4123), (1423), (3241), (2341), (1432), (3412), (4312), (1342), (2431), (4231), (1324), (2314)
(1234), (2134), (4312), (3412), (1432), (4132), (3142), (1342), (2431), (3421), (1243), (2143), (4123), (1423), (2413), (4213), (3124), (1324)
(1234), (3214), (2314), (1324)
(1234), (4321), (2341), (3241), (4231), (1324)
(1234), (2134), (3124)
(1234), (3214), (4123), (1423), (3241), (4231), (2431), (3421), (1243), (2143), (3412), (4312), (1342), (3142), (2413), (4213), (3124)
(1234), (4321), (2341), (1432), (4132), (2314), (1324), (3124)
(1234), (2134)
(1234), (3214), (2314), (1324), (3124), (2134)
(1234), (4321), (2341), (3241), (4231), (2431), (3421), (1243), (4213), (2413), (1423), (4123), (2143), (3412), (1432), (4132), (3142), (1342), (4312), (2134)
(1234), (2134), (4312), (1342), (3142)
(1234), (3214), (4123), (1423), (2413), (3142)
(1234), (4321), (3421), (2431), (4231), (3241), (2341), (1432), (3412), (2143), (1243), (4213), (3124), (1324), (2314), (4132), (3142)
(1234), (2134), (3124), (1324), (2314), (4132)
(1234), (3214), (4123), (1423), (2413), (4213), (1243), (2143), (3412), (4312), (1342), (3142), (4132)
(1234), (4321), (3421), (2431), (4231), (3241), (2341), (1432), (4132)
(1234), (2134), (4312), (1342), (3142), (2413), (1423), (3241), (4231), (2431), (3421), (1243), (4213), (3124), (1324), (2314), (4132), (1432)
(1234), (3214), (4123), (2143), (3412), (1432)
(1234), (4321), (2341), (1432)
ch014.tex
25/7/2008
14: 27
Page 395
Spanning Connectivity
395
(1234), (2134), (3124), (1324), (2314), (4132), (3142), (1342), (4312), (3412)
(1234), (3214), (4123), (1423), (2413), (4213), (1243), (2143), (3412)
(1234), (4321), (3412), (2431), (4231), (3241), (2341), (1432), (3412)
(1234), (2134), (4312), (1342), (3142), (4132), (2314), (1324), (3124), (4213)
(1234), (3214), (4123), (1423), (2413), (4213)
(1234), (4321), (3421), (2431), (4231), (3241), (2341), (1432), (3412), (2143), (1243), (4213)
(1234), (2134), (4312), (1342), (3142), (4132), (1432), (3412), (2143)
(1234), (3214), (2314), (1324), (3124), (4213), (2413), (1423), (4123), (2143)
(1234), (4321), (2341), (3241), (4231), (2431), (3421), (1243), (2143)
Assume that Pk is (k − 1)∗ -connected for every 4 ≤ k ≤ n − 1. Let u and v be any {t} {s} two distinct vertices of Pn with u ∈ Pn and v ∈ Pn . We need to find an (n − 1)∗ container between u and v of Pn . Suppose that s = t. By Lemma 14.31, there is an (n − 1)∗ -container of Pn joining u to v. Thus, we assume that s = t. We set p = (u)1 and q = (v)1 . {t}
{s}
Case 1. p = t and q = s. Thus, (u)n ∈ Pn and (v)n ∈ Pn . Case 1.1. u = (v)n . Thus, (u, v) ∈ E(Pn ). By Lemma 14.32, there is an (n − 2)∗ container {Q1 , Q2 , . . . , Qn−2 } of Pn joining u to v not using the edge (u, v). We set Qn−1 as u, v. Then {Q1 , Q2 , . . . , Qn−1 } forms an (n − 1)∗ -container of Pn joining u to v. Case 1.2. u = (v)n . We set y = (v)n and z = (u)n . Let {R1 , R2 , . . . , Rn−2 } be {s} an (n − 2)∗ -container of Pn joining u to y, and let {H1 , H2 , . . . , Hn−2 } be {t} an (n − 2)∗ -container of Pn joining z to v. We write Ri = u, Ri , yi , y and Hi = z, zi , Hi , v. We set I = {(yi )1 | 1 ≤ i ≤ n − 2} and J = {(zi )1 | 1 ≤ i ≤ n − 2}. Note that (yi )1 = (y)j for some j ∈ {2, 3, . . . , n − 1}, and (y)k = (y)l if k = l. By Lemma 11.12, I = {(y)i | 2 ≤ i ≤ n − 1} = n − {s, t}. Similarly, J = n − {s, t}. We have I = J. Without loss of generality, we assume that (yi )1 = (zi )1 for every {(y ) } 1 ≤ i ≤ n − 2. By Lemma 11.13, there is a Hamiltonian path Ti of Pn i 1 joining (yi )n {(y ) ,(y ) } to (zi )n for every 1 ≤ i ≤ n − 4, and there is a Hamiltonian path Tn−3 of Pn n−3 1 n−2 1 joining (yn−3 )n to (zn−2 )n . We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v Qn−3 = Qn−2 = Qn−1 =
for 1 ≤ i ≤ n − 4
u, Rn−3 , yn−3 , (yn−3 )n , Tn−3 , (zn−2 )n , zn−2 , Hn−2 , v
u, z, zn−3 , Hn−3 , v
u, Rn−2 , yn−2 , y, v
Then {Q1 , Q2 , . . . , Qn−1 } forms an (n − 1)∗ -container of Pn joining u to v. See Figure 14.21a for illustration. Case 2. p = t and q ∈ n − {s, t}. Since |E s,q | = (n − 2)! ≥ 6, we can choose a ver{q} {s} {t} tex y in Pn − {u} with (y)n ∈ Pn . We set z = (u)n ∈ Pn . Let {R1 , R2 , . . . , Rn−2 } {s} be an (n − 2)∗ -container of Pn joining u to y, and {H1 , H2 , . . . , Hn−2 } {t} ∗ be an (n − 2) -container of Pn joining z to v. We write Ri = u, Ri , yi , y and Hi = z, zi , Hi , v. We have {(yi )1 | 1 ≤ i ≤ n − 2} = {(y)i | 2 ≤ i ≤ n − 1}. By Lemma 11.12, {(yi )1 | 1 ≤ i ≤ n − 2} = n − {s, q}. Similarly, {(zi )1 | 1 ≤ i ≤ n − 2} =
n − {s, t}. Without loss of generality, we assume that (yi )1 = (zi )1 for every
ch014.tex
25/7/2008
14: 27
Page 396
396
Graph Theory and Interconnection Networks
{s}
{t }
{ ( y1) 1}
Pn
Pn y1
T1
( y1)
(z 1) n
{ ( y1)1}
{s }
Pn
Pn
{t }
Pn
( y1) n
y1
z1
Pn T1
( z 1) n
z1
H1
R1 R1 u
H1
{( yn4 )1}
Pn
Rn4
( yn4)n
yn4
Tn4 (zn4)n
z n4
Hn4
{( yn3 )1}
Pn
v
Rn3
u
Rn3
yn3
y
{(yn3)1,( yn2 )1}
Pn
( yn3 )n
yn2
z n3
z
Rn2
{ }
{q}
R '1
( y1)n
T1
( z 1) n
{( y1) 1}
Pn z1
R'1
H1
( y1) n
R 'n–3
y
{p} n ( u)n
zn3 H n3 z
P
Tn2
( z1) n
z1
H'1
Pn
Tn3(zn3)n
( y n4 ) v u
R 'n–2 yn2
T1
{ (yn4)1}
{( yn3)1}
u
{ }
Pn t
Pn y1
Pn
( yn3) n
yn3
Tn2 ( v )n
(y) n
{s}
Pn t
Pn y1
v
(b)
{( y1) 1}
{s}
Hn3
zn2 Hn2
Pn y
(a) Pn
zn3 z
Rn2 yn2
Hn3 z n2 Hn2
Tn3 (zn2 )n
( y n3)n Tn3 (zn3)n
yn3
zn2 Hn2
(v) n
Rn4
n
yn4
Rn3 yn3
Tn4( zn4)n zn4
y
{q } n
z
P
Rn2 yn2
( yn3)
(c)
z n3 n
Tn3
v
(v)n zn2
{p}
Pn
(u)n
Hn4 Hn3
Tn2 ( z n2 )
Hn2
n
(d)
FIGURE 14.21 Illustrations for Theorem 14.18.
1 ≤ i ≤ n − 3, (yn−2 )1 = t, and (zn−2 )1 = q. By Lemma 11.13, there is a Hamilto{(y ) } nian path Ti of Pn i 1 joining (yi )n to (zi )n for every 1 ≤ i ≤ n − 3, and there is a {q} Hamiltonian path Tn−2 of Pn joining (y)n to (v)n . We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v Qn−2 = Qn−1 =
for 1 ≤ i ≤ n − 3
u, Rn−2 , yn−2 , y, (y)n , Tn−2 , (v)n , v
u, z, zn−2 , Hn−2 , v
Then {Q1 , Q2 , . . . , Qn−1 } forms an (n − 1)∗ -container of Pn joining u to v. See Figure 14.21b for illustration. Case 3. p, q ∈ n − {s, t}. Since |E s,t | = (n − 2)! ≥ 6, there exists an edge (y, z) {s} {t} in E s,t with y ∈ Pn − {u} and z ∈ Pn − {v}. Let {R1 , R2 , . . . , Rn−2 } be an {s} ∗ (n − 2) -container of Pn joining u to y, and let {H1 , H2 , . . . , Hn−2 } be an {t} (n − 2)∗ -container of Pn joining z to v. We write Ri = u, Ri , yi , y and Hi = z, zi , Hi , v. We set I = {(yi )1 | 1 ≤ i ≤ n − 2} and J = {(zi )1 | 1 ≤ i ≤ n − 2}. We have I = {(y)i | 2 ≤ i ≤ n − 1}. By Lemma 11.12, I = n − {s, t}. Similarly,
ch014.tex
25/7/2008
14: 27
Page 397
Spanning Connectivity
397
J = n − {s, t}. We have I = J. Without loss of generality, we assume that (yi )1 = (zi )1 for every 1 ≤ i ≤ n − 2 with (yn−2 )1 = p. {(y ) }
Case 3.1. p = q. By Lemma 11.13, there is a Hamiltonian path Ti of Pn i 1 joining {p} (yi )n to (zi )n for every i ∈ n − 3, and there is a Hamiltonian path Tn−2 in Pn joining n n (u) to (v) . We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v for 1 ≤ i ≤ n − 3 Qn−2 = u, Rn−2 , yn−2 , y, z, zn−2 , Hn−2 , v
Qn−1 = u, (u)n , Tn−2 , (v)n , v Then {Q1 , Q2 , . . . , Qn−1 } forms an (n − 1)∗ -container of Pn joining u and v. See Figure 14.21c for illustration. Case 3.2. p = q. Without loss of generality, we assume that (yn−3 )1 = q. By {(y ) } Lemma 14.30, there is a Hamiltonian path Ti of Pn i 1 joining (yi )n to (zi )n for {q} every 1 ≤ i ≤ n − 4, there is a Hamiltonian path Tn−3 of Pn joining (yn−3 )n to (v)n , {p} and there is a Hamiltonian path Tn−2 of Pn joining (u)n to (zn−2 )n . We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , Hi , v Qn−3 = Qn−2 = Qn−1 =
for 1 ≤ i ≤ n − 4
u, Rn−3 , yn−3 , (yn−3 )n , Tn−3 , (v)n , v
u, (u)n , Tn−2 , (zn−2 )n , zn−2 , Hn−2 , v
u, Rn−2 , yn−2 , y, z, zn−3 , Hn−3 , v
It is easy to check whether {Q1 , Q2 , . . . , Qn−1 } is an (n − 1)∗ -container of Pn from u to v. See Figure 14.21d for illustration. Thus, the theorem is proved. THEOREM 14.19 [233] The Pn is super connected if and only if n = 3. Proof: We prove this theorem by induction. Obviously, this theorem is true for P1 and P2 . Since P3 is isomorphic to a cycle with six vertices, P3 is not 1∗ -connected. Thus, P3 is not super connected. By Lemma 14.30 and Theorem 14.18, this theorem holds for P4 . Assume that Pk is super connected for every 4 ≤ k ≤ n − 1. By Lemma 14.30 and Theorem 14.18, Pn is k ∗ -connected for any k ∈ {1, 2, n − 1}. Thus, {s} we still need to construct a k ∗ -container of Pn between any two distinct vertices u ∈ Pn {t} and v ∈ Pn for every 3 ≤ k ≤ n − 2. Suppose that s = t. By induction, Pn−1 is (k − 1)∗ -connected. By Lemma 14.31, there is a k ∗ -container of Pn joining u to v. Suppose that s = t. By induction, Pn−1 is k ∗ -connected. By Lemma 14.32, there is a k ∗ -container of Pn joining u to v. Hence, the theorem is proved. Lin et al. further discuss the spanning connectivity of the faulty pancake graphs [229]. Let F be any subset of V (Pn ) ∪ E(Pn ). We use F i to denote the set " {i} {i} F ∩ (V (Pn ) ∪ E(Pn )). Then we set F 0 to denote the set F − ni= 1 F i .
ch014.tex
25/7/2008
14: 27
Page 398
398
Graph Theory and Interconnection Networks
THEOREM 14.20 Suppose that F is a subset of V (Pn ) ∪ E(Pn ) with |F| = f ≤ n − 4 and n ≥ 4. Then Pn − F is i∗ -connected for every 1 ≤ i ≤ n − 1 − f . Proof: We prove this statement by induction on n. Suppose that n = 4. By Theorem 14.19, this statement is true for P4 . Suppose that this statement is true for Pm for every 4 ≤ m ≤ n − 1. By Theorems 14.16 and 14.19, Pn − F is k ∗ -connected if f = 0 or f ≥ 1 with k ∈ {1, 2}. Thus, we assume that f ≥ 1 and k ≥ 3. Let u and v be any two distinct vertices of Pn − F. We need to show that there is a k ∗ -container of Pn − F between u and v for every 3 ≤ k ≤ n − f − 1. We have the following cases: Case 1.
|F i | ≤ f − 1 for every i ∈ n. {r}
Case 1.1. u, v ∈ Pn for some r ∈ n. By induction hypothesis, there is a k ∗ {r} container {R1 , R2 , . . . , Rk } of Pn − F r between u and v. Without loss of generality, we write Ri as xi1 , xi2 , . . . , xim with xi1 = u and xim = v for every 1 ≤ i ≤ k. {r} Note that |∪ki= 1 (V (Ri ) − {xi1 , xim })| = |V (Pn ) − ({u, v} ∪ V (F r ))| ≥ (n − 1)! − n + 3. There are at least (n − 1)! − n + 3 − k edges in ∪ki= 1 (E(Ri ) − {(xi1 , xi2 ), (xim−1 , xim )}). (Note that {(xi1 , xi2 ), (xim−1 , xim )} = {(xi1 , xi2 )} if m = 2.) Since |F| ≤ n − 4, there {r} are at most (n − 4) vertices z in Pn such that either the nth neighbors of them are in F or the edges between them and their nth neighbors are in F. Since k ≤ n − 2 and n ≥ 5, (n − 1)! − n + 3 − k ≥ (n − 1)! − 2n + 5 > 2(n − 4). Thus, there is an edge (xst , xst+1 ) ∈ E(Rs ) for some s ∈ k and for some t ∈ sm − 1 − {1} such that {(xst )n , (xst+1 )n , (xst , (xst )n ), (xst+1 , (xst+1 )n )} ∩ F = ∅. Without loss of generality, we assume that s = k. Since d(xkt , xkt+1 ) = 1, by Lemma 11.12,
n − {r} −F (xkt )1 = (xkt+1 )1 . By Theorem 11.13, there is a Hamiltonian path W of Pn joining the vertex (xkt )n to the vertex (xkt+1 )n . We set H = xk1 , xk2 , . . . , xkt , (xkt )n , W , (xkt+1 )n , xkt+1 , xkt+2 , . . . , xkm . Then {R1 , R2 , . . . , Rk−1 , H} forms the k ∗ -container of Pn − F between u and v. See Figure 14.22a for illustration. {r}
{s}
Case 1.2. u ∈ Pn and v ∈ Pn for some r, s ∈ n with r = s. By Lemma 11.12, |E r,s | = (n − 2)! > |F ∪ {u, v}| if n ≥ 5. We can choose two adjacent vertices x {r} {s} and y with (1) x ∈ Pn − {u}, (2) y ∈ Pn − {v}, (3) (NPn (x) ∪ NPn (y)) ∩ F = ∅, and (4) {(z, (z)n ) | z ∈ NPn (x) ∪ NPn (y)} ∩ F = ∅. By induction, there is a k ∗ -container
Pn{ r } - F r
u
Pn{r } - F r
R1 R2
Rk1 xk t1
xk t
R1
x1
v
P
< n > { r } n
-F u
( xk t1)n ( xk t )n
W (a)
Rk2 xk2 Rk1
Rk
Pn{( x1) 1} - F Pn{s} - F s n n y1 ( x1) W1 ( y1 ) Pn{ ( xk2 )1-} F ( xk2) n W ( yk2)n k2
xk1 x
P
xk
( xk1)n Wk1 ( yk ) n
J n
yk2 Hk2 y
-F (b)
FIGURE 14.22 Illustrations for Case 1 of Theorem 14.20.
Hk1
yk1 yk
Hk
v
ch014.tex
25/7/2008
14: 27
Page 399
Spanning Connectivity
399
{r}
{R1 , R2 , . . . , Rk } of Pn − F r joining u to x, and {H1 , H2 , . . . , Hk } is a k ∗ -container of {s} Pn − F s joining y to v. Without loss of generality, we write Ri = u, Ri , xi , x and Hi = y, yi , Hi , v for every 1 ≤ i ≤ k. (Note that u = xi is l(Ri ) = 0 and v = yi is l(Hi ) = 0.) We set A = {(xi )1 | (x, xi ) ∈ E(Ri ) and i ∈ k} and B = {(yi )1 | (y, yi ) ∈ E(Hi ) and i ∈ k}. By Lemma 11.12, (xi )1 = (xj )1 for every i, j ∈ k with i = j, and A ⊂ n − {r, s}. Similarly, (yi )1 = (yj )1 for every i, j ∈ k with i = j, and B ⊂ n − {r, s}. Let I = {xi | xi ∈ A, and there exists an element yj ∈ B such that (xi )1 = (yj )1 }. Let |I| = m. (Note that |I| = 0 if I = ∅.) Then we relabel the indices of A and B such that (xi )1 = (yi )1 for all i ≤ m. By Lemma 11.13, there is a Hamilto{(x ) ,(y ) } nian path Wi of Pn i 1 i 1 − F joining the vertex (xi )n to the vertex (yi )n for every 1 ≤ i ≤ k − 2. (Note that {(xi )1 , (yi )1 } = {(xi )1 } if (xi )1 = (yi )1 .) We set J = n − (A ∪ B ∪ {r, s} − {yk−1 , yk }). By Lemma 11.13, there is a Hamiltonian path Wk−1 of PnJ − F joining the vertex (xk−1 )n to the vertex (yk )n . We set Ti = u, Ri , xi , (xi )n , Ti , (yi )n , yi , Hi , v Tk−1 = Tk =
for every 1 ≤ i ≤ k − 2
, xk−1 , (xk−1 )n , Wk−1 , (yk )n , yk , Hk , v
u, Rk−1
u, Rk , xk , x, y, yk−1 , Hk−1 , v
Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.22b for illustration. Case 2.
|F t | = f for some t ∈ n. Without loss of generality, we assume that t = n. {n}
Case 2.1. u, v ∈ Pn . By induction and Theorem 11.16, there is a (k − 1)∗ -container {n} {R1 , R2 , . . . , Rk−1 } of Pn − F n between u and v. Suppose that (u)1 = (v)1 . By Lemma 11.13, there is a Hamiltonian path Q of
n−1 joining the vertex (u)n to the vertex (v)n . We set Rk = u, (u)n , Q, (v)n , v. Then Pn {R1 , R2 , . . . , Rk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.23a for illustration. Suppose that (u)1 = (v)1 . By Lemma 11.13, there is a Hamiltonian path {(u) } Q of Pn 1 joining the vertex (u)n to the vertex (v)n . We can write Q as n
(u) , x, y, Q , (v)n . We have d(x, y) = 1, d(x, (u)n ) = 1, and d(y, (u)n ) = 2. By Lemma 11.12, (y)1 = n, (x)1 = n, and (x)1 = (y)1 . By Lemma 11.13, there is a
n−1 − {(u)1 } joining the vertex (x)n to the vertex (y)n . Hamiltonian path W of Pn n n n We set Rk = u, (u) , x, (x) , W , (y) , y, Q , (v)n , v. Then {R1 , R2 , . . . , Rk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.23b for illustration. {r}
Case 2.2. u, v ∈ Pn for some r ∈ n − 1. By Theorem 14.19, there is a k ∗ -container {r} {R1 , R2 , . . . , Rk } of Pn joining u to v. By Lemma 11.11, |E r,n | = (n − 2)! > n − 3 if {r} {n} n ≥ 5. We can choose a vertex x ∈ Pn − {v} with (x)n ∈ Pn − F n . Without loss of generality, we assume that x ∈ Rk and we write Rk as u, Q1 , x, y, Q2 , v. (Note that x = u if l(Q1 ) = 0 and y = v if l(Q2 ) = 0.) We have d(x, y) = 1. By Lemma 13.12, {n} (x)1 = (y)1 . By Theorem 11.16, there is a Hamiltonian cycle C of Pn − F n .
ch014.tex
25/7/2008
14: 27
Page 400
400
Graph Theory and Interconnection Networks
Pn{n} - F n u
Pn{ n }- F n u
P n< n1 > (u)n
R1 R2
x
(u)n
Rk1
Q (v )
Pn{(u1)1}
Pn{(u1)1}
R1 R2
Rk1
n
( v)n
v
(x ) n
W
y
Q’
v
(a)
(y ) n
(b)
FIGURE 14.23 Illustrations for Case 2.1 of Theorem 14.20.
Pn{ r }
Q1
u
R1 R2
Rk1 v
Pn{n }F n x (x)n p y
Q2
Z
q
Pn< n 1>{ r } ( y)n
W
(q)n
FIGURE 14.24 Illustration for Case 2.2 of Theorem 14.20.
Without loss of generality, we write C as (x)n , p, Z, q, (x)n . Since d((x)n , p) = 1 and d((x)n , q) = 1, d(p, q) = 2. By Lemma 11.12, (p)1 = (q)1 , (p)1 = ((x)n )1 , and (q)1 = ((x)n )1 . Since (p)1 = (q)1 , either (p)1 = (y)1 or (q)1 = (y)1 . Without loss of generality, we assume that (q)1 = (y)1 . By Lemma 11.13, there is a Hamil n − 1 − {r} joining the vertex (q)n to the vertex (y)n . We set tonian path W of Pn n n H = u, Q1 , x, (x) , p, Z, q, (q) , W , (y)n , y, Q2 , v. Then {R1 , R2 , . . . , Rk−1 , H} forms the k ∗ -container of Pn − F between u and v. See Figure 14.24 for illustration. Case 2.3.
{n}
{r}
u ∈ Pn and v ∈ Pn for some r ∈ n − 1.
Case 2.3.1. Suppose that (u)n = v. By Lemma 14.12, |E r,n | = (n − 2)! > n − 3. We {n} can choose a vertex x in Pn − (Fnn ∪ {u}) such that (x)1 = r. We set y = (x)n . By induc{n} tion and Theorem 11.16, there is a (k − 1)∗ -container {R1 , R2 , . . . , Rk−1 } of Pn − F n joining u to x. Without loss of generality, we write Ri as u, Ri , xi , x for every 1 ≤ i ≤ k − 1. Let {r} {y1 , y2 , . . . , yk−1 } be the set of (k − 1) distinct neighbors of y in Pn with (yi )1 = (xi )1 for every 1 ≤ i ≤ k − 1. We set F = {(y, z) | z ∈ NPn{r} (y) − {yi | 1 ≤ i ≤ k − 1}}. Obviously, |F | = (n − 1) − (k − 1). By induction and Theorem 11.16, there is a (k − 1)∗ {r} container {H1 , H2 , . . . , Hk−1 } of Pn − F joining y to v. Without loss of generality, we write Hi as y, yi , Hi , v for every 1 ≤ i ≤ k − 1. Suppose that k = 3. We set J = n − 1 − {r}. By Lemma 11.13, there is a Hamiltonian path W of PnJ joining the vertex (x1 )n to the vertex (y2 )n . We set T1 = u, R1 , x1 , (x1 )n , W , (y2 )n , y2 , H2 , v T2 = u, R2 , x2 , x, y, y1 , H1 , v T3 = u, v Then {T1 , T2 , T3 } forms the 3∗ -container of Pn − F between u and v. See Figure 14.25a for illustration.
ch014.tex
25/7/2008
14: 27
Page 401
Spanning Connectivity Pn{ n } F n
401 Pn{ r }F
PnJ
( x1) n
x1
( y2)n
Pn{ n } F n R1 x1
y1
Rk3 xk3
x2 x
y
u
H1
y2
H3
R2
Rk2 v
u
(y ) k3 k3
x k2 x
Rk1 xk1
Pn{n }F ’ ( y1)n
y1
(xk2)nW
yk2
k2
P xk1 x
u
yk1
( x) n
H 1
yk3
Hk3
y
PnJ (xk2)nW
(yk1)n
yk2
H k2
yk1
k2
Hk1
v
Pn{n } F ’
Pn{ ( x 1)1} ( x1) n W1
( y1) n
y1
H1
Pn{ ( x k2 )1} (yk2)n
J n
Rk1
Pn{n }F n R1 x1
H1
Pn{(xk2 )1 }
Rk2 xk2
y1
(b)
Pn{(x1)1} ( x1)n W1
x1
R1
n
(xk3)nW
(a)
Pn{ n }F n
Pn{ r } ( y1) n
Pn{ ( x k3 )1}
W R1
Pn{ ( x1)1} ( x1) n W1
n
Wk1( yk1)
yk y
Rk2 xk2
Hk2 Hk1 Hk
(xk2)nW
P
x k1
u
yk2
J n
( u) n
Rk1 v
(yk2 )n
k2
yk1 n
Wk1 ( yk)
x
(c)
yk y
Hk2 Hk1 Hk
v
(d)
FIGURE 14.25 Illustrations for Case 2.3 of Theorem 14.20.
Suppose that k > 3. We set J = n − 1 − ({(xi )1 | 1 ≤ i ≤ k − 3} ∪ {r}). By Lemma {(x ) } 11.13, there is a Hamiltonian path Wi of Pn i 1 joining the vertex (xi )n to the vertex n (yi ) for every 1 ≤ i ≤ k − 3. Again, there is a Hamiltonian path Wk−2 of PnJ joining the vertex (xk−2 )n to the vertex (yk−1 )n . We set Ti = u, Ri , xi , (xi )n , Wi , (yi )n , yi , Hi , v Tk−2 = Tk−1 =
for every 1 ≤ i ≤ k − 3
u, Rk−2 , xk−2 , (xk−2 )n , Wk−2 , (yk−1 )n , yk−1 , Hk−1 , v
u, Rk−1 , xk−1 , x, y, yk−2 , Hk−2 , v
Tk = u, v Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.25b for illustration. {r}
Case 2.3.2. Suppose that (u)n ∈ Pn and (u)n = v. Let t ∈ n − 1 = {r}. By {n} Lemma 11.12, |E r,n | = (n − 2)! > n − 3. We can choose a vertex x in Pn − (Fnn ∪ {u}) such that (x)1 = t. By induction and Theorem 11.16, there is a (k − 1)∗ -container {n} {R1 , R2 , . . . , Rk−1 } of Pn − F n joining u to x. Without loss of generality, we write Ri as u, Ri , xi , x for every 1 ≤ i ≤ k − 1. Moreover, we assume that (xi )1 = r for every 1 ≤ i ≤ k − 2. We set y = (u)n . Let {r} {y1 , y2 , . . . , yk } be the set of k distinct neighbors of y in Pn with (yi )1 = (xi )1 for every 1 ≤ i ≤ k − 2 and (yk−1 )1 = (x)1 . We set F = {(y, z) | z ∈ NPn{r} (y) − {yi | 1 ≤ i ≤ k}}. {r}
By induction, there is a k ∗ -container {H1 , H2 , . . . , Hk } of Pn − F joining y to v.
ch014.tex
25/7/2008
14: 27
Page 402
402
Graph Theory and Interconnection Networks
Without loss of generality, we write Hi as y, yi , Hi , v for every 1 ≤ i ≤ k − 1. We set J = n − ({(xi )1 | 1 ≤ i ≤ k − 2} ∪ {r, n}). By Lemma 11.13, there is a Hamiltonian {(x ) } path Wi of Pn i 1 joining the vertex (xi )n to the vertex (yi )n for every 1 ≤ i ≤ k − 2. Again, there is a Hamiltonian path Wk−1 of PnJ joining the vertex (x)n to the vertex (yk−1 )n . We set Ti = u, Ri , xi , (xi )n , Wi , (yi )n , yi , Hi , v Tk−1 = Tk =
for every 1 ≤ i ≤ k − 2
u, Rk−1 , xk−1 , x, (x)n , Wk−1 , (yk−1 )n , yk−1 , Hk−1 , v
u, (u)n = y, yk , Hk , v
Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.25c for illustration. {s}
Case 2.3.3. (u)n ∈ Pn for some s ∈ n − 1 − {r}. By Lemma 11.12, |E r,n | = (n − {n} 2)! > n − 2. We can choose a vertex x in Pn − (F n ∪ {u, (v)n }) with (x)1 = r. We set y = (x)n . By induction and Theorem 11.16, there is a (k − 1)∗ -container {n} {R1 , R2 , . . . , Rk−1 } of Pn − F n joining u to x. Without loss of generality, we write Ri as u, Ri , xi , x for every 1 ≤ i ≤ k − 1. Moreover, we assume that (xi )1 = (u)1 for every 1 ≤ i ≤ k − 2. Let {y1 , y2 , . . . , yk } be {r} the set of k distinct neighbors of y in Pn with (yi )1 = (xi )1 for every 1 ≤ i ≤ k − 2, and (yk−1 )1 = (u)1 . We set F = {(y, z) | z ∈ NPn{r} (y) − {yi | 1 ≤ i ≤ k}}. By Theo{r}
rem 11.16, there is a k ∗ -container {H1 , H2 , . . . , Hk } of Pn − F joining y to v. Without loss of generality, we write Hi as y, yi , Hi , v for every 1 ≤ i ≤ k. We set J = n − 1 − ({(xi )1 | 1 ≤ i ≤ k − 2} ∪ {r}). By Lemma 11.13, there is a Hamiltonian {(x ) } path Wi of Pn i 1 joining the vertex (xi )n to the vertex (yi )n for every i ≤ k − 2. Again, there is a Hamiltonian path Wk−2 of PnJ joining the vertex (u)n to the vertex (yk )n . We set Ti = u, Ri , xi , (xi )n , Wi , (yi )n , yi , Hi , v Tk−1 = Tk =
n
for every 1 ≤ i ≤ k − 2
n
u, (u) , Wk−1 , (yk ) , yk , Hk , v
u, Rk−1 , xk−1 , x, y, yk−1 , Hk−1 , v
Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.25d for illustration. {r}
{s}
Case 2.4. u ∈ Pn and v ∈ Pn for some r, s ∈ n − 1 with r = s. By Theo{n} rem 11.16, there is a Hamiltonian cycle C of Pn − F n . By Lemma 11.12, {r} E r,n = (n − 2)! > n − 2. We can choose two adjacent vertices w and x in Pn − {u} {r} {n} n n n with (w) ∈ Pn − {v} and (x) ∈ Pn − F . Without loss of generality, we write C as (x)n , y, Q, z, (x)n . By Lemma 11.12, (y)1 = (x)1 , (z)1 = (x)1 , and (y)1 = (z)1 . Without loss of generality, we assume that (z)1 ∈ n − 1 − {r, s}. Let {q1 , q2 , . . . , qk−1 } be a (k − 1) subset of NPn{r} (w) with (qk−1 )1 = (z)1 . We set F = {(w, z) | z ∈ NPn{r} (w) − {x, q1 , q2 , . . . , qk−1 }. By induction, there is a k ∗ {r}
container {R1 , R2 , . . . , Rk } of Pn − F joining u to x. Without loss of generality, we write Ri as u, Ri , qi , w for every 1 ≤ i ≤ k − 1 and Rk as u, Rk , x, w.
ch014.tex
25/7/2008
14: 27
Page 403
Spanning Connectivity
403
Suppose that k = n − 2. Let {p1 , p2 , . . . , pn−2 } be the set of neighbors of the {s} vertex (w)n in Pn . Without loss of generality, we assume that (pi )1 = (qi )1 for every 1 ≤ i ≤ n − 3 and (pn−2 )1 = (x)1 . By induction, there is an (n − 2)∗ -container {s} {H1 , H2 , . . . , Hn−2 } of Pn joining (w)n to v. Without loss of generality, we write Ri as (w)n , pi , Hi , v for every 1 ≤ i ≤ n − 2. By Lemma 11.13, there is a Hamiltonian {(q ) } path Wi of Pn i 1 joining the vertex (qi )n to the vertex (pi )n for every i ≤ n − 4. Again, {(z) } there is a Hamiltonian path Wn−3 of Pn 1 joining the vertex (z)n to the vertex (pn−3 )n . We set Ti = u, Ri , qi , (qi )n , Wi , (pi )n , pi , Hi , v Tn−3 = Tn−2 =
for every 1 ≤ i ≤ n − 4
u, Rn−2 , x, y, Q, z, (z)n , Wn−3 , (pn−3 )n , pn−3 , Hn−3 , v n
u, Rn−3 , qn−3 , w, (w) , pn−2 , Hn−2 , v
Then {T1 , T2 , . . . , Tn−2 } forms the (n − 2)∗ -container of Pn − F between u and v. See Figure 14.26a for illustration. Suppose that 3 ≤ k ≤ n − 3. Obviously, n ≥ 6. Let t ∈ n − {(qi )1 | 1 ≤ i ≤ k − 1} ∪ {r, s}. Let {p1 , p2 , . . . , pk } be the set of k distinct neighbors of the
Pn{ r } F ’ R1 q1
Pn{(q1)1}
Pn{s}
n
( q1 )
n
W1
(p1 )
Wnn4
( pn4) n
H1
p1
Pn{(qn4)1} Rn4 qn4 u
Rn3 Rn2 x
w qn3
( qn4) n
Pn{n } F n (x ) n y Q
z
Pn{ ( z )1 } ( z )n Wn3( pn3)n
pn4
Hn4 (w) n pn3Hn3 Hn2
pn2
v
(a)
Pn{(q1)1}
Pn{r } F ’ R1 q1
( q1 )
Pn{s }
n
n
W1
(p1 )
Wk2
( pk2)n
p1
H1
pk2
Hk2
Pn{( q k2)1} Rk2 qk2 u
Rk1 Rk
w qk1 x
( qk2 ) n
Pn{n } F n (x ) n y Q
(w)n pk1
PnJ ( z )n
z
Wk1 (p k)n
(b)
FIGURE 14.26 Illustration for Case 2.4 of Theorem 14.20.
pk
Hk1 v Hk
ch014.tex
25/7/2008
14: 27
404
Page 404
Graph Theory and Interconnection Networks {s}
vertex (w)n in Pn with (pi )1 = (qi )1 for every 1 ≤ i ≤ k − 1 and (pk )1 = t. We set F = {((w)n , z) | z ∈ NPn{s} ((w)n ) − {pi | 1 ≤ i ≤ k}. By induction, there is {s}
a k ∗ -container {H1 , H2 , . . . , Hk } of Pn − F joining (w)n to v. Without loss of generality, we write Ri as (w)n , pi , Hi , v for every 1 ≤ i ≤ k. We set J = n − 1 − ({(qi )1 | 1 ≤ i ≤ k − 2} ∪ {r, s}). By Lemma 11.13, there is a Hamilto{(q ) } nian path Wi of Pn i 1 joining the vertex (qi )n to the vertex (pi )n for every i ≤ k − 2. {J} Again, there is a Hamiltonian path Wk − 1 of Pn joining the vertex (z)n to the vertex (pk )n . We set Ti = u, Ri , qi , (qi )n , Wi , (pi )n , pi , Hi , v Tk−1 = Tk =
for every 1 ≤ i ≤ k − 2
u, Rk , x, y, Q, z, (z)n , Wk−1 , (pk )n , pk , Hk , v , v
u, Rk−1 , qk−1 , w, (w)n , pk−1 , Hk−1
Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Pn − F between u and v. See Figure 14.26b for illustration. THEOREM 14.21 κf∗ (Pn ) = n − 4 if n ≥ 4. Proof: By Theorem 14.20, κf∗ (Pn ) ≥ n − 4 if n ≥ 4. Let u be any vertex of Pn and F be any subset of the neighborhood of u with |F| = n − 3. Obviously, degPn − F (u) = 2. Let x and y be two distinct vertices in NPn −F (u). Since degPn −F (u) = 2 and n(Pn − F) ≥ n! − (n − f ) ≥ 4, there is not an 1∗ -container of Pn − F between x and y. Hence, Pn − F is not 1∗ -connected. Thus, κf∗ (Pn ) = n − 4 if n ≥ 4.
14.7
SPANNING LACEABILITY OF THE STAR GRAPHS
Lin et al. [233] also discuss the spanning laceability of the star graphs. Again, we review some basic background about the properties of star graphs. It is known that Sn is a bipartite graph with one partite set containing all odd permutations and the other partite set containing all even permutations. For convenience, we refer to an even permutation as a white vertex, and refer to an odd permutation as a black vertex. Let u = u1 u2 . . . un be any vertex of Sn . We use (u)i to denote the ith {i} component ui of u and Sn to denote the ith subgraph of Sn induced by those vertices u with (u)n = i. Obviously, Sn can be decomposed into n vertex disjoint subgraphs {i} {i} Sn for 1 ≤ i ≤ n, such that each Sn is isomorphic to Sn−1 . Thus, the star graph can be constructed recursively. Let H ⊆ n. We use SnH to denote the subgraph of Sn induced by ∪i∈H V (Sn{i} ). By the definition of Sn , there is exactly one neighbor v of u such that u and v are adjacent through an i-dimensional edge with 2 ≤ i ≤ n. For this reason, we use (u)i to denote the unique i-neighbor of u. We have ((u)i )i = u and {(u) } (u)n ∈ Sn 1 . For 1 ≤ i, j ≤ n and i = j, we use E i,j to denote the set of edges between {j} {i} Sn and Sn . By Theorem 13.2, Sn is 1∗ -laceable if n = 3, and Sn is 2∗ -connected if n ≥ 3.
ch014.tex
25/7/2008
14: 27
Page 405
Spanning Connectivity
405
LEMMA 14.33 Let {a1 , a2 , . . . , ar } be a subset of n for some r ∈ n with n ≥ 5. {a } {ar } . Then there is a Assume that u is a white vertex in Sn 1 and v is a black vertex in Sn " {a } Hamiltonian path u = x1 , H1 , y1 , x2 , H2 , y2 , . . . , xr , Hr , yr = v of ri=1 Sn i joining {a } u to v such that x1 = u, yr = v, and Hi is a Hamiltonian path of Sn i joining xi to yi for every i, 1 ≤ i ≤ r. {i }
Proof: Note that Sn j is isomorphic to Sn−1 for every 1 ≤ j ≤ m. We set x1 = u and ym = v. By Theorem 13.2, this theorem holds for m = 1. Assume that m ≥ 2. By {j} Lemma 13.7, we choose (yj , xj+1 ) ∈ E ij ,ij+1 with yj is a black vertex of Sn and xj+1 is a {j+1} white vertex of Sn for every 1 ≤ j ≤ m − 1. By Theorem 13.2, there is a Hamiltonian {ij } path Qj of Sn joining xj to yj . The path x1 , Q1 , y1 , x2 , Q2 , y2 , . . . , xm , Qm , ym forms a desired path. LEMMA 14.34 Let n ≥ 5 and k be any positive integer with 3 ≤ k ≤ n − 1. Let u be any white vertex and v be any black vertex of Sn . Suppose that Sn−1 is k ∗ -laceable. Then there is a k ∗ -container of Sn between u and v not using the edge (u, v) if (u, v) ∈ E(Sn ). {n}
{n−1}
. By Proof: Since Sn is edge-transitive, we may assume that u ∈ Sn and v ∈ Sn {n} Lemma 13.7, there are ((n − 2)!/2) ≥ 3 edges joining black vertices of Sn to white {n−1} . We can choose an edge (y, z) ∈ E n−1,n where y is a black ververtices of Sn {n} {n−1} . By induction, there is a k ∗ -container tex in Sn and z is a white vertex in Sn {n} {R1 , R2 , . . . , Rk } of Sn joining u to y, and there is a k ∗ -container {H1 , H2 , . . . , Hk } of {n−1} joining z to v. We write Ri = u, Ri , yi , y and Hi = z, zi , Hi , v. Note that yi is Sn a white vertex and zi is a black vertex for every 1 ≤ i ≤ k. Let I = {yi | (yi , y) ∈ E(Ri ) and 1 ≤ i ≤ k}, and J = {zi | (zi , x) ∈ E(Hi ) and 1 ≤ i ≤ k}. Note that (yi )1 = (y)j for some j ∈ {2, 3, . . . , n − 1}, and (y)l = (y)m if l = m. By Lemma 13.8, {(yi )1 | 1 ≤ i ≤ k} ∩ {n − 1, n} = ∅. Similarly, {(zi )1 | 1 ≤ i ≤ k} ∩ {n − 1, n} = ∅. Let A = {yi | yi ∈ I and there exists an element zj ∈ J such that (yi )1 = (zj )1 }. Then we relabel the indices of I and J such that (yi )1 = (zi )1 for 1 ≤ i ≤ |A|. We set X as {(yi )1 | 1 ≤ i ≤ k − 2} ∪ {(zi )1 | 1 ≤ i ≤ k − 2} ∪ {n − 1, n}. By Lemma 14.33, there is a {(y ) ,(z ) } Hamiltonian path Ti of Sn i 1 i 1 joining the black vertex (yi )n to the white vertex
n − X joining (zi )n for every 1 ≤ i ≤ k − 2, and there is a Hamiltonian path Tk−1 of Sn the black vertex (yk−1 )n to the white vertex (zk )n . (Note that {(yi )1 , (zi )1 } = {(yi )1 } if (yi )1 = (zi )1 .) We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v
for 1 ≤ i ≤ k − 2
Qk−1 = u, Rk−1 , yk−1 , (yk−1 )n , Tk−1 , (zk )n , zk , Hk , v Qk = u, Rk , yk , y, z, zk−1 , Hk−1 , v
It is easy to check whether {Q1 , Q2 , . . . , Qk } forms a k ∗ -container of Sn joining u to v not using the edge (u, v) if (u, v) ∈ E(Sn ).
ch014.tex
406
25/7/2008
14: 27
Page 406
Graph Theory and Interconnection Networks
THEOREM 14.22 Sn is (n − 1)∗ -laceable if n ≥ 2. Proof: It is easy to see that S2 is 1∗ -laceable and S3 is 2∗ -laceable. Since the S4 is vertex-transitive, we claim that S4 is 3∗ -laceable by listing all 3∗ -containers from the white vertex 1234 to any black vertex as follows:
(1234), (2134)
(1234), (3214), (2314), (4312), (1342), (2341), (4321), (1324), (3124), (2134)
(1234), (4231), (3241), (1243), (4213), (2413), (3412), (1432), (2431), (3421), (1423), (4123), (2143), (3142), (4132), (2134)
(1234), (3214)
(1234), (4231), (3241), (2341), (1342), (3142), (2143), (1243), (4213), (3214)
(1234), (2134), (4132), (1432), (2431), (3421), (4321), (1324), (3124), (4123), (1423), (2413), (3412), (4312), (2314), (3214)
(1234), (4231)
(1234), (2134), (4132), (3142), (1342), (4312), (3412), (1432), (2431), (4231)
(1234), (3214), (2314), (1324), (3124), (4123), (2143), (1243), (4213), (2413), (1423), (3421), (4321), (2341), (3241), (4231)
(1234), (2134), (3124), (1324), (2314), (4312), (1342), (3142), (4132), (1432), (3412), (2413), (1423), (4123), (2143), (1243)
(1234), (3214), (4213), (1243)
(1234), (4231), (2431), (3421), (4321), (2341), (3241), (1243)
(1234), (2134), (4132), (1432)
(1234), (3214), (2314), (1324), (3124), (4123), (1423), (2413), (4213), (1243), (2143), (3142), (1342), (4312), (3412), (1432)
(1234), (4231), (3241), (2341), (4321), (3421), (2431), (1432)
(1234), (2134), (4132), (3142), (1342), (4312), (3412), (1432), (2431), (3421), (1423), (2413), (4213), (1243), (2143), (4123), (3124), (1324)
(1234), (3214), (2314), (1324)
(1234), (4231), (3241), (2341), (4321), (1324)
(1234), (2134), (3124), (1324), (2314), (4312), (3412), (1432), (4132), (3142), (1342), (2341)
(1234), (3214), (4213), (1423), (2413), (4123), (2143), (1243), (3241), (2341)
(1234), (4231), (2431), (3421), (4321), (2341)
(1234), (2134), (4132), (3142), (1342), (4312), (3412), (1432), (2431), (3421)
(1234), (3214), (2314), (1324), (3124), (4123), (2143), (1243), (4213), (2413), (1423), (3421)
(1234), (4231), (3241), (2341), (4321), (3421)
(1234), (2134), (3124), (1324), (2314), (4312)
(1234), (3214), (4213), (1243), (2143), (4123), (1423), (2413), (3412), (4312)
(1234), (4231), (3241), (2341), (4321), (3421), (2431), (1432), (4132), (3142), (1342), (4312)
(1234), (2134), (4132), (1432), (3412), (4312), (1342), (3142), (2143), (4123)
(1234), (3214), (2314), (1324), (3124), (4123)
(1234), (4231), (2431), (3421), (4321), (2341), (3241), (1243), (4213), (2413), (1423), (4123)
(1234), (2134), (4132), (3142)
(1234), (3214), (2314), (1324), (3124), (4123), (1423), (2413), (4213), (1243), (2143), (3142)
(1234), (4231), (3241), (2341), (4321), (3421), (2431), (1432), (3412), (4312), (1342), (3142)
(1234), (2134), (3124), (1324), (2314), (4312), (1342), (3142), (4132), (1432), (3412), (2413)
(1234), (3214), (4213), (2413)
(1234), (4231), (2431), (3421), (4321), (2341), (3241), (1243), (2143), (4123), (1423), (2413)
Assume that Sk is (k − 1)∗ -laceable for every 4 ≤ k ≤ n − 1. We need to construct an (n − 1)∗ -container of Sn between any white vertex u to any black vertex v. Case 1. d(u, v) = 1. We have (u, v) ∈ E(Sn ). By induction, Sn−1 is (n − 2)∗ -laceable. By Lemma 14.34, there exists an (n − 2)∗ -container {Q1 , Q2 , . . . , Qn−2 } of Sn joining u to v not using the edge (u, v). We set Qn−1 as u, v. Then {Q1 , Q2 , . . . , Qn−1 } forms an (n − 1)∗ -container of Sn joining u to v. Case 2. d(u, v) ≥ 3. We have a star graph that is edge-transitive. Without loss of {n} {n−1} with (u)1 = n − 1 and (v)1 = n. generality, we may assume that u ∈ Sn and v ∈ Sn {n} By Lemma 13.7, there are ((n − 2)!/2) ≥ 3 edges joining black vertices of Sn to
ch014.tex
25/7/2008
14: 27
Page 407
Spanning Connectivity
407
{n−1}
white vertices of Sn . We can choose an edge (y, z) ∈ E n−1,n where y is a black {n} {n−1} . Let {R1 , R2 , . . . , Rn−2 } be an (n − 2)∗ vertex in Sn and z is a white vertex in Sn {n} container of Sn joining u to y, and let {H1 , H2 , . . . , Hn−2 } be an (n − 2)∗ -container {n−1} joining z to v. We write Ri = u, Ri , yi , y and Hi = z, zi , Hi , v. Note of Sn that yi is a white vertex and zi is a black vertex for every 1 ≤ i ≤ n − 2. We have {(yi )1 | 1 ≤ i ≤ n − 2} = {(zi )1 | 1 ≤ i ≤ n − 2} = n − 2. Without loss of generality, we assume that (yi )1 = (zi )1 for every 1 ≤ i ≤ n − 2 with (yn−2 )1 = (u)1 . {(y ) }
Case 2.1. (u)1 = (v)1 . By Theorem 13.2, there is a Hamiltonian path Ti of Sn i 1 joining the black vertex (yi )n to the white vertex (zi )n for every i ∈ n − 3, and there {(y ) } is a Hamiltonian path H of Sn n−2 1 joining the black vertex (u)n to the white vertex n (v) . We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v Qn−1 =
for 1 ≤ i ≤ n − 3
u, Rn−2 , yn−2 , y, z, zn−2 , Hn−2 , v n n
Qn−2 = u, (u) , H, (v) , v,
Then {Q1 , Q2 , . . . , Qn−1 } forms an (n − 1)∗ -container of Sn joining u and v. Case 2.2. (u)1 = (v)1 . Without loss of generality, we assume that (yn−3 )1 = (v)1 . By {(y ) } Theorem 13.2, there is a Hamiltonian path Ti of Sn i 1 joining (yi )n to (zi )n for every {(y ) } i ∈ n − 4, there is a Hamiltonian path H of Sn n−3 1 joining the black vertex (yn−3 )n {(y ) } n to the white vertex (v) , and there is a Hamiltonian path P of Sn n−2 1 joining the n n black vertex (u) to the white vertex (zn−2 ) . We set Qi = u, Ri , yi , (yi )n , Ti , (zi )n , zi , Hi , v Qn−3 = Qn−2 =
for 1 ≤ i ≤ n − 4
u, Rn−3 , yn−3 , (yn−3 )n , H, (v)n , v, , v,
u, (u)n , P, (zn−2 )n , zn−2 , Hn−2
Qn−1 = u, Rn−2 , yn−2 , y, z, zn−3 , Hn−3 , v
It is easy to check whether {Q1 , Q2 , . . . , Qn−1 } is an (n − 1)∗ -container of Sn joining u to v. Thus, this theorem is proved. THEOREM 14.23 [233] Sn is super spanning laceable if and only if n = 3. Proof: It is easy to see that this theorem is true for S1 and S2 . Since S3 is isomorphic to a cycle with six vertices, S3 is not 1∗ -laceable. Thus, S3 is not super laceable. By Theorems 13.2 and 14.22, this theorem holds for S4 . Assume that Sk is super spanning laceable for every 4 ≤ k ≤ n − 1. By Theorems 13.2 and 14.22, Sn is k ∗ -laceable for any k ∈ {1, 2, n − 1}. Thus, we still need to construct a k ∗ -container of Sn between any white vertex u and any black vertex v for every 3 ≤ k ≤ n − 2. By induction, Sn−1 is k ∗ -laceable. By Lemma 14.34, there is a k ∗ -container of Sn joining u to v.
ch014.tex
25/7/2008
14: 27
408
Page 408
Graph Theory and Interconnection Networks
Again, Chang et al. [43] discuss the spanning connectivity of a bipartite graph with faults. However, we should only discuss the edge fault. Suppose that a bipartite graph G is a super spanning laceable graph with κ(G) = k. Let F be any subset of E(G) with |F| = f ≤ k − 1. Obviously, κ(G − F) ≥ k − f . We say that G is f fault-tolerant spanning laceable if G − F is i∗ -connected for any 1 ≤ i ≤ k − f and F ⊂ E(Sn ) with |F| = f . The fault-tolerance spanning laceability of a bipartite graph G, κf∗,L (G), is defined as the maximum integer f such that G is f -fault-tolerance spanning laceable. LEMMA 14.35 Let n ≥ 5 and I = {k1 , k2 , . . . , kt } be any nonempty subset of n. {i} Suppose that F i is a subset of E(Sn ) with |F i | ≤ n − 4 for every 1 ≤ i ≤ n, and F 0 is a subset of {(x, (x)n ) | x ∈ V (Sn )} with |F 0 | ≤ n − 3. Suppose that u is a white vertex {k } {k } of Sn 1 and v is a black vertex of Sn t . Then there is a Hamiltonian path P of SnI − n i (∪i = 0 F ) joining u to v. {k }
Proof: Obviously, Sn i is isomorphic to Sn−1 for every 1 ≤ i ≤ t. By Theorem 13.2, this statement is true for t = 1. Thus, we suppose that 2 ≤ t ≤ n. We set x1 = u and {i} yt = v. By Lemma 13.7, (n − 2)!/2 edges joining black vertices of Sn to white vertices { j} of Sn for any i, j ∈ n with i = j. Since (n − 2)!/2 > n − 3 if n ≥ 5, we choose a black {k } {k } vertex yi in Sn i with (yi )n ∈ Sn i+1 and (yi , (yi )n ) ∈ / F 0 for every i ∈ t − 1. We set n xi+1 = (yi ) for every i ∈ t − 1. Obviously, xi is a white vertex for every i ∈ t. By {k } Theorem 13.2, there is a Hamiltonian path Hi of Sn i − F ki joining xi to yi for every 1 ≤ i ≤ t. Then" u = x1 , H1 , y1 , x2 , H2 , y2 , . . . , xt , Ht , yt = v forms the Hamiltonian path of SnI − ( ni=0 F i ) joining u to v. THEOREM 14.24 Suppose that F is an edge subset of E(Sn ) with |F| = f ≤ n − 3 and n ≥ 4. Then Sn − F is i∗ -laceable for every 1 ≤ i ≤ n − 1 − f . Proof: We prove this theorem by induction on n. Suppose that n = 4. By Theorems 13.2 and 14.23, this statement is true for S4 . Suppose that this statement is true for Sk for every 4 ≤ k ≤ n − 1. By Theorems 13.2 and 14.23, this theorem is true for Sn − F if f ∈ {0, n − 3}. Thus, we assume that 1 ≤ f ≤ n − 4. Let u be a white vertex and v be a black vertex of Sn . By Theorem 13.2, there is a k ∗ -container of Sn − F between u and v if k = 1 or k = 2. Thus, we need to show that there is a k ∗ -container {i} of Sn − F between u and v for " every 3 ≤ k ≤ n − f − 1. We set F i = F ∩ E(Sn ) for n 0 every 1 ≤ i ≤ n, and F = F − ( i=1 Fi ). Since Sn is edge-transitive, we assume that |F 0 | ≥ 1. Thus, |F i | ≤ f − 1 ≤ n − 4 for every i ∈ n. {r}
Case 1. u, v ∈ Sn for some r ∈ n. By induction hyphothesis, there is a k ∗ -container {r} {R1 , . . . , Rk } of Sn − F r between u and v. Without loss of generality, we can write Ri as xi1 , xi2 , . . . , xim with xi1 = u and xim = v for every 1 ≤ i ≤ k. Note that " | k (V (Ri ) − {xi1 , xim })| = (n − 1)! − 2. There are at least (n − 1)! − k − 2 edges in "k i=1 i=1 (E(Ri ) − {(xi1 , xi2 ), (xim−1 , xim )}). (Note that {(xi1 , xi2 ), (xim−1 , xim )} = {(xi1 , xi2 )} {r} if m = 2.) Since |F| ≤ n − 3, there are at most (n − 3) vertices in Sn such that the edges between them and their nth neighbors are in F. Since k ≤ n − 2
ch014.tex
25/7/2008
14: 27
Page 409
Spanning Connectivity
409
and n ≥ 5, (n − 1)! − k − 2 ≥ (n − 1)! − n + 1 > 2(n − 3). Thus, there is an edge (xst , xst+1 ) ∈ E(Rs ) for some s ∈ k and for some t ∈ sm − 1 − {1} such that {(xst , (xst )n ), (xst+1 , (xst+1 )n )} ∩ F = ∅. Without loss of generality, we assume that s = k. Since d(xkt , xkt+1 ) = 1, by Lemma 13.8, (xkt )1 = (xkt+1 )1 . Obviously, the color of xkt and the color of xkt+1 are distinct. Moreover, the color of (xkt )n and the color of (xkt+1 )n are distinct. By Theorem 14.35, there is a Hamiltonian path H of
n − {r} − F joining the vertex (xkt )n to the vertex (xkt+1 )n . We set Ti = Ri for every Sn 1 ≤ i ≤ k − 1, and Tk = xk1 , xk2 , . . . , xkt , (xkt )n , H, (xkt+1 )n , xkt+1 , xkt+2 , . . . , xkm . Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Sn − F between u and v. {r}
{s}
Case 2. u ∈ Sn and v ∈ Sn for some r, s ∈ n with r = s. By Lemma 13.8, there are {r} {s} (n − 2)!/2 edges between the black vertices of Sn and the white vertices of Sn . Since {r} (n − 2)!/2 > n − 3 if n ≥ 5, we can choose a black vertex x in Sn and a white vertex y {s} r,s n in Sn with (1) (x, y) ∈ E and (2) {(z, (z) ) | z ∈ NSn (x) ∪ NSn (y)} ∩ F = ∅. By induc{r} tion, there is a k ∗ -container {R1 , R2 , . . . , Rk } of Sn − F r joining u to x. Again, there {s} is a k ∗ -container {H1 , H2 , . . . , Hk } of Sn − F s joining y to v. Without loss of gener ality, we write Ri as u, Ri , xi , x and write Hi as y, yi , Hi , v for every 1 ≤ i ≤ k. We set A = {(xi )1 | (x, xi ) ∈ E(Ri ) and i ∈ k} and B = {(yi )1 | (y, yi ) ∈ E(Hi ) and i ∈ k}. By Lemma 13.8, (xi )1 = (xj )1 for every i, j ∈ k with i = k, and A ⊂ n − {r, s}. Similarly, (yi )1 = (yj )1 for every i, j ∈ k with i = k, and B ⊂ n − {r, s}. Let I = {xi | xi ∈ A and there exists an element yj ∈ B such that (xi )1 = (yj )1 }. Let |I| = m. (Note that |I| = 0 if I = ∅.) Then we relabel the indices of A and B such that (xi )1 = (yi )1 for all i ≤ m. By Lemma 14.35, there is a Hamiltonian {(x ) ,(y ) } path Wi of Sn i 1 i 1 − F joining the black vertex (xi )n to the white vertex (yi )n for every 1 ≤ i ≤ k − 2. (Note that {(xi )1 , (yi )1 } = {(xi )1 } if (xi )1 = (yi )1 .) We set J = n − ({(x1 )1 | 1 ≤ i ≤ k − 2} ∪ {(y1 )1 | 1 ≤ i ≤ k − 2} ∪ {r, s}). By Lemma 14.35, there is a Hamiltonian path Wk−1 of SnJ − F joining the black vertex (xk−1 )n to the white vertex (yk )n . We set Ti = u, Ri , xi , (xi )n , Ti , (yi )n , yi , Hi , v Tk−1 = Tk =
for every 1 ≤ i ≤ k − 2
, xk−1 , (xk−1 )n , Wk−1 , (yk )n , yk , Hk , v
u, Rk−1
u, Rk , xk , x, y, yk−1 , Hk−1 , v
Then {T1 , T2 , . . . , Tk } forms the k ∗ -container of Sn − F between u and v.
THEOREM 14.25 κf∗,L (Sn ) = n − 3 if n ≥ 4. Proof: By Theorem 14.24, κf∗,L (Sn ) ≥ n − 3 if n ≥ 4. Let u be any vertex of Sn and F be any subset of {(u, v) | v ∈ NSn (u)} with |F| = n − 2. Since degSn −F (u) = 1 and n(Sn − F) = n! > 3, Sn − F is not 1∗ -laceable. Thus, κf∗,L (Sn ) = n − 3 if n ≥ 4. There are some studies of other families of interconnection networks. For example, Tsai et al. [304] study the spanning connectivity of the recursive circulant graphs RCG(2m , 4). Ho et al. [152] study the spanning connectivity of the augmented cubes.
ch014.tex
25/7/2008
410
14: 27
Page 410
Graph Theory and Interconnection Networks
14.8
SPANNING FAN-CONNECTIVITY AND SPANNING PIPE-CONNECTIVITY OF GRAPHS
There is a Menger-type theorem similar to the spanning connectivity of a graph. Let x be a vertex in a graph G and let U = {y1 , y2 , . . . , yt } be a subset of V (G) where x is not in U. A t-(x, U)-fan, Ft (x, U), is a set of internally disjoint paths {P1 , P2 , . . . , Pt } such that Pi is a path connecting x and yi for 1 ≤ i ≤ t. It follows from Theorem 7.8 that a graph G is k-connected if and only if it has at least (k + 1) vertices and there exists a t-(x, U)-fan for every choice of x and U with |U| ≤ k and x ∈ / U. Similarly, we can introduce the concept of a spanning fan. A spanning k-(x, U)-fan is a k-(x, U)-fan " {P1 , P2 , . . . , Pk } such that ki=1 V (Pi ) = V (G). A graph G is k ∗ -fan-connected (also written as kf∗ -connected) if there exists a spanning k-(x, U)-fan for every choice of x ∗ (G), and U with |U| = k and x ∈ / U. The spanning fan-connectivity of a graph G, κfan ∗ is defined as the largest integer k such that G is wfan -connected for 1 ≤ w ≤ k if G is a 1∗fan -connected graph. There is another Menger-type theorem similar to the spanning connectivity and spanning fan-connectivity of a graph. Let U = {x1 , x2 , . . . xt } and W = {y1 , y2 , . . . , yt } be two t-subsets of V (G). An (U, W )-pipeline is a set of internally disjoint paths {P1 , P2 , . . . , Pt } such that Pi is a path connecting xi to yπ(i) where π is a permutation of {1, 2, . . . , t}. It is known that a graph G is k-connected if and only if it has at least k + 1 vertices and there exists an (U, W )-pipeline for every choice of U and W with |U| = |W | ≤ k and U = W . Similarly, we can introduce the concept of spanning pipeline. A spanning (U, W )-pipeline is an (U, W )-pipeline {P1 , P2 , . . . , Pk } such that "k ∗ ∗ i=1 V (Pi ) = V (G). A graph G is k -pipeline-connected (or kpipe -connected) if there exists a spanning (U, W )-pipeline for every choice of U and W with |U| = |W | ≤ k and ∗ (G), is defined as the U = W . The spanning pipeline-connectivity of a graph G, κpipe largest integer k such that G is w∗pipe -connected for 1 ≤ w ≤ k if G is a 1∗pipe -connected graph. ∗ (G), Lin et al. [240] begin the study on the relationships between κ(G), κ∗ (G), κfan ∗ and κpipe (G). LEMMA 14.36 Every 1∗ -connected graph is 1∗fan -connected. Moreover, every ∗ -connected. Thus, κ∗ (G) ≥ 2 if G is a 1∗fan -connected graph that is not K2 is 2fan fan Hamiltonian-connected graph with at least three vertices. Proof: Let G be a 1∗ -connected graph with at least three vertices and let x be any vertex of G. Assume that U = {y} with x = y. Obviously, there exists a Hamiltonian path P1 joining x and y. Apparently, {P1 } forms a spanning 1-(x, U)-fan. Thus, G is 1∗fan -connected. Assume that U = {y1 , y2 } with x ∈ / U. Let Q be a Hamiltonian path of G
connecting y1 and y2 . We write Q as y1 , Q1 , x, Q2 , y2 . We set P1 as x, Q1−1 , y1 and P2 ∗ -connected as x, Q2 , y2 . Then {P1 , P2 } forms a spanning 2-(x, U)-fan. Thus, G is 2fan ∗ and κfan (G) ≥ 2. Similarly, we have the following lemma. LEMMA 14.37 Every 1∗ -connected graph is 1∗pipe -connected.
ch014.tex
25/7/2008
14: 27
Page 411
Spanning Connectivity
411
∗ (G) ≤ κ∗ (G) ≤ κ(G) for any 1∗ -connected graph. Moreover, THEOREM 14.26 κfan fan ∗ ∗ κfan (G) = κ (G) = κ(G) = n(G) − 1 if and only if G is a complete graph. ∗ (G) ≤ κ∗ (G). Assume that Proof: Obviously, κ∗ (G) ≤ κ(G). Now, we prove that κfan ∗ κfan (G) = k. Let x and y be any two vertices of G. We need to show that there is a k ∗ -container of G between x and y. Suppose that k = 1. Since G is 1∗fan -connected, there is a spanning 1 − (x, {y})-fan, {P1 }, of G. Then {P1 } forms a spanning container of G between x and y. Suppose that k ≥ 2. Let U = {y1 , y2 , . . . , yk−1 } be a set of (k − 1) neighbors of y not containing x. We set U = U ∪ {y}. By assumption, there exists a spanning k(x, U)-fan. Obviously, we can extend the spanning k-(x, U)-fan by adding the edges {(yi , y) | yi ∈ U } to obtain a k ∗ -container between x to y. Hence, G is k ∗ -connected. ∗ (G) ≤ κ∗ (G) for every 1∗ -connected graph. Therefore, κfan fan Suppose that G is not a complete graph. There exists a vertex cut S of size κ(G). Let x and y be any two vertices in different connected components of G − S. Obviously, ∗ (G) < κ(G) y is not in any (x, S)-fan of G. Thus, κfan
Similarly, we have the following theorem. ∗ (G) ≤ κ∗ (G) ≤ κ∗ (G) ≤ κ(G) for any 1∗ -connected THEOREM 14.27 κpipe pipe fan ∗ (G) = κ∗ (G) = κ∗ (G) = κ(G) if and only if G is a complete graph. Moreover, κpipe fan graph.
LEMMA 14.38 Let u and v be two non-adjacent vertices of G with dG (u) + dG (v) ≥ n(G) + 1, and let x and y be any two distinct vertices of G. Then G has a Hamiltonian path joining x to y if and only if G + (u, v) has a Hamiltonian path joining x to y. Proof: Since every path in G is a path in G + (u, v), there is a Hamiltonian path of G + (u, v) joining x to y if G has a Hamiltonian path joining x to y [4]. Suppose that there is a Hamiltonian path P of G + (u, v) joining x to y. We need to show there is a Hamiltonian path of G between x and y. If (u, v) ∈ / E(P), then P is a Hamiltonian path of G between x and y . Thus, we consider that (u, v) ∈ E(P). Without loss of generality, we write P as z1 , z2 , . . . , zi , zi+1 , . . . , zn(G) where z1 = x, zi = u, zi+1 = v, and zn(G) = y. Since dG (u) + dG (v) ≥ n(G) + 1, there is an index k in {1, 2, . . . , n(G)} − {i − 1.i, i + 1} such that (zi , zk ) ∈ E(G) and (zi+1 , zk+1 ) ∈ E(G). We set R = z1 , z2 , . . . , zk , zi , zi−1 , . . . , zk+1 , zi+1 , zi+2 , . . . , zn(G) if 1 ≤ k ≤ i − 2 and R = z1 , z2 , . . . , zi , zk , zk−1 , . . . , zi+1 , zk+1 , zk+2 , . . . , zn(G) if i + 2 ≤ k ≤ n(G). Then R is a Hamiltonian path of G between x and y. ∗ Lin et al. [240] also discuss some sufficient conditions for a graph to be κfan ∗ connected and κpipe -connected. Let H be a subgraph of G. The neighborhood of u with respect to H, denoted by NbdH (u), is {v ∈ V (H) | (u, v) ∈ E(G)}. We use H (u) to denote |NbdH (u)|. Obviously, G (u) = deg (u) for every u ∈ V (G). The following theorem on spanning fan-connectivity is analogous to that on spanning connectivity in Lemma 14.1.
ch014.tex
25/7/2008
14: 27
Page 412
412
Graph Theory and Interconnection Networks
u
v
y1
P1 w2 x
w3
y2
P2 P3
y3
P t
yt
wt
FIGURE 14.27 Illustration for Case 1 of Theorem 14.28
THEOREM 14.28 Assume that k is a positive integer. Let u and v be two nonadjacent ∗ (G) ≥ k + 1 if and only if vertices of G with degG (u) + degG (v) ≥ n(G) + k. Then κfan ∗ κfan (G + (u, v)) ≥ k + 1. ∗ (G + (u, v)) ≥ k + 1 if κ∗ (G) ≥ k + 1. Suppose that Proof: Obviously, κfan fan ∗ κfan (G + (u, v)) ≥ k + 1. Let x be any vertex of G and U = {y1 , y2 , . . . , yt } be any subset of V (G) such that x ∈ / U and t ≤ k + 1. We need to find a spanning t-(x, U)-fan of G. Since G + (u, v) is (k + 1)∗fan -connected, there exists a spanning t-(x, U)-fan 1 ≤ i ≤ t. Obviously, {P1 , P2 , . . . , Pt } of G + (u, v) with Pi joining x to yi for " {P1 , P2 , . . . , Pt } is a" spanning t-(x, U)-fan of G if (u, v) is not in ti=1 E(Pi ). Thus, we consider (u, v) is in ti=1 E(Pi ). By Theorems 19.3 and 19.11, we can find a spanning (x, U)-fan of G if t = 1, 2. Thus, we consider the case t ≥ 3. Without loss of generality, we may assume that (u, v) ∈ P1 . Thus, we can write P1 as x, H1 , u, v, H2 , y1 . Let Pi be the path obtained from Pi by deleting x. Thus, we can write Pi as x, wi , Pi , yi for 1 ≤ i ≤ t. Note that x = wi and Pi = yi if wi = yi for every 2 ≤ i ≤ t.
Case 1. Pi (u) + Pi (v) ≥ n(Pi ) + 2 for some 2 ≤ i ≤ t. Without loss of generality, we may assume that P2 (u) + P2 (v) ≥ n(P2 ) + 2. Obviously, n(P2 ) ≥ 2. We write P2 = w2 = z1 , z2 , . . . , zr = y2 . We claim that there exists an index j in {1, 2, . . . , r − 1} such that (zj , v) ∈ E(G) and (zj+1 , u) ∈ E(G). Suppose that this is not the case. Then P2 (u) + P2 (v) ≤ r + r − (r − 1) = r + 1 = n(P2 ) + 1. We get a contradiction. We set Q1 = x, w2 = z1 , z2 , . . . , zj , v, H2 , y1 , Q2 = x, H1 , u, zj+1 , zj+2 , . . . , zr = y2 , and Qi = Pi for 3 ≤ i ≤ t. Then {Q1 , Q2 , . . . , Qt } forms a spanning t-(x, U)-fan of G. See Figure 14.27 for illustration. Case 2.
Pi (u) + Pi (v) ≤ n(Pi ) + 1 for every 2 ≤ i ≤ t.
Case 2.1. Pi (u) + Pi (v) < n(Pi ) + 1 for some 2 ≤ i ≤ t. Without loss of generality, we may assume that P2 (u) + P2 (v) ≤ n(P2 ). Thus, P1 (u) + P1 (v) = degG (u) + degG (v) −
t i=2
(Pi (u) + Pi (v))
= degG (u) + degG (v) − (P2 (u) + P2 (v)) −
t i=3
(Pi (u) + Pi (v))
ch014.tex
25/7/2008
14: 27
Page 413
Spanning Connectivity
413
v
P1
y1
u
y2
P 2 x
w2
y3
P 3
w3 yt P t
wt
FIGURE 14.28 Illustration for Case 2.1 of Theorem 14.28.
≥ n(G) + k − n(P2 ) − = n(P1 ) + k − (t − 2)
t i=3
(n(Pi ) + 1)
≥ n(P1 ) + 1 By Theorem X, there is a Hamiltonian path Q1 of G[P1 ] joining x to y1 . We set Qi = Pi for 2 ≤ i ≤ t. Then {Q1 , Q2 , . . . , Qt } forms a spanning t-(x, U)-fan of G. See Figure 14.28 for illustration. Case 2.2.
Pi (u) + Pi (v) = n(Pi ) + 1 for every 2 ≤ i ≤ t. We have P1 (u) + P1 (v) = degG (u) + degG (v) − = n(G) + k −
t i=2
t i=2
(Pi (u) + Pi (v))
(n(Pi ) + 1)
= n(P1 ) + k − (t − 1) ≥ n(P1 ) We set R = y1 , H2−1 , v, u, H1−1 , x, w2 , P2 , y2 . Then R (u) + R (v) = P1 (u) + P1 (v) + P2 (u) + P2 (v) ≥ n(P1 ) + n(P2 ) + 1 = n(R) + 1 By Theorem X, there is a Hamiltonian path W of G[R] joining y1 to y2 . Thus, W can be written as y1 , W1 , x, W2 , y2 . We set Q1 = x, W1−1 , y1 , Q2 = x, W2 , y2 , and Qi = Pi for 3 ≤ i ≤ t. Then {Q1 , Q2 , . . . , Qt } forms a spanning (x, U)-fan of G. Using the closure technique, the following theorem is obtained. ∗ (G) ≥ k + 1 if THEOREM 14.29 Let k be a positive integer. Then κfan degG (u) + degG (v) ≥ n(G) + k for all nonadjacent vertices u and v.
ch014.tex
414
25/7/2008
14: 27
Page 414
Graph Theory and Interconnection Networks
Again, Theorem 14.29 is an analog result of Theorem 14.1 in spanning fan-connectivity. ∗ (G) ≥ 2δ(G) − n(G) + 1 if (n(G)/2) + 1 ≤ δ(G). THEOREM 14.30 κfan
Proof: Suppose that n(G)/2 + 1 ≤ δ(G). Obviously, δ(G) ≤ n(G) − 1 and n(G) ≥ 4. Suppose that n(G) = 2m for some integer m ≥ 2. Then δ(G) = m + k for some integer k with 1 ≤ k ≤ m − 1. Obviously, degG (u) + degG (v) ≥ 2δ(G) = 2m + 2k. By ∗ (G) ≥ 2k + 1 = 2δ(G) − n(G) + 1. Suppose that n(G) = 2m + 1 Theorem 14.29, κfan for some integer m ≥ 2. Then δ(G) = m + 1 + k for some integer k with ∗ (G) ≥ 2k +2 = 2δ(G) − n(G) + 1. The theorem 1 ≤ k ≤ m − 1. By Theorem 14.29, κfan is proved. ∗ (G) = n(G) − 3 if δ(G) = n(G) − 2 and n(G) ≥ 5. COROLLARY 14.4 κfan
Proof: By Theorem 14.2, κ∗ (G) ≥ n(G) − 2. Since n(G) − 2 ≤ κ∗ (G) ≤ κ(G) ≤ δ(G) ∗ (G) ≥ n(G) − 3. By Theorem = n(G) − 2, κ(G) = n(G) − 2. By Theorem 14.30, κfan ∗ ∗ 14.26, κfan (G) < κ(G). Thus, κfan (G) = n(G) − 3. We have similar result for spanning pipeline connectivity. THEOREM 14.31 Assume that k is a positive integer. Let u and v be two nonadjacent ∗ (G) ≥ k if and vertices of G. Suppose that degG (u) + degG (v) ≥ n(G) + k. Then κpipe ∗ (G + (u, v)) ≥ k. only if κpipe ∗ (G + (u, v)) ≥ k if κ∗ (G) ≥ k. Suppose that κ∗ (G + Proof: Obviously, κpipe pipe pipe (u, v)) ≥ k. Let U = {x1 , x2 , . . . , xt } and W = {y1 , y2 , . . . , yt } be any two subsets of G such that U = W and t ≤ k. We need to find a spanning (U, W )-pipeline of G. ∗ -connected, there exists a spanning (U, W )-pipeline of Since G + (u, v) is kpipe G + (u, v). Let {P1 , P2 , . . . , Pt } be a spanning (U, W )-pipeline with Pi joining xi to yπ(i) for 1 ≤ i ≤ t. Without loss of generality, we assume that π(i) = i. Obviously, {P1 , P2 , . . . , Pt } is a spanning (U, W )-pipeline of G if (u, v) is not in P. Thus, we consider the case that (u, v) is in P. By Theorems 19.3 and 19.11, we can find a spanning (U, W )-pipeline of G if t = 1. Thus, we consider the case t ≥ 2.
Case 1. U ∩ W = ∅. Without loss of generality, we may assume that (u, v) ∈ P1 . Thus, we can write P1 as x1 , H1 , u, v, H2 , y1 . (Note that H1 = x if x = u, and H2 = y if y = v.) Let Pi be the path obtained from Pi by deleting x and yi . Thus, we can write Pi as xi , Pi , yi for 1 ≤ i ≤ t. Case 1.1. P1 (u) + P1 (v) ≥ n(P1 ) + 1. By Theorem X, there is a Hamiltonian path Q1 of G[P1 ] joining x1 to y1 . We set Qi = Pi for 2 ≤ i ≤ t. Then {Q1 , Q2 , . . . , Qt } forms a spanning (U, W )-pipeline of G. See Figure 14.29 for illustration. Case 1.2. P1 (u) + P1 (v) ≤ n(P1 ). We claim that Pi (u) + Pi (v) ≥ n(Pi ) + 2 for some 2 ≤ i ≤ t.
ch014.tex
25/7/2008
14: 27
Page 415
Spanning Connectivity
415
Suppose that Pi (u) + Pi (v) ≤ n(Pi ) + 1 for every 2 ≤ i ≤ t. Then degG (u) + degG (v) = P1 (u) + P1 (v) + ≤ n(P1 ) +
t
t
(Pi (u) + Pi (v))
i=2
(n(Pi ) + 1)
i=2
= n(G) + t − 1 ≤ n(G) + k − 1 We obtain a contradiction. Thus, Pi (u) + Pi (v) ≥ n(Pi ) + 2 for some 2 ≤ i ≤ t. Without loss of generality, we assume that P2 (u) + P2 (v) ≥ n(P2 ) + 2. Obviously, n(P2 ) ≥ 2. We write P2 = x2 = z1 , z2 , . . . , zr = y2 . We claim that there exists an index j in {1, 2, . . . , r − 1} such that (zj , v) ∈ E(G) and (zj+1 , u) ∈ E(G). Suppose this is not the case. Then P2 (u) + P2 (v) ≤ r + r − (r − 1) = r + 1 = n(P2 ) + 1. We get a contradiction. We set Q1 = x2 = z1 , z2 , . . . , zj , v, H2 , y1 , Q2 = x1 , H1 , u, zj+1 , zj+2 , . . . , zr = y2 , and Qi = Pi for 3 ≤ i ≤ t. Then {Q1 , Q2 , . . . , Qt } forms a spanning (U, W )-pipeline of G. See Figure 14.30 for illustration. Case 2. U ∩ W = ∅. Let |U ∩ W | = r. Without loss of generality, we assume that xi = yi for t − r + 1 ≤ i ≤ t. Let G = G[V (G) − (U ∩ W )], U = U − W , and W = W − U. Obviously, dG (u) + dG (v) ≥ degG (u) + degG (v) − 2r ≥ n(G) + k − 2r = n(G ) + k − r, |U | = |W | = t − r ≤ k − r, and U ∩ W = ∅. By Case 1, there exists a spanning (U , W )-pipeline {Q1 , Q2 , . . . , Qt−r } of G . We set Qi = xi for t − r + 1 ≤ i ≤ t. Then {Q1 , Q2 , . . . , Qt } forms a spanning (U, W )-pipeline of G.
x1
P1
u
v
x2
y1 y2
P2 xt
Pt
yt
FIGURE 14.29 Illustration for Case 1.1 of Theorem 14.31. x1
P1
u
x2
v
y1 y2
P2 xt
Pt
yt
FIGURE 14.30 Illustration for Case 1.2 of Theorem 14.31.
ch014.tex
25/7/2008
416
14: 27
Page 416
Graph Theory and Interconnection Networks
∗ (G) ≥ k if deg (u) + THEOREM 14.32 Let k be a positive integer. Then κpipe G degG (v) ≥ n(G) + k for all nonadjacent vertices u and v. ∗ (G) ≥ 2δ(G) − n(G) if (n(G)/2) + 1 ≤ δ(G). THEOREM 14.33 κpipe ∗ (G) = n(G) − 4 if δ(G) = n(G) − 2 and n(G) ≥ 5. COROLLARY 14.5 κpipe ∗ (G) ≥ n(G) − 4. Let V (G) = {x , x , . . . , x Proof: By Theorem 14.33, κpipe n(G) }. 1 2 Without loss of generality, we assume that (x1 , x2 ) ∈ / E(G). We set U = {x3 , x5 , x6 , . . . , xn(G) } and W = {x4 , x5 , x6 . . . . , xn(G) }. Obviously, U = W and |U| = |W | = n(G) − 3. Since there is not a Hamiltonian path of G[V (G) − {x5 , x6 , . . . , xn(G) }] joining x3 to x4 , ∗ (G) = n(G) − 4. there is not a spanning (U, W )-pipeline of G. Thus, κpipe ∗ (G), and κ∗ (G) We use the following example to illustrate that κ(G), κ∗ (G), κfan pipe are really different concepts and, in general, have different values.
Example 14.6 Suppose that n is a positive integer with n ≥ 2. Let H(n) be the complete 3-partite graph K2n,2n,n−1 with vertex partite sets V1 = {x1 , x2 , . . . x2n }, V2 = {y1 , y2 , . . . , y2n }, and V3 = {z1 , z2 , . . . , zn−1 }. Let G(n) be the graph obtained from H(n) by adding the edge set {(zi , zj ) | 1 ≤ i = j < n}. Thus, G[V3 ] is the complete graph Kn−1 . Obviously, n(G(n)) = 5n − 1, δ(G(n)) = 2n + (n − 1) = 3n − 1, and κ(G(n)) = δ(G(n)). In the follow∗ ∗ (G(n)) = n, and κpipe (G(n)) = n − 1. ing discussion, we show that κ∗ (G(n)) = n + 1, κfan ∗ By Theorem 14.2, κ (G(n)) ≥ 2δ(G(n)) − n(G(n)) + 2 = n + 1. To show κ∗ (G(n)) = n + 1, we claim that there is no (n + 2)∗ -container of G(n) between x1 and x2 . Suppose this is not the case. Let {P1 , P2 , . . . , Pn+2 } be an (n + 2)∗ -container of G(n) between x1 and x2 . Obviously, |V (Pi ) ∩ (V1 − {x1 , x2 })| ≤ |V (Pi ) ∩ (V2 ∪ V3 )| − 1 for 1 ≤ n+2 i ≤ n + 2. Thus n+2 i=1 |V (Pi ) ∩ (V1 − {x1 , y1 })| = ( i=1 |(V2 ∪ V3 ) ∩ V (Pi )|) − (n + 2). Therefore, |V1 − {x1 , y1 }| ≤ |V2 ∪ V3 | − (n + 2). However, |V1 − {x1 , y1 }| = 2n − 2 but |V2 ∪ V3 | − (n + 2) = 2n − 3. This leads to a contradiction. ∗ ∗ By Theorem 14.30, κfan (G(n)) ≥ 2δ(G(n)) − n(G(n)) + 1 = n. To show κfan (G(n)) = n, we claim that there is no spanning (x1 , U)-fan of G(n), where U = {y1 , y2 , . . . , yn+1 }. Suppose not. Let {P1 , P2 , . . . , Pn+1 } be a spanning (x1 , U)-fan of G(n). Without loss of generality, we assume that Pi is a path joining x1 to yi for − {x1 }) ∩ V (Pi )| ≤ |((V2 ∪ V3 ) − {yi }) ∩ V (Pi )|. Thus, 1≤ i ≤ n + 1. Obviously, |(V 1n+1 n+1 i=1 |(V1 − {x1 }) ∩ V (Pi )| ≤ i=1 |((V2 ∪ V3 ) − {yi }) ∩ V (Pi )|. Therefore, |V1 − {x1 }| ≤ |(V2 ∪ V3 ) − U|. However, |V1 − {x1 }| = 2n − 1 but |(V2 ∪ V3 ) − U| = 2n − 2. We get a contradiction. ∗ By Theorem 14.33, κpipe (G(n)) ≥ 2δ(G(n)) − n(G(n)) = n − 1. To prove that ∗ κpipe (G(n)) = n − 1, we claim that there is no spanning (U, W )-pipeline, where U = {x1 , x2 , . . . , xn } and W = {xn+1 , xn+2 , . . . , x2n }. Suppose that there exists a span|V2 ∩ V (Pi )| − 1 ≤ |V3 ∩ V (P ning (U, W )-pipeline i )| for {P1 , P2 , . . . , Pn }. Obviously, 1 ≤ i ≤ n. Then ni=1 (|V2 ∩ V (Pi )| − 1) ≤ ni=1|V3 ∩ V (Pi )|. Therefore, ( ni=1 | V2 ∩ V (Pi )|) − n ≤ ni=1 |V3 ∩ V (Pi )|. However, ( ni=1 |V2 ∩ V (Pi )|) − n = |V2 | − n = n but ni=1 |V3 ∩ V (Pi )| = |V3 | = n − 1. We get a contradiction.
ch015.tex
30/6/2008
15 15.1
12: 4
Page 417
Cubic 3∗-Connected Graphs and Cubic 3∗-Laceable Graphs
PROPERTIES OF CUBIC 3∗ -CONNECTED GRAPHS
From our observation, super k-spanning connected graphs are closely related to (k − 2)-fault-tolerant Hamiltonian graphs. There are numerous interesting problems we can investigate regarding super k-spanning connected graphs. For example, we wonder whether every super k-spanning connected graph is (k − 2)-fault-tolerant Hamiltonian, because all examples we have indicate that the statement is true. Yet we would like to point out that we have proved in Theorem 14.8 that the Harary graph H2r,n is proved to be super spanning connected. However, we have difficulty in proving that every H2r,n is super fault-tolerant Hamiltonian. Similarly, we have proved in Theorem 14.16 that the folded hypercube FQn is super spanning connected if n is odd. Again, we have difficulty in proving that FQn is super fault-tolerant Hamiltonian. Another interesting question is the existence of any graph that is k ∗ -connected but not (k − t)∗ -connected for some 1 ≤ t ≤ k − 1. To investigate these questions, we begin with k = 3. With the following theorem, we can easily combine two 3∗ -connected graphs to get another 3∗ -connected graph. THEOREM 15.1 [7] Assume that both G1 and G2 are cubic graphs, x is a vertex in G1 , and y is a vertex in G2 . Then J(G1 , N(x); G2 , N( y)) is 3∗ -connected if and only if both G1 and G2 are 3∗ -connected. Proof: Assume that both G1 and G2 are 3∗ -connected. We claim that J(G1 , N(x); G2 , N( y)) is 3∗ -connected. Let u and v be any two different vertices of J(G1 , N(x); G2 , N( y)). Without loss of generality, we have the following two cases: Case 1. Both u and v are in G1 . Since G1 is 3∗ -connected, there are three disjoint paths P1 , P2 , and P3 of G1 joining u to v such that P1 ∪ P2 ∪ P3 spans G1 . Obviously, x is in exactly one of the paths of P1 , P2 , and P3 . Without loss of generality, we may assume that x is in P3 . Thus, P3 can be written as u, Q1 , x1 , x, x2 , Q2 , v where {x1 , x2 , x3 } are neighborhoods of x and {y1 , y2 , y3 } are neighborhoods of y with xt joining with yt in J(G1 , N(x); G2 , N( y)) for t ∈ {1, 2, 3}. By Theorem 15.2, there exists a Hamiltonian cycle of G2 − ( y, y3 ). Obviously, R can be written as y, y1 , Q3 , y2 , y. We set P3 = u, Q1 , x1 , y1 , Q3 , y2 , x2 , Q2 , v. Obviously, P1 , P2 , and P3 form three disjoint paths joining u and v such that P1 ∪ P2 ∪ P3 spans J(G1 , N(x); G2 , N( y)). 417
ch015.tex
418
30/6/2008
12: 4
Page 418
Graph Theory and Interconnection Networks
Case 2. u is in G1 and v is in G2 . Since G1 is 3∗ -connected, there exist three disjoint paths P1 , P2 , and P3 of G1 joining u to x such that P1 ∪ P2 ∪ P3 spans G1 . Similarly, there exist three disjoint paths Q1 , Q2 , and Q3 of G2 joining y to v such that Q1 ∪ Q2 ∪ Q3 spans G2 . Without loss of generality, we can write Pi = u, Ri , xi , x and Qi = y, yi , Si , v where {x1 , x2 , x3 } are neighborhoods of x and {y1 , y2 , y3 } are neighborhoods of y with xt joining with yt in J(G1 , N(x); G2 , N( y)) for t ∈ {1, 2, 3}. We set Ti as u, Ri , xi , yi , Si , v for i = 1, 2, and 3. Obviously, T1 , T2 , and T3 form three disjoint paths joining u and v such that P1 ∪ P2 ∪ P3 spans J(G1 , N(x); G2 , N( y)). Thus, J(G1 , N(x); G2 , N( y)) is 3∗ -connected. On the other hand, suppose that J(G1 , N(x); G2 , N( y)) is 3∗ -connected. We need to prove that both G1 and G2 are 3∗ -connected. By symmetry, it is sufficient to prove that G1 is 3∗ -connected. Let u and v be any two different vertices of G1 . Without loss of generality, we have the following two cases: Case 1. x ∈ / {u, v}. Thus, u and v are vertices of J(G1 , N(x); G2 , N( y)). Note that J(G1 , N(x); G2 , N( y)) is 3∗ -connected. There are three disjoint paths P1 , P2 , and P3 of J(G1 , N(x); G2 , N( y)) joining u to v such that P1 ∪ P2 ∪ P3 spans J(G1 , N(x); G2 , N( y)). Let N(x) = {x1 , x2 , x3 } and N( y) = {y1 , y2 , y3 }. Obviously, {(xi , yi ) | i ∈ {1, 2, 3}} are all the edges joining vertices of G1 to vertices of G2 . Thus, exactly one of P1 , P2 , and P3 , say P1 , is of the form u, Q1 , xi , yi , R, yj , Q2 , v. Moreover, P2 and P3 are paths in G1 . We set P1 as u, Q1 , xi , x, xj , Q2 , v. Obviously, P1 , P2 , and P3 form three disjoint paths joining u and v such that P1 ∪ P2 ∪ P3 spans G1 . Case 2. u ∈ V (G1 ) − {x} and v = x. Let w be any vertex in V (G2 ) − {y}. Thus, u and v are vertices of J(G1 , N(x); G2 , N( y)). Since J(G1 , N(x); G2 , N( y)) is 3∗ -connected, there are three disjoint paths P1 , P2 , and P3 of J(G1 , N(x); G2 , N( y)) joining u to v such that P1 ∪ P2 ∪ P3 spans J(G1 , N(x); G2 , N( y)). Obviously, {(xi , yi ) | i ∈ {1, 2, 3}} are all the edges joining vertices of G1 to vertices of G2 . Without loss of generality, we can assume that Pi = u, Qi , xi , yi , Ri , v for i ∈ {1, 2, 3}. We set Pi as u, Qi , xi , x. Obviously, P1 , P2 , and P3 form three disjoint paths joining u and v such that P1 ∪ P2 ∪ P3 spans G1 . Thus, G1 is 3∗ -connected. The theorem is proved.
With the following theorem, every cubic 3∗ -connected graph is 1-fault-tolerant Hamiltonian. THEOREM 15.2 Every cubic 3∗ -connected graph is 1-fault-tolerant Hamiltonian. Proof: Suppose that G is a cubic 3∗ -connected graph. Let F be a subset of V ∪ E with |F| = 1. Suppose that e = (x, y) is an edge in F. Since G is cubic 3∗ -connected, there are three disjoint paths P1 , P2 , and P3 of G1 joining x to y such that P1 ∪ P2 ∪ P3 spans G. Note that G is cubic. One of P1 , P2 , and P3 , say P3 , is x, y. Obviously, P1 ∪ P2 forms a Hamiltonian cycle of G − e. Suppose that v is a vertex in F. Let x and y be two distinct neighbors of v. Since G is cubic 3∗ -connected, there are three disjoint paths P1 , P2 , and P3 of G2 joining x to y such that P1 ∪ P2 ∪ P3 spans G.
ch015.tex
30/6/2008
12: 4
Page 419
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
419
Note that G is cubic. One of P1 , P2 , and P3 , say P3 , is x, v, y. Obviously, P1 ∪ P2 forms a Hamiltonian cycle of G − v. Thus, every cubic 3∗ -connected graph is 1-faulttolerant Hamiltonian.
15.2
EXAMPLES OF CUBIC SUPER 3∗ -CONNECTED GRAPHS
The following lemma is needed for further discussion. LEMMA 15.1 Assume that G is a cubic 1∗ -connected graph. Let u and v be two distinct vertices in G with d(u, v) = 2. Then either G − u or G − v is Hamiltonian. Proof: Let w be the common neighbor of u and v. Since G is 1∗ -connected, there exists a Hamiltonian path P between u and v. Then P can be written as either u, w, P1 , v or u, P2 , w, v. If P = u, w, P1 , v, then w, P1 , v, w forms a Hamiltonian cycle of G − u. If P = u, P2 , w, v, then u, P2 , w, u forms a Hamiltonian cycle of G − v. Throughout this section, we use ⊕ and # to denote addition and subtraction in integer modular n, Zn . Assume that n is a positive even integer with n ≥ 4. The graph H(n) is the graph with vertex set {0, 1, . . . , n − 1} and edge set {(i, n − i)|1 ≤ i < n2 } ∪ {(i, i ⊕ 1) | 0 ≤ i ≤ n − 1} ∪ {(0, n2 )}. Examples of H(4) and H(8) are shown in Figure 11.3 of Chapter 11. We can easily prove the following lemma by brute force. LEMMA 15.2 Every H(n) is Hamiltonian-connected for every even integer with n ≥ 4. THEOREM 15.3 Every H(n) is super 3∗ -connected for every even integer with n ≥ 4. Proof: In Section 11.2, we saw that H(n) can be obtained form K4 by a sequence of node expansion. By Theorem 15.1, every H(n) is 3∗ -connected. Hence, it is 2∗ connected. Combined with Lemma 15.2, H(n) is super 3∗ -connected. Assume that n and k are two positive integers with n = 2k and k ≥ 2. The projective cycle graph PJ(k) is the graph with vertex set {0, 1, . . . , 2k − 1} and edge set {(i, k + i) | 0 ≤ i < k} ∪ {(i, i ⊕ 1)|0 ≤ i < 2k}. The projective cycle graphs PJ(3) and PJ(4) are shown in Figure 15.1. The following theorem is proved by Kao et al. [194]. THEOREM 15.4 PJ(k) is super 3∗ -connected if and only if k is even. Kao et al. [194] also prove that the generalized Petersen graph P(n, 1) is super 3∗ -connected if and only if n is odd. Now, we try to classify the super 3∗ -connected generalized Petersen graph P(n, 2).
ch015.tex
30/6/2008
12: 4
Page 420
420
Graph Theory and Interconnection Networks
0
0
5
7
1 1
4
2
3 (a)
2
6 5
3 4 (b)
FIGURE 15.1 The projective cycle graphs (a) PJ(3) and (b) PJ(4).
Kao et al. [194] also prove that the generalized Petersen graph P(n, 2) is 1∗ connected if and only if n = 1, 3 (mod 6) and n > 6. We present this fact as depending on the value of n (mod 6). However, we first observe the symmetric property of P(n, 2). For any i ∈ Zn , let σi be the function from V (P(n, 2)) to V (P(n, 2)) defined by σi (x) = x + i, and σi (x ) = (x + i) . It is easy to see that σi is an automorphism of P(n, 2) for any i ∈ Zn . Assume that n is an odd integer. Let φ be the function from V (P(n, 2)) to V (P(n, 2)) defined by φ(0) = 0, φ(0 ) = 0 , φ(i) = n − i + 1, and φ(i ) = (n − i + 1) if i = 0. It is easy to see that φ is also an automorphism of P(n, 2). With functions σ0 and φ, we have the following observation: for any i ∈ Zn − {0}, there exists an automorphism ψ such that ψ(0) = 0, ψ(i) = k, and ψ(i ) = k for some even k ∈ Zn . THEOREM 15.5
P(n, 2) is 1∗ -connected if and only if n = 1, 3 (mod 6) and n > 6.
Proof: Suppose that n is even. It is easy to see that P(n, 2) is planar. We will prove that P(n, 2) is not Hamiltonian-connected using the Grinberg condition. Case 1. n = 0 (mod 6). Then n = 6k with k > 1. Suppose that P(n, 2) is 1∗ -connected. Note that dP(n,2) (0, n − 2) = 2. By Lemma 15.1, either P(n, 2) − {0} or P(n, 2) − {n − 2} is Hamiltonian. With the symmetric property of P(n, 2), P(n, 2) − {0} is Hamiltonian. Let C be a Hamiltonian cycle of P(n, 2) − {0}. Obviously, P(n, 2) − {0} and C satisfy the Grinberg condition. Thus, 3( f5 − f5 ) + 7( f9 − f9 ) + (3k − 2) ) = 0 where f is the number of the faces of length i inside C and ( f3k − f3k i fi is the number of the faces of length i outside C for i = 5, 9, 3k. Obviously, ) = 0 (mod 3). We suppose that f = 1 and f = 0. The equation ( f9 − f9 ) + ( f3k − f3k 9 9 = 2. This is impossible, since the face of length 9 and the holds only when f3k − f3k face of length 3k are separated by the path 2 , 0 , (n − 2) . Hence, P(n, 2) − {0} is not Hamiltonian. We get a contradiction. See Figure 15.2a for illustration. Case 2. n = 2 (mod 6). Then n = 6k + 2 with k ≥ 1. Suppose that P(n, 2) is Hamiltonian-connected. Note that dP(n,2) (0 , (n − 4) ) = 2. By Lemma 15.1, either P(n, 2) − 0 or P(n, 2) − (n − 4) is Hamiltonian. With the symmetric property of P(n, 2), P(n, 2) − 0 is Hamiltonian. Let C be a Hamiltonian cycle of P(n, 2) − 0 . Obviously, P(n, 2) − 0 and C satisfy the Grinberg condition. Thus, 3( f5 − f5 ) + (3k − 1)( f3k+1 − f3k+1 ) + 3(k + 1)( f3k + 5 − f3k + 5 ) = 0 where fi is the number of the faces of length i inside C and fi is the number of the faces of length i outside C for
ch015.tex
30/6/2008
12: 4
Page 421
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
0
8
10 7
11 10
6
11 9 1 7 3 5
2
8
6
7
0 7
8 8
1
1
9 7
5
5
1
7
4
6 5
2
4
2
4
3
6
4
(a)
6
5
2
2 3
6
1 5 3
3
3 4
9
0 9
1 2
421
4
(b)
(c)
FIGURE 15.2 The graphs (a) P(12, 2) − 0, (b) P(8, 2) − 0 , and (c) P(10, 2) − 0 . i = 5, 3k + 1, 3k + 5. Obviously, f3k+1 − f3k+1 = 0 (mod 3). Since f3k+1 − f3k+1 = ±1, the equation cannot hold. Hence, P(n, 2) − 0 is not Hamiltonian. We get a contradiction. See Figure 15.2b for illustration.
Case 3. n = 4 (mod 6). Then n = 6k + 4 with k ≥ 1. Suppose that P(n, 2) is Hamiltonian-connected. Note that dP(n,2) (0 , (n − 4) ) = 2. By Lemma 15.1, either P(n, 2) − 0 or P(n, 2) − (n − 4) is Hamiltonian. With the symmetric property of P(n, 2), P(n, 2) − 0 is Hamiltonian. Let C be a Hamiltonian cycle of P(n, 2) − 0 . Obviously, P(n, 2) − 0 and C satisfy the Grinberg condition. Thus, 3( f5 − f5 ) + ) + (3k + 4)( f3k+6 − f3k+6 ) = 0 where fi is the number of the faces 3k( f3k+2 − f3k+2 of length i inside C and fi is the number of the faces of length i outside C for = 0 (mod 3). Since f3k+6 − f3k+6 = ± 1, i = 5, 3k + 2, 3k + 6. Obviously, f3k+6 − f3k+6 the equation cannot hold. Hence, P(n, 2) − 0 is not Hamiltonian. We get a contradiction. See Figure 15.2c for illustration. Now, we consider that n is odd. Case 4. n = 5 (mod 6). It is proved by Bondy [29] that P(n, 2) is Hamiltonian if and only if n = 5 (mod 6). Thus, P(n, 2) is not 1∗ -connected if n = 5 (mod 6). Finally, we consider n = 1 and 3 (mod 6). To prove that P(n, 2) is 1∗ -connected, we need to find a Hamiltonian path of P(n, 2) between any two different vertices a and b. With the symmetric property of P(n, 2), we have the following three cases: (1) a = 0 and b = i for all odd i ∈ Zn , (2) a = 0 and b = i for all odd i ∈ Zn , and (3) a = 0 and b = i for all odd i ∈ Zn . To describe the required Hamiltonian paths, we define five basic path patterns. Each path pattern is associated with its beginning vertex and end vertex. The path patterns are as follows: P(i, i ⊕ t) = i, i ⊕ 1, i ⊕ 2, . . . , i ⊕ (t − 1), i ⊕ t
Q(i , (i ⊕ 2t) ) = i , (i ⊕ 2) , (i ⊕ 4) , . . . , (i ⊕ 2(t − 1)) , (i ⊕ 2t) D(i , (i ⊕ 6) ) = i , i, i ⊕ 1, i ⊕ 2, (i ⊕ 2) , (i ⊕ 4) , (i ⊕ 6) E(i, i ⊕ 6) = i, i ⊕ 1, (i ⊕ 1) , (i ⊕ 3) , (i ⊕ 5) , i ⊕ 5, i ⊕ 6 F(i , (i ⊕ 6) ) = i , (i ⊕ 2) , i ⊕ 2, i ⊕ 3, i ⊕ 4, (i ⊕ 4) , (i ⊕ 6)
ch015.tex
30/6/2008
422
12: 4
Page 422
Graph Theory and Interconnection Networks
Then we define the path pattern Dt for any positive integer t by executing the path pattern D t times. Similarly, we define E t and F t . More precisely, Dt (i , (i ⊕ 6t) ) = i , D(i , (i ⊕ 6) ), (i ⊕ 6) , D((i ⊕ 6) , (i ⊕ 12) ), (i ⊕ 12) , . . . , (i ⊕ 6(t − 1)) , D((i ⊕ 6(t − 1)) , (i ⊕ 6t) ), (i ⊕ 6t) E t (i, i ⊕ 6t) = i, E(i, i ⊕ 6), i ⊕ 6, E(i ⊕ 6, i ⊕ 12), i ⊕ 12, . . . , i ⊕ 6(t − 1), E(i ⊕ 6(t − 1), i ⊕ 6t), i ⊕ 6t t
F (i , (i ⊕ 6t) ) = i , F(i , (i ⊕ 6) ), (i ⊕ 6) , F((i ⊕ 6) , (i ⊕ 12) ), (i ⊕ 12) , . . . , (i ⊕ 6(t − 1)) , F((i ⊕ 6(t − 1)) , (i ⊕ 6t) ), (i ⊕ 6t) We also define P−1 , Q−1 , D−1 , E −1 , and F −1 by executing the corresponding path pattern backward. More precisely, P−1 (i, i # t) = i, i # 1, i # 2, . . . , i # (t − 1), i # t Q−1 (i , (i # 2t) ) = i , (i # 2) , (i # 4) , . . . , (i # 2(t # 1)) , (i # 2t) D−1 (i , (i # 6) ) = i , i, i # 1, i # 2, (i # 2) , (i # 4) , (i # 6) E −1 (i, i # 6) = i, i # 1, (i # 1) , (i # 3) , (i # 5) , i # 5, i # 6 F −1 (i , (i # 6) ) = i , (i # 2) , i # 2, i # 3, i # 4, (i # 4) , (i # 6) Similarly, we can define the path patterns D−t (i, i # 6t), E −t (i, i # 6t), and See Figure 15.3 for illustrations of these path patterns.
F −t (i , (i # 6t) ).
Case 5. n = 1 (mod 6). The following three sub cases consider the situation a = 0 and b = i with i being odd. n−i
Case 5.1. i = 1 (mod 6). Obviously, 0, 0 , Q(0 , (i # 1) ), (i # 1) , F 6 ((i # 1) , n−i−6 (n # 1) ), (n # 1) , n # 1, n # 2, (n # 2) , (n # 4) , F − 6 ((n # 4) , i ⊕ 2) ), (i ⊕ 2) , Q−1 ((i ⊕ 2) , 1 ), 1 , 1, P(1, i), i forms a Hamiltonian path of P(n, 2) between a and b. i−3
Case 5.2. i = 3 (mod 6). Obviously, 0, 0 , Q−1 (0 , (i # 2) ), (i # 2) , F − 6 i−3 ((i#2) , 1 ), 1 , 1, 2, 2 , 4 , F 6 (4 , (i ⊕ 1) ), (i ⊕ 1) , Q((i ⊕ 1) , (n # 1) ), (n # 1) , n # 1, P−1 (n # 1, i), i forms a Hamiltonian path of P(n, 2) between a and b. i−5
Case 5.3. i = 5 (mod 6). Obviously, 0, 1, 1 , 3 , F 6 (3 , (i # 2) ), (i # 2) , Q((i # 2) , i+1 0 ), 0 , F 6 (0 , (i ⊕ 1) ), (i ⊕ 1) , Q((i ⊕ 1) , (n # 1) ), (n # 1) , n # 1, P−1 (n # 1, i), i forms a Hamiltonian path of P(n, 2) between a and b. The following three sub cases consider the situation a = 0 and b = i with i being odd. n−i
Case 5.4. i = 1 (mod 6). Obviously, 0 , Q(0 , (i # 1) ), (i # 1) , F 6 ((i # 1) , n−i−6 (n # 1) ), (n # 1) , Q((n # 1) , (i ⊕ 2) ), (i ⊕ 2) , F 6 ((i ⊕ 2) , (n # 4) ), (n # 4) , (n # 2) , n # 2, P(n # 2, i), i forms a Hamiltonian path of P(n, 2) between a and b.
ch015.tex
30/6/2008
12: 4
Page 423
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
0
1
2 3
4
5
6
0
7
1
2 3
423
4
5
6
7 8
9 10 11 12
i
(f) D 2 (0,12)
(a) P(0,7) i'
i
0 1
0 1 2 3 4 5 6 7
0
1
2 3
4
5
6
0
1
2 3 4 5 6 7 8 9 10 11 12
2
3
4
5
6
7
8
9 10 11 12
(g) E 2 (0,12)
(b) Q(0,6)
0 1 2 3 4
0 1 2 3 4 5 6
5 6 7 8 9 10 1112
i'
0
1
2 3
4
5
0
6
1
2
3
4
5
6
7
9
8
10 11 12
i
(h) F 2 (0,12)
(c) D(0,6) 0' 1'
2' 3' 4' 5' 6'
0
2 3
0 1
2 3
4 5 6 7
8 9 10 11 12
i'
i
1
4
5
6
12 11 10 9
8
12 11 10 9
8 7
7
5
6
3
4
2
1
0
(i) D 2 (12,0)
(d) E(0,6) 0 1 2 3 4
5 6
0
5
6 5
4 3 2 1 0
i'
i
1
2 3
4
6
12 11 10 9
8
7
6
5
4
3
2
1
0
(j) E 2 (12,0)
(e) F(0,6) 0 1 2 3
4 5 6
12 11 10 9 8
7 6
5 4 3 2
1 0
i'
12 11 10 9
8
7
6
5
12 11 10 9
8 7 6 5
4
3
2
1
0
(k) F 2 (12,0) 4 3
2 1 0
FIGURE 15.3 Illustrations for path patterns. n−i−4
Case 5.5. i = 3 (mod 6). Obviously, 0 , Q(0 , (i # 1) ), (i # 1) , F 6 ((i # 1) , n−i−4 (n # 5) ), (n # 5) , (n # 3) , n # 3, n # 2, (n # 2) , F − 6 ((n # 2) , (i ⊕ 2) ), (i ⊕ 2) , −1 Q ((i ⊕ 2) , (n # 1) ), (n # 1) , n # 1, P(n # 1, i), i forms a Hamiltonian path of P(n, 2) between a and b. n−i−2
Case 5.6. i = 5 (mod 6). Obviously, 0 , F − 6 (0 , (i ⊕ 2) ), (i ⊕ 2) , Q−1 4#i ((i ⊕ 2) , 3 ), 3 , F − 6 (3 , (i # 1) ), (i # 1) , Q−1 ((i # 1) , 2 ), 2 , 2, P(2, i), i forms a Hamiltonian path of P(n, 2) between a and b.
ch015.tex
424
30/6/2008
12: 4
Page 424
Graph Theory and Interconnection Networks
The following three sub cases consider the situation a = 0 and b = i with i being odd. Case 5.7. i = 1 (mod 6). Obviously, 0 , Q(0 , (i ⊕ 1) ), (i ⊕ 1) , i ⊕ 1, P−1 (i ⊕ 1, n−i−6 n # 2), n # 2, (n # 2) , (n # 4) , F − 6 ((n # 4) , (i ⊕ 2) ), (i ⊕ 2) , i ⊕ 2, i ⊕ 3, (i ⊕ 3) , n−i−6 (i ⊕ 5) , F 6 ((i ⊕ 5) , (n # 1) ), (n # 1) , Q((n # 1) , i ), i forms a Hamiltonian path of P(n, 2) between a and b. n−i+2
Case 5.8. i = 3 (mod 6). Obviously, 0, Q(0 , (i # 3) ), F 6 ((i # 3) , (n # 1) ), (n # 1) , Q((n # 1) , (i # 2) ), (i # 2) , i # 2, P−1 (i # 2, n # 2), n # 2, (n # 2) , (n # 4) , n−i−4 F − 6 ((n # 4) , i ), i forms a Hamiltonian path of P(n, 2) between a and b. Case 5.9. i = 5 (mod 6). Obviously, 0 , 0, n # 1, (n # 1) , Q−1 ((n # 1) , (i # 1) ), i−5 i−5 F − 6 ((i # 1) , 4 ), 4 , 2 , 2, 1, 1 , 3 , D 6 (3 , (i # 2) ), i # 2, P(i # 2, n # 2), n # 2, (n # 2) , Q−1 ((n # 2) , i ), i forms a Hamiltonian path of P(n, 2) between a and b. See Figure 15.4 for illustrations of the Hamiltonian paths. Case 6. n = 3 (mod 6). The corresponding Hamiltonian paths are listed here. The following three sub cases consider the situation a = 0 and b = i with i being odd. n−i−2
Case 6.1. i = 1 (mod 6). Obviously, 0, n # 1, (n # 1) , (n # 3) , F − 6 ((n # 3) , n−i−2 (i # 1) ), (i # 1) , Q−1 ((i # 1) , 0 ), 0 , F − 6 (0 , (i ⊕ 2) ), (i ⊕ 2) , Q−1 ((i ⊕ 2) , 1 ), 1 , 1, P(1, i), i forms a Hamiltonian path of P(n, 2) between a and b. i−3
Case 6.2. i = 3 (mod 6). Obviously, 0, 0, Q−1 (0, (i # 2) ), (i # 2) , F − 6 ((i # 2) , i−3 1 ), 1 , 1, 2, 2 , 4 , F 6 (4 , (i ⊕ 1) ), (i ⊕ 1) , Q((i ⊕ 1) , (n # 1) ), (n # 1) , n # 1, P−1 (n # 1, i), i forms a Hamiltonian path of P(n, 2) between a and b. i−5
Case 6.3. i = 5 (mod 6). Obviously, 0, 1, 1 , 3 , F 6 (3 , (i # 2) ), (i # 2) , i+1 Q((i # 2) , 0 ), 0 , F 6 (0 , (i ⊕ 1) ), (i ⊕ 1) , Q((i ⊕ 1) , (n # 1) ), (n # 1) , n # 1, P−1 (n # 1, i), i forms a Hamiltonian path of P(n, 2) between a and b. The following three sub cases consider the situation a = 0 and b = i with i being odd. i−1
Case 6.4. i = 1 (mod 6). Obviously, 0 , Q−1 (0 , i ), i , F − 6 (i , 1 ), 1 , Q−1 (1 , i−1 (i ⊕ 1) ), (i ⊕ 1) , i ⊕ 1, P(i ⊕ 1, 1), 1, E 6 (1, i), i forms a Hamiltonian path of P(n, 2) between a and b. n−i
Case 6.5. i = 3 (mod 6) Obviously, 0 , Q(0 , (i # 1) ), (i # 1) , F 6 ((i # 1) , n−i−6 (n # 1) ), (n # 1) , Q((n # 1) , (i ⊕ 2) ), (i ⊕ 2) , F 6 ((i ⊕ 2) , (n # 4) ), (n # 4) , (n # 2) , n # 2, P(n # 2, i), i forms a Hamiltonian path of P(n, 2) between a and b. Case 6.6. i = 5 (mod 6). Obviously, 0 , Q(0 , (i # 1) ), (i # 1) , i # 1, P−1 (i # 1, n−i−4 n # 2), n # 2, (n # 2) , (n # 4) , F − 6 ((n # 4) , i ), i , Q−1 (i , (n # 1) ), (n # 1) , n−i−4 F − 6 ((n # 1) , (i ⊕ 3) ), (i ⊕ 3) , (i ⊕ 1) , i ⊕ 1, i forms a hamiltonian path of P(n, 2) between a and b.
ch015.tex
30/6/2008
12: 4
Page 425
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs 0
(a)
1
0
0
(b)
b
1
1
0
425 n2 n1
(b1)
(b2)
2
1
(n4)
(n2) (n1)
b
2
4
(b2)
n1
(n2) (n1) 0
(b1)
(n2) 0
(c)
b
0
3
(b2)
6
n2
(b1)
n1
(n1) 0
(n2)
n1
0
b
n2 n1 0
(d) (n1)
0
(b2)
(b1)
1
(n2) (n1)
(n4)
1 0
b
(n1) 0
(b1) b
n3 n2 n1
n
(e)
0 (b2)
(n5)
(n3)(n2) (n1) 0
0
2
n1
b
n1
(f)
0
2
(b1)
(b2)
16
(n2)
n1
(g) (n1)
n1
(n2) (n1) 0
b1
0
b3
n2 n1 0
0
1
b
(b1) (b2)(b3) (b5)
(n4)
0
(n2) (n1) 1
n2 n1
(h)
(n1) 0
1
1
n1 0
(b3) (b2)
b
(n4)
0
(n2)(n1) 1
n2 n1 0
2
(i) 0
1
2
3
4
(b2) (b1) b
(n2) (n1)
FIGURE 15.4 Illustrations of the Hamiltonian paths of P(n, 2), where n = 1 (mod 6) in Case 5 of Theorem 15.5.
ch015.tex
30/6/2008
426
12: 4
Page 426
Graph Theory and Interconnection Networks
The following three sub cases consider the situation a = 0 and b = i with i being odd. Case 6.7. i = 1 (mod 6). Obviously, 0 , Q−1 (0 , (i ⊕ 2) ), (i ⊕ 2) , i ⊕ 2, P(i ⊕ 2, i−1 i−1 2), 2, 2 , 4 , F 6 (4 , (i ⊕ 3) ), (i ⊕ 3) , Q((i ⊕ 3) , 1 ), 1 , F 6 (1 , i ), i forms a Hamiltonian path of P(n, 2) between a and b. n−i−6
Case 6.8. i = 3 (mod 6). Obviously, 0 , Q(0 , (i ⊕ 1) ), (i ⊕ 1) , F 6 ((i ⊕ 1) , n−i−6 (n # 5) ), (n # 5) , (n # 3) , n # 3, n # 2, (n # 2) , F − 6 ((n # 2), (i ⊕ 4) ), (i ⊕ 4) , −1 i ⊕ 2) , i ⊕ 2, P (i ⊕ 2, n # 1), n # 1, (n # 1) , Q((n # 1) , i ), i forms a Hamiltonian path of P(n, 2) between a and b. n−i−4
Case 6.9. i = 5 (mod 6). Obviously, 0 , F − 6 (0 , (i ⊕ 4) ), (i ⊕ 4) , (i ⊕ 2) , n−i+2 i ⊕ 2, P−1 (i ⊕ 2, 2), 2, 2 , Q(2 , (i ⊕ 1) ), (i ⊕ 1) , F 6 ((i ⊕ 1) , 3 ), 3 , Q(3 , i ), i forms a Hamiltonian path of P(n, 2) between a and b. See Figure 15.5 for illustrations of the Hamiltonian paths.
The following theorem is proved in Ref. 7. THEOREM 15.6 P(n, 2) is 3∗ -connected if and only if n = 1, 3 (mod 6) and n > 6. Combining Theorems 15.5 and 15.6, we have the following theorem. THEOREM 15.7 n > 6.
15.3
P(n, 2) is super 3∗ -connected if and only if n = 1, 3 (mod 6) and
COUNTEREXAMPLES OF 3∗ -CONNECTED GRAPHS
Obviously, a 1∗ -connected 1-fault-tolerant Hamiltonian cubic graph is super faulttolerant Hamiltonian. In Figure 15.6, we use a Venn diagram to illustrate the relations among cubic 1∗ -connected graphs, cubic 2∗ -connected graphs, cubic 3∗ connected graphs, and cubic 1-fault-tolerant Hamiltonian graphs. The set of cubic 1∗ -connected graphs corresponds to regions 1, 3, and 6; the set of cubic 2∗ connected graphs corresponds to regions 1, 2, 3, 4, 5, and 6; the set of cubic 3∗ -connected graphs corresponds to regions 1 and 2; the set of cubic 1-fault-tolerant Hamiltonian graphs corresponds to regions 1, 2, 3, and 4; the set of cubic super fault-tolerant Hamiltonian graphs corresponds to regions 1, and 3; the set of super 3-spanning connected graphs corresponds to region 1. We consider the existence of graphs for all the possible regions. In Section 12.8, it is proved that there exist infinitely many graphs in regions 5 and 6. In the Section 15.2, we have shown several examples of graphs in region 1. Kao et al. [194] prove that there exist infinite graphs in regions 2, 3, and 4.
Example 15.1 (Cubic 1-fault-tolerant hamiltonian graphs that are 3∗ -connected but not 1∗ connected.) Let T be the graph in Figure 15.7. Obviously, T is obtained from PJ(4) by a sequence
ch015.tex
30/6/2008
12: 4
Page 427
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
n1
(j)
0 1
0
1
0
0
(l)
n1 0
b
0
(k)
427
0
(b1)
(b2)
4
2
(b2)
n1 (b1)
(n2)
b
1 (b2)
3
1
(n1) 0
b
2
1
(n3)
0
n1 (b1)
(n2) (n1)
(n2) 0
b
1
n1 0
n1
(m)
(n1) 0
1
b
(b1)
(n2) (n1) 0 1
(n2) 0
(n)
(n1) 0
n1
b
n1 1
(b1)
0 (n1)
(b2)
n2 n1
b
0 n1
(o)
(n1) 0
1
0
(b1)
(n1)
0
(n1) 1
n1
2
n1
(p)
1
0 0
1
4
2
b
(n2) (n1)0
1
(n2) n1
(q)
0
(n1)' 0 0 n1
(r)
b2
n2
b (b1) (b2) (b4)
1
(n5)
n1 0
(n3)(n2) (n1) 1
b2
2
0 0
3
b
(b2) (b4)
(n2)(n1)0
(n2)
FIGURE 15.5 Illustrations of the Hamiltonian paths of P(n, 2), where n = 3(mod 6) in Case 6 of Theorem 15.5.
of 3-vertex expansions of PJ(4). By Theorem 15.4, PJ(4) is 3∗ -connected. Since K4 is isomorphic to PJ(2), K4 is 3∗ -connected. With Theorem 15.1, T is 3∗ -connected. With Lemma 11.27, T is not 1∗ -connected. Hence, T is a graph that is 3∗ -connected, but not super 3∗ -spanning connected. Let w be the vertex of T shown in Figure 15.7. With Lemma 11.27 and Theorem 12.9, there exists no Hamiltonian path between vertices u and v in J(T , N(w); K4 , N( y)). Thus, J(T , N(w); K4 , N( y)) is not 1∗ -connected. Now, we recursively define a sequence of graphs as follows: let G1 = T , x1 = w, and G2 = J(G1 , N(x1 ); K4 , N( y)). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 .
ch015.tex
30/6/2008
12: 4
Page 428
428
Graph Theory and Interconnection Networks
Cubic 2*-connected graphs
Cubic 1-fault-tolerant Hamiltonian graphs
6
3
1
2
4
5
Cubic 3*-connected graphs
Cubic 1*-connected graphs
FIGURE 15.6 Venn diagram of relations among cubic 1∗ -connected graphs, cubic 2∗ -connected graphs, cubic 3∗ -connected graphs, and cubic 1-fault-tolerant Hamiltonian graphs.
y
z s
x w1
t
u1 u2
u3
w3 w2
v
FIGURE 15.7 The graph T . We define Gi+1 as J(Gi , N(xi ); K4 , N( y)). Recursively applying Theorems 12.9 and 15.1, Gi is 3∗ -connected but not Hamiltonian-connected for i ≥ 2. With Theorem 15.2, Gi is 1-fault-tolerant Hamiltonian for i ≥ 2. Hence, we have the following theorem.
THEOREM 15.8 There are infinite cubic 1-fault-tolerant Hamiltonian graphs that are 3∗ -connected but not 1∗ -connected.
Example 15.2 (Cubic 1-fault-tolerant Hamiltonian graphs that are 1∗ -connected but not 3∗ connected.) Let Q be the graph in Figure 15.8a. Let Q3 be the three-dimensional hypercube. Obviously, Q is obtained from Q3 by a sequence of node-expansions at every vertex of Q3 . Note that Q3 is 1-edge fault-tolerant Hamiltonian. By Theorem 11.4, Q is 1-fault-tolerant Hamiltonian. By brute force, we can check whether Q is 1∗ -connected. Note that Q3 is bipartite. By Lemma 1.2, Q3 is not 1-fault-tolerant Hamiltonian. By Theorem 15.2, Q3 is not 3∗ -connected. With Theorem 15.1, Q is not 3∗ -connected.
ch015.tex
30/6/2008
12: 4
Page 429
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs 11
1 3
2
429
22
13
15
12
10
24 23
14
20
17 18 4
6
16
21
5
19
9
8
7 (a)
(b)
FIGURE 15.8 The graphs (a) Q and (b) Q3 .
Let x be the vertex 1 of Q shown in Figure 15.8a. By brute force, we can check whether x is nice in Q. Moreover, by Theorem 12.11, any expanded vertex of Q at 1 is nice. Now, we recursively define a sequence of graphs as follows: let G1 = Q, x1 = x, and G2 = J(G1 , N(x1 ); K4 , N( y)). Suppose that we have defined G1 , G2 , . . . , Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as J(Gi , N(xi ); K4 , N( y)). Recursively applying Theorems 12.1, 12.11, and 15.1, Gi is 1-fault-tolerant Hamiltonian and 1∗ -connected but not 3∗ -connected for i ≥ 2. Hence, we have the following theorem.
THEOREM 15.9 There are infinite cubic 1-fault-tolerant Hamiltonian graphs that are 1∗ -connected but not 3∗ -connected.
Example 15.3 (Examples of cubic 1-fault-tolerant Hamiltonian graphs that are not 1∗ -connected or 3∗ -connected.) Let M be the graph in Figure 15.9a. Obviously, M can be obtained from P(8, 2), shown in Figure 15.9b, by a sequence of 3-vertex expansions of P(8, 2). With Theorem 15.6, P(8, 2) is not 3∗ -connected. Using Theorem 15.1, M is not 3∗ -connected. Yet, it is proved in Lemmas 12.15 and 12.16 that M is 1-fault-tolerant Hamiltonian but not 1∗ -connected. Let x, a, and b be three distinct vertices of M shown in Figure 15.9a. By Lemma 14.9, there is no Hamiltonian path between a and b in J(M, N(x); K4 , N( y)). Thus, J(M, N(x); K4 , N( y)) is not 1∗ -connected. Let G1 = M, x1 = x, and G2 = J(G1 , N(x1 ); K4 , N( y)). Suppose that we have defined G1 , G2 ,…, Gi with i ≥ 2. Let xi be any expanded vertex of Gi−1 at xi−1 . We define Gi+1 as J(Gi , N(xi ); K4 , N( y)). Recursively applying Theorems 12.1 and 15.1, and Lemma 12.9, Gi is a 1-fault-tolerant Hamiltonian graph that is not 1∗ -connected or 3∗ -connected for every i ≥ 2. Hence, we have the following theorem.
THEOREM 15.10 There are infinite cubic 1-fault-tolerant Hamiltonian graphs that are not 1∗ -connected or 3∗ -connected.
ch015.tex
30/6/2008
12: 4
430
Page 430
Graph Theory and Interconnection Networks
a b x
(a)
(b)
FIGURE 15.9 The graphs (a) M and (b) P(8, 2).
15.4
PROPERTIES OF CUBIC 3∗ -LACEABLE GRAPHS
We can also study similar problems for cubic 3∗ -laceable graph as discussed previously. Kao et al. [193] observed the following theorem. THEOREM 15.11 Every cubic 3∗ -laceable graph is 1-edge fault-tolerant Hamiltonian. Proof: Let G = (B ∪ W , E) be a cubic 3∗ -laceable graph, and (x, y) be any edge in G. Apparently, there exists a 3∗ -container C(x, y) = {P1 , P2 , P3 } in G. Obviously, one of these paths is x, y; say, P1 . Then P2 ∪ P3 forms a Hamiltonian cycle of G − (x, y). The theorem is proved. Similarly to hyper Hamiltonian laceable and strong Hamiltonian laceable, we can define hyper 3∗ -laceable and strong 3∗ -laceable. A 3∗ -laceable graph is hyper if there exists a 3∗ -container C(x, y) in G − {z} for any three vertices x,y, and z of the same partite set of G. A 3∗ -laceable graph is strong if for any x and y in the same partite set of G, there exists a vertex z of the same partite set as the one that contains x and y such that G − {z} has a 3∗ -container C(x, y). Obviously, any 3∗ -laceable is strong if it is hyper. The concepts of 3∗ -laceable, hyper 3∗ -laceable, and strong 3∗ -laceable were proposed by Kao et al. [193]. Kao et al. [193] also observed the following theorem. THEOREM 15.12 Hamiltonian.
Every cubic hyper 3∗ -laceable graph is 1p -fault-tolerant
Proof: Let G = (B ∪ W , E) be a cubic hyper 3∗ -laceable graph. We want to show that G − {u, v} is Hamiltonian for any pair of vertices {u, v} with u ∈ B and v ∈ W . Let x and y be two neighbors of v such that u ∈ / {x, y}. Obviously, x, y ∈ B. Since G is hyper 3∗ -laceable, there is a 3∗ -container C(x, y) = {P1 , P2 , P3 } in G − u. Obviously, one of these paths is x, v, y; say, P1 . Then P2 ∪ P3 forms a Hamiltonian cycle of G − {u, v}. This proves the theorem.
ch015.tex
30/6/2008
12: 4
Page 431
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
15.5
431
EXAMPLES OF CUBIC HYPER 3∗ -LACEABLE GRAPHS
We assume that m and n are positive even integers with n ≥ 4. For any two positive integers r and s, we use [r]s to denote r (mod s). In Chapter 2, we introduced the honeycomb rectangular torus. The honeycomb rectangular torus HReT(m, n) is the graph with the vertex set {(i, j) | 0 ≤ i < m, 0 ≤ j < n} such that (i, j) and (k, l) are adjacent if they satisfy one of the following conditions: 1. i = k and j = [l ± 1]n 2. j = l and k = [i + 1]m if i + j is odd 3. j = l and k = [i − 1]m if i + j is even Teng et al. [299] prove that any honeycomb rectangular torus HReT(m, n) is strongly 3∗ -laceable. Moreover, HReT(m, n) is hyper 3∗ -laceable if and only if n ≥ 6 or m = 2. We first present an algorithm. The purpose of this algorithm is to extend a 3-container C(x, y) = {P1 , P2 , P3 } of HReT(m, n) to a 3-container of HReT(m + 2, n). ALGORITHM 1: For 0 ≤ i ≤ m − 1, let fi : V (HReT(m, n)) → V (HReT(m + 2, n)) be a function so assigned & fi (k, l) =
(k, l) if i ≥ k ≥ 0 (k + 2, l) otherwise
For 0 ≤ i ≤ m − 1 and 0 ≤ j, k ≤ n − 1, let Qi ( j, [ j + k]n ) denote the path
(i, [ j]n ), (i, [ j + 1]n ), (i, [ j + 2]n ), . . . , (i, [ j + k]n ) in HReT(m, n). Suppose that C(x, y) is a 3-container of HReT(m, n) containing at least one edge joining vertices of column i to vertices of column [i + 1]m ; that is, ((i, j), ([i + 1]m , j)) in E(C(x, y)) for some 0 ≤ j ≤ n − 1. Let 0 ≤ k0 < k1 < · · · < kt ≤ n − 1 be the indices such that ((i, kj ), (i + 1, kj )) ∈ E(C(x, y)). We construct Ci (x, y) as follows. Let Ci (x, y) be the image of C(x, y) − {((i, kj ), (i + 1, kj )) | 0 ≤ kj ≤ n − 1} under fi . We set j = [j](t+1) and define Aj as
(i, [kj ]n ), ([i + 1]m+2 , [kj ]n ), Q[i+1]m+2 ([kj ]n , [kj − 1]n ), ([i + 1]m+2 , [kj − 1]n ), −1 ([kj ]n , [kj − 1]n ), ([i + 2]m+2 , ([i + 2]m+2 , [kj − 1]n ), Q[i+2] m+2
[kj ]n ), ([i + 3]m+2 , [kj ]n ) Obviously, Aj is a path joining (i, [kj ]n ) and (i + 3, [kj ]n ) for 0 ≤ j < t. It is easy to see that edges of Ci (x, y) together with edges of Aj , with 0 ≤ j ≤ t form a 3-container Ci(x, y) of HReT(m + 2, n). For example, a 3∗ -container C((0, 0), (2, 2)) of HReT(4, 12) − {(1, 7)} is shown in Figure 15.10a. The corresponding C1 ((0, 0), (2, 2)) is shown in Figure 15.10b. We have the following lemma. LEMMA 15.3 Suppose that C(x, y) is a 3-container of HReT(m, n) containing at least one edge joining vertices of column i to vertices of column [i + 1]m . Then
ch015.tex
30/6/2008
12: 4
432
Page 432
Graph Theory and Interconnection Networks
(a)
(b)
FIGURE 15.10 Illustrations for Algorithm 1.
Ci (x, y) forms a 3-container of HReT(m + 2, n) containing at least one edge joining the vertices of column l to the vertices of column [l + 1]m for any l ∈ {i, [i + 1]m , [i + 2]m }. Moreover, Ci (x, y) is a 3∗ -container of HReT(m + 2, n) if C(x, y) is a 3∗ -container of HReT(m, n). Furthermore, Ci (x, y) is a 3∗ -container of HReT(m + 2, n) − {fi (z)} if C(x, y) is a 3∗ -container of HReT(m, n) − {z}. LEMMA 15.4 Suppose that C(x, y) is a 3-container of HReT(2, n) containing at least one edge in {((0, j), (1, j)) | j is odd} and at least one edge in {((0, j), (1, j)) | j is even}. Then Ci (x, y) with i ∈ {0, 1} forms a 3-container of HReT(4, n) containing at least one edge joining the vertices of column l to the vertices of column l + 1 for any l ∈ {0, 1, 2, 3}. Moreover, Ci (x, y) is a 3∗ -container of HReT(m + 2, n) if C(x, y) is a 3∗ -container of HReT(m, n). Furthermore, Ci (x, y) is a 3∗ -container of HReT(m + 2, n) − { fi (z)} if C(x, y) is a 3∗ -container of HReT(m, n) − {z}. With Lemmas 15.3 and 15.4, we say that a 3-container C(x, y) of HReT(2, n) is regular if C(x, y) contains at least one edge in {((0, j), (1, j)) | j is odd} and at least one edge in {((0, j), (1, j)) | j is even}. Assume that m ≥ 4. We say a 3-container C(x, y) of HReT(m, n) is regular if C(x, y) contains at least one edge joining vertices in column i to vertices in column [i + 1]m for 0 ≤ i ≤ m − 1. We have the following lemma. LEMMA 15.5 Suppose that C(x, y) is a regular 3∗ -container for HReT(m, n). Then Ci (x, y) is a regular 3∗ -container for HReT(m + 2, n) for every 0 ≤ i < m. Moreover, suppose that C(x, y) is a regular 3∗ -container for HReT(m, n) − {z}. Then Ci (x, y) is a regular 3∗ -container for HReT(m + 2, n) − {fi (z)} for every 0 ≤ i < m.
ch015.tex
30/6/2008
12: 4
Page 433
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
433
Now, we prove that HReT(4, n) is hyper 3∗ -laceable. For h = {0, 1} and 0 ≤ j, k ≤ n − 1, let Rh ( j, [ j + k]n ) denote the path (h, [ j]n ), (h, [ j + 1]n ), ([h + 1] m , [ j + 1] n ), ([h + 1] m , [ j + 2] n ), (h, [ j + 2] n ), . . . , ([h + 1] m , [ j + k − 1] n ), (h, [ j + k − 1]n ), (h, [ j + k]n ) in HReT(2, n). LEMMA 15.6 Let x and y be any two vertices of HReT(2, n) = (V0 ∪ V1 , E) with x ∈ V0 and y ∈ V1 . Then there exists a regular 3∗ -container C(x, y) of HReT(2, n). Hence, HReT(2, n) is 3∗ -laceable. Proof: Without loss of generality, we may assume that x = (0, 0) and y = (i, j). In order to prove this lemma, we will construct a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(2, n). We have the following cases: Case 1.
i = 0 and j is odd. The corresponding paths are P1 = (0, 0), Q0 (0, j), (0, j) P2 = (0, j), R0 ( j, 0), (0, 0) P3 = (0, 0), (1, 0), Q1 (0, j), (1, j), (0, j)
Case 2. Case 2.1.
i = 1 and j is even. j = 0. The corresponding paths are
P1 = (0, 0), Q0 (0, n − 2), (0, n − 2), (1, n − 2), Q1−1 (0, n − 2), (1, 0) P2 = (0, 0), (1, 0) P3 = (0, 0), (0, n − 1), (1, n − 1), (1, 0) Case 2.2.
j > 0. The corresponding paths are P1 = (0, 0), Q0 (0, j), (0, j), (1, j) P2 = (1, j), (1, j + 1), (0, j + 1), R0 ( j + 1, 0), (0, 0) P3 = (0, 0), (1, 0), Q1 (0, j), (1, j)
Hence, HReT(2, n) is 3∗ -laceable. See Figure 15.11 for illustrations.
LEMMA 15.7 Let x, y, and z be any three different vertices of HReT(2, n) = (V0 ∪ V1 , E) in V0 . Then there exists a regular 3∗ -container C(x, y) of HReT (2, n) − {z}. Hence, HReT (2, n) is hyper 3∗ -laceable. Proof: Without loss of generality, we may assume that x = (0, 0), y = (i, j), and z = (k, l). In order to prove this lemma, we will construct a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(2, n) − {z}. We have the following cases: Case 1.
i = 0. Then j is even.
ch015.tex
30/6/2008
12: 4
Page 434
434
Graph Theory and Interconnection Networks
y y
x
y
x (a)
x
(b)
(c)
FIGURE 15.11 Illustrations for Lemma 15.6: (a) Case 1, (b) Case 2.1, and (c) Case 2.2.
Case 1.1. k = 0. Then l is even. By the symmetric property of HReT(2, n), we may assume that l < j. The corresponding paths are P1 = (0, j), Q0 ( j, 0), (0, 0) P2 = (0, 0), R0 (0, l − 1), (0, l − 1), (1, l − 1), (1, l), (1, l + 1), (0, l + 1), R0 (l + 1, j), (0, j) P3 = (0, j), (1, j), Q1 ( j, 0), (1, 0), (0, 0) Case 1.2. k = 1. Then l is odd. By the symmetric property of HReT(2, n), we may assume that l < j. The corresponding paths are P1 = (0, j), Q0 ( j, 0), (0, 0) P2 = (0, 0), R0 (0, l), (0, l), R0 (l, j), (0, j) P3 = (0, j), (1, j), Q1 ( j, 0), (1, 0), (0, 0) Case 2. i = 1. Then j is odd. k = 0. Then l is even. By the symmetric property of HReT(2, n), we may assume that l < j. The corresponding paths are P1 = (1, j), (0, j), Q0 ( j, 0), (0, 0) P2 = (0, 0), R0 (0, l − 1), (0, l − 1), (1, l − 1), (1, l), (1, l + 1), (0, l + 1), R0 (l + 1, j − 1), (0, j − 1), (1, j − 1), (1, j) P3 = (1, j), Q1 ( j, 0), (1, 0), (0, 0) Hence, HReT(2, n) is hyper 3∗ -laceable. See Figure 15.12 for illustrations.
ch015.tex
30/6/2008
12: 4
Page 435
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
y
435
y y
z z z
x
x (a)
x (b)
(c)
FIGURE 15.12 Illustrations for Lemma 15.7: (a) Case 1.1, (b) Case 1.2, and (c) Case 2.
Now, we discuss the 3∗ -laceability for HReT(4, n). We need the following path patterns. For 0 ≤ i ≤ m − 1 and 0 ≤ j, k ≤ n − 1, we set SiL ( j) = ([i]m , [ j]n ), ([i − 1]m , [ j]n ), ([i − 1]m , [ j + 1]n ), ([i − 2]m , [ j + 1]n ), ([i − 2]m , [ j + 2]n ), ([i − 3]m , [ j + 2]n ), ([i − 3]m , [ j + 3]n ), ([i − 4]m , [ j + 3]n ), ([i − 4]m , [ j + 2]n ) SiR ( j) = ([i]m , [ j]n ), ([i + 1]m , [ j]n ), ([i + 1]m , [ j + 1]n ), ([i + 2]m , [ j + 1]n ), ([i + 2]m , [ j + 2]n ), ([i + 3]m , [ j + 2]n ), ([i + 3]m , [ j + 3]n ), ([i + 4]m , [ j + 3]n ), ([i + 4]m , [ j + 2]n ) L L SiL ( j, k) = ([i]m , [ j]n ), S[i] ( j), ([i − 4]m , [ j + 2]n ), S[i−4] ([ j + 2]n ), m m
([i − 8]m , [ j + 4]n ), . . . , ([i − 2(k − j − 2)]m , [k − 2]n ), L S[i−2(k−j−2)] ([k − 2]n ), ([i − 2(k − j)]m , [k]n ) m R R SiR ( j, k) = ([i]m , [ j]n ), S[i] ( j), ([i + 4]m , [ j + 2]n ), S[i+4] ([ j + 2]n ), m m
([i + 8]m , [ j + 4]n ), . . . , ([i + 2(k − j − 2)]m , [k − 2]n ), R S[i+2(k−j−2)] ([k − 2]n ), ([i + 2(k − j)]m , [k]n ) m
See Figure 15.13 for illustrations. LEMMA 15.8 Let x and y be any two vertices of HReT(4, n) = (V0 ∪ V1 , E) with x ∈ V0 and y ∈ V1 . Then there exists a regular 3∗ -container C(x, y) of HReT(4, n). Hence, HReT(4, n) is 3∗ -laceable.
ch015.tex
30/6/2008
12: 4
Page 436
436
Graph Theory and Interconnection Networks
(a)
(b)
(c)
(d)
(e)
(f)
FIGURE 15.13 The path patterns (a) Q0 (4, 2), (b) R0 (4, 1), (c) S1L (3), (d) S2L (0, 4), (e) S3R (2), and (f) S2R (1, 5).
Proof: Without loss of generality, we may assume that x = (0, 0) and y = (i, j). In order to prove this lemma, we will construct a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(4, n). By the symmetric property of HReT(4, n), we may assume that i ∈ {0, 1, 2}. Hence, we have the following cases: Case 1. Suppose that i ∈ {0, 1}. By Lemma 15.6, there exists a regular 3∗ -container C((0, 0), (i, j)) of HReT(2, n). By Lemma 15.5, C1((0, 0), (i, j)) forms a 3∗ -container of HReT(4, n). Case 2. i = 2. Then j is odd. Case 2.1.
Suppose that j = 1. The corresponding paths are
P1 = (0, 0), (0, n − 1), (1, n − 1), Q1−1 (0, n − 1), (1, 0), (2, 0), (2, 1) P2 = (0, 0), Q0 (0, n − 2), (0, n − 2), (3, n − 2), Q3−1 (1, n − 2), (3, 1), (2, 1) P3 = (0, 0), (3, 0), (3, n − 1), (2, n − 1), Q2−1 (1, n − 1), (2, 1) Case 2.2.
Suppose that j = 1. The corresponding paths are
P1 = (0, 0), Q0 (0, j − 1), (0, j − 1), (3, j − 1), (3, j), (2, j) P2 = (0, 0), (3, 0), Q3 (0, j − 2), (3, j − 2), (2, j − 2), Q2−1 (0, j − 2), (2, 0), (1, 0), Q1 (0, j − 1), (1, j − 1), (2, j − 1), (2, j) P3 = (0, 0), (0, n − 1), SL−1 ( j + 3, n − 1), (0, j + 3), (0, j + 2), (1, j + 2), (1, j + 1), (1, j), (0, j), (0, j + 1), (3, j + 1), (3, j + 2), (2, j + 2), (2, j + 1), (2, j) Hence, HReT(4, n) is 3∗ -laceable. See Figure 15.14 for illustrations.
ch015.tex
30/6/2008
12: 4
Page 437
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
437
y
y x
x (a)
(b)
FIGURE 15.14 Illustrations for Lemma 15.8: (a) Case 2.1 and (b) Case 2.2.
LEMMA 15.9 Let x, y, and z be any three different vertices of HReT(4, 6) = (V0 ∪ V1 , E) in V0 . Then there exists a regular 3∗ -container C(x, y) of HReT(4, 6) − {z}. Hence, HReT(4, 6) is hyper 3∗ -laceable. Proof: Without loss of generality, we may assume that x = (0, 0), y = (i, j), and z = (k, l). The corresponding regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(4, 6) − {z} are listed as follows: y
z
(0, 2)
(2, 2)
(0, 2)
(2, 4)
(0, 4)
(0, 2)
(0, 4)
(1, 1)
(1, 3)
(0, 2)
(1, 5)
(0, 2)
C(x,y)
(0, 0), (0, 1), (0, 2)
(0, 0), (0, 5), (1, 5), (1, 0), Q1 (0, 4), (1, 4), (2, 4), (2, 3), (3, 3), (3, 2), (0, 2)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 0), (2, 5), (3, 5), (3, 4), (0, 4), (0, 3), (0, 2)
(0, 0), (0, 1), (0, 2)
(0, 2), (0, 3), (0, 4), (3, 4), (3, 5), (2, 5), (2, 0), (1, 0), Q1 (0, 5), (1, 5), (0, 5), (0, 0)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 2), (2, 3), (3, 3), (3, 2), (0, 2)
(0, 0), (0, 5), (0, 4)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), (2, 4), (2, 5), (3, 5), (3, 4), (0, 4)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 1), (2, 0), (1, 0), (1, 5), (1, 4), (1, 3), (0, 3), (0, 4)
(0, 0), (0, 5), (0, 4)
(0, 0), (0, 1), (0, 2), (3, 2), (3, 3), (2, 3), (2, 2), (1, 2), (1, 3), (0, 3), (0, 4)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 0), (1, 0), (1, 5), (1, 4), (2, 4), (2, 5), (3, 5), (3, 4), (0, 4)
(0, 0), (0, 5), (0, 4), (0, 3), (1, 3)
(0, 0), (0, 1), (1, 1), (1, 2), (1, 3)
(0, 0), (3, 0), Q3 (0, 5), (3, 5), (2, 5), Q2−1 (0, 5), (2, 0), (1, 0), (1, 5), (1, 4), (1, 3)
(0, 0), (0, 5), (1, 5)
(0, 0), (0, 1), (1, 1), (1, 2), (1, 3), (0, 3), (0, 4), (3, 4), (3, 5), (2, 5), (2, 4), (1, 4), (1, 5)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), Q2−1 (0, 3), (2, 0), (1, 0), (1, 5)
(Continued)
ch015.tex
30/6/2008
12: 4
Page 438
438 y
Graph Theory and Interconnection Networks z
(1, 1)
(2, 0)
(1, 1)
(2, 2)
(1, 1)
(2, 4)
(1, 3)
(2, 0)
(1, 3)
(2, 2)
(1, 3)
(2, 4)
(2, 0)
(0, 2)
(2, 2)
(0, 2)
(2, 2)
(0, 4)
(2, 2)
(1, 1)
C(x,y)
(0, 0), (0, 1), (1, 1)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 2), (1, 2), (1, 1)
(0, 0), (0, 5), (0, 4), (3, 4), (3, 5), (2, 5), (2, 4), (2, 3), (3, 3), (3, 2), (0, 2), (0, 3), (1, 3), (1, 4), (1, 5), (1, 0), (1, 1)
(1, 1), Q1 (1, 4), (1, 4), (2, 4), (2, 3), (3, 3), (3, 2), (0, 2), (0, 3), (0, 4), (3, 4), (3, 5), (2, 5), (2, 0), (2, 1), (3, 1), (3, 0), (0, 0) (0, 0), (0, 1), (1, 1)
(0, 0), (0, 5), (1, 5), (1, 0), (1, 1)
(1, 1), (1, 0), (2, 0), (2, 5), (3, 5), (3, 4), (0, 4), (0, 3), (0, 2), (3, 2), (3, 3), (2, 3), (2, 2), (2, 1), (3, 1), (3, 0), (0, 0)
(0, 0), (0, 1), (1, 1)
(0, 0), (0, 5), (1, 5), Q1−1 (1, 5), (1, 1)
(0, 0), (0, 1), (1, 1), (1, 0), (1, 5), (1, 4), (1, 3)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 2), (1, 2), (1, 3)
(0, 0), (0, 5), (0, 4), (3, 4), (3, 5), (2, 5), (2, 4), (2, 3), (3, 3), (3, 2), (0, 2), (0, 3), (1, 3)
(0, 0), (0, 5), (1, 5), (1, 4), (1, 3)
(0, 0), (3, 0), (3, 5), (2, 5), (2, 4), (2, 3), (3, 3), (3, 4), (0, 4), (0, 3), (1, 3)
(0, 0), (0, 1), (0, 2), (3, 2), (3, 1), (2, 1), (2, 0), (1, 0), Q1 (0, 3), (1, 3)
(0, 0), (0, 5), (1, 5), (1, 4), (1, 3)
(0, 0), (3, 0), (3, 5), (2, 5), (2, 0), (1, 0), Q1 (0, 3), (1, 3)
(0, 0), (0, 1), (0, 2), (3, 2), (3, 1), (2, 1), (2, 2), (2, 3), (3, 3), (3, 4), (0, 4), (0, 3), (1, 3)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), (2, 4), (1, 4), (1, 3), (0, 3), (0, 4), (3, 4), (3, 5), (2, 5), (2, 0)
(0, 0), (0, 5), (1, 5), (1, 0), (2, 0)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 1), (2, 0)
(0, 0), (0, 1), (1, 1), (1, 0), (2, 0), (2, 1), (2, 2)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), (2, 2)
(0, 0), (0, 5), (1, 5), (1, 4), (2, 4), (2, 5), (3, 5), (3, 4), (0, 4), (0, 3), (1, 3), (1, 2), (2, 2)
(0, 0), (0, 5), (1, 5), (1, 0), (2, 0), (2, 5), (3, 5), Q3−1 (2, 5), (3, 2), (0, 2), (0, 3), (1, 3), (1, 4), (2, 4), (2, 3), (2, 2)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 2)
(0, 0), (0, 5), (1, 5), (1, 0), (2, 0), (2, 1), (2, 2)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), (2, 2)
(0, 0), Q0 (0, 4), (0, 4), (3, 4), (3, 5), (2, 5), (2, 4), (1, 4), (1, 3), (1, 2), (2, 2)
Hence, HReT(4, 6) is hyper 3∗ -laceable.
LEMMA 15.10 Assume that n ≥ 8. Let x, y, and z be any three different vertices of HReT(4, n) = (V0 ∪ V1 , E) in V0 . Then there exists a regular 3∗ -container C(x, y) of HReT(4, n) − {z}. Hence, HReT(4, n) is hyper 3∗ -laceable. Proof: Without loss of generality, we may assume that x = (0, 0), y = (i, j), and z = (k, l). In order to prove this lemma, we will construct a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(4, n) − {z}. By the symmetric property of HReT(4, n), we may assume that i ∈ {0, 1, 2}. We have the following cases: Case 1. Suppose that i ∈ {0, 1} and z ∈ {0, 1}. By Lemma 15.7, there exists a regular 3∗ -container C((0, 0), (i, j)) of HReT(2, n) − {(k, l)}. By Lemma 15.5, C1 ((0, 0), (i, j)) forms a 3∗ -container of HReT(4, n) − {(k, l)}. Case 2. i = 0 and k = 2. Then j and l are even. By the symmetric property, we have the following subcases: Case 2.1.
Suppose that j = 4 and l = 2. The corresponding paths are
P1 = (0, 0), Q0 (0, 4), (0, 4) P2 = (0, 0), (0, n − 1), (0, n − 2), (3, n − 2), Q3−1 (4, n − 2), (3, 4), (0, 4)
ch015.tex
30/6/2008
12: 4
Page 439
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
439
P3 = (0, 4), Q0 (4, n − 3), (0, n − 3), (1, n − 3), Q1−1 (0, n − 3), (1, 0), (1, n − 1), (1, n − 2), (2, n − 2), Q2−1 (3, n − 2), (2, 3), (3, 3), (3, 2), (3, 1), (2, 1), (2, 0), (2, n − 1), (3, n − 1), (3, 0), (0, 0) Case 2.2.
Suppose that n − 4 > j ≥ 2 and l = j + 2. The corresponding paths are
P1 = (0, 0), Q0 (0, j), (0, j) P2 = (0, 0), (3, 0), Q3 (0, j), (3, j), (0, j) P3 = (0, j), Q0 ( j, j + 4), (0, j + 4), (3, j + 4), (3, j + 5), (2, j + 5), (2, j + 4), (2, j + 3), (3, j + 3), (3, j + 2), (3, j + 1), (2, j + 1), Q2−1 (0, j + 1), (2, 0), (1, 0), Q1 (0, j + 5), (1, j + 5), (0, j + 5), (0, j + 6), (3, j + 6), (3, j + 7), (2, j + 7), (2, j + 6), S2L ( j + 6, n − 2), (2, n − 2), (1, n − 2), (1, n − 1), (0, n − 1), (0, 0) Case 2.3. paths are
Suppose that n − 6 > j ≥ 2 and n − 4 > l > j + 2. The corresponding
P1 = (0, 0), Q0 (0, j), (0, j) P2 = (0, 0), (3, 0), Q3 (0, j), (3, j), (0, j) P3 = (1, j), (1, j + 1), (1, j + 2), (3, j + 2), (3, j + 1), (2, j + 1), Q2−1 (0, j + 1), (2, 0), (1, 0), Q1 (0, j + 2), (1, j + 2), (2, j + 2), (2, j + 3), (3, j + 3), (3, j + 4), (0, j + 4), (0, j + 3), S0R ( j + 3, l − 3), (0, l − 3), (1, l − 3), (1, l − 2), (2, l − 2), (2, l − 1), (3, l − 1), (3, l), (3, l + 1), (2, l + 1), (2, l + 2), (2, l + 3), (3, l + 3), (3, l + 2), (0, l + 2), Q0−1 (l − 1, l + 2), (0, l − 1), (1, l − 1), Q1 (l − 1, l + 3), (1, l + 3), (0, l + 3), (0, l + 4), (3, l + 4), S2L (l + 4, n − 2), (2, n − 2), (1, n − 2), (1, n − 1), (0, n − 1), (0, 0) Case 2.4.
Suppose that n > 8 and j = l ≥ 2. The corresponding paths are
P1 = (0, 0), Q0 (0, j), (0, j) P2 = (0, 0), (3, 0), Q3 (0, j − 1), (3, j − 1), (2, j − 1), Q2−1 (0, j − 1), (2, 0), (1, 0), Q1 (0, j + 1), (1, j + 1), (0, j + 1), (0, j) P3 = (0, j), (3, j), (3, j + 1), (2, j + 1), (2, j + 2), (1, j + 2), (1, j + 3), (1, j + 4), (2, j + 4), (2, j + 3), (3, j + 3), (3, j + 2), (0, j + 2), (0, j + 3), (0, j + 4), (3, j + 4), (3, j + 5), (2, j + 5), (2, j + 6), (1, j + 6), (1, j + 5), S1L ( j + 5, n − 5), (1, n − 5), (0, n − 5), (0, n − 4), (3, n − 4), (3, n − 3), (2, n − 3), (2, n − 2), (2, n − 1), (3, n − 1), (3, n − 2), (0, n − 2), (0, n − 3), (1, n − 3), (1, n − 2), (1, n − 1), (0, n − 1), (0, 0)
ch015.tex
30/6/2008
12: 4
Page 440
440
Graph Theory and Interconnection Networks
Case 2.5.
Suppose that n = 8, j = 2, and l = 2. The corresponding paths are
P1 = (0, 0), (0, 1), (0, 2) P2 = (0, 2), (0, 3), (0, 4), (3, 4), Q3 (4, 7), (3, 7), (2, 7), (2, 0), (2, 1), (3, 1), (3, 0), (0, 0) P3 = (0, 2), (3, 2), (3, 3), (2, 3), Q2 (3, 6), (2, 6), (1, 6), (1, 7), (1, 0), Q1 (0, 5), (1, 5), (0, 5), (0, 6), (0, 7), (0, 0) Case 2.6.
Suppose that n = 8, j = 4, and l = 4. The corresponding paths are
P1 = (0, 0), Q0 (0, 4), (0, 4) P2 = (0, 0), (0, 7), (1, 7), (1, 0), Q1 (0, 6), (1, 6), (2, 6), (2, 5), (3, 5), (3, 4), (0, 4) P3 = (0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), Q2−1 (0, 3), (2, 0), (2, 7), (3, 7), (3, 6), (0, 6), (0, 5), (0, 4) Case 3. i = 1 and k = 2. Then j is odd and l is even. By the symmetric property, we have the following subcases: Case 3.1. paths are
Suppose that n − 5 > j ≥ 1 and n − 4 > l > j + 2. The corresponding
P1 = (0, 0), Q0 (0, j), (0, j), (1, j) P2 = (0, 0), (3, 0), Q3 (0, j), (3, j), (2, j), Q2−1 (0, j), (2, 0), (1, 0), Q1 (0, j), (1, j) P3 = (1, j), (1, j + 1), (2, j + 1), (2, j + 2), (3, j + 2), (3, j + 1), S3L ( j + 1, l − 2), (3, l − 2), (0, l − 2), (0, l − 1), (1, l − 1), (1, l), (1, l + 1), (1, l + 2), (2, l + 2), (2, l + 1), (3, l + 1), (3, l), (0, l), (0, l + 1), (0, l + 2), (3, l + 2), (3, l + 3), (2, l + 3), (2, l + 4), (1, l + 4), (1, l + 3), S1L (l + 3, n − 5), (1, n − 5), (0, n − 5), (0, n − 4), (3, n − 4), (3, n − 3), (2, n − 3), (2, n − 2), (2, n − 1), (3, n − 1), (3, n − 2), (0, n − 2), (0, n − 3), (1, n − 3), (1, n − 2), (1, n − 1), (0, n − 1), (0, 0) Case 3.2.
Suppose that n − 5 > j ≥ 1 and l = j + 1. The corresponding paths are P1 = (0, 0), Q0 (0, j), (0, j), (1, j) P2 = (0, 0), (3, 0), Q3 (0, j), (3, j), (2, j), Q2−1 (0, j), (2, 0), (1, 0), Q1 (0, j), (1, j)
ch015.tex
30/6/2008
12: 4
Page 441
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
441
P3 = (1, j), Q1 ( j, j + 3), (1, j + 3), (2, j + 3), (2, j + 2), (3, j + 2), (3, j + 1), (0, j + 1), (0, j + 2), (0, j + 3), (3, j + 3), (3, j + 4), (2, j + 4), (2, j + 5), (1, j + 5), (1, j + 4), S1L ( j + 4, n − 5), (1, n − 5), (0, n − 5), (0, n − 4), (3, n − 4), (3, n − 3), (2, n − 3), (2, n − 2), (2, n − 1), (3, n − 1), (3, n − 2), (0, n − 2), (0, n − 3), (1, n − 3), (1, n − 2), (1, n − 1), (0, n − 1), (0, 0) Case 3.3.
Suppose that n − 5 > j ≥ 1 and l = n − 4. The corresponding paths are
P1 = (0, 0), Q0 (0, j), (0, j), (1, j) P2 = (0, 0), (0, n − 1), (1, n − 1), (1, 0), Q1 (0, j), (1, j) P3 = (1, j), (1, j + 1), (2, j + 1), (2, j + 2), (3, j + 2), (3, j + 1), S3L ( j + 1, n − 6), (0, n − 6), (0, n − 5), (1, n − 5), Q1 (n − 5, n − 2), (1, n − 2), (2, n − 2), (2, n − 3), (3, n − 3), (3, n − 4), (0, n − 4), (0, n − 3), (0, n − 2), (3, n − 2), (3, n − 1), (2, n − 1), (2, 0), (2, 1), (3, 1), (3, 0), (0, 0) Case 3.4.
Suppose that j = n − 5 and l = n − 4. The corresponding paths are
P1 = (0, 0), Q0 (0, n − 5), (0, n − 5), (1, n − 5) P2 = (0, 0), (0, n − 1), (1, n − 1), (1, 0), Q1 (0, n − 5), (1, n − 5) P3 = (1, n − 5), Q1 (n − 5, n − 2), (1, n − 2), (2, n − 2), (2, n − 3), (3, n − 3), (3, n − 4), (0, n − 4), (0, n − 3), (0, n − 2), (3, n − 2), (3, n − 1), (2, n − 1), (2, 0), Q2 (0, n − 5), (2, n − 5), (3, n − 5), Q3−1 (0, n − 5), (3, 0), (0, 0) Case 3.5.
Suppose that n − 5 > j ≥ 1 and l = n − 2. The corresponding paths are
P1 = (0, 0), Q0 (0, j), (0, j), (1, j) P2 = (0, 0), (3, 0), (3, n − 1), (2, n − 1), (2, 0), (1, 0), Q1 (0, j), (1, j) P3 = (1, j), (1, j + 1), (1, j + 2), (0, j + 2), (0, j + 1), (3, j + 1), Q3−1 (1, j + 1), (3, 1), (2, 1), Q2 (1, j + 2), (2, j + 2), (3, j + 2), (3, j + 3), (0, j + 3), (0, j + 4), (1, j + 4), (1, j + 3), S1R ( j + 3, n − 6), (1, n − 6), (2, n − 6), (2, n − 5), (3, n − 5), (3, n − 4), (0, n − 4), (0, n − 3), (0, n − 2), (3, n − 2), (3, n − 3), (2, n − 3), (2, n − 4), (1, n − 4), Q1 (n − 4, n − 1), (1, n − 1), (0, n − 1), (0, 0) Case 4. i = 2 and k = 0. Then j and l are even. By the symmetric property, we have the following subcases:
ch015.tex
30/6/2008
12: 4
Page 442
442
Graph Theory and Interconnection Networks
Case 4.1.
Suppose that j = 0 and l > 0. The corresponding paths are
P1 = (0, 0), (0, n − 1), (1, n − 1), (1, 0), (2, 0) P2 = (0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 1), (2, 0) P3 = (0, 0), (3, 0), (3, 1), (3, 2), (0, 2), (0, 3), (1, 3), (1, 4), (2, 4), (2, 3), S2R (3, j − 1), (2, j − 1), (3, j − 1), (3, j), (3, j + 1), (2, j + 1), (2, j + 2), (1, j + 2), (1, j + 1), S1L ( j + 1, n − 3), (1, n − 3), (0, n − 3), (0, n − 2), (3, n − 2), (3, n − 1), (2, n − 1), (2, 0) Case 4.2.
Suppose that l > j > 0. The corresponding paths are
P1 = (0, 0), (0, 1), (1, 1), Q1 (1, j), (1, j), (2, j) P2 = (0, 0), (3, 0), (3, 1), (2, 1), Q2 (1, j), (2, j) P3 = (2, j), (2, j + 1), (2, j + 2), (1, j + 2), (1, j + 1), (0, j + 1), Q0−1 (2, j + 1), (0, 2), (3, 2), Q3 (2, j + 2), (3, j + 2), (0, j + 2), (0, j + 3), (1, j + 3), (1, j + 4), (2, j + 4), (2, j + 3), S2R ( j + 3, l − 1), (2, l − 1), (3, l − 1), (3, l), (3, l + 1), (2, l + 1), (2, l + 2), (1, l + 2), (1, l + 1), S1L (l + 1, n − 1), (1, n − 1), (0, n − 1), (0, 0) Case 4.3.
Suppose that j = l > 0. The corresponding paths are
P1 = (0, 0), Q0 (0, j − 1), (0, j − 1), (1, j − 1), Q1−1 (0, j − 1), (1, 0), (2, 0), Q2 (0, j), (2, j) P2 = (0, 0), (3, 0), Q3 (0, j + 1), (3, j + 1), (2, j + 1), (2, j) P3 = (2, j), S2L ( j, n − 1), (2, n − 2), (1, n − 2), (1, n − 1), (0, n − 1), (0, 0) Case 5. i = 2 and k = 1. Then j is even and l is odd. By the symmetric property, we have the following subcases: Case 5.1.
Suppose that j = 0 and l = 1. The corresponding paths are
P1 = (0, 0), (0, n − 1), (1, n − 1), (1, 0), (2, 0) P2 = (0, 0), (0, 1), (0, 2), (3, 2), (3, 1), (2, 1), (2, 0) P3 = (0, 0), (3, 0), (3, n − 1), (3, n − 2), (0, n − 2), Q0−1 (3, n − 2), (0, 3), (1, 3), (1, 2), (2, 2), (2, 3), (3, 3), Q3 (3, n − 3), (3, n − 3), (2, n − 3), Q2−1 (4, n − 3), (2, 4), (1, 4), Q1 (4, n − 2), (1, n − 2), (2, n − 2), (2, n − 1), (2, 0)
ch015.tex
30/6/2008
12: 4
Page 443
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
Case 5.2.
443
Suppose that j = 0 and n − 1 > l > 1. The corresponding paths are
P1 = (0, 0), (0, n − 1), (1, n − 1), (1, 0), (2, 0) P2 = (0, 0), (3, 0), (3, 1), (2, 1), (2, 0) P3 = (0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 3), (3, 3), (3, 2), S3L (2, j − 3), (3, j − 3), (0, j − 3), (0, j − 2), (1, j − 2), (1, j − 1), (2, j − 1), (2, j), (2, j + 1), (1, j + 1), (1, j + 2), (1, j + 3), (2, j + 3), (2, j + 2), (3, j + 2), Q3−1 ( j − 1, j + 2), (3, j − 1), (0, j − 1), Q0 ( j − 1, j + 3), (0, j + 3), (3, j + 3), (3, j + 4), (2, j + 4), (2, j + 5), (1, j + 5), (1, j + 4), S1L ( j + 4, n − 3), (1, n − 3), (0, n − 3), (0, n − 2), (3, n − 2), (3, n − 1), (2, n − 1), (2, 0) Case 5.3.
Suppose that n − 1 > l > j + 2 and j > 0. The corresponding paths are
P1 = (0, 0), (0, 1), (1, 1), Q1 (1, j), (1, j), (2, j) P2 = (0, 0), (3, 0), (3, 1), (2, 1), Q2 (1, j), (2, j) P3 = (2, j), (2, j + 1), (3, j + 1), (3, j), S3L ( j, l − 3), (3, l − 3), (0, l − 3), (0, l − 2), (1, l − 2), (1, l − 1), (2, l − 1), (2, l), (2, l + 1), (1, l + 1), (1, l + 2), (1, l + 3), (2, l + 3), (2, l + 2), (3, l + 2), (3, l + 1), (3, l), (3, l − 1), (0, l − 1), Q0 (l − 1, l + 3), (0, l + 3), (3, l + 3), (3, l + 4), (2, l + 4), (2, l + 5), (1, l + 5), (1, l + 4), S1L (l + 4, n − 1), (1, n − 1), (0, n − 1), (0, 0) Case 5.4.
Suppose that n − 2 > j and l = n − 1. The corresponding paths are
P1 = (0, 0), Q0 (0, j + 1), (0, j + 1), (1, j + 1), (1, j + 2), (2, j + 2), (2, j + 1), (2, j) P2 = (0, 0), (3, 0), (3, n − 1), (2, n − 1), (2, 0), (1, 0), Q1 (0, j), (1, j), (2, j) P3 = (2, j), Q2−1 (1, j), (2, 1), (3, 1), Q3 (1, j + 2), (3, j + 2), (0, j + 2), (0, j + 3), (1, j + 3), (1, j + 4), (2, j + 4), (2, j + 3), S2R ( j + 3, n − 3), (2, n − 3), (3, n − 3), (3, n − 2), (0, n − 2), (0, n − 1), (0, 0) Case 5.5.
Suppose that j = n − 2 and l = n − 1. The corresponding paths are
P1 = (0, 0), (0, n − 1), (0, n − 2), (0, n − 3), (1, n − 3), (1, n − 2), (2, n − 2) P2 = (0, 0), Q0 (0, n − 4), (3, n − 4), Q3 (n − 4, n − 1), (2, n − 1), (2, n − 2) P3 = (0, 0), (3, 0), Q3 (0, n − 5), (3, n − 5), (2, n − 5), Q2−1 (0, n − 5), (2, 0), Q1 (0, n − 4), (1, n − 4), (2, n − 4), (2, n − 3), (2, n − 2) Hence, HReT(4, n) is hyper 3∗ -laceable for n ≥ 8. See Figure 15.15 for illustrations.
ch015.tex
30/6/2008
12: 4
Page 444
444
Graph Theory and Interconnection Networks
z
z
y
y
y z
z
y z
z
y
y
z
x
x y
x
x
x
(a)
(b)
x
x
(c)
(d)
(e)
(f)
z
z
(g)
z
z
z y
y
z y
y
x
y
x
(h)
x
(i)
(j)
y
x
x
(k)
x
(l)
(m)
z
z y
z
z
y
z
y
y z y
x
x
(n)
(o)
y
x
(p)
x
x
(q)
x
(r)
(s)
FIGURE 15.15 Illustrations for Lemma 15.10: (a) Case 2.1, (b) Case 2.2, (c) Case 2.3, (d) Case 2.4, (e) Case 2.5, (f) Case 2.6, (g) Case 3.1, (h) Case 3.2, (i) Case 3.3, (j) Case 3.4, (k) Case 3.5, (l) Case 4.1, (m) Case 4.2, (n) Case 4.3, (o) Case 5.1, (p) Case 5.2, (q) Case 5.3, (r) Case 5.4, and (s) Case 5.5.
Now, we discuss the 3∗ -laceability for general HReT(m, n). LEMMA 15.11 Assume that m and n are positive even integers with m, n ≥ 4. Let x and y be any two vertices of HReT(m, n) = (V0 ∪ V1 , E) with x ∈ V0 and y ∈ V1 . Then there exists a regular 3∗ -container C(x, y) of HReT(m, n).
ch015.tex
30/6/2008
12: 4
Page 445
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
445
Proof: Without loss of generality, we may assume that x = (0, 0) and y = (i, j). In order to prove this lemma, we will construct a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m, n). We prove the lemma by induction on m. With Lemma 15.8, our theorem holds for m = 4. Now, we consider the case where m ≥ 6. Suppose that i < m − 2. By induction, there exists a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m − 2, n). By Lemma 15.5, Cm − 3((0, 0), (i, j)) forms a 3∗ -container of HReT(m, n). Suppose that i ≥ m − 2. By induction, there exists a regular C(x, (i − 2, j)) = {P1 , P2 , P3 } in HReT(m − 2, n). By Lemma 15.5, C1 ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, n). LEMMA 15.12 Assume that m and n are positive even integers with m ≥ 4 and n ≥ 6. Let x, y, and z be any three different vertices of HReT(m, n) = (V0 ∪ V1 , E) in V0 . Then there exists a regular 3∗ -container C(x, y) of HReT(m, n) − {z}. Proof: Without loss of generality, we may assume that x = (0, 0), y = (i, j), and z = (k, l). In order to prove this lemma, we will construct a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m, n) − {z}. We prove the lemma by induction on m. With Lemmas 15.9 and 15.10, our theorem holds for m = 4. Now, we consider the case that m ≥ 6. Suppose that i < m − 2 and k < m − 2. By induction, there exists a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m − 2, n) − {z}. By Lemma 15.5, Cm−3 ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, n) − {z}. Suppose that i < m − 2 and k ≥ m − 2. By induction, there exists a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m − 2, n) − (k − 2, l). By Lemma 15.5, Ci ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, n) − {z}. Suppose that i ≥ m − 2 and k < m − 2. By induction, there exists a regular 3∗ -container C(x, (i − 2, j)) = {P1 , P2 , P3 } in HReT(m − 2, n) − {z}. By Lemma 15.5, Ck ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, n) − {z}. Suppose that i ≥ m − 2 and k ≥ m − 2. By induction, there exists a regular 3∗ container C(x, (i − 2, j)) = {P1 , P2 , P3 } in HReT(m − 2, n) − (k − 2, l). By Lemma 15.5, C1((0, 0), (i, j)) forms a 3∗ -container of HReT(m, n) − {z}. THEOREM 15.13 Assume that m and n are positive even integers with n ≥ 4. Then HReT(m, n) is strongly 3∗ -laceable. Moreover, HReT(m, n) is hyper 3∗ -laceable if and only if n ≥ 6 or m = 2. Proof: With Lemmas 15.6 and 15.11, HReT(m, n) is 3∗ -laceable if m, n are even integers with n ≥ 4. By Lemmas 15.7 and 15.12, HReT(m, n) is hyper 3∗ -laceable if m, n are even integers with n ≥ 6 or m = 2. Now we consider the case HReT(m, 4) with m being an even integer and m ≥ 4. We first prove that HReT(m, 4) is not hyper 3∗ -laceable. To prove this fact, let x = (1, 1), y = (1, 3), and z = (0, 2). Suppose that there exists a 3∗ -container C(x, y) = {P1 , P2 , P3 } of HReT(m, 4) − {z}. Since degHReT(m,4) − z (v) = 2 for v ∈ {(0, 1), (0, 3), (3, 2)}, (1, 1), (1, 2), (1, 3) and
(1, 1), (0, 1), (0, 0), (0, 3), (1, 3) are two paths in C3∗ (x, y). Without loss of generality, we assume that P1 = (1, 1), (1, 2), (1, 3) and P2 = (1, 1), (0, 1), (0, 0), (0, 3), (1, 3). Since degHReT(m,4)−z ((1, 1)) = degHReT(m,4)−z ((1, 3)) = 3, ((1, 3), (1, 0)) and ((1, 0),
ch015.tex
30/6/2008
12: 4
Page 446
446
Graph Theory and Interconnection Networks y z x
FIGURE 15.16 Illustration for Theorem 15.13.
(1, 1)) are edges in P3 . Thus P3 = (1, 1), (1, 0), (1, 3). Obviously, {P1 ∪ P2 ∪ P3 } does not span HReT(m, 4) − {z}. See Figure 15.16 for illustration. Hence, HReT(m, 4) is not hyper 3∗ -laceable. Although any HReT(m, 4) with m is an even integer and m ≥ 4 is not hyper 3∗ laceable, we will prove that such HReT(m, 4) is strongly 3∗ -laceable by induction. We first prove that HReT(4, 4) is strongly bi-3∗ -connected. Let x and y be any two different vertices in the same partite set of HReT(4, 4). Without loss of generality, we may assume that x and y are vertices in V0 and x = (0, 0). We need to find a vertex z in V0 − {x, y} such that there exists a 3∗ -container C(x, y) = {P1 , P2 , P3 } of HReT(4,4) − {z}. The corresponding vertex z and 3∗ -container C(x, y) are listed as follows: y
z
(0, 2)
(1, 3)
(1, 1)
(1, 3)
(1, 3)
(0, 2)
(2, 0)
(0, 2)
(2, 2)
(0, 2)
(3, 1)
(0, 2)
(3, 3)
(0, 2)
C(x,y)
(0, 0), (0, 1), (0, 2)
(0, 0), (0, 3), (0, 2)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 0), (1, 0), (1, 1), (1, 2), (2, 2), (2, 3), (3, 3), (3, 2), (0, 2)
(0, 0), (0, 1), (1, 1)
(0, 0), (3, 0), (3, 1), (2, 1), (2, 0), (1, 0), (1, 1),
(0, 0), (0, 3), (0, 2), (3, 2), (3, 3), (2, 3), (2, 2), (1, 2), (1, 1)
(0, 0), (0, 3), (1, 3)
(0, 0), (0, 1), (1, 1), (1, 2), (1, 3)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), Q2−1 (0, 3), (2, 0), (1, 0), (1, 3)
(0, 0), (0, 3), (1, 3), (1, 0), (2, 0)
(0, 0), (3, 0), (3, 3), (3, 2), (3, 1), (2, 1), (2, 0)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 3), (2, 0)
(0, 0), (3, 0), Q3 (0, 3), (3, 3), (2, 3), (2, 2)
(0, 0), (0, 3), (1, 3), (1, 0), (2, 0), (2, 1), (2, 2)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2)
(0, 0), (3, 0), (3, 1)
(0, 0), (0, 3), (1, 3), (1, 0), (2, 0), (2, 1), (3, 1)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 3), (3, 3), (3, 2), (3, 1)
(0, 0), (3, 0), (3, 3)
(0, 0), (0, 3), (1, 3), (1, 0), (2, 0), (2, 1), (3, 1), (3, 2), (3, 3)
(0, 0), (0, 1), (1, 1), (1, 2), (2, 2), (2, 3), (3, 3)
Obviously, all these 3∗ -containers of HReT(4, 4) − {z} are regular. Now we consider the case HReT(m, 4) with m > 4. Without loss of generality, we may assume that x = (0, 0), y = (i, j), and z = (k, l). Suppose that i < m − 2 and
ch015.tex
30/6/2008
12: 4
Page 447
Cubic 3∗ -Connected Graphs and Cubic 3∗ -Laceable Graphs
447
k < m − 2. By induction, there exists a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m − 2, 4) − {z}. By Lemma 15.5, Cm−3 ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, 4) − {z}. Suppose that i < m − 2 and k ≥ m − 2. By induction, there exists a regular 3∗ -container C(x, y) = {P1 , P2 , P3 } in HReT(m − 2, 4) − (k − 2, l). By Lemma 15.5, Ci ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, 4) − {z}. Suppose that i ≥ m − 2 and k < m − 2. By induction, there exists a regular C(x, (i − 2, j)) = {P1 , P2 , P3 } in HReT(m − 2, 4) − {z}. By Lemma 15.5, Ck ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, 4) − {z}. Suppose that i ≥ m − 2 and k ≥ m − 2. By induction, there exists a regular 3∗ -container C(x, (i − 2, j)) = {P1 , P2 , P3 } in HReT(m − 2, 4) − (k − 2, l). By Lemma 15.5, C1 ((0, 0), (i, j)) forms a 3∗ -container of HReT(m, 4) − {z}. Thus, the theorem is proved. Using similar approach as shown previously, we have the following theorem. THEOREM 15.14 Assume that m and n are positive even integers with n ≥ 4. Then HReT(m, n) is strongly Hamiltonian laceable. Moreover, HReT(m, n) is hyper Hamiltonian laceable if and only if n ≥ 6 or m = 2. Combining Theorems 15.11, 15.13, and 15.14, we have the following theorem. THEOREM 15.15 Assume that m and n are positive even integers with n ≥ 4. Then HReT(m, n) is super 3∗ -laceable if and only if n ≥ 6 or m = 2. In Ref. 193, Kao et al. proved that PJ(k) is hyper 3∗ -laceable if and only if k is an odd integer with k ≥ 3. Moreover, P(n, 1) is hyper 3∗ -laceable if and only if n is even and n ≥ 4. Furthermore, Kao and Hsu [191] prove that every spider web network SW (m, n) is hyper bi-3∗ -connected for m ≥ 4 and n ≥ 2.
15.6
COUNTEREXAMPLES OF 3∗ -LACEABLE GRAPHS
With Theorem 15.11, every cubic 3∗ -laceable graph is 1-edge fault-tolerant Hamiltonian. We would like to find examples of cubic 1-edge fault-tolerant Hamiltonian graphs that are not 3∗ -laceable. Let G1 = (B1 ∪ W1 , E1 ) be a bipartite graph and u ∈ B1 . Let G2 = (B2 ∪ W2 , E2 ) be a bipartite graph and v ∈ W2 . Let N(u) = {ui | i = 1, 2, 3}, N(v) = {vi | i = 1, 2, 3}, and G = J(G1 , N(u); G2 , N(v)). Obviously, G is a bipartite graph with bipartition B = (B1 ∪ B2 ) − {u} and W = (W1 ∪ W2 ) − {v}. Suppose that both G1 and G2 are two 3∗ -laceable graphs with u ∈ B1 and v ∈ W2 . By Theorem 15.11, G1 and G2 are 1-edge fault-tolerant Hamiltonian. By Theorem 12.7, G is also 1-edge fault-tolerant Hamiltonian. Suppose that G is a 3∗ -laceable graph. Let x ∈ (B1 − {u}) and y ∈ (W2 − {v}). Then there exists a 3∗ -container C(x, y) = {P1 , P2 , P3 } in G. Without loss of generality, we can write Pi as x, Pi1 , ui , vi , Pi2 , y for i = 1, 2, 3. Let Pi = x, Pi1 , ui , u for i = 1, 2, 3. Obviously, {Pi | i = 1, 2, 3} is a 3∗ -container between x and u in G1 . This is impossible, because x and u belong to the same partite set B1 . Thus G cannot be 3∗ -laceable. We have the following theorem.
ch015.tex
448
30/6/2008
12: 4
Page 448
Graph Theory and Interconnection Networks
THEOREM 15.16 Let G1 and G2 be two cubic 3∗ -laceable graphs. Let u ∈ V (G1 ) and v ∈ V (G2 ). Then J(G1 , N(u); G2 , N(v)) is 1-edge Hamiltonian, but not 3∗ -laceable. With Theorem 15.16, we can easily construct cubic 1-edge Hamiltonian graphs that are not 3∗ -laceable. With Theorem 15.12, every cubic hyper 3∗ -laceable graph is 1p -fault-tolerant Hamiltonian. However, we have difficulty in finding a cubic 1p -fault-tolerant Hamiltonian graph that is not hyper 3∗ -laceable.
ch016.tex
25/7/2008
16 16.1
12: 29
Page 449
Spanning Diameter
INTRODUCTION
Graph containers do exist in engineering designed information and telecommunication networks and in biological and neural systems. See [3,164] and their references. The study of w-container, w-wide distance, and their w∗ -versions plays a pivotal role in design and implementation of parallel routing and efficient information transmission in large-scale networking systems. In biological informatics and neuroinformatics, the existence and structure of a w∗ -container signifies the cascade effect in the signal transduction system and the reaction in a metabolic pathway. Let G be a w∗ -connected graph. We can define the w∗ -connected distance between any two vertices u and v, dw (u, v), as min{l(C(u, v)) | C(u, v) is a w∗ -container}. The s (G), is defined as max{d s (u, v) | u and v are two w∗ -diameter of G, denoted by Dw w s (G). different vertices of G}. In particular, the spanning wide diameter of G is Dκ(G) ∗ Similarly, let G be a w -laceable bipartite graph with bipartite vertex sets V1 and V2 and |V1 ∪ V2 | ≥ 2. From the previous discussion, |V1 | = |V2 |. Similarly, we can define the w∗ -laceable distance between any two vertices u and v from different partite sets, dwsL (u, v), as min{l(C(u, v)) | C(u, v) is a w∗ -container}. The w∗L -diameter of G, sL (G), is defined as max{d sL (u, v) | u and v are vertices from different denoted by Dw w sL partite sets}. In particular, the spanning wide diameter of G is Dκ(G) (G). In this chapter, we evaluate the spanning wide diameter and the 2∗L -diameter of the star graph Sn . We also discuss the w∗L -diameter for hypercube Qn with 1 ≤ w ≤ n − 4. Then, we evaluate the spanning wide diameter of some (n, k)-star graph Sn,k .
16.2
SPANNING DIAMETER FOR THE STAR GRAPHS
Lin et al. [235] started the study of the spanning diameter for the star graphs. We need some properties concerning the star graphs. THEOREM 16.1 Assume that r and s are two adjacent vertices of Sn with n ≥ 5. Then Sn − {r, s} is Hamiltonian laceable. Proof: Since Sn is vertex-transitive and edge-transitive, we assume that r = e and {n} s = (e)2 . Obviously, both e and (e)2 are in Sn . Let u be a white vertex and v be a black 2 vertex of Sn − {e, (e) }. We want to find a Hamiltonian path of Sn − {e, (e)2 } joining u to v. {n}
{n}
Case 1. u, v ∈ Sn . By Lemma 13.35, there is a Hamiltonian path P of Sn − {e, (e)2 } joining u to a black vertex y with (y)1 = 1. We write P as u, Q1 , x, v, Q2 , y. (Note that l(Q1 ) = 0 if u = x and l(Q2 ) = 0 if v = y.) By Theorem 13.17, there is 449
ch016.tex
25/7/2008
12: 29
Page 450
450
Graph Theory and Interconnection Networks
2
{n} Sn {e , (e) } u Q1 x v
Sn{ k } Q2
y
u Q1 x
{n}
Sn
R
(x)
z
Sn< n1> { k }
< n1>
Sn
n
( x)
R (y)
n
v Q2 y
n
T
(y)
(a)
(z)
n
(b)
{ n} 2 S n { e , (e ) } P u
{k}
Sn x
u P x
2 {n } Sn {e , (e) } n Q ( x)
y
< n1> { k }
< n1>
Sn
n
(x)
Q
v
{e , (e)2 }
n
(c)
Sn
R
v
n
(y)
(d)
FIGURE 16.1 Illustration for Theorem 16.1.
n − 1
a Hamiltonian path R of Sn joining the black vertex (x)n to the white vertex n n n (y) . Then u, Q1 , x, (x) , R, (y) , y, (Q2 )−1 , v is the desired Hamiltonian path of Sn − {e, (e)2 } joining u to v. See Figure 16.1a for illustration. {k}
Case 2. u, v ∈ Sn for some k ∈ n − 1. By Theorem 13.2, there is a Hamiltonian {k} path P of Sn joining u to v. By Lemma 13.7, there are (n − 2)!/2 ≥ 3 edges joining {k} {n} {k} white vertices of Sn to black vertices of Sn . We can choose a white vertex x of Sn {n} with (x)n being a black vertex of Sn − {e, (e)2 }. We write P as u, Q1 , x, y, Q2 , v. (Note that l(Q1 ) = 0 if u = x and l(Q2 ) = 0 if v = y.) Since d(x, y) = 1, by Lemma 13.8, {n} (y)1 ∈ n −1 − {k}. By Lemma 13.35, there is a Hamiltonian path R of Sn − {e, (e)2 } joining (x)n to a white vertex z with (z)1 ∈ n − 1 − {k}. By Theorem 13.17, there is
n − 1 − {k} joining the black vertex (z)n to the white vertex a Hamiltonian path T of Sn n n n (y) . Then u, Q1 , x, (x) , R, z, (z) , T , (y)n , y, Q2 , v is the desired Hamiltonian path of Sn − {e, (e)2 } joining u to v. See Figure 16.1b for illustration. {n}
{k}
Case 3. u ∈ Sn and v ∈ Sn for some k ∈ n − 1. By Lemma 13.35, there is a {n} Hamiltonian path P of Sn − {e, (e)2 } joining u to a black vertex x with (x)1 ∈ n − 1.
n−1 joining the white vertex By Theorem 13.17, there is a Hamiltonian path Q of Sn (x)n to v. Then u, P, x, (x)n , Q, v is the desired Hamiltonian path of Sn − {e, (e)2 } joining u to v. See Figure 16.1c for illustration. {k}
{l}
Case 4. u ∈ Sn and v ∈ Sn with k, l, and n being distinct. By Lemma 13.7, there are {k} {n} (n − 2)!/2 ≥ 3 edges joining black vertices of Sn to white vertices of Sn . We choose {k} {n} a black vertex x of Sn with (x)n being a white vertex of Sn − {e, (e)2 }. By Theo{k} rem 13.2, there is a Hamiltonian path P of Sn joining u to x. By Lemma 13.35, {n} there is a Hamiltonian path Q of Sn − {e, (e)2 } joining (x)n to a black vertex y with (y)1 ∈ n − 1 − {k}. By Theorem 14.33, there is a Hamiltonian path R of
ch016.tex
25/7/2008
12: 29
Page 451
Spanning Diameter
451
n − 1 − {k}
Sn joining the white vertex (y)n to v. Then u, P, x, (x)n , Q, y, (y)n , R, v is the desired Hamiltonian path of Sn − {e, (e)2 } joining u to v. See Figure 16.1d for illustration. LEMMA 16.1 Assume that n ≥ 5. Suppose that p and q are two different white vertices of Sn , and r and s are two different black vertices of Sn . Then there exist two disjoint paths P1 and P2 such that (1) P1 joins p to r, (2) P2 joins q to s, and (3) P1 ∪ P2 spans Sn . {n}
{n−1}
Proof: Since Sn is edge-transitive, we assume that p ∈ Sn and q ∈ Sn { j} {i} that r ∈ Sn and s ∈ Sn .
. Suppose
Case 1. i, j ∈ n − 2 with i = j. By Theorem 13.17, there is a Hamiltonian path P1 {i,n}
n−1−{i} of Sn joining p to r. Again, there is a Hamiltonian path P2 of Sn joining q to s. Then P1 and P2 are the desired paths. Case 2. i, j ∈ n − 2 with i = j. We can choose a white vertex x with x being a {i} neighbor of s in Sn and (x)1 ∈ n − 1 − {i}. By Lemma 13.35, there is a Hamiltonian {i} path Q of Sn − {s, x} joining r to a white vertex y with (y)1 = n. By Theorem 13.17, {n} there is a Hamiltonian path P of Sn joining p to the black vertex (y)n . Moreover,
n−1−{i} joining q to the black vertex (x)n . Then there is a Hamiltonian path R of Sn n −1 P1 = p, P, (y) , y, Q , r and P2 = q, R, (x)n , x, s are the desired paths. Case 3. Either (i = n and j ∈ n − 1) or (i ∈ n − {n − 1} and j = n − 1). By symmetry, we assume that i = n and j ∈ n − 1. By Theorem 13.17, there is a Hamiltonian {n}
n−1 joining path P1 of Sn joining p to r. Moreover, there is a Hamiltonian path P2 of Sn q to s. Then P1 and P2 are the desired paths. Case 4. Either (i = n − 1 and j ∈ n − 2) or (i ∈ n − 2 and j = n). By symmetry, we assume that i = n − 1 and j ∈ n − 2. By Lemma 13.7, there exist (n − 2)!/2 ≥ 3 {n−1} {n} to black vertices of Sn . We can choose a white edges joining white vertices of Sn {n−1} − {q} with (x)1 = n. By Theorem 13.17, there is a Hamiltonian path vertex x in Sn {n−1} joining q to r. We write R as q, R1 , y, x, R2 , r. By Theorem 13.17, there R of Sn {n} is a Hamiltonian path P of Sn joining p to the black vertex (x)n . Since d(x, y) = 1,
n−2 . By Theorem 13.17, there exists a Hamiltonian path by Lemma 13.8, (y)n ∈ Sn
n−2 joining the white vertex (y)n to s. Then P1 = p, P, (x)n , x, R2 , r and Q of Sn P2 = q, R1 , y, (y)n , Q, s are the desired paths. {n}
Case 5. i = n − 1 and j = n. By Theorem 13.17, there is a Hamiltonian path Q of Sn {n−1} joining p to s. Again, there is a Hamiltonian path R of Sn joining q to r. We choose {n} a white vertex x ∈ Sn with (x)1 = n − 1. We write Q as p, Q1 , x, y, Q2 , s and write R as q, R1 , w, (x)n , R2 , r. Obviously, y is a black vertex and w is a white vertex. Since d(x, y) = 1, by Lemma 13.8, (y)1 ∈ n − 2. Since d((x)n , w) = 1, by Lemma
n−2 13.8, (w)1 ∈ n − 2. By Theorem 13.17, there exists a Hamiltonian path W of Sn joining the black vertex (w)n to the white vertex (y)n . Then P1 = p, Q1 , x, (x)n , R2 , r and P2 = q, R1 , w, (w)n , W , (y)n , y, Q2 , s are the desired paths.
ch016.tex
452
25/7/2008
12: 29
Page 452
Graph Theory and Interconnection Networks
Case 6. Either i = j = n or i = j = n − 1. By symmetry, we assume that i = j = n. {n} By Theorem 13.17, there is a Hamiltonian path P of Sn joining p to s. We can write
n−1 P as p, R1 , r, x, R2 , s. By Theorem 13.17, there is a Hamiltonian path Q of Sn joining q to the black vertex (x)n . Then P1 = p, R1 , r and P2 = q, Q, (x)n , x, R2 , s are the desired paths. Let u be a vertex of Sn with n ≥ 4 and let m be any integer with 3 ≤ m ≤ n. We set Fm (u) = {(u)i | 3 ≤ i ≤ m} ∪ {((u)i )i−1 | 3 ≤ i ≤ m}. LEMMA 16.2 Assume that u is a white vertex of Sn and j ∈ n with n ≥ 4. Then there is a Hamiltonian path P of Sn − Fn (u) joining u to some black vertex v with (v)1 = j. Proof: We prove this lemma by induction on n. Since Sn is vertex-transitive, we assume that u = e. Suppose that n = 4. The required Hamiltonian paths of S4 − F4 (e) are listed here: j=1 j=2 j=3 j=4
1234, 2134, 3124, 4123, 1423, 3421, 2431, 1432, 4132, 3142, 2143, 1243, 4213, 2413, 3412, 4312, 1342, 2341, 4321, 1324
1234, 2134, 4132, 3142, 1342, 4312, 3412, 1432, 2431, 3421, 1423, 2413, 4213, 1243, 2143, 4123, 3124, 1324, 4321, 2341
1234, 2134, 4132, 1432, 2431, 3421, 1423, 4123, 3124, 1324, 4321, 2341, 1342, 4312, 3412, 2413, 4213, 1243, 2143, 3142
1234, 2134, 3124, 1324, 4321, 2341, 1342, 3142, 4132, 1432, 2431, 3421, 1423, 4123, 2143, 1243, 4213, 2413, 3412, 4312
Assume that this statement holds for any Sk for every 4 ≤ k ≤ n − 1. We have Fn (e) = Fn−1 (e) ∪ {(e)n , ((e)n )n−1 }. By induction, there is a Hamiltonian path P of {n} Sn − Fn−1 (e) joining e to a black vertex x with (x)1 = 1. By Lemma 13.35, there is a {1} Hamiltonian path Q of Sn − {(e)n , ((e)n )n−1 } joining the white vertex (x)n to a black
n−1−{1} with (z)1 = j. vertex y with (y)1 = 2. We can choose a black vertex z of Sn
n−1−{1} joining the white By Theorem 13.17, there exists a Hamiltonian path R of Sn vertex (y)n to z. Then e, P, x, (x)n , Q, y, (y)n , R, z is a desired Hamiltonian path. LEMMA 16.3 Let u = u1 u2 u3 u4 be any white vertex of S4 . There exist three paths P1 , P2 , and P3 such that (1) P1 joins u to the black vertex u2 u4 u1 u3 with l(P1 ) = 7, (2) P2 joins u to the white vertex u3 u4 u1 u2 with l(P2 ) = 8, (3) P3 joins u to the white vertex u4 u1 u3 u2 with l(P3 ) = 8, and (4) P1 ∪ P2 ∪ P3 spans S4 . Proof: Since S4 is vertex-transitive, we assume that u = 1234. Then we set P1 = 1234, 3214, 4213, 1243, 2143, 4123, 1423, 2413 P2 = 1234, 4231, 3241, 2341, 4321, 3421, 2431, 1432, 3412 P3 = 1234, 2134, 3124, 1324, 2314, 4312, 1342, 3142, 4132 Obviously, P1 , P2 , and P3 are the desired paths.
LEMMA 16.4 Let u = u1 u2 u3 u4 be any white vertex of S4 . Let i1 i2 i3 be a permutation of u2 , u3 , and u4 . There exist four paths P1 , P2 , P3 , and P4 of S4 such that (1) P1 joins u to a white vertex w with (w)1 = i1 and l(P1 ) = 2, (2) P2 joins u to a white vertex x with (x)1 = i2 and l(P2 ) = 2, (3) P3 joins u to a black vertex y with (y)1 = i3 and l(P3 ) = 19, (4) P4 joins u to a black vertex z with z = y,
ch016.tex
25/7/2008
12: 29
Page 453
Spanning Diameter
453
(z)1 = i3 , and l(P4 ) = 19, (5) P1 ∪ P2 ∪ P3 spans S4 , (6) P1 ∪ P2 ∪ P4 spans S4 , (7) V (P1 ) ∩ V (P2 ) ∩ V (P3 ) = {u}, and (8) V (P1 ) ∩ V (P2 ) ∩ V (P4 ) = {u}. Proof: Since S4 is vertex-transitive, we assume that u = 1234. Since u = 1234, we have {i1 , i2 } ⊂ {2, 3, 4} and i3 ∈ {2, 3, 4} − {i1 , i2 }. Without loss of generality, we suppose that i1 < i2 . The required four paths are listed here: i1 = 2 i2 = 3 i3 = 4
i1 = 2 i2 = 4 i3 = 3
i1 = 3 i2 = 4 i3 = 2
P1 = 1234, 4231, 2431 P2 = 1234, 2134, 3124 P3 = 1234, 3214, 2314, 1324, 4321, 3421, 1423, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 4213, 1243, 3241, 2341, 1342, 4312 P4 = 1234, 3214, 2314, 1324, 4321, 3421, 1423, 2413, 4213, 1243, 3241, 2341, 1342, 4312, 3412, 1432, 4132, 3142, 2143, 4123 P1 = 1234, 4231, 2431 P2 = 1234, 3214, 4213 P3 = 1234, 2134, 3124, 4123, 2143, 1243, 3214, 2314, 1342, 4312, 2314, 1324, 4321, 3421, 1423, 2413, 3412, 1432, 4132, 3142 P4 = 1234, 2134, 3142, 1324, 2314, 4312, 1342, 3142, 4132, 1432, 3412, 2413, 1423, 4123, 2143, 1243, 3241, 2341, 4321, 3421 P1 = 1234, 2134, 3124 P2 = 1234, 3214, 4213 P3 = 1234, 4231, 3241, 1243, 2143, 4123, 1423, 2413, 3412, 4312, 2314, 1324, 4321, 3421, 2431, 1432, 4132, 3142, 1342, 2341 P4 = 1234, 4231, 3241, 1243, 2143, 4123, 1423, 3421, 2431, 1432, 4132, 3142, 1342, 2341, 4321, 1324, 2314, 4312, 3412, 2413
Thus, this statement is proved.
LEMMA 16.5 Assume that n ≥ 5 and i1 i2 . . . in−1 is an (n − 1)-permutation on n. Let u be any white vertex of Sn . Then there exist (n − 1) paths P1 , P2 , . . . , Pn−1 of Sn such that (1) P1 joins u to a black vertex y1 with (y1 )1 = i1 and l(P1 ) = n(n − 2)! − 1, (2) Pj joins u to a white vertex yj with (yj )1 = ij and l(Pj ) = n(n − 2)! for every " /n−1 2 ≤ j ≤ n − 1, (3) n−1 j=1 Pj spans Sn , and (4) j=1 V (Pj ) = {u}. Proof: The proof of this lemma is rather tedious. The authors strongly suggest that the reader skim over the proof first and examine the details later. Since Sn is vertex-transitive, we assume that u = e. Without loss of generality, we suppose that i2 < i3 < · · · < in−1 . Case 1. n = 5. Hence, n(n − 2)! = 30. We have i2 = 4, i3 ≥ 2, and i4 ≥ 3. We set x1 = (e)5 and xi = ((xi−1 )i )5 for every 2 ≤ i ≤ 4, and x5 = ((x4 )3 )5 . Note that xi is a {i} {1} black vertex in Sn for every i ∈ 4 and x5 is a black vertex in Sn . Obviously, x1 = x5 . 2 3 4 3 We set H = e, x1 , (x1 ) , x2 , (x2 ) , x3 , (x3 ) , x4 , (x4 ) , x5 . Case 1.1. i1 = 3. We have i2 = 4, i3 = 3, and i4 = 1. Let u1 = 24135, u2 = 41325, and u3 = 34125. We set W1 = e = 12345, 32145, 42135, 12435, 21435, 41235, 14235, 24135 = u1 W2 = e = 12345, 21345, 31245, 13245, 23145, 43125, 13425, 31425, 41325 = u2 W3 = e = 12345, 42315, 32415, 23415, 43215, 34215, 24315, 14325, 34125 = u3
ch016.tex
25/7/2008
12: 29
Page 454
454
Graph Theory and Interconnection Networks {5}
Obviously, W1 ∪ W2 ∪ W3 spans S5 and V (Wi ) ∩ V (Wj ) = {e} for every i, j ∈ 3 with {2} i = j. By Lemma 13.35, there exists a Hamiltonian path Q1 of S5 − {x2 , (x2 )3 } joining the white vertex (u1 )5 to a black vertex y1 with (y1 )1 = i1 . Again, there exists a Hamil{4} tonian path Q2 of S5 − {x4 , (x4 )3 } joining the black vertex (u2 )5 to a white vertex {3} y2 with (y2 )1 = i2 . Moreover, there exists a Hamiltonian path Q3 of S5 − {x3 , (x3 )4 } 5 joining the black vertex (u3 ) to a white vertex y3 with (y3 )1 = i3 . Similarly, there {1} exists a Hamiltonian path Q4 of S5 − {x1 , (x1 )2 } joining the black vertex x5 to a white vertex y4 with (y4 )1 = i4 . We set P1 = e, W1 , u1 , (u1 )5 , Q1 , y1 P2 = e, W2 , u2 , (u2 )5 , Q2 , y2 P3 = e, W3 , u3 , (u3 )5 , Q3 , y3 P4 = e, H, x5 , Q4 , y4 Obviously, l(P1 ) = 29 and l(Pi ) = 30 for every 2 ≤ i ≤ 4. Apparently, P1 , P2 , P3 , and P4 are the desired paths. See Figure 16.2a for illustration. Case 1.2. i1 = 3. We have i2 = 4, i3 = 1, and i4 = 2. Let u1 = 31425, u2 = 42135, and u3 = 21435. We set W1 = e = 12345, 21345, 41325, 14325, 34125, 43125, 13425, 31425 = u1 W2 = e = 12345, 32145, 23145, 13245, 31245, 41235, 14235, 24135, 42135 = u2 W3 = e = 12345, 42315, 24315, 34215, 43215, 23415, 32415, 12435, 21435 = u3 {5}
Obviously, W1 ∪ W2 ∪ W3 spans S5 and V (Wi ) ∩ V (Wj ) = {e} for every i, j ∈ 3 with {3} i = j. By Lemma 13.35, there exists a Hamiltonian path Q1 of S5 − {x3 , (x3 )4 } joining 3 S 5{ 2 }{ x 2, ( x 2) }
S5{ 5 }
u1 W1
e
W2
y1
u1 W1
3 { 4} S 5 {x4 , ( x4 ) }
u2
W3
5
(u2)
Q2
y2
4 { 3} S 5 { x3, ( x3) }
u3
H
(u1 )5 Q1
5
( u3)
Q3
Q4
(a)
FIGURE 16.2 Illustration of Case 1.
e
y4
( u1)5 Q 1 y1 3 { 4} S 5 { x 4 , ( x 4 ) }
u2
W2 W3
( u2)
5
Q 2 y2
3 { 2} S 5 { x 2 , ( x 2 ) }
y3
2 S5{ 1}{ x1 , (x1 ) }
x5
4
{ 3} S 5 {x 3 , ( x 3 ) }
S 5{ 5}
u3
( u3)5 Q 4 y4 2
H
S 5{1} { x1, (x1) }
x5 (b)
Q 3 y3
ch016.tex
25/7/2008
12: 29
Page 455
Spanning Diameter
455
the white vertex (u1 )5 to a black vertex y1 with (y1 )1 = i1 . Again, there exists a Hamil{4} tonian path Q2 of S5 − {x4 , (x4 )3 } joining the black vertex (u2 )5 to a white vertex {1} y2 with (y2 )1 = i2 . Moreover, there exists a Hamiltonian path Q3 of S5 − {x1 , (x1 )2 } joining the black vertex x5 to a white vertex y3 with (y3 )1 = i3 . Similarly, there exists {2} a Hamiltonian path Q4 of S5 − {x2 , (x2 )3 } joining the black vertex (u3 )5 to a white vertex y4 with (y4 )1 = i4 . We set P1 = e, W1 , u1 , (u1 )5 , Q1 , y1 P2 = e, W2 , u2 , (u2 )5 , Q2 , y2 P3 = e, H, x5 , Q3 , y3 P4 = e, W3 , u3 , (u3 )5 , Q4 , y4 Obviously, l(P1 ) = 29 and l(Pi ) = 30 for every 2 ≤ i ≤ 4. Apparently, P1 , P2 , P3 , and P4 are the desired paths. See Figure 16.2b for illustration. Case 2. n ≥ 6. Since n − 1 ≥ 5, we have ik = k + 2 for every 2 ≤ k ≤ n − 4, in−3 = 1, in−2 = 2, and in−1 = 3. We set uj = (e) j+2 and vj = ((e) j+2 ) j+1 for every j ∈ n − 4. {(n−1,n)} {(n−1,n)} Thus, uj is a black vertex in Sn for every and vj is a white vertex in Sn j ∈ n − 4. Note that Fn−2 (e) = {uj | j ∈ n − 4} ∪ {vj | j ∈ n − 4}. {(n−1,n)}
By Lemma 16.2, there is a Hamiltonian path P of Sn − Fn−2 (e) joining e to a black vertex x1 with (x1 )1 = 2. We recursively set xj as the unique neighbor of {(j,n)} with (xj )1 = j + 1 for every 2 ≤ j ≤ n − 4, and we set xn−3 as the (xj−1 )n−1 in Sn {(n−3,n)} unique neighbor of (xn−4 )n−1 in Sn with (xn−3 )1 = n − 1. It is easy to see that {(j+1,n)} xj is a black vertex for 1 ≤ j ≤ n − 3 and {(xj )n−1 , xj+1 } ⊂ Sn for 1 ≤ j ≤ n − 4. We construct Pj for every 1 ≤ j ≤ n − 1 as follows: 1. j ∈ n − 4 − {1}. By Lemma 13.35, there is a Hamiltonian path Tj of {( j+1,n)} − {(xj )n−1 , xj+1 } joining the black vertex (vj )n−1 to a white verSn { j+2} tex zj with (zj )1 = j + 2. Again, there is a Hamiltonian path Tj of Sn joining the black vertex (zj )n to a white vertex yj with (yj )1 = ij . Then we set Pj as e, uj , vj , (vj )n−1 , Tj , zj , (zj )n , Tj , yj . Obviously, l(Pj ) = n(n − 2)!. {1}
2. j = n − 3. We choose a white vertex yn−3 in Sn with (yn−3 )1 = in−3 . Note {(n−2,n)} to that there are ((n − 3)!/2) edges joining some black vertices of Sn {1} some white vertices of Sn and there are ((n − 3)!/2) edges joining some {(n−2,n)} {1} to some black vertices of Sn . We choose a white white vertices of Sn {1} {(n−2,n)} n and choose a black vertex r in Sn with (r) being a black vertex in Sn {1} {(n−2,n)} n . By Lemma 16.1, vertex s in Sn with (s) being a white vertex in Sn {1} there exist two disjoint paths H1 and H2 of Sn such that (1) H1 joins (e)n to {1} r, (2) H2 joins s to yn−3 , and (3) H1 ∪ H2 spans Sn . By Theorem 13.17, {(n−2,n)} joining the black vertex (r)n to there is a Hamiltonian path H of Sn n n the white vertex (s) . We set Pn−3 as e, (e) , H1 , r, (r)n , H, (s)n , s, H2 , yn−3 . Obviously, l(Pn−3 ) = n(n − 2)!.
ch016.tex
25/7/2008
12: 29
Page 456
456
Graph Theory and Interconnection Networks {(2,n)}
3. j = n − 1. By Lemma 13.35, there is a Hamiltonian path Q1 of Sn − {(x1 )n−1 , x2 } joining the black vertex (v1 )n−1 to a white vertex q with {3} (q)1 = 3. Again, there is a Hamiltonian path Q2 of Sn joining the black n vertex (q) to a white vertex yn−1 with (yn−1 )1 = in−1 . We set Pn−1 as
e, u1 , v1 , (v1 )n−1 , Q1 , q, (q)n , Q2 , yn−1 . Obviously, l(Pn−1 ) = n(n − 2)!. 4. We construct P1 and Pn−2 dependent on whether i1 = n − 1. We set L as x1 , (x1 )n−1 , x2 , (x2 )n−1 , . . . , xn−4 , (xn−4 )n−1 , xn−3 , (xn−3 )n . By {(1,n)} joining the black Theorem 13.2, there is a Hamiltonian path W of Sn vertex (e)n−1 to a white vertex p with (p)1 = 2. Suppose that i1 = n − 1. By Theorem 13.2, there is a Hamiltonian path R of {n−1} joining the white vertex (xn−3 )n to a black vertex y1 with (y1 )1 = i1 . Again, Sn {2} there exists a Hamiltonian path Z of Sn−1 joining the black vertex (p)n to a white vertex yn−2 with (yn−2 )1 = in−2 . We set P1 as e, P, x1 , L, (xn−3 )n , R, y1 and Pn−2 as e, (e)n−1 , W , p, (p)n , Z, yn−2 . Obviously, l(P1 ) = n(n − 2)! − 1 and l(Pn−2 ) = n(n − 2)!. Apparently, P1 , P2 , . . . , Pn−1 are the desired paths. See Figure 16.3a for illustration for the case n = 7. Suppose that i1 = n − 1. Note that in−2 = n − 1. Since (xn−3 )n is a white ver{n−1} with ((xn−3 )n )1 = n and ((xn−3 )n )n = n − 1, there is a black vertex tex in Sn {n−1} z in Sn such that z is the unique neighbor of (xn−3 )n with (z)1 = 2. Since n ((xn−3 ) )n−1 = n − 3, we have (z)n−1 = n − 3. Note that (z)n is a white vertex in {2} {2} Sn with ((z)n )n−1 = n − 3. Since (p)n is a black vertex in Sn with ((p)n )1 = n {2} n and ((p) )n = 2, there is a white vertex t in Sn such that t is the unique neighbor S7{ 7 }
(v1)
S7{ ( 6 , 7 ) }
(x1)
v1
u1
P1
P6
S 7{ 3}
S7{ ( 2 , 76) }
u2
(v2)
x2
{(4 ,7 ) } 6 7 3
S (x ) 6
x4 z3
p
e
7
(p) ( s)
7
7
y2
P1
P6
v2
7
u2
7
S
y3
{ 1} 7
q
( v2)
6
S (x ) 6
x4 z3
s
p
S7{ 2}
e
(a)
FIGURE 16.3 Illustration of Case 3 with n = 7.
(p) ( s)
7
(r)
7
7
S
(b)
7
( z) y1
7
{ 1} 7
r 7 ( e)
P4
y5 7 ( t) z
( z 3)7 y3
S7{(1 , 7 ) }
S7{( 5 , 7)} P5
( x4)
y2
S7{ 5}
P3
y4
7
S 7{ 6}
(e ) 6 y5
( z 2)
x3 z2
{(4 , 7) } 6 7 3
( v3) u3
7
(q) y6
x2
v3
7
r 7 ( e)
P4
y1
6
6 S7{ 4 } S7{ ( 3 , 7 ) } ( x2)
x1
P2
S7{ 2}
S7{(5, 7) } (r)
( x4)
( z 3)
S7{(1 , 7) } ( e) 6
(x1)
u1
S7{5}
P3 P5
S7{4} ( z 2)
x3 z2
6
(v1)
S 7{ ( 6 , 7 ) } v1
6
v3 u3
(q) y6
S7{ 3 }
S7{ ( 2 , 76) }
S7{6} ( v3)
P2
q
S7{ ( 3 , 7 ) } ( x2)
x1
v2
6
S7{ 7}
7
t y4 s
ch016.tex
25/7/2008
12: 29
Page 457
Spanning Diameter
457
TABLE 16.1 All Hamiltonian Cycles in S4
1234, 4231, 3241, 1243, 4213, 3214, 2314, 1324, 4321, 2341, 1342, 4312, 3412, 2413, 1423, 3421, 2431, 1432, 4132, 3142, 2143, 4123, 3124, 2134, 1234
1234, 4231, 3241, 1243, 4213, 2413, 3412, 1432, 2431, 3421, 1423, 4123, 2143, 3142, 4132, 2134, 3124, 1324, 4321, 2341, 1342, 4312, 2314, 3214, 1234
1234, 4231, 3241, 1243, 2143, 4123, 3124, 2134, 4132, 3142, 1342, 2341, 4321, 1324, 2314, 4312, 3412, 1432, 2431, 3421, 1423, 2413, 4213, 3214, 1234
1234, 4231, 3241, 2341, 1342, 4312, 2314, 1324, 4321, 3421, 2431, 1432, 3412, 2413, 1423, 4123, 3124, 2134, 4132, 3142, 2143, 1243, 4213, 3214, 1234
1234, 4231, 3241, 2341, 1342, 3142, 2143, 1243, 4213, 3214, 2314, 4312, 3412, 2413, 1423, 4123, 3124, 1324, 4321, 3421, 2431, 1432, 4132, 2134, 1234
1234, 4231, 3241, 2341, 4321, 3421, 2431, 1432, 4132, 3142, 1342, 4312, 3412, 2413, 1423, 4123, 2143, 1243, 4213, 3214, 2314, 1324, 3124, 2134, 1234
1234, 4231, 2431, 1432, 3412, 4312, 2314, 3214, 4213, 2413, 1423, 3421, 4321, 1324, 3124, 4123, 2143, 1243, 3241, 2341, 1342, 3142, 4132, 2134, 1234
1234, 4231, 2431, 1432, 4132, 2134, 3124, 1324, 4321, 3421, 1423, 4123, 2143, 3142, 1342, 2341, 3241, 1243, 4213, 2413, 3412, 4312, 2314, 3214, 1234
1234, 4231, 2431, 1432, 4132, 3142, 2143, 1243, 3241, 2341, 1342, 4312, 3412, 2413, 4213, 3214, 2314, 1324, 4321, 3421, 1423, 4123, 3124, 2134, 1234
1234, 4231, 2431, 3421, 1423, 2413, 3412, 1432, 4132, 2134, 3124, 4123, 2143, 3142, 1342, 4312, 2314, 1324, 4321, 2341, 3241, 1243, 4213, 3214, 1234
1234, 4231, 2431, 3421, 1423, 4123, 3124, 1324, 4321, 2341, 3241, 1243, 2143, 3142, 1342, 4312, 2314, 3214, 4213, 2413, 3412, 1432, 4132, 2134, 1234
1234, 4231, 2431, 3421, 4321, 2341, 3241, 1243, 4213, 2413, 1423, 4123, 2143, 3142, 1342, 4312, 3412, 1432, 4132, 2134, 3124, 1324, 2314, 3214, 1234
1234, 3214, 4213, 1243, 3241, 4231, 2431, 1432, 3412, 2413, 1423, 3421, 4321, 2341, 1342, 4312, 2314, 1324, 3124, 4123, 2143, 3142, 4132, 2134, 1234
1234, 3214, 4213, 2413, 3412, 4312, 2314, 1324, 3124, 4123, 1423, 3421, 4321, 2341, 1342, 3142, 2143, 1243, 3241, 4231, 2431, 1432, 4132, 2134, 1234
1234, 3214, 4213, 2413, 1423, 4123, 2143, 1243, 3241, 4231, 2431, 3421, 4321, 2341, 1342, 3142, 4132, 1432, 3412, 4312, 2314, 1324, 3124, 2134, 1234
1234, 3214, 2314, 4312, 1342, 3142, 4132, 1432, 3412, 2413, 4213, 1243, 2143, 4123, 1423, 3421, 2431, 4231, 3241, 2341, 4321, 1324, 3124, 2134, 1234
1234, 3214, 2314, 1324, 4321, 3421, 2431, 4231, 3241, 2341, 1342, 4312, 3412, 1432, 4132, 3142, 2143, 1243, 4213, 2413, 1423, 4123, 3124, 2134, 1234
1234, 3214, 2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431, 1432, 3412, 4312, 1342, 3142, 4132, 2134, 1234
of (p)n with (t)1 = n − 1. Since (p)n−1 = 1 and (p)n = n, we have ((p)n )n−1 = 1 and ((p)n )1 = n. Since ((p)n )n−1 = 1, we have (t)n−1 = 1. Since ((z)n )n−1 = n − 3 and (t)n−1 = 1, we have (z)n = t. By Theorem 16.1, there is a Hamiltonian path {2} W1 of Sn − {(p)n , t} joining (z)n to a black vertex y1 with (y1 )1 = i1 . Again, {n−1} − {(xn−3 )n , z} joining (t)n to a white there is a Hamiltonian path W2 of Sn vertex yn−2 with (yn−2 )1 = in−2 . We set P1 as e, P, x1 , L, (xn−3 )n , z, (z)n , W1 , y1 and Pn−2 as e, (e)n−1 , W , p, (p)n , t, (t)n , W2 , yn−2 . Obviously, l(P1 ) = n(n − 2)! − 1 and l(Pn−2 ) = n(n − 2)!. Apparently, P1 , P2 , . . . , Pn−1 are the desired paths. See Figure 16.3b for illustration for the case where n = 7. Using depth-first search, we list all Hamiltonian cycles in S4 in Table 16.1. LEMMA 16.6 D3sL (S4 ) = 15. Proof: Let u be any white vertex in S4 and let v be any black vertex in S4 . Since S4 is vertex-transitive, we assume that u = 1234. Suppose that d(u, v) = 1. Since S4 is edge-transitive, we assume that v = 2134. Let {P1 , P2 , P3 } be a 3∗ -container joining u to v. Since S4 is 3-regular, one of three paths, say P3 , is u, v. Thus, P1 ∪ P2−1 forms a Hamiltonian cycle of S4 not using the edge (u, v). From Table 16.1, we obtain d3sL (u, v) = 15. Thus, D3sL (S4 ) ≥ 15. Suppose that d(u, v) = 1. Then v ∈ {1324, 1243, 1432, 2413, 2341, 3142, 4123, 4312, 3421}. We find the following set of 3∗ -containers of S4 between u = 1234 and v: C(1234, 1324)
C(1234, 1243)
P1 = 1234, 4231, 3241, 1243, 2143, 4123, 3124, 1324 P2 = 1234, 2134, 4132, 3142, 1342, 2341, 4321, 1324 P3 = 1234, 3214, 4213, 2413, 1423, 3421, 2431, 1432, 3412, 4312, 2314, 1324 P1 = 1234, 2134, 4132, 1432, 3412, 2413, 4213, 1243 P2 = 1234, 3214, 2314, 4312, 1342, 3142, 2143, 1243 P3 = 1234, 4231, 2431, 3421, 1423, 4123, 3124, 1324, 4321, 2341, 3241, 1243
ch016.tex
25/7/2008
12: 29
458
Page 458
Graph Theory and Interconnection Networks
C(1234, 1432)
C(1234, 2413)
C(1234, 2341)
C(1234, 3142)
C(1234, 4123)
C(1234, 4312)
C(1234, 3421)
P1 = 1234, 3214, 2314, 1324, 4321, 3421, 2431, 1432 P2 = 1234, 4231, 3241, 2341, 1342, 4312, 3412, 1432 P3 = 1234, 2134, 3124, 4123, 1423, 2413, 4213, 1243, 2143, 3142, 4132, 1432 P1 = 1234, 3214, 4213, 2413 P2 = 1234, 4231, 2431, 3421, 4321, 2341, 3241, 1243, 2143, 4123, 1423, 2413 P3 = 1234, 2134, 3124, 1324, 2314, 4312, 1342, 3142, 4132, 1432, 3412, 2413 P1 = 1234, 4231, 3241, 2341 P2 = 1234, 3214, 2314, 4312, 3412, 2413, 4213, 1243, 2143, 3142, 1342, 2341 P3 = 1234, 2134, 4132, 1432, 2431, 3421, 1423, 4123, 3124, 1324, 4321, 2341 P1 = 1234, 2134, 4132, 3142 P2 = 1234, 4231, 3241, 2341, 4321, 3421, 2431, 1432, 3412, 4312, 1342, 3142 P3 = 1234, 3241, 2341, 4321, 3421, 1423, 4123, 2143, 1243, 4213, 2413, 3412 P1 = 1234, 2134, 3124, 4123 P2 = 1234, 3214, 4213, 2413, 3412, 4312, 2314, 1324, 4321, 3421, 1423, 4123 P3 = 1234, 4231, 2431, 1432, 4132, 3142, 1342, 2341, 3241, 1243, 2143, 4213 P1 = 1234, 3214, 2314, 4312 P2 = 1234, 2134, 4132, 3142, 2143, 4123, 3124, 1324, 4321, 2341, 1342, 4312 P3 = 1234, 4231, 3241, 1243, 4213, 2413, 1423, 3421, 2431, 1432, 3412, 4312 P1 = 1234, 4231, 2431, 3421 P2 = 1234, 2134, 3124, 4123, 2143, 3142, 4132, 1432, 3412, 2413, 1423, 3421 P3 = 1234, 3214, 4213, 1243, 3241, 2341, 1342, 4312, 2314, 1324, 4321, 3421
From this table, d3sL (u, v) ≤ 15 if d(u, v) = 1. Hence, D3sL (S4 ) = 15.
sL LEMMA 16.7 Dn−1 (Sn ) ≥ n!/(n − 2) + 1 = (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1 if n ≥ 5.
Proof: Let u and v be two adjacent vertices of Sn . Obviously, u and v are in different partite sets. Let {P1 , P2 , . . . , Pn−1 } be any (n − 1)∗ -container of Sn joining u)to v. *Obviously, ) one of these * paths is u, v. Thus, max{l(Pi ) | 1 ≤ i ≤ sL 2 n − 1} ≥ n!n −−22 + 1 = n n! − −2 n − 2 + 1 = n!/(n − 2) + 1. Hence, dn−1 (u, v) ≥ sL n!/(n − 2) + 1 and Dn−1 (Sn ) ≥ n!/(n − 2) + 1.
LEMMA 16.8
D4sL (S5 ) ≤ 41.
Proof: Let u be any white vertex and v be any black vertex of S5 . Obviously, d(u, v) is odd. Case 1. d(u, v) = 1. Since S5 is vertex-transitive and edge-transitive, we may assume that u = e = 12345 and v = (e)5 = 52341. By Lemma 16.3, there exist three paths {5} P1 , P2 , and P3 of S5 such that (1) P1 joins 12345 to the black vertex 24135 with l(P1 ) = 7, (2) P2 joins 12345 to the white vertex 34125 with l(P2 ) = 8, (3) P3 joins {5} 12345 to the white vertex 41325 with l(P3 ) = 8, and (4) P1 ∪ P2 ∪ P3 spans S5 . {1} Similarly, there exist three paths Q1 , Q2 , and Q3 of S5 such that (1) Q1 joins 52341 to the white vertex 24531 with l(Q1 ) = 7, (2) Q2 joins 52341 to the black vertex 34521 with l(Q2 ) = 8, (3) Q3 joins 52341 to the black vertex 45321 with l(Q3 ) = 8, and (4) {1} {2} Q1 ∪ Q2 ∪ Q3 spans S5 . By Theorem 13.2, there is a Hamiltonian path R1 of S5
ch016.tex
25/7/2008
12: 29
Page 459
Spanning Diameter
459
joining the white vertex 54132 to the black vertex 14532, there is a Hamiltonian path {3} R2 of S5 joining the black vertex 54123 to the white vertex 14523, and there is a {4} Hamiltonian path R3 of S5 joining the black vertex 51324 to the white vertex 15324. Then we set T1 = e = 12345, P1 , 24135, 54132, R1 , 14532, 24531, (Q1 )−1 , 52341 = (e)5 T2 = e = 12345, P2 , 34125, 54123, R2 , 14523, 34521, (Q2 )−1 , 52341 = (e)5 T3 = e = 12345, P3 , 41325, 51324, R3 , 15324, 45321, (Q3 )−1 , 52341 = (e)5 T4 = e = 12345, 52341 = (e)5 Obviously, {T1 , T2 , T3 , T4 } is a 4∗ -container of S5 between e and (e)5 . Moreover, l(T1 ) = 39, l(T2 ) = l(T3 ) = 41, and l(T4 ) = 1. Thus, d4sL (e, (e)5 ) ≤ 41. Case 2. d(u, v) ≥ 3. Since d(u, v) ≥ 3, there is i ∈ {2, 3, 4, 5} such that (u)i = (v)i and {(u)i , (v)i } ∩ {(u)1 , (v)1 } = ∅. Without loss of generality, we assume that (u)5 = (v)5 and {(u)5 , (v)5 } ∩ {(u)1 , (v)1 } = ∅. Moreover, we assume that (u)5 = 5, (v)5 = 4, (u)1 = 1, and (v)1 = 5. Since (u)1 = 1 and (u)5 = 5, we have {(u)2 , (u)3 , (u)4 } = {2, 3, 4}. Case 2.1. (v)1 = 1. We have {(v)2 , (v)3 , (v)4 } = {2, 3, 5}. By Lemma 16.4, there exist {5} four paths P1 , P2 , P3 , and P4 of S5 such that (1) P1 joins u to a white vertex w with (w)1 = 2 and l(P1 ) = 2, (2) P2 joins u to a white vertex x with (x)1 = 3 and l(P1 ) = 2, (3) P3 joins u to a black vertex y with (y)1 = 4 and l(P3 ) = 19, (4) P4 joins u to a black {5} vertex z = y with (z)1 = 4 and l(P4 ) = 19, (5) P1 ∪ P2 ∪ P3 spans S5 , (6) P1 ∪ P2 ∪ P4 {5} spans S5 , (7) V (P1 ) ∩ V (P2 ) ∩ V (P3 ) = {u}, and (8) V (P1 ) ∩ V (P2 ) ∩ V (P4 ) = {u}. {4} Similarly, there exist four paths Q1 , Q2 , Q3 , and Q4 of S5 such that (1) Q1 joins v to a black vertex p with (p)1 = 2 and l(Q1 ) = 2, (2) Q2 joins v to a black vertex q with (q)1 = 3 and l(Q2 ) = 2, (3) Q3 joins v to a white vertex r with (r)1 = 5 and l(Q3 ) = 19, (4) Q4 joins v to a white vertex s = r with (s)1 = 5 and l(Q4 ) = 19, (5) Q1 ∪ Q2 ∪ Q3 {4} {4} spans S5 , (6) Q1 ∪ Q2 ∪ Q4 spans S5 , (7) V (Q1 ) ∩ V (Q2 ) ∩ V (Q3 ) = {v}, and (8) V (Q1 ) ∩ V (Q2 ) ∩ V (Q4 ) = {v}. {5} By Lemma 13.7, there are exactly three edges joining some black vertices of S5 {4} to some white vertices of S5 . By the pigeonhole principle, at least one vertex in {y, z} is adjacent to a vertex in {r, s}. Without loss of generality, we assume that y is adjacent {1} to r. Let T1 be the Hamiltonian path of S5 joining the black vertex (u)5 to the white {2} vertex (v)5 , T2 be the Hamiltonian path of S5 joining the black vertex (w)5 to the {3} white vertex (p)5 , and T3 be the Hamiltonian path of S5 joining the black vertex (x)5 5 to the white vertex (q) . We set H1 = u, (u)5 , T1 , (v)5 , v H2 = u, P1 , w, (w)5 , T2 , (p)5 , p, Q1−1 , v H3 = u, P2 , x, (x)5 , T3 , (q)5 , q, Q2−1 , v H4 = u, P3 , y, r, Q3−1 , v
ch016.tex
460
25/7/2008
12: 29
Page 460
Graph Theory and Interconnection Networks
Obviously, {H1 , H2 , H3 , H4 } is a 4∗ -container of S5 between u and v. Moreover, l(H1 ) = 25, l(H2 ) = l(H3 ) = 29, and l(H4 ) = 39. Thus, d4sL (u, v) ≤ 41. Case 2.2. (v)1 = a ∈ {2, 3}. We have {(v)2 , (v)3 , (v)4 } = {1, 2, 3, 5} − {a}. Let b be the only element in {2, 3} − {a}. By Lemma 16.4, there exist four paths P1 , P2 , P3 , {5} and P4 of S5 such that (1) P1 joins u to a white vertex w with (w)1 = a and l(P1 ) = 2, (2) P2 joins u to a white vertex x with (x)1 = b and l(P2 ) = 2, (3) P3 joins u to a black vertex y with (y)1 = 4 and l(P3 ) = 19, (4) P4 joins u to a black vertex z = y {5} {5} with (z)1 = 4 and l(P4 ) = 19, (5) P1 ∪ P2 ∪ P3 spans S5 , (6) P1 ∪ P2 ∪ P4 spans S5 , (7) V (P1 ) ∩ V (P2 ) ∩ V (P3 ) = {u}, and (8) V (P1 ) ∩ V (P2 ) ∩ V (P4 ) = {u}. {4} Again, there exist four paths Q1 , Q2 , Q3 , and Q4 of S5 such that (1) Q1 joins v to a black vertex p with (p)1 = 1 and l(Q1 ) = 2, (2) Q2 joins v to a black vertex q with (q)1 = b and l(Q2 ) = 2, (3) Q3 joins v to a white vertex r with (r)1 = 5 and l(Q3 ) = 19, (4) Q4 joins v to a white vertex s = r with (s)1 = 5 and l(Q4 ) = 19, (5) Q1 ∪ Q2 ∪ Q3 {4} {4} spans S5 , (6) Q1 ∪ Q2 ∪ Q4 spans S5 , (7) V (Q1 ) ∩ V (Q2 ) ∩ V (Q3 ) = {v}, and (8) V (Q1 ) ∩ V (Q2 ) ∩ V (Q4 ) = {v}. {5} By Lemma 13.7, there are exactly three edges joining some black vertices of S5 {4} to some white vertices of S5 . By the pigeonhole principle, at least one vertex in {y, z} is adjacent to a vertex in {r, s}. Without loss of generality, we assume that y is adjacent {1} to r. Let T1 be the Hamiltonian path of S5 joining the black vertex (u)5 to the white {a} vertex (p)5 , T2 be the Hamiltonian path of S5 joining the black vertex (w)5 to the {b} white vertex (v)5 , and T3 be the Hamiltonian path of S5 joining the black vertex (x)5 5 to the white vertex (q) . We set H1 = u, (u)5 , T1 , (p)5 , p, Q1−1 , v H2 = u, P1 , w, (w)5 , T2 , (v)5 , v H3 = u, P2 , x, (x)5 , T3 , (q)5 , q, Q2−1 , v H4 = u, P3 , y, r, Q3−1 , v Obviously, {H1 , H2 , H3 , H4 } is a 4∗ -container of S5 between u and v. Moreover, l(H1 ) = l(H2 ) = 27, l(H3 ) = 29, and l(H4 ) = 39. Thus, d4sL (u, v) ≤ 41. sL LEMMA 16.9 dn−1 (u, v) ≤ (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1 = n!/(n − 2) + 1 for every n ≥ 6.
Proof: Let u be any white vertex and v be any black vertex of Sn . Obviously, d(u, v) is odd. Case 1. d(u, v) = 1. Since the star graph is vertex-transitive and edge-transitive, we may assume that u = e and v = (e)n . {n} By Lemma 16.5, there exist (n − 2) paths P1 , P2 , . . . , Pn−2 of Sn such that (1) P1 joins e to a black vertex x1 with (x1 )1 = 2 and l(P1 ) = (n − 1)(n − 3)! − 1, (2) Pi joins e to a white vertex xi with (xi )1 = i + 1 and l(Pi ) = (n − 1)(n − 3)! for / " {n} 2 ≤ i ≤ n − 2, (3) ni =−12 Pi spans Sn , and (4) n−2 i=1 V (Pi ) = {e}. Again, there exist
ch016.tex
25/7/2008
12: 29
Page 461
Spanning Diameter
461 {1}
n − 2 paths Q1 , Q2 , . . . , Qn−2 of Sn such that (1) Q1 joins (e)n to a white vertex y1 with (y1 )1 = 2 and l(Q1 ) = (n − 1)(n − 3)! − 1, (2) Qi joins (e)n to a black vertex yi " {1} with (yi )1 = i + 1 and l(Qi ) = (n − 1)(n − 3)! for 2 ≤ i ≤ n−2, (3) n−2 i = 1 Qi spans Sn , /n−2 and (4) i=1 V (Qi ) = {v}. {2} By Theorem 13.2, there is a Hamiltonian path R1 of Sn joining the white vertex {i+1} joining (x1 )n to the black vertex (y1 )n . Again, there is a Hamiltonian path Ri of Sn the black vertex (xi )n to the black vertex (yi )n for every 2 ≤ i ≤ n − 2. We set Hi = e, Pi , xi , (xi )n , Ri , (yi )n , yi , Qi−1 , (e)n for every 1 ≤ i ≤ n − 2 and Hn−1 = e, (e)n . Then {H1 , H2 , . . . , Hn−1 } is an (n − 1)∗ -container between e and (e)n . Obviously, l(H1 ) = (n − 1)! + 2(n − 2)! + 2(n − 3)! − 1, l(Hi ) = (n − 1)! + sL (e, (e)n ) ≤ 2(n − 2)! + 2(n − 3)! + 1 for 2 ≤ i ≤ n − 2, and l(Hn−1 ) = 1. Hence, dn−1 (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1. Case 2. d(u, v) ≥ 3. Since d(u, v) ≥ 3, there is i ∈ n − {1} such that (u)i = (v)i and {(u)i , (v)i } ∩ {(u)1 , (v)1 } = ∅. Without loss of generality, we assume that (u)n = (v)n and {(u)n , (v)n } ∩ {(u)1 , (v)1 } = ∅. Moreover, we assume that (u)n = n, (v)n = n − 1, (u)1 = 1, and (v)1 = 5. Case 2.1. (v)1 = 1. By Lemma 16.5, there are (n − 2) paths P1 , P2 , . . . , Pn−2 {n} of Sn such that (1) P1 joins u to a black vertex x1 with (x1 )1 = 1 and l(P1 ) = (n − 1)(n − 3)! − 1, (2) Pi joins u to a white vertex xi with (xi )1 = i and " /n−2 {n} l(Pi ) = (n − 1)(n − 3)! for 2 ≤ i ≤ n − 2, (3) n−2 i = 1 Pi spans Sn , and (4) i=1 V (Pi ) = {n−1} {u}. Again, there are (n − 2) paths Q1 , Q2 , . . . , Qn−2 of Sn such that (1) Q1 joins v to a white vertex y1 with (y1 )1 = 1 and l(Q1 ) = (n − 1)(n − 3)! − 1, (2) Qi joins v to a black vertex yi with (yi )1 = i and l(Qi ) = (n − 1)(n − 3)! for 2 ≤ i ≤ n − 2, (3) / "n−2 {n−1} , and (4) n−2 i = 1 Qi spans Sn i=1 V (Qi ) = {v}. {1} By Lemma 16.1, there are two disjoint paths H1 and H2 of Sn such that (1) H1 n n joins the white vertex (x1 ) to the black vertex (y1 ) , (2) H2 joins the black vertex {1} (u)n to the white vertex (v)n , and (3) H1 ∪ H2 spans Sn . By Theorem 13.2, there is a {i} Hamiltonian path Ri of Sn joining the black vertex (xi )n to the white vertex (yi )n for every 2 ≤ i ≤ n − 2. We set T1 = u, P1 , x1 , (x1 )n , H1 , (y1 )n , y1 , Q1−1 , v Ti = u, Pi , xi , (xi )n , Ri , (yi )n , yi , Qi−1 , v for 2 ≤ i ≤ n − 2
Tn−1 = u, (u)n , H2 , (v)n , v
Obviously, {T1 , T2 , . . . , Tn−1 } is an (n − 1)∗ -container of Sn between u and v. sL (u, v) ≤ (n − 1)! + Moreover, l(Ti ) ≤ (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1. Thus, dn−1 2(n − 2)! + 2(n − 3)! + 1. Case 2.2. (v)1 = t ∈ n − 2 − {1}. By Lemma 16.5, there are (n − 2) paths {n} P1 , P2 , . . . , Pn−2 of Sn such that (1) P1 joins u to a black vertex x1 with (x1 )1 = 1 and l(P1 ) = (n − 1)(n − 3)! − 1, (2) Pi joins u to a white vertex xi with " {n} (xi )1 = i and l(Pi ) = (n − 1)(n − 3)! for 2 ≤ i ≤ n − 2, (3) n−2 i = 1 Pi spans Sn , and /n−2 {n−1} (4) i=1 V (Pi ) = {u}. Again, there are (n − 2) paths Q1 , Q2 , . . . , Qn−2 of Sn such
ch016.tex
25/7/2008
12: 29
462
Page 462
Graph Theory and Interconnection Networks
that (1) Q1 joins v to a white vertex y1 with (y1 )1 = 1 and l(Q1 ) = (n − 1)(n − 3)! − 1, (2) Qi joins v to a black vertex yi with (yi )1 = i and l(Qi ) = (n − 1)(n − 3)! for {n−1} , and (4) ∩n−2 2 ≤ i ≤ n − 2, (3) ∪n−2 i = 1 Qi spans Sn i=1 V (Qi ) = {v}. {t} n Since (v) is a white vertex in Sn with ((v)n )1 = (v)n = n − 1 and n ((v) )n = (v)1 = t = 1, we can choose a black vertex w in NSn{t} ((v)n ) with (w)1 = 1. By {1}
Lemma 16.1, there exist two disjoint paths H1 and H2 of Sn such that (1) H1 joins the white vertex (x1 )n to the black vertex (y1 )n , (2) H2 joins the black vertex (u)n to {1} the white vertex (w)n , and (3) H1 ∪ H2 spans Sn . {t} By Theorem 16.1, there exists a Hamiltonian path Rt of Sn − {(v)n , w} joining the black vertex (xt )n to the white vertex (yt )n . By Theorem 13.2, there exists a {i} Hamiltonian path Ri of Sn joining the black vertex (xi )n to the white vertex (yi )n for every 2 ≤ i ≤ n − 2 with i = t. We set T1 = u, P1 , x1 , (x1 )n , H1 , (y1 )n , y1 , Q1−1 , v Ti = u, Pi , xi , (xi )n , Ri , (yi )n , yi , Qi−1 , v for 2 ≤ i ≤ n − 2
Tn−1 = u, (u)n , H2 , (w)n , w, (v)n , v
Obviously, {T1 , T2 , . . . , Tn−1 } is an (n − 1)∗ -container of Sn between u and v. sL Moreover, l(Ti ) ≤ (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1. Thus, dn−1 (u, v) ≤ (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1. THEOREM 16.2
⎧ 1 if n = 2 ⎪ ⎪ ⎨ 5 if n = 3 sL Dn−1 (Sn ) = 15 if n = 4 ⎪ ⎪ ⎩ (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1 if n ≥ 5
Proof: It is easy to check whether D1sL (S2 ) = 1 and D2sL (S3 ) = 5. By Lemma sL 16.6, D3sL (S4 ) = 15. By Lemmas 16.7 through 16.9, we have Dn−1 (Sn ) = (n − 1)! + 2(n − 2)! + 2(n − 3)! + 1 if n ≥ 5. Hence, this statement is proved. LEMMA 16.10 D2sL (S4 ) = 15. Proof: Let u and v be any two distinct vertices of S4 . Since S4 is vertex-transitive, we assume that u = 1234. Let {P1 , P2 } be a 2∗ -container joining u to v. Thus, P1 ∪ P2−1 is a Hamiltonian cycle of S4 . In Table 16.1, we list all the possible Hamiltonian cycles of S4 . From Table 16.1, we know that d2sL (1234, v) = 13 if v ∈ {1423, 3142, 2413, 1243, 3421, 1432, 2341, 4123, 4312} and d2sL (1234, v) = 15 if v ∈ {2134, 3214, 4231}. Hence, D2sL (S4 ) = 15. LEMMA 16.11 Assume that a and b are any two distinct elements of 4 and u is any white vertex of S4 . There exist two paths P1 and P2 of S4 such that (1) P1 joins u
ch016.tex
25/7/2008
12: 29
Page 463
Spanning Diameter
463
to a black vertex x with (x)1 = a and l(P1 ) = 5, (2) P2 joins u to a white vertex y with (y)1 = b and l(P2 ) = 18, and (3) P1 ∪ P2 spans S4 . Proof: Since S4 is vertex-transitive, we may assume that u = 1234. The required two paths are listed here: P1 = 1234, 3214, 4213, 2413, 3412, 1432 P2 = 1234, 4231, 2431, 3421, 1423, 4123, 3124, 2134, 4132, 3142, 1342, 4312, 2314, 1324, 4321, 2341, 3241, 1243, 2143 P1 = 1234, 3214, 4213, 2413, 3412, 1432 P2 = 1234, 4231, 2431, 3421, 1423, 4123, 2143, 1243, 3241, 2341, 4321, 1324, 2314, 4312, 1342, 3142, 4132, 2134, 3124 P1 = 1234, 3214, 4213, 2413, 3412, 1432 P2 = 1234, 4231, 2431, 3421, 1423, 4123, 3124, 2134, 4132, 3142, 2143, 1243, 3241, 2341, 1342, 4312, 2314, 1324, 4321 P1 = 1234, 3214, 2314, 4312, 1342, 2341 P2 = 1234, 2134, 3124, 1324, 4321, 3421, 2431, 4231, 3241, 1243, 4213, 2413, 3412, 1432, 4132, 3142, 2143, 4123, 1423 P1 = 1234, 2134, 4132, 3142, 1342, 2341 P2 = 1234, 3214, 4213, 2413, 1423, 3421, 4321, 1324, 2314, 4312, 3412, 1432, 2431, 4231, 3241, 1243, 2143, 4123, 3124 P1 = 1234, 3214, 2314, 4312, 1342, 2341 P2 = 1234, 2134, 4132, 3142, 2143, 4123, 3124, 1324, 4321, 3421, 1423, 2413, 3412, 1432, 2431, 4231, 3241, 1243, 4213 P1 = 1234, 2134, 3124, 1324, 2314, 3214 P2 = 1234, 4231, 3241, 2341, 4321, 3421, 2431, 1432, 4132, 3142, 1342, 4312, 3412, 2413, 4213, 1243, 2143, 4123, 1423 P1 = 1234, 3214, 4213, 2413, 1423, 3421 P2 = 1234, 4231, 3241, 1243, 2143, 4123, 3124, 2134, 4132, 3142, 1342, 2341, 4321, 1324, 2314, 4312, 3412, 1432, 2431 P1 = 1234, 3214, 4213, 2413, 1423, 3421 P2 = 1234, 2134, 3124, 4123, 2143, 1243, 3241, 4231, 2431, 1432, 3412, 4312, 2314, 1324, 4321, 2341, 1342, 3142, 4132 P1 = 1234, 3214, 4213, 1243, 3241, 4231 P2 = 1234, 2134, 4132, 3142, 2143, 4123, 3124, 1324, 2314, 4312, 1342, 2341, 4321, 3421, 2431, 1432, 3412, 2413, 1423 P1 = 1234, 3214, 4213, 1243, 3241, 4231 P2 = 1234, 2134, 4132, 3142, 2143, 4123, 3124, 1324, 2314, 4312, 1342, 2341, 4321, 3421, 1423, 2413, 3412, 1432, 2431 P1 = 1234, 3214, 4213, 1243, 3241, 4231 P2 = 1234, 2134, 4132, 3142, 2143, 4123, 1423, 2413, 3412, 1432, 2431, 3421, 4321, 2341, 1342, 4312, 2314, 1324, 3124
Hence, this statement is proved.
THEOREM 16.3 ⎧ ⎨5 sL D2 (Sn ) = 15 ⎩ n! 2 +1
if n = 3 if n = 4 if n ≥ 5
Proof: It is easy to check whether D2sL (S3 ) = 5. By Lemma 16.10, we have that D2sL (S4 ) = 15. Thus, we assume that n ≥ 5. Let u be a white vertex and v be a black vertex of Sn . Let P1 and P2 be any 2∗ -container of Sn joining u to v. Obviously, max{l(P1 ), l(P2 )} ≥ (n!/2) + 1. Hence, d2sL (u, v) ≥ (n!/2) + 1 and D2sL (Sn ) ≥ (n!/2) + 1. Hence, we only need to show that d2sL (u, v) ≤ (n!/2) + 1. Since {n} {n−1} Sn is edge-transitive, we assume that u ∈ Sn and v ∈ Sn . {5}
Case 1. n = 5. By Lemma 16.11, there exist two paths H1 and H2 of S5 such that (1) H1 joins u to a black vertex x with (x)1 = 1 and l(H1 ) = 5, (2) H2 joins u to a white {5} vertex y with (y)1 = 3 and l(H2 ) = 18, and (3) H1 ∪ H2 spans S5 . Again, there exist {4} two paths T1 and T2 of S5 such that (1) T1 joins v to a white vertex p with (p)1 = 2 and l(T1 ) = 5, (2) T2 joins v to a black vertex q with (q)1 = 3 and l(T2 ) = 18, and
ch016.tex
25/7/2008
12: 29
Page 464
464
Graph Theory and Interconnection Networks
S5{ 5} H1 x
u
H2
S5{ 1}
5
S5{ 3}
5
S5{ 2}
(x) R
y
( y)
Z
( p)
5
(q)
5
S5{ 4 }
Sn{n }
p T1 v
q
u
T2
x
P
SnH
n
Sn< n
2> H n
( q)
n
(p) W ( z)
n
(x)
p
R
(a)
Sn{n }
u
P
(x)n R
p
1}
q
Q z y
v
(b)
SnH
x
Sn{ n
SnB
n
(p) M
SnA
(s) n
L
s
SnT
t
(t)
(q)n
Sn{n
1}
q
Q n
W ( z)
n
z
y
v
(c)
FIGURE 16.4 Illustration for Theorem 16.3. {4}
{1,2}
(3) T1 ∪ T2 spans S5 . By Theorem 13.17, there is a Hamiltonian path R of S5 joining the white vertex (x)5 to the black vertex (p)5 . Again, there is a Hamiltonian {3} path Z of S5 joining the black vertex (y)5 to the white vertex (q)5 . We set L1 = u, H1 , x, (x)5 , R, (p)5 , p, T1−1 , v L2 = u, H2 , y, (y)5 , Z, (q)5 , q, T2−1 , v Obviously, {L1 , L2 } is a 2∗ -container. Moreover, l(L1 ) = 59 and l(L2 ) = 61. Hence, d2sL (u, v) ≤ (n!/2) + 1. See Figure 16.4a for illustration. {n}
Case 2. n ≥ 6 is even. Let x be a neighbor of u in Sn with (x)1 ∈ n − 2. {n−1} {n−1} . Let z be a neighbor of y in Sn with Let y be a neighbor of v in Sn (z)1 ∈ n − 2 − {(v)1 , (y)1 , (x)1 }. Let a1 a2 . . . an−2 be a permutation of n − 2 such that a1 = (x)1 and an−2 = (z)1 . Let H = {a1 , a2 , . . . , a(n−2)/2 }. By Theorem 13.2, there {n} is a Hamiltonian path P of Sn − {x} joining u to a white vertex p with (p)1 = an−2 . {n−1} − {y, z} joining a white By Theorem 16.1, there is a Hamiltonian path Q of Sn vertex q with (q)1 = a1 to v. By Theorem 13.17, there is a Hamiltonian path R of SnH joining the white vertex (x)n to the black vertex (q)n . Again, there is a Hamiltonian
n−2−H joining the black vertex (p)n to the white vertex (z)n . We set path W of Sn L1 = u, x, (x)n , R, (q)n , q, Q, v L2 = u, P, p, (p)n , W , (z)n , z, y, v Obviously, {L1 , L2 } is a 2∗ -container of Sn between u and v. Since l(L1 ) = (n!/2) − 1 and l(L2 ) = (n!/2) + 1, we have d2sL (u, v) ≤ (n!/2) + 1. See Figure 16.4b for illustration. {n}
Case 3. n ≥ 7 is odd. Let x be a neighbor of u in Sn with (x)1 ∈ n − 2. Let y {n−1} {n−1} . Let z be a neighbor of y in Sn be a neighbor of v in Sn with (z)1 ∈ n − 2 − {(v)1 , (y)1 , (x)1 }. Let a1 a2 . . . an−2 be a permutation of
n − 2 such that a1 = (x)1 and an−3 = (z)1 . Let H = {a1 , a2 , . . . , a(n−3)/2 } and
ch016.tex
25/7/2008
12: 29
Page 465
Spanning Diameter
465
T = {a n−3 +1 , a n−3 +2 , . . . , an−3 }. We set A = {(i, an−2 ) | i ∈ H ∪ {n − 1}} and B = {(i, 2
2
{(i,a
)}
an−2 ) | i ∈ T ∪ {n}}. Let SnA denote the subgraph of Sn induced by ∪i ∈ H ∪ {n − 1} Sn n−2 , {(i,a )} and let SnB denote the subgraph of Sn induced by ∪i ∈ T ∪{n} Sn n−2 . By Theorem 13.2, {n} there is a Hamiltonian path P of Sn − {x} joining u to a white vertex p with (p)1 = an−2 {n−1} − {y, z} and (p)n−2 = an−3 . By Theorem 16.1, there is a Hamiltonian path Q of Sn joining a white vertex q with (q)1 = an−2 and (q)n−1 = a1 to v. By Theorem 13.17, there is a Hamiltonian path L of SnA joining a white vertex s with (s)1 = a1 to the black vertex (q)n . Again, there is a Hamiltonian path M of SnB joining the black vertex (p)n to a white vertex t with (t)1 = an−3 . By Theorem 13.17, there is a Hamiltonian path R of SnH joining the white vertex (x)n to the black vertex (s)n . Again, there is a Hamiltonian path W of SnT joining the black vertex (t)n to the white vertex (z)n . We set L1 = u, x, (x)n , R, (s)n , s, L, (q)n , q, Q, v L2 = u, P, p, (p)n , M, t, (t)n , W , (z)n , z, y, v Obviously, {L1 , L2 } is a 2∗ -container of Sn between u and v. Since l(L1 ) = (n!/2) − 1 and l(L2 ) = (n!/2) + 1, we have d2sL (u, v) ≤ (n!/2) + 1. See Figure 16.4c for illustration. Actually, we prove that d2sL (u, v) = (n!/2) + 1 for any two vertices u and v from different bipartite sets of Sn .
16.3
SPANNING DIAMETER OF HYPERCUBES
Because of the important role of hypercubes in interconnection networks, we should discuss the spanning diameter of hypercubes. However, this is a difficult job. The reason we can compute the spanning diameter for pancake graphs and star graphs is because we can easily set the bound for spanning diameter. Then, we construct the desired spanning containers. To overcome this problem, Chang et al. [45] introduce the concept of the equitable container. A k ∗ -container Ck∗ (u, v) = {P1 , . . . , Pk } is equitable if ||V (Pi )| − |V (Pj )|| ≤ 2 for all 1 ≤ i, j ≤ k. A graph is equitably k ∗ -laceable if there is an equitable k ∗ -container joining any two vertices in different partite sets. In this section, we will prove that the hypercube Qn is equitably k ∗ -laceable for all k ≤ n − 4 and n ≥ 5. With this result, we can conclude that DksL (Qn ) = 2n /k for all k ≤ n − 4 and n ≥ 5. For convenience, let {u, v} be an edge of Qn . We call this edge {u, v} parallel to ei if u − v = ei . The following result referred as parallel spanning property, proved by Kobeissi and Mollard [209], is an important lemma. We shall use this property to construct equitable k ∗ -containers in Qn . Let u1 , u2 , . . . , uk be k distinct white vertices of Qn with k ≤ n − 2. We set vi = ui + e1 for 1 ≤ i ≤ k. We call {(u1 , . . . , uk ), (v1 , . . . , vk )} a parallel configuration of order k. LEMMA 16.12 [202] Let {(u1 , . . . , uk ), (v1 , . . . , vk )} be a parallel configuration of order k with k ≤ n − 2. Suppose that a1 , a2 , . . . , ak are any positive even integers with a1 + a2 + · · · + ak = 2n . Then there exists a k ∗ -container
ch016.tex
25/7/2008
466
12: 29
Page 466
Graph Theory and Interconnection Networks
Ck∗ ((u1 , u2 , . . . , uk ), (v1 , v2 , . . . , vk )) = {P1 , . . . , Pk } such that |V (Pi )| = ai for all i = 1, 2, . . . , k. LEMMA 16.13 [202] Let a1 , a2 , . . . , ak be any positive even integer with a1 + a2 + · · · + ak = 2n and k ≤ n − 1. Then there exists a k ∗ -container Ck∗ (u, v) = {P1 , . . . , Pk } between any adjacent pair of vertices u and v of Qn such that |V (Pi )| = ai , i = 1, . . . , k. COROLLARY 16.1 For k ≤ n − 1 with n ≥ 3, there are equitable k ∗ -containers Ck∗ (u, v) for any adjacent pair u and v. Let {(u1 , . . . , uk ), (v1 , . . . , vk )} be a parallel configuration of order k. {(u0 , u1 , . . . , uk ), (v0 , v1 , . . . , vk )} is referred as an extended parallel configuration of order k in Qn where k ≤ n − 4 if the following conditions are satisfied: (1) vi = u1 + ei , for all i ∈ {1, 2, . . . , k}, (2) v0 = u1 + en , and (3) u0 is an arbitrary white vertex other than u1 , . . . , uk . Recall that Qn is vertex-symmetric. In the following discussion, we assume that u1 = 0, vi = ei ∀ i = 1, . . . , k, ui = ei + e1 ∀ i = 2, . . . , k, v0 = en , and u0 is an arbitrary white vertex other than u1 , . . . , uk . Let 2 ≤ j ≤ k be a fixed positive integer. Suppose we decompose Qn into 2 subcubes Qn0 , Qn1 where Qn0 = {(x1 , . . . , xn ) | xj = 0}, Qn1 = {(x1 , . . . , xn ) | xj = 1}, then uj , vj ∈ Qn1 and ui , vi ∈ Qn0 for all 0 = i = j. For convenience, we use xˆ to denote x + e1 for all x ∈ Qn . LEMMA 16.14 Let {(u0 , u1 ), (v0 , v1 )} be an extended parallel configuration of order 1 in Qn , where n ≥ 4. Suppose that a0 , a1 are positive even integers with a0 ≥ 2n and a0 + a1 = 2n ; then there exists a 2∗ -container C2∗ ((u0 , u1 ), (v0 , v1 )) = {P0 , P1 } in Qn such that (1) |V (Pi )| = ai , for all i = 0, 1, (2) P0 and P1 that contain an edge parallel to e1 . Proof: We prove this statement by induction on n. By brute force, we can check that this lemma is true for n = 4. Now assume that n ≥ 5 and statement is true for n − 14. Without loss of generality, we assume that {u1 , v1 } ∈ Qn0 , v0 ∈ Qn1 , where Qn0 = {(x1 , . . . , xn ) | xn = 0}, Qn1 = {(x1 , . . . , xn ) | xn = 1}. Case 1.
u0 ∈ Qn1 .
Case 1.1. a1 < 2n−1 . We choose a black vertex x in Qn0 such that (1) x = v1 and xˆ = u1 , (2) x + en = u0 and xˆ + en = v0 . By Lemma 16.12, there exist two vertex disjoint paths P1 and R in Qn0 such that (1) P1 joins u1 to v1 with |V (P1 )| = a1 and (2) R joins xˆ to x with |V (R)| = 2n−1 − a1 . By Lemma 13.17, there exist two vertex disjoint paths H1 and H2 in Qn1 such that (1) H1 joins u0 to xˆ + en , (2) H2 joins x + en to v0 , and (3) H1 ∪ H2 spans Qn1 . Set P0 = u0 , H1 , xˆ + en , xˆ , R, x, x + en , H2 , v0 . Then {P0 , P1 } satisfies the requirement of Lemma 16.14. See Figure 16.5 for illustration. Case 1.2. a1 > 2n−1 . We choose a black vertex x in Qn1 such that (1) x = v0 and xˆ = u0 , and (2) x + en = u1 and xˆ + en = v1 .
ch016.tex
25/7/2008
12: 29
Page 467
Spanning Diameter
467
Q 0n
Q 1n
u1
^ x
u0
^ x en H1
R
P1
x v1
x en H 0 v0
FIGURE 16.5 Illustration for Case 1.1 of Lemma 16.14. Q 0n u1
Q 1n
^e x n
u0
^ x
R1
H
R2 x en
P0
x
v1
v0
FIGURE 16.6 Illustration for Case 1.2 of Lemma 16.14.
By induction hypothesis, there exist two vertex disjoint paths H and P0 in Qn1 such that (1) H joins xˆ to x with |V (H)| = a1 − 2n−1 and (2) P0 joins u0 to v0 with |V (P0 )| = a0 . By Lemma 13.17, there exist two vertex disjoint paths R1 and R2 in Qn0 such that (1) R1 joins u1 to xˆ + en , (2) R2 joins x + en to v1 , and (3) R1 ∪ R2 spans Qn0 . Set P1 = u1 , R1 , xˆ + en , xˆ , H, x, x + en , R2 , v1 . Then {P0 , P1 } satisfies the requirement of Lemma 16.14. See Figure 16.6 for illustration. Case 1.3. a1 = 2n−1 . Since a hypercube is hyper Hamiltonian laceable, we set P0 , P1 to be Hamiltonian paths joining u0 to v0 and u1 to v1 in Qn1 , Qn0 , respectively. Case 2.
u0 ∈ Qn0 .
Case 2.1. a1 < 2n−1 . By Lemma 16.12, there exist two vertex disjoint paths P1 and R in Qn0 such that (1) P1 is joining u1 to v1 with |V (P1 )| = a1 , (2) R is joining u0 to uˆ 0 with |V (R)| = 2n−1 − a1 , and (3) R contains an edge parallel to e1 . Since Qn1 is Hamiltonian laceable, there exists a Hamiltonian path H in Qn1 joining uˆ 0 + en to v0 . Set P0 = u0 , R, uˆ 0 , uˆ 0 + en , H, v0 . Thus, {P0 , P1 } satisfies the requirement of Lemma 16.14. See Figure 16.7 for illustration. Case 2.2. a1 ≥ 2n−1 . By Lemma 16.12, there exist two vertex disjoint paths R0 = u0 , uˆ 0 and R1 in Qn0 such that (1) R0 is joining u0 to uˆ 0 with |V (R0 )| = 2 and (2) R1 is joining u1 to v1 with |V (R1 )| = 2n−1 − 2.
ch016.tex
25/7/2008
12: 29
Page 468
468
Graph Theory and Interconnection Networks
Q 0n
Q 1n v0
u0
u1
H R P1 ^ e u 0 n
^ u 0 v1
FIGURE 16.7 Illustration for Case 2.1 of Lemma 16.14. Q 0n
Q 1n
u0
v0 H0
u1
^ u 0
x
x en
R11 H1 v1
R12
^ x
^ x en
FIGURE 16.8 Illustration for Case 2.2 of Lemma 16.14.
Since R1 ∪ {u1 , v1 } is a cycle, R1 contains an edge {x, xˆ } parallel to e1 . Let R1 = u1 , R11 , x, xˆ , R12 , v1 . By induction hypothesis, there exist two vertex disjoint paths H0 and H1 in Qn1 such that (1) H0 is joining uˆ 0 + en to v0 with |V (H0 )| = a0 − 2 and (2) H1 is joining x + en to xˆ + en with |V (H1 )| = a1 − 2n−1 − 2. Set P0 = u0 , uˆ 0 , uˆ 0 + en , H0 , v0 and P1 = u1 , R11 , x, x + en , H1 , xˆ + en , xˆ , R12 , v1 . Thus, {P0 , P1 } satisfies the requirement of Lemma 16.14. See Figure 16.8 for illustration. LEMMA 16.15 Let {(u0 , u1 , u2 ), (v0 , v1 , v2 )} be an extended parallel configuration of order 2 in Qn where n ≥ 6. Suppose that a0 , a1 , a2 are positive even integers with (1) a0 ≥ 2n, (2) ai < 2n−1 , i = 1, 2, and (3) a0 + a1 + a2 = 2n ; then there exists a 3∗ -container C3∗ ((u0 , u1 , u2 ), (v0 , v1 , v2 )) = {P0 , P1 , P2 } in Qn such that (1) |V (Pi )| = ai , for all i = 0, 1, 2 (2) P0 contains an edge parallel to e1 . Proof: Since a2 < 2n−1 , a0 + a1 = 2n − a2 > 2n−1 . There exist positive even integers a˜0 , a˜1 such that 2(n − 1) ≤ a˜0 < a0 , a˜1 ≤ a1 , and a˜0 + a˜1 = 2n−1 . Without loss of generality, we assume that {u1 , v1 } ∈ Qn0 , v0 ∈ Qn0 , and {u2 , v2 } ∈ Qn1 , where Qn0 = {(x1 , . . . , xn ) | x2 = 0}, Qn1 = {(x1 , . . . , xn ) | x2 = 1}. Case 1. u0 ∈ Qn0 . By Lemma 16.14, there exist two vertex disjoint paths R0 and R1 in Qn0 joining u0 to v0 and u1 to v1 of order a˜0 , a˜1 , respectively, such that R0 , R1 contain edges {x0 , xˆ 0 }, {x1 , xˆ 1 } parallel to e1 , respectively. Let Ri = ui , Ri1 , xi , xˆ i , Ri2 , vi for
ch016.tex
25/7/2008
12: 29
Page 469
Spanning Diameter
469
i = 0, 1. By Lemma 16.12, there exist three vertex disjoint paths H0 , H1 , and P2 in Qn1 such that (1) Hi is joining xi + e2 to xˆ i + e2 of order ai − a˜i for i = 0, 1 and (2) P2 is joining u2 to v2 of order a2 . Set Pi = ui , Ri1 , xi , xi + e2 , Hi , xˆ i + e2 , xˆ i , Ri2 , vi for i = 0, 1. Thus, C3∗ ((u0 , u1 , u2 ), (v0 , v1 , v2 )) = {P0 , P1 , P2 } is the required 3∗ -container. See Figure 16.9 for illustration. REMARK: P1 = u1 , R11 , x1 , xˆ 1 , R12 , v1 in case a1 − a˜1 = 0. Case 2. u0 ∈ Qn1 . Obviously, uˆ 0 + e2 is a white vertex in Qn0 . By Lemma 16.14, there exist two vertex disjoint paths R0 and R1 in Qn0 joining uˆ 0 + e2 to v0 and u1 to v1 of order a˜ 0 , a˜ 1 , respectively, such that R1 contains an edge {x1 , xˆ 1 } parallel to e1 . Let R1 = u1 , R11 , x1 , xˆ 1 , R12 , v1 . By Lemma 16.12, there exist three vertex disjoint paths H0 , H1 , and P2 in Qn1 such that (1) H0 is joining u0 to uˆ 0 of order a0 − a˜0 , (2) H1 is joining x1 + e2 to xˆ 1 + e2 of order a1 − a˜1 , and (3) P2 is joining u2 to v2 of order a2 . Set P0 = u0 , H0 , uˆ 0 , uˆ 0 + e2 , R0 , v0 and P1 = u1 , R11 , x1 , x1 + e2 , H1 , xˆ 1 + e2 , xˆ 1 , R12 , v1 . Thus, C3∗ ((u0 , u1 , u2 ), (v0 , v1 , v2 )) = {P0 , P1 , P2 } is the required 3∗ -container. See Figure 16.10 for illustration. Qn u0
u1
Qn u2
R01
P2
x0 e2 R11
x1
x0
x1 e2
v2 H1
^ x 1
R12 v1
R02 ^ x 0
v0
^ x1 e2
H0
^ x0 e2
FIGURE 16.9 Illustration for Case 1 of Lemma 16.15. Q 0n u1
Q 1n u2
u0
R11
P2
x1 e2
x1
H1 R12
v1
^ x1 R0
v0
^ u 0
x^1 e2
H0 v2
^ e u 0 2
FIGURE 16.10 Illustration for Case 2 of Lemma 16.15.
ch016.tex
25/7/2008
12: 29
Page 470
470
Graph Theory and Interconnection Networks
Let = {a0 , a1 , . . . , ak } be a set of k + 1 positive even integers where 3 ≤ k ≤ n − 4. We say that satisfies the (n, k) condition if the following conditions are satisfied: (1) ai < a0 for all 1 ≤ i ≤ k, (2) a0 ≥ 2n+1 /(k + 1), and (3) a0 + a1 + · · · + ak = 2n . THEOREM 16.4 Let {(u0 , u1 , u2 , . . . , uk ), (v0 , v1 , v2 , . . . , vk )} be an extended parallel configuration of order k in Qn where n − 4 ≥ k ≥ 3. If {a0 , a1 , . . . ak } satisfies ∗ ((u , u , . . . , u ), the (n, k) condition, then there exists a (k + 1)∗ -container Ck+1 k 0 1 (v0 , v1 , . . . , vk )) = {P0 , P1 , . . . , Pk } such that (1) |V (Pi )| = ai for all i ∈ {1, 2, . . . , k} (2) P0 contains an edge parallel to e1 with |V (P0 )| = a0 . Proof: First, we shall prove that this is true for k = 3 and then use induction to show that it is true for all k ≥ 4. Assume k = 3, n ≥ k + 4 ≥ 7. Let Qn = Qn0 ∪ Qn1 where Qn0 = {(x1 , . . . , xn ) | x3 = 0}, Qn1 = {(x1 , . . . , xn ) | x3 = 1}. Clearly, edges {u1 , v1 }, {u2 , v2 } ∈ Qn0 , v0 ∈ Qn0 , and {u3 , v3 } ∈ Qn1 . If {a0 , a1 , a2 , a3 } satisfies the (n, 3) condition then we have a1 + a2 + a3 = 2n − a0 ≤ 2n − (2n+1 )/4 = 2n−1 . This implies that a1 + a2 < 2n−1 and min{a1 , a2 } < 2n−2 . Without loss of generality, we assume that a2 < 2n−2 . Since 2n−2 > 2(n − 1) for n ≥ 7 and a0 + a1 + a2 ≥ 2n−1 , there exist even positive integers a˜0 , a˜1 , a˜2 that satisfy (1) a0 > a˜0 ≥ 2(n − 1), (2) a˜1 ≤ 2n−2 and a˜1 ≤ a1 , (3) a˜2 = a2 , and (4) a˜0 + a˜1 + a˜2 = 2n−1 . Case 1. u0 ∈ Qn0 . By induction hypothesis, there exist three vertex disjoint paths Ri in Qn0 joining ui to vi of order a˜ i for 0 ≤ i ≤ 2 such that R0 contains an edge {x0 , xˆ 0 } parallel to e1 . Let {x1 , xˆ 1 } be an edge on the paths R1 parallel to e1 . We can write Ri = ui , Ri1 , xi , xˆ i , Ri2 , vi . for i = 0, 1. By Lemma 16.12, there exist three vertex disjoint paths H0 , H1 , and P3 in Qn1 such that (1) Hi is joining xi + e3 to xˆ i + e3 of order ai − a˜ i for i = 0, 1 and (2) P3 is joining u3 to v3 of order a3 . Set Pi = ui , Ri1 , xi , xi + e3 , Hi , xˆ i + e3 , xˆ i , Ri2 , vi for i = 0, 1, P2 = R2 . Thus, C4∗ ((u0 , u1 , u2 , u3 ), (v0 , v1 , v2 , v3 )) = {P0 , P1 , P2 , P3 } is the required 4∗ -container. See Figure 16.11 for an illustration of Case 1, where k = 3. Qn u1
u0 R11
u2
x1
R01 x0
u3
x0 e3 x1 e3 H1
R12
R2
^ x 1
x^1 e3 H0
v1 v2
Qn
R02
^ x 0
x^0 e3
v0
FIGURE 16.11 Illustration for Case 1, where k = 3, of Theorem 16.4.
ch016.tex
25/7/2008
12: 29
Page 471
Spanning Diameter
Case 2.
471
u0 ∈ Qn1 .
Case 2.1. uˆ 0 + e3 = u2 . Obviously, uˆ 0 + e3 is a white vertex in Qn0 . Note that v3 + e3 = u1 and uˆ 0 + e3 = u1 . By induction hypothesis, there exist three vertex disjoint paths R0 , R1 , R2 in Qn0 such that (1) Ri is joining ui to vi of order a˜ i for i = 1, 2 and (2) R0 is joining uˆ 0 + e3 to v0 of order a˜ 0 , which contains an edge parallel to e1 . Let {x1 , xˆ 1 } be an edge on the paths R1 parallel to e1 . We can write R1 = u1 , R11 , x1 , xˆ 1 , R12 , v1 . By Lemma 16.12, there exist three vertex disjoint paths H0 , H1 , and P3 in Qn1 such that (1) H0 is joining u0 to uˆ 0 of order a0 − a˜ 0 , (2) H1 is joining x1 + e3 to xˆ 1 + e3 of order a1 − a˜ 1 , and (3) P3 is joining u3 to v3 of order a3 . We set {P0 , P1 , P2 } as P0 = u0 , H0 , uˆ 0 , uˆ 0 + e3 , R0 , v0 P1 = u1 , R11 , x1 , x1 + e3 , H1 , xˆ 1 + e3 , xˆ 1 , R12 , v1 P2 = R2 ∗ C4 ((u0 , u1 , u2 , u3 ), (v0 , v1 , v2 , v3 )) = {P0 , P1 , P2 , P3 }
Thus, is the required 4∗ -container. See Figure 16.12 for an illustration of Case 2.1, where k = 3. Case 2.2. uˆ 0 + e3 = u2 . Set z = u0 + e4 . Obviously, zˆ = uˆ 0 + e4 and z + e3 is a white vertex in Qn0 . By induction hypothesis, there exist three vertex disjoint paths R0 , R1 , R2 in Qn0 such that (1) Ri is joining ui to vi of order a˜ i , for i = 1, 2 and (2) R0 is joining z + e3 to v0 of order a˜ 0 , which contains an edge parallel to e1 . Let {x1 , xˆ 1 } be an edge on the path R1 parallel to e1 . We can write R1 =
u1 , R11 , x1 , xˆ 1 , R12 , v1 . By Lemma 16.12, there exists a C4∗ ((u0 , x1 + e3 , zˆ , u3 ), (uˆ 0 , xˆ 1 + e3 , z, v3 )) = { u0 , uˆ 0 , H1 , H2 , P3 } of order 2, a1 − a˜1 , a0 − 2 − a˜0 , and a3 , respectively. We set {P0 , P1 , P2 } as P0 = u0 , uˆ 0 , zˆ , H2 , z, z + e3 , R0 , v0 P1 = u1 , R11 , x1 , x1 + e3 , H1 , xˆ 1 + e3 , xˆ 1 , R12 , v1 P2 = R2 Qn
Qn
u1 u2
u3
u0 R11
x1
x1 e3
H0 P3
H1 R2
R12 v1
v2
R0
^ x 1 ^ e u 0 3
x^1 e3 ^ u 0
v3
v0
FIGURE 16.12 Illustration for Case 2.1, where k = 3, of Theorem 16.4.
ch016.tex
25/7/2008
12: 29
Page 472
472
Graph Theory and Interconnection Networks
Qn
Qn u0 H 0 ^ u0
u1 R11
u3 ^ z
u2
x1
x1 e3
R2
^ x 1
x^1 e3 H2
P3
H1 R12 v1 v2
R0 z0 e3
z
v3
v0
FIGURE 16.13 Illustration for Case 2.2, where k = 3, of Theorem 16.4.
Thus, C4∗ ((u0 , u1 , u2 , u3 ), (v0 , v1 , v2 , v3 )) = {P0 , P1 , P2 , P3 } is the required ∗ 4 -container. See Figure 16.13 for an illustration of Case 2.2, where k = 3. For k ≥ 4, we prove this theorem is true by induction as follows. Since a0 + a1 + · · · + ak−1 > 2n−1 , there exist = {˜a0 , a˜ 1 , . . . , a˜ k−1 }, which satisfies the (n − 1, k − 1) condition with a˜ i ≤ ai , for all 0 ≤ i ≤ k − 1. Let Qn = Qn0 ∪ Qn1 , where Qn0 = {(x1 , . . . , xn ) | xk = 0} and Qn1 = {(x1 , . . . , xn ) | xk = 1}. Clearly, edge {ui , vi } ∈ Qn0 for 1 ≤ i ≤ k − 1, v0 ∈ Qn0 , and {uk , vk } ∈ Qn1 . Case 1. u0 ∈ Qn0 . By induction hypothesis, there exist k-vertex disjoint paths Ri in Qn0 joining ui to vi of order a˜ i , 0 ≤ i ≤ k − 1 such that R0 contains an edge {x0 , xˆ 0 } parallel to e1 . Obviously, a˜ i ≤ ai for 0 ≤ i ≤ k − 1. Let {xi , xˆ i } be an edge on the paths Ri parallel to e1 for 1 ≤ i ≤ k − 1. We can write Ri = ui , Ri1 , xi , xˆ i , Ri2 , vi for all 0 ≤ i ≤ k − 1. By Lemma 16.12, there exist (k + 1) vertex disjoint paths Hi for 0 ≤ i ≤ k − 1 and Pk in Qn1 such that Hi is joining xi + ek to xˆ i + ek of order ai − a˜ i for i = 0 ≤ i ≤ k − 1 and Pk is joining uk to vk of order ak . Set Pi = ui , Ri1 , xi , xi + ek , Hi , xˆ i + ek , xˆ i , Ri2 , vi ∗ ((u , u , . . . , u ), (v , v , . . . , v )) = {P | 0 ≤ i ≤ k} is the for 0 ≤ i ≤ k − 1. Thus, Ck+1 0 1 k 0 1 k i ∗ required (k + 1) -container. Case 2.
u0 ∈ Qn1 .
Case 2.1. u0 = ej + ek for all j ∈ {2, 3, . . . , k − 1}. Obviously, uˆ 0 + ek is a white vertex in Qn0 other than u1 , . . . , uk−1 . By induction hypothesis, there exist k-vertex disjoint paths Ri , for 0 ≤ i ≤ k − 1 in Qn0 such that (1) Ri is joining ui to vi of order a˜ i , for 1 ≤ i ≤ k − 1 and (2) R0 is joining uˆ 0 + ek to v0 of order a˜ 0 , which contains an edge parallel to e1 . Obviously, a˜ i ≤ ai for 0 ≤ i ≤ k − 1. Let {xi , xˆ i } be an edge on the paths Ri of parallel to e1 , for 1 ≤ i ≤ k − 1. We can write Ri = ui , Ri1 , xi , xˆ i , Ri2 , vi . For 1 ≤ i ≤ k − 1. By Lemma 16.12, there exist (k + 1)-vertex disjoint paths Hi for 0 ≤ i = k ≤ k + 1 and Pk in Qn1 such that (1) H0 is joining u0 to uˆ 0 of order a0 − a˜ 0 , (2) Hi is joining xi + ek to xˆ i + ek of order ai − a˜ i for 1 ≤ i ≤ k − 1, and (3) Pk is joining uk to vk of order ak . We set {P0 , P1 , . . . , Pk } as P0 = u0 , H0 , uˆ 0 , uˆ 0 + ek , R0 , v0 Pi = ui , Ri1 , xi , xi + ek , Hi , xˆ i + ek , xˆ i , Ri2 , vi for 1 ≤ i ≤ k − 1
ch016.tex
25/7/2008
12: 29
Page 473
Spanning Diameter
473
∗ ((u , u , . . . , u ), (v , v , . . . , v )) = {P | 0 ≤ i ≤ k} is the required Thus, Ck+1 0 1 k 0 1 k i ∗ (k + 1) -container.
Case 2.2. u0 = ej + ek for some j ∈ {2, 3," . . . , k − 1}. We decomposed Qn into Qn0 1 0 and Qn by dimension j; that is, Qn = Qn Qn1 , where Qn0 = {(x1 , . . . , xn ) | xj = 0}, and Qn1 = {(x1 , . . . , xn ) | xj = 1}. Clearly, edge {ui , vi } ∈ Qn0 , for 0 ≤ i = j ≤ k and {uj , vj } ∈ Qn1 . The proof is similar to that of Case 1. A set of even positive integers {a1 , . . . , ak } is an equitable set if |ai − aj | ≤ 2 for all 1 ≤ i, j ≤ k. A container {P1 , . . . , Pk } is an equitable container if ||V (Pi )| − |V (Pj )|| ≤ 2 for all 1 ≤ i, j ≤ k. LEMMA 16.16 Qn is equitably 2∗ -laceable for all n ≥ 3. Proof: Let Qn = Qn0 ∪ Qn1 where Qn0 = {(x1 , . . . , xn ) | xn = 0}, Qn1 = {(x1 , . . . , xn ) | xn = 1}. Since Qn is vertex-transitive, we need only to find an equitable 2∗ -container joining 0 = (0, 0, . . . , 0) to any black vertex v of Qn . Case 1. v ∈ Qn0 . Since Qn0 is Hamiltonian laceable, there exists a Hamiltonian path P1 joining 0 to v in Qn0 . Since Qn1 is Hamiltonian laceable, there exists a Hamiltonian path H joining en to v + en in Qn1 . Set P2 = 0, en , H, v + en , v. Obviously, {P1 , P2 } is an equitable 2∗ -container of Qn joining 0 to v. Case 2. v ∈ Qn1 . Let z be a neighbor of v in Qn1 . There exists a Hamiltonian path R joining 0 to z + en in Qn0 . Since every hypercube is hyper Hamiltonian laceable, there exists a Hamiltonian path H joining en to v in Qn1 − {z}. Set P1 = 0, R, z + en , z, v and P2 = 0, en , H, v. Obviously, {P1 , P2 } is an equitable 2∗ -container of Qn joining 0 to v. Let x to be the any real number. We define x to be the largest even integer smaller or equal to x. THEOREM 16.5
Qn is equitable k ∗ -laceable for all k ≤ n − 4.
Proof: By Lemma 16.16, the theorem is true if k = 2. We shall use induction on k to prove that the theorem is true for all k ≤ n − 4. Assume that Qn is equitable (k − 1)∗ laceable. Since Qn is vertex-transitive, we need only to find an equitable k ∗ -container of Qn between the white vertex 0 and any black vertex v. By Corollary 16.1, there are equitable k ∗ -containers Ck∗ (0, v) for any neighbor v of 0. Thus we assume that v is not adjacent to 0. By the symmetric property of Qn , we assume that 0 ∈ Qn0 and v ∈ Qn1 where Qn0 = {(x1 , . . . , xn ) | xn = 0}, Qn1 = {(x1 , . . . , xn ) | xn = 1}. Let u1 = v + e1 and z = u1 + en . Obviously, z is a black vertex of Qn0 . By induction hypothesis, there exists an equitable (k − 1)∗ -container ∗ (0, z) = {R , R , . . . , R 0 Ck−1 1 2 k−1 } of Qn joining 0 to z. Without loss of generality, we assume that |V (Ri )| = bi for all 1 ≤ i ≤ k − 1 and b1 ≥ b2 ≥ · · · ≥ bk−1 . Let Ri = 0, Ti , wi , z for all 1 ≤ i ≤ k − 1. Without loss of generality, we assume that wi = z + ei for all 1 ≤ i ≤ k − 1. Let vi = wi + en for all 1 ≤ i ≤ k − 1 and let ui = v + ei for all 2 ≤ i ≤ k − 1. It is easy checked that v1 = v and ui = vi + e1 for all 1 ≤ i ≤ k − 1.
ch016.tex
25/7/2008
12: 29
Page 474
474
Graph Theory and Interconnection Networks
v0 en
u1
Hk
Rk–1 wk–1
vk–1
R2
Hk–1 w2
v2
u0 H2
R1 w1
uk–1
z
u2
u1 H1
v v1
FIGURE 16.14 Illustration for Theorem 16.5.
Let u0 = v + ek and v0 = en . Then {(u0 , u1 , . . . , uk−1 ), (v0 , v1 , . . . , vk−1 )} is an even inteextended parallel configuration of order k − 1 in Qn1 . We choose positive44 55 n
2 −2 gers {a0 , a1 , . . . , ak−1 } satisfying (n − 1, k − 1) condition with (1) a0 = , k (2) a1 ≤ a2 ≤ · · · ≤ ak−1 , and (3) ak−1 − a1 ≤ 2. By Theorem 16.4, there exist k-vertex disjoint paths H1 , H2 , . . . , Hk in Qn1 such that (1) H1 joins u1 and v with |V (H1 )| = a1 , (2) Hi joins vi and ui with |V (Hi )| = ai , i = 2, . . . , k − 1, and (3) Hk joins v0 and u0 with |V (Hk )| = a0 . We set {P1 , P2 , . . . , Pk } as
P1 = 0, T1 , w1 , z, u1 , H1 , v Pi = 0, Ti , wi , vi , Hi , ui , v
for
2≤i ≤k−1
Pk = 0, v0 , Hk , u0 , v Clearly, |V (Pi )| = ai + bi i = 1, . . . , k − 1, |V (Pk )| = a0 + 2. It is easy to observe that {|V (Pi )| | i = 1, . . . , k − 1} is an equitable set. Moreover, it is easy to verify that min1 ≤ i ≤ k − 1 (ai + bi − 2) ≥ a0 and max1 ≤ i ≤ k − 1 (ai + bi − 2) ≤ a0 + 2. Therefore, {P1 , P2 , . . . , Pk } is an equitable k ∗ -container of Qn joining 0 to v. See Figure 16.14 for illustration.
16.4
SPANNING DIAMETER FOR SOME (n, k )-STAR GRAPHS
In Section 16.3, we computed the spanning diameter of the star graphs and the hypercubes. These two families of graphs are bipartite. Here, we discuss the spanning diameter of a family of nonbipartite graphs.
ch016.tex
25/7/2008
12: 29
Page 475
Spanning Diameter
475
The (n, k)-star graph is an attractive alternative to the n-star graph [3]. However, the growth of vertices is n! for an n-star graph. To remedy this drawback, the (n, k)-star graph is proposed by Chiang and Chen [60]. The (n, k)-star graph is a generalization of the n-star graph. It has two parameters n and k. When k = n − 1, an (n, n − 1)star graph is isomorphic to an n-star graph, and when k = 1, an (n, 1)-star graph is isomorphic to a complete graph Kn . Assume that n and k are two positive integers with n > k. We use n to denote the set {1, 2, . . . , n}. The (n, k)-star graph, Sn,k , is a graph with the node set V (Sn,k ) = {u1 u2 . . . uk | ui ∈ n and ui = uj for i = j}. Adjacency is defined as follows: a node u1 u2 . . . ui . . . uk is adjacent to (1) the node ui u2 u3 . . . ui−1 u1 ui+1 . . . uk , where 2 ≤ i ≤ k (i.e., swap ui with u1 ) and (2) the node xu2 u3 . . . uk where x ∈ n − {ui | 1 ≤ i ≤ k}. The edges of type (1) are referred to as i-edges and the edges of type (2) are referred to as 1-edges. By definition, Sn,k is an (n − 1)-regular graph with n!/(n − k)! nodes. Moreover, it is node-transitive [60]. We use boldface to denote nodes in Sn,k . Hence, u1 , u2 , . . . , um denotes a sequence of nodes in Sn,k . Let u = u1 u2 . . . uk be any node of Sn,k . We say that ui is the ith coordinate of u, denoted by (u)i , for 1 ≤ i ≤ k. By the definition of Sn,k , there is exactly one neighbor v of u such that u and v are adjacent through an i-edge with 2 ≤ i ≤ k. For this reason, we use (u)i to denote the unique i-neighbor of {i} u. Obviously, ((u)i )i = u. For 1 ≤ i ≤ n, let Sn,k denote the subgraph of Sn,k induced by those nodes u with (u)k = i. In Ref. 60, it is showed that Sn,k can be decomposed into {i} {i} n subgraphs Sn,k , 1 ≤ i ≤ n, such that each subgraph Sn,k is isomorphic to Sn−1,k−1 . {(u) }
Thus, the (n, k)-star graph can be constructed recursively. Obviously, u ∈ Sn,k k . Let I to denote the subgraph of S I ⊆ n. We use Sn,k n,k induced by those nodes u with i, j
(u)k ∈ I. For 1 ≤ i ≤ n and 1 ≤ j ≤ n with i = j, we use En,k to denote the set of edges {i}
{j}
between Sn,k and Sn,k . S3,1 , S4,1 , S4,2 , and S5,2 are shown in Figure 16.15. Owing to the nice structure of (n, k)-star graphs, there are a lot of studies on its topological properties. In particular, Chang and Kim [41] studied the cycles embedding in faulty (n, k)-star graphs. Hsu et al. [172] are studied the fault Hamiltonicity and fault Hamiltonian connectivity of the (n, k)-star graphs. Chang et al. study the embedding of mutually independent hamiltonian paths between any two vertices [40]. In this section, we discuss only the spanning diameter of some (n, k)-star graphs. Yet we need some background about (n, k)-star graphs. The following lemma can easily be obtained from the definition of (n, k)-star graphs. i,j
LEMMA 16.17 |En,k | = (n − 2)!/(n − k)! if k ≥ 2. Since, Sn,1 is isomorphic to the complete graph Kn with n vertices, we have the following result. LEMMA 16.18 Let n be any positive integer with n ≥ 3. Then Sn,1 − F is Hamiltonian-connected if F ⊆ V (Sn,1 ) with |F| ≤ n − 2. The following theorem is a direct consequence of Theorem 11.16.
ch016.tex
25/7/2008
12: 29
Page 476
476
Graph Theory and Interconnection Networks 1
2
3
1
4
2
3
S3,1
S4,1 b
21
{1}
{4}
{1}
S5,2
S5,2
31
31
S4,2 41
41 51
21
{5}
a
14
24
54
34
S5,2
14
15
45
25
35
{4}
24
S4,2
34
{2}
S5,2
13
12 {2}
S4,2
42
43
32
{3}
S4,2 23
S4,2
{3}
S5,2
12
52
53
43
42
32
23
13
S5,2
a
b
FIGURE 16.15 Some examples of the (n, k)-star graphs: S3,1 , S4,1 , S4,2 , and S5,2 .
THEOREM 16.6 Let n and k be any two positive integers with n − k ≥ 2, and let F ⊆ V (Sn,k ) ∪ E(Sn,k ). Then Sn,k − F is Hamiltonian-connected if |F| ≤ n − 4 and Sn,k − F is Hamiltonian if |F| ≤ n − 3. THEOREM 16.7 Let n and k be any two integers with n − k ≥ 2 and k ≥ 3. Let I = {i1 , i2 , . . . , ir } be any subset of n for 1 ≤ r ≤ n. Assume that u and v are two {i } {i } distinct vertices of Sn,k with u ∈ Sn,k1 and v ∈ Sn,kr . Then there is a Hamiltonian path I joining u to v such that H H = u = x1 , H1 , y1 , x2 , H2 , y2 , . . . , xr , Hr , yr = v of Sn,k j {i }
is a Hamiltonian path of Sn,kj joining xj to yj for every 1 ≤ j ≤ r. {i }
Proof: Let x1 = u and yr = v. Since Sn,kj is isomorphic to Sn−1,k−1 for every j ∈ r, by Theorem 16.6, this statement holds for r = 1. Thus, we assume that r ≥ 2. ij ,ij+1 Since k ≥ 3 and n − k ≥ 2, by Lemma 16.17, |En,k | = (n − 2)!/(n − k)! ≥ 3 i ,i
j j+1 for every j ∈ r − 1. We can choose (yj , xj+1 ) ∈ En,k for every j ∈ r − 1 with
{i }
{i
}
yj ∈ Sn,kj , xj+1 ∈ Sn,kj+1 , y1 = u, and xr = v. By Theorem 16.6, there is a Hamilto{i }
nian path Hj of Sn,kj joining xj to yj for every j ∈ r. Then H = u = x1 , H1 , y1 , x2 , H2 , y2 , . . . , xr , Hr , yr = v forms a desired path. See Figure 16.16 for illustration. Since Sn,1 is isomorphic to Kn , it is easy to see that w∗ (Sn,1 ) = 2 for n ≥ 2. Thus, we study w∗ (Sn,2 ).
ch016.tex
25/7/2008
12: 29
Page 477
Spanning Diameter
477
{i }
S n,1k u x 1 H 1
{i 2 }
y1
S n, k x2
{i r }
H2
y2
S n, k xr H r yr v
FIGURE 16.16 Illustration for Theorem 16.7.
THEOREM 16.8 For n ≥ 4, w∗ (Sn,2 ) ≥ n2 − 2n. THEOREM 16.9 For n ≥ 4, w∗ (Sn,2 ) = n2 − 2n. Proof: Since Sn,2 is vertex-transitive, we assume that u = 1n. We have the following cases: Case 1. Suppose that (v)2 = n. By Theorem 16.7, there is a Hamiltonian path R
n − 1 {n} joining (u)k to (v)k . We set {z1 , z2 , . . . , zn−3 } = V (Sn,2 ) − {u, v}. We set of Sn,2 P1 = u, v, P2 = u, (u)2 , R, (v)2 , v, and Pi = u, zi−2 , v for every 3 ≤ i ≤ n − 1. Then {P1 , P2 , . . . , Pn−1 } forms a (n − 1)∗ -container of Sn,2 between u and v. Moreover, l(P1 ) = 1, l(P2 ) = n2 − 2n, and l(Pi ) = 2 for every 3 ≤ i ≤ n − 1. Case 2. Suppose that (v)2 = 1 and (v)1 = n. We set xi = (i + 1)n and yi = (i + 1)1 for every 1 ≤ i ≤ n − 2. By Theorem 16.7, there is a Hamiltonian path Ri {i+1} of Sn,2 joining (xi )k to (yi )k for every 1 ≤ i ≤ n − 2. We set P1 = u, v and Pi = u, xi−1 , (xi−1 )2 , Ri−1 , (yi−1 )2 , yi−1 , v for every 2 ≤ i ≤ n − 1. Then {P1 , P2 , . . . , Pn−1 } forms a (n − 1)∗ -container of Sn,2 between u and v. Moreover, l(P1 ) = 1 and l(Pi ) = n + 3 for every 2 ≤ i ≤ n − 1. Case 3. Suppose that either (v)2 = 1 and (v)1 = t for some t = n or (v)2 = t for some t = 1 and (v)1 = n. By symmetric rule, we assume that (v)2 = 1 and (v)1 = t for some t = n. We set xi = (i + 1)n for every 1 ≤ i ≤ n − 2 and yj = ( j + 1)1 for {i+1} every j ∈ n − 2 − {t − 1}. By Theorem 16.7, there is a Hamiltonian path Ri of Sn,2 joining (xi )2 to (yi )2 for every i ∈ n − 2 − {t − 1} and there is a Hamiltonian path {t} Rt−1 of Sn,2 joining (xt−1 )2 to (v)2 . We set Pi = u, xi , (xi )2 , Ri , (yi )2 , yi , v for every i ∈ n − 2 − {t − 1}, Pt−1 = u, xt−1 , (xt−1 )2 , Rt−1 , (v)2 , v, and Pn−1 = u, (u)2 , v. Then {P1 , P2 , . . . , Pn−1 } forms a (n − 1)∗ -container of Sn,2 between u and v. Moreover, l(Pi ) = n + 3 for every for every i ∈ n − 2 − {t − 1}, l(Pt−1 ) = n + 1, and l(Pn−1 ) = 2. Case 4. Suppose that (v)2 = t and (v)1 = 1 for some t = n. We set xi = (i + 1)n for every 1 ≤ i ≤ n − 2 and yj = (j + 1)1 for every j ∈ n − 2 − {t − 1}. By The{i+1} orem 16.7, there is a Hamiltonian path Ri of Sn,2 joining (xi )2 to (yi )2 for {1}
every i ∈ n − 2 − {t − 1} and there is a Hamiltonian path Rt−1 of Sn,2 joining (u)2 to (v)2 . We set Pi = u, xi , (xi )2 , Ri , (yi )2 , yi , v for every i ∈ n − 2 − {t − 1}, Pt−1 = u, xt−1 , (xt−1 )2 = yn−1 , v, and Pn−1 = u, (u)k , Rt−1 , (v)2 , v. Then {P1 , P2 , . . . , Pn−1 } forms a (n − 1)∗ -container of Sn,2 between u and v. Moreover, l(Pi ) = n + 3 for every for every i ∈ n − 2 − {t − 1}, l(Pt−1 ) = 3, and l(Pn−1 ) = n. Case 5. Suppose that (v)2 = s and (v)1 = t for some s = n and for some t = 1. We set xi = (i + 1)n for every 1 ≤ i ≤ n − 2 and yj = js for every j ∈ n − {s, t}.
ch016.tex
478
25/7/2008
12: 29
Page 478
Graph Theory and Interconnection Networks {i+1}
By Theorem 16.7, there is a Hamiltonian path Ri of Sn,2
joining (xi )2 to (yi+1 )2 {t}
for every i ∈ n − 2 − {s − 1, t − 1}, there is a Hamiltonian path Rt−1 of Sn,2 join{1} Sn,2
joining (u)2 to ing (xt−1 )2 to (v)2 , and there is a Hamiltonian path Q of 2 2 2 (y1 ) . We set Pi = u, xi , (xi ) , Ri , (yi ) , yi , v for every i ∈ n − 2 − {s − 1, t − 1}, Pt−1 = u, xt−1 , (xt−1 )2 , Rt−1 , (v)2 , v, Ps−1 = u, xs−1 , (xs−1 )k = ys , v, and Pn−1 =
u, (u)2 , Q, (y1 )2 , y1 , v. Then {P1 , P2 , . . . , Pn−1 } forms a (n − 1)∗ -container of Sn,2 between u and v. Moreover, l(Pi ) = 4 for every for every i ∈ n − 2 − {s − 1, t − 1}, l(Pt−1 ) = 4, l(Ps−1 ) = 3, and l(Pn−1 ) = 4. Hence, we have w∗ (Sn,2 ) ≤ n2 − 2n. By Theorem 16.8, w∗ (Sn,2 ) = n2 − 2n.
ch017.tex
30/6/2008
17 17.1
12: 32
Page 479
Pancyclic and Panconnected Property
INTRODUCTION
The graph embedding problem is a central issue in evaluating a network. The graph embedding problem asks whether the quest graph is a subgraph of a host graph, and an important benefit of the graph embeddings is that we can apply an existing algorithm for guest graphs to host graphs. This problem has attracted a burst of studies in recent years. Cycle networks and path networks are suitable for designing simple algorithms with low communication costs. The cycle embedding problem, which deals with all possible length of the cycles in a given graph, is investigated in a lot of interconnection networks [84,123,176,185,187,225,243]. The path embedding problem, which deals with all possible lengths of the paths between given two vertices in a given graph, is also investigated in a lot of interconnection networks [48,104–106,159,161,162,225,243,244,247]. In graph theory, we use the term pancyclic property to discuss the cycle embedding problem and the term panconnected property to discuss the path embedding problem. A graph is pancyclic if it contains a cycle of every length from 3 to |V (G)| inclusive. The concept of pancyclic graphs is proposed by Bondy [28] and is used in interconnection network for embedding all the possible lengths of the cycles in a given graph [84,123,184]. The pancyclic property has been extended to vertex-pancyclic [155] and edge-pancyclic [10]. It is known that there is no odd cycle in any bipartite graph. Hence, any bipartite graph is not pancyclic. For this reason, the concept of bipancyclicity is proposed [254]. A bipartite graph is bipancyclic if it contains a cycle of every even length from 4 to |V (G)| inclusive. It is proved that the hypercube is bipancyclic [225,279]. A bipartite graph is vertex-bipancyclic [254] if every vertex lies on a cycle of every even length from 4 to |V (G)| inclusive. Similarly, a bipartite graph is edge-bipancyclic if every edge lies on a cycle of every even length from 4 to |V (G)| inclusive. Obviously, every edge-bipancyclic graph is vertex-bipancyclic. A graph G is panconnected if there exists a path of length l joining any two different vertices x and y with dG (x, y) ≤ l ≤ |V (G)| − 1. Obviously, every panconnected graph is pancyclic. The concept of panconnected graphs is proposed by Alavi and Williamson [5]. It is obvious that any bipartite graph with at least three vertices is not panconnected. For this reason, we say a bipartite graph is bipanconnected if there exists a path of length l joining any two different vertices x and y with dG (x, y) ≤ l ≤ |V (G)| − 1 and (l − dG (x, y)) is even. 479
ch017.tex
30/6/2008
12: 32
Page 480
480
17.2
Graph Theory and Interconnection Networks
BIPANCONNECTED AND BIPANCYCLIC PROPERTIES OF HYPERCUBES
To discuss the pancyclic property and the panconnected property for an interconnection network, we may need more information about its topological property. For this reason, we discuss only the bipanconnected property and edge-fault-tolerant bipancyclic property of Qn . Assume that n is any positive integer with n ≥ 2. Let u and x be two distinct white vertices of Qn and v and y be two distinct black vertices of Qn . With Lemma 13.17, there are two disjoint paths P1 and P2 such that (1) P1 is a path joining u to v, (2) P2 is a path joining x to y, and (3) P1 ∪ P2 spans Qn . We call such property the 2H property. The 2H property has been used in many applications of hypercubes [174,242]. Obviously, the lengths of P1 and P2 satisfy l(P1 ) + l(P2 ) = 2n − 2. Yet we can further require that the length of P1 , and hence the length of P2 can be any odd integer such that l(P1 ) ≥ h(u, v) and l(P2 ) ≥ h(x, y). We call such a property the 2RH property. More precisely, let u and x be two distinct white vertices of Qn and v and y be two distinct black vertices of Qn . Let l1 and l2 are odd integers with l1 ≥ h(u, v), l2 ≥ h(x, y), and l1 + l2 = 2n − 2. Then there are two disjoint paths P1 and P2 such that (1) P1 is a path joining u to v with l(P1 ) = l1 , (2) P2 is a path joining x to y with l(P2 ) = l2 , and (3) P1 ∪ P2 spans Qn . For i = 0, 1, let Qni denote the subgraph of Qn induced by {u = un un−1 . . . u2 u1 | un = i}. Obviously, Qni is isomorphic to Qn−1 . For any vertex u = un un−1 . . . u2 u1 , we use ui to denote the vertex v = vn vn−1 . . . v2 v1 with uj = vj for 1 ≤ i = j ≤ n − 1 and ui = 1 − vi . An edge joining vertex u to vertex ui is an i-dimensional edge. THEOREM 17.1 [218] The hypercube Qn satisfies the 2RH property if and only if n = 3. Proof: Let u = 000, v = 001, x = 010, and y = 101. There are just two paths P1 = u = 000, 010, 011, 001 = v and P2 = u = 000, 100, 101, 001 = v between u and v with length 3. However, there is not another path of length 3 between u and v such that the path does not contain x or y. Thus, Q3 is not satisfies the 2RH. It is easy to see that Q2 satisfies the 2RH. For n ≥ 4, we show that the Qn satisfies the 2RH by induction. By brute force, we can check whether the theorem holds for n = 4. Assume that the theorem holds for any Qk with 4 ≤ k < n. Without loss of generality, we can assume that l1 ≥ l2 . Thus, l2 ≤ 2n−1 − 1. Since Qn is edge-symmetric, we can assume that u ∈ V (Qn0 ) and x ∈ V (Qn1 ). We have the following cases: Case 1.
v ∈ V (Qn0 ) and y ∈ V (Qn1 ).
Suppose that l2 < 2n−1 − 1. Since Qn is Hamiltonian laceable, there exists a Hamiltonian path R of Qn0 joining u and v. Since the length of R is 2n−1 − 1, we can write R as u, R1 , p, q, R2 , v for some black vertex p with pn = x and some white vertex q with qn = y. Obviously, h(pn , qn ) = 1. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining pn to qn with l(S1 ) = l1 − 2n−1 , (2) S2 is a path joining x to y with l(S2 ) = l2 , and (3) S1 ∪ S2 spans Qn1 . We set P1 as u, R1 , p, pn , S1 , qn , q, R2 , v and P2 as S2 . Obviously, P1 and P2 are the required paths. See Figure 17.1a for illustration.
ch017.tex
30/6/2008
12: 32
Page 481
Pancyclic and Panconnected Property Qn0
481
Qn1
u
Qn0 x
Qn1
u
v
x v
y
y
qn
q p
pn (a)
(b)
FIGURE 17.1 Illustration for Case 1 of Theorem 17.1.
Qn0
Qn1
u
Qn0 x
Qn1 x
u rn sn
r s y
y v p
pn
p pn
(a)
v (b)
FIGURE 17.2 Illustration for Case 2 of Theorem 17.1.
Suppose that l2 = 2n−1 − 1. Since Qn is Hamiltonian laceable, there exists a Hamiltonian path P1 of Qn0 joining u and v and there exists a Hamiltonian path P2 of Qn1 joining x and y. Obviously, P1 and P2 are the required paths. See Figure 17.1b for illustration. Case 2.
{v, y} ⊂ V (Qn1 ).
Suppose that l2 < 2n−1 − 1 there exists a neighbor p of v such that p = x. Obviously, p is a white vertex. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining p to v with l(S1 ) = l1 − 2n−1 , (2) S2 is a path joining x to y with l(S2 ) = l2 , and (3) S1 ∪ S2 spans Qn1 . Since Qn is Hamiltonian laceable, there exists a Hamiltonian path R of Qn0 joining u and pn . We set P1 as u, R, pn , p, S1 , v and P2 as S2 . Obviously, P1 and P2 are the required paths. See Figure 17.2a for illustration. Suppose that l2 = 2n−1 − 1. Again, there exists a neighbor p of v such that p = x. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining p to v with l(S1 ) = 1, (2) S2 is a path joining x to y with l(S2 ) = 2n−1 − 3, and (3) S1 ∪ S2 spans Qn1 . Obviously, we can write S2 as x, S21 , r, s, S22 , y for some black vertex r with rn = u. Again, by induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to pn with l(R1 ) = 2n−1 − 3, (2) R2 is a path joining rn to sn with l(R2 ) = 1, and (3) R1 ∪ R2 spans Qn0 . We set P1 as u, R1 , pn , p, v and P2 as
ch017.tex
30/6/2008
12: 32
Page 482
482
Graph Theory and Interconnection Networks Qn0
Qn1
Qn0
u
Qn1
u
q
qn v
q p
qn pn
p
y
x
y
x
v
(a)
pn
(b)
FIGURE 17.3 Illustration for Case 3 of Theorem 17.1.
x, S21 , r, rn , sn , s, S22 , y. Obviously, P1 and P2 are the required paths. See Figure 17.2b for illustration. Case 3.
y ∈ V (Qn0 ) and v ∈ V (Qn1 ).
Suppose that l2 = 1. Obviously, x = yn . Let p be a neighbor of y in Qn0 such that n y = v and let q be a neighbor of p in Qn0 such that p = y. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to q and l(R1 ) = 2n−1 − 3, (2) R2 is a path joining p to y and l(R2 ) = 1, and (3) R1 ∪ R2 spans Qn0 . Obviously, pn is a black vertex and qn is a white vertex. Again, by induction, there exist two
disjoint paths S1 and S2 such that (1) S1 is a path joining qn to v with l(S1 ) = 2n−1 − 3, (2) S2 is a path joining x to pn with l(S2 ) = 1, and (3) S1 ∪ S2 spans Qn1 . We set P1 as u, R1 , q, p, pn , qn , S1 , v and P2 as x, y. Obviously, P1 and P2 are the required paths. See Figure 17.3a for illustration. Suppose that l2 ≥ 3. We set p be a neighbor in Qn0 of y with p = u if h(x, y) = 1 and p be a neighbor of y in Qn0 with p = u and h(p, y) = h(x, y) − 1 if h(x, y) ≥ 3. Let q be a neighbor of vn in Qn0 such that q = y and qn = x. Thus, h(qn , v) = 1. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to p with l(R1 ) = 2n−1 − 3, (2) R2 is a path joining q to y with l(R2 ) = 1, and (3) R1 ∪ R2 spans Qn0 . Again, by induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining qn to v with l(S1 ) = l1 − 2n−1 + 2, (2) S2 is a path joining x to pn with l(S2 ) = l2 − 2, and (3) S1 ∪ S2 spans Qn1 . We set P1 as u, R1 , q, qn , S1 , v and P2 as
x, S2 , pn , p, y. Obviously, P1 and P2 are the required paths. See Figure 17.3b for illustration. Case 4.
{v, y} ⊂ V (Qn0 ).
Suppose that l2 = 1. Obviously, y = xn . Since Qn is Hamiltonian laceable, there exists a Hamiltonian path R of Qn0 joining u to v. Obviously, R can be written as
u, R1 , p, y, q, R2 , v. Note that u = p if l(R1 ) = 0. Obviously, p and q are white vertices. Thus, pn and qn are black vertices. Let r be a neighbor of qn in Qn1 such that
ch017.tex
30/6/2008
12: 32
Page 483
Pancyclic and Panconnected Property Qn0
Qn1
483 Qn0
Qn1
u
u
v
v
tn t s
r q
qn
y
x
p
pn
y
p (a)
sn x pn
(b)
FIGURE 17.4 Illustration for Case 4 of Theorem 17.1.
r = x. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining pn to r with l(S1 ) = 2n−1 − 3, (2) S2 is a path joining qn to x with l(S2 ) = 1, and (3) S1 ∪ S2 spans Qn1 . We set P1 as u, R1 , p, pn , S1 , r, qn , q, R2 , v and P2 as x, y. Obviously, P1 and P2 are the required paths. See Figure 17.4a for illustration. Suppose that l2 ≥ 3. We set p be a neighbor of y in Qn0 with p = u if h(x, y) = 1 and p be a neighbor of y in Qn0 with p = u and h(p, y) = h(x, y) − 1 if h(x, y) ≥ 3. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to v with l(R1 ) = 2n−1 − 3, (2) R2 is a path joining p to y with l(R2 ) = 1, and (3) R1 ∪ R2 spans Qn0 . Obviously, we can write R1 as u, R11 , s, t, R12 , v for some black vertex s such that sn = x. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining sn to tn with l(S1 ) = l1 − 2n−1 − 2, (2) S2 is a path joining x to pn with l(S2 ) = l2 − 2, and (3) S1 ∪ S2 spans Qn1 . We set P1 as u, R11 , s, sn , S1 , tn , t, R12 , v and P2 as x, S2 , pn , p, y. Obviously, P1 and P2 are the required paths. See Figure 17.4b for illustration. The theorem is proved. By changing the roles of the vertices in bipartite sets in Theorem 17.1, we have the following theorem. The proof is similar to the proof of Theorem 17.1. THEOREM 17.2 Assume that n is a positive integer with n ≥ 4. Let u and x be two distinct white vertices of Qn and v and y be two distinct black vertices of Qn . Let l1 and l2 be even integers with l1 ≥ h(u, x), l2 ≥ h(v, y), and l1 + l2 = 2n − 2. There exist two disjoint paths P1 and P2 such that (1) P1 is a path joining u to x and l(P1 ) = l1 , (2) P2 is a path joining v to y and l(P2 ) = l2 , and (3) P1 ∪ P2 spans Qn . It is easy to confirm that the theorem does not hold for n = 2. Suppose that n = 3. Let u = 000, v = 001, x = 011, and y = 010. There are just two paths P1 = u = 000, 001, 011 = x and P2 = u = 000, 010, 011 = x of Q3 with length 2 between u and v. Moreover, there is not another path of Q3 with length 2 between u
ch017.tex
484
30/6/2008
12: 32
Page 484
Graph Theory and Interconnection Networks
and x where the path does not contain v and y. Thus, the previous theorem does not hold for n = 3. THEOREM 17.3 The hypercube Qn is bipanconnected if n ≥ 2. Proof: We need to prove that for any two different vertices x and y of Qn there exists a path Pl (x, y) of length l for any l with h(x, y) ≤ l ≤ 2n − 1 and 2 | (l − h(x, y)). Obviously, this statement holds for n = 1, 2, 3. Now, we consider n ≥ 4. Without loss of generality, we assume that x is a white vertex. Suppose that y is a black vertex. Thus, h(x, y) is odd. Let l be any odd integer with h(x, y) ≤ l ≤ 2n − 1. Suppose that l = 2n − 1. Note that Qn is Hamiltonian laceable. Obviously, the Hamiltonian path of Qn joining x and y is of length 2n − 1. Suppose that l < 2n − 1. Since n ≥ 4, there exists a pair of adjacent vertices u and v such that u is a white vertex with u = x and v is a black vertex with v = y. Obviously, h(u, v) = 1. By Theorem 17.1, there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining u to v with l(P1 ) = 2n − 2 − l, (2) P2 is a path joining x to y with l(P2 ) = l, and (3) P1 ∪ P2 spans Qn . Obviously, P2 is a path of length l joining x to y. Suppose that y is a white vertex. Thus, h(x, y) is even. Let l be any even integer with h(x, y) ≤ l < 2n − 1. Since n ≥ 4, there exist two different neighbors u and v of y such that h(x, u) = h(x, y) − 1. By Theorem 17.1, there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining x to u with l(P1 ) = l − 1, (2) P2 is a path joining y to v with l(P2 ) = 2n − l − 1, and (3) P1 ∪ P2 spans Qn . Obviously, x, P1 , u, y is a path of length l joining x to y. Thus, the theorem is proved. With the bipanconnected property of Qn , for any two different vertices x and y of Qn there exists a path Pl (x, y) of length l for any l with h(x, y) ≤ l ≤ 2n − 1 and 2 | (l − h(x, y)). We expect such a path Pl (x, y) can be further extended by including the vertices not in Pl (x, y) into a Hamiltonian path from x to a fixed vertex z or a Hamiltonian cycle. THEOREM 17.4 Assume that n be any positive integer with n ≥ 2. Let x and z be two vertices from different partite set of Qn and y be a vertex of Qn that is not in {x, z}. For any integer l with h(x, y) ≤ l ≤ 2n − 1 − h(y, z) and 2 | (l − h(x, y)), there exists a Hamiltonian path R(x, y, z; l) from x to z such that dR(x,y,z;l) (x, y) = l. Proof: By brute force, we can confirm that the theorem holds for n = 2, 3. Now, we consider n ≥ 4. Without loss of generality, we assume that x is a white vertex and z is a black vertex. Suppose that y is a black vertex. Obviously, h(y, z) ≥ 2. There exists a neighbor w of y such that w = x and h(w, z) = h(y, z) − 1. Obviously, w is a white vertex. By Theorem 17.1, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining x to y with l(R1 ) = l, (2) R2 is a path joining w to z with l(R2 ) = 2n − l − 2, and (3) R1 ∪ R2 spans Qn . We set R as x, R1 , y, w, R2 , z. Obviously, R is the required Hamiltonian path. Suppose that y is a white vertex. Obviously, h(x, y) ≥ 2. There exists a neighbor w of y such that w = z and h(x, w) = h(x, y) − 1. Obviously, w is a black vertex.
ch017.tex
30/6/2008
12: 32
Page 485
Pancyclic and Panconnected Property
485
By Theorem 17.1, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining x to w with l(R1 ) = l − 1, (2) R2 is a path joining y to z with l(R2 ) = 2n − l − 1, and (3) R1 ∪ R2 spans Qn . We set R as x, R1 , w, y, R2 , z. Obviously, R is the required Hamiltonian path. COROLLARY 17.1 Assume that n is a positive integer with n ≥ 2. Let x and y be any two different vertices of Qn . For any integer l with h(x, y) ≤ l ≤ 2n−1 , there exists a Hamiltonian cycle S(x, y; l) such that dS(x,y;l) (x, y) = l and 2 | (l − h(x, y)). Proof: Let z be a neighbor of x such that z = y. By Theorem 17.4, there exists a Hamiltonian path R joining x to z such that dR(x,y,z;l) (x, y) = l. We set S as x, R, z, x. Obviously, S forms the required Hamiltonian cycle.
17.3
EDGE FAULT-TOLERANT BIPANCYCLIC PROPERTIES OF HYPERCUBES
With Theorem 17.1, we can easily prove that Qn is edge-bipancyclic. Li et al. [225] study the edge-fault-tolerant edge-bipancyclic of hypercubes. A bipartite graph G is k-edge fault-tolerant edge-bipancyclic if G − F remains edge-bipancyclic for any F ⊂ E(G) with |F| ≤ k. THEOREM 17.5 Qn is (n − 2)-edge fault-tolerant edge-bipancyclic. Proof: Obviously, the theorem is true for n = 2. We can prove that the theorem is true for n = 3 by brute force. Assume that the theorem is true for all 3 ≤ k < n. Let F be any subset of E(Qn ) with |F| ≤n n − 2. For 1 ≤ i ≤ n, let Fi denote the set of i-dimensional edges in F. Thus, i=1 |Fi | = |F|. Without loss of generality, we assume that |F1 | ≤ |F2 | ≤ · · · ≤ |Fn |. Moreover, we use F 0 to denote the set E(Qn0 ) ∩ F and F 1 to denote the set E(Qn1 ) ∩ F. Thus, F = F 0 ∪ F0 ∪ F 1 and |F 0 | + |F 1 | ≤ n − 3. Let e be any edge of E(Qn ) − F and l be any even integer with 4 ≤ l ≤ 2n . To prove this theorem, we need to construct a cycle of length l containing e. Case 1. e is not of dimension n. Without loss of generality, we may assume that e ∈ E(Qn0 ). Suppose that 4 ≤ l ≤ 2n−1 . Since |F 0 | ≤ n − 3, by induction hypothesis there exists a cycle of length l in Qn0 − F containing e. In particular, we use C0 to denote such a cycle of length 2n−1 . Suppose that 2n−1 + 2 ≤ l ≤ 2n . Let l1 = l − 2n−1 . Then 2 ≤ l1 ≤ 2n−1 . Since |E(C0 ) − {e}| = 2n−1 − 1 > 2(n − 2) = 2|F| for n ≥ 3, there exists an edge (u, v) on C0 such that (u, v) = e and {(u, un ), (v, vn ), (un , vn )} ∩ F = ∅. We may write C0 as
u, P0 , v, u. Obviously, e lies on P0 , h(un , vn ) = 1, and {un , vn } ⊆ V (Qn1 ). Suppose that l1 = 2. Then u, P0 , v, vn , un , u is a cycle of length l in Qn − F. Suppose that l1 ≥ 4. Since |F 1 | ≤ n − 3, by induction hypothesis there exists a cycle C1 of length l1 in Qn1 − F containing (un , vn ). We can write C1 as un , vn , P1 , un . Then
u, P0 , v, vn , P1 , un , u is a cycle of length l in Qn − F containing e. See Figure 17.5a for illustration.
ch017.tex
30/6/2008
12: 32
Page 486
486
Graph Theory and Interconnection Networks Qn0 e
Qn1 u
un
v
vn
Qn0 e
Qn1 u
un1
v
vn1
(a)
(b)
Qn0
Qn1
Qn1 u e un
u e un x
Qn0
x
xn (c)
xn (d)
FIGURE 17.5 Illustration for Theorem 17.5.
Case 2.
e is of dimension n. 0
Case 2.1. |Fn | < n − 2. Let Qn denote the subgraph of Qn induced by 1 {x ∈ V (Qn ) | xn−1 = 0} and Qn denote the subgraph of Qn induced by {x ∈ 0 1 V (Qn ) | xn−1 = 1}. Thus, Qn and Qn are isomorphic to Qn . Without loss of generality, 0 0 1 we may assume that e ∈ E(Qn ). We claim that |E(Qn ) ∩ F| + |E(Qn ) ∩ F| ≤ n − 3. 0 1 Suppose that |F| ≤ n − 3. Obviously, |E(Qn ) ∩ F| + |E(Qn ) ∩ F| ≤ n − 3. Sup0 1 pose that |F| = n − 2. Then, |Fn−1 | ≥ 1. Again, |E(Qn ) ∩ F| + |E(Qn ) ∩ F| ≤ n − 3. 0 1 Accordingly, |E(Qn ) ∩ F| + |E(Qn ) ∩ F| ≤ n − 3. 0 Suppose that 4 ≤ l ≤ 2n−1 . Since |E(Qn ) ∩ F| ≤ n − 3, by induction hypothesis 0 there exists a cycle of length l in Qn − F containing e. In particular, we use C0 to denote such a cycle of length 2n−1 . Suppose that 2n−1 + 2 ≤ l ≤ 2n . Let l1 = l − 2n−1 . Then 2 ≤ l1 ≤ 2n−1 . Since |E(C0 ) − {e}| = 2n−1 − 1 > 2(n − 2) = 2|F| for n ≥ 3, there exists an edge (u, v) on C0 such that (u, v) = e and {(u, un−1 ), (v, vn−1 ), (un−1 , vn−1 )} ∩ F = ∅. We may write C0 1 as u, P0 , v, u. Obviously, e is on P0 , h(un−1 , vn−1 ) = 1 and {un−1 , vn−1 } ⊆ V (Qn ). n−1 n−1 Suppose that l1 = 2. Then u, P0 , v, v , u , u is a cycle of length l in Qn − F. 1 Suppose that l1 ≥ 4. Since |E(Qn ) ∩ F| ≤ n − 3, by induction hypothesis there exists 1 a cycle C1 of length l1 in Qn − F containing (un−1 , vn−1 ). We can write C1 as n−1 n−1 n−1
u , v , P1 , u . Then u, P0 , v, vn−1 , P1 , un−1 , u is a cycle of length l in Qn − F containing e. See Figure 17.5b for illustration. Case 2.2. |Fn | = n − 2. Then E(Qn0 ) ∩ F = ∅ and E(Qn1 ) ∩ F = ∅. Assume that e = (u, un ) with u ∈ V (Qn0 ). Suppose that l = 4l for 1 ≤ l ≤ 2n−2 . Since there are (n − 1) neighbors of u in Qn0 , there exists a neighbor x of u in Qn0 such that (x, xn ) ∈ / F. Obviously,
ch017.tex
30/6/2008
12: 32
Page 487
Pancyclic and Panconnected Property
487
h(u, x) = h(un , vn ) = 1. By Theorem 17.3, there exists a path P0 of length 2l − 1 in Qn0 joining u and x and there exists a path P1 in Qn1 of length 2l − 1 joining xn and un . Then u, P0 , x, xn , P1 , un , u is a cycle in Qn − F containing e of length l. See Figure 17.5c for illustration. Suppose that l = 4l + 2 for 1 ≤ l ≤ 2n−2 − 1. Let A = {w | w ∈ V (Qn0 ) and h(u, w) = 2}. Obviously, |A| = C(n−1 2 ) ≥ n − 2. There exists an element x in A such that (x, xn ) ∈ / F. Obviously, h(u, x) = h(un , xn ) = 2. By Theorem 17.3, there exists a path P0 in Qn0 of length 2l joining u and x and there exists a path P1 in Qn1 of length 2l joining xn and un . Then u, P0 , x, xn , P1 , un , u is a cycle in Qn − F containing e of length l. See Figure 17.5d for illustration. The theorem is proved. Let u be any vertex of Qn and F be {(u, ui ) | 1 ≤ i < n}. Obviously, |F| = n − 1 and degQn −F (u) = 1. Thus, (u, un ) does not lie on any cycle of Qn − F. Hence, the previous result is optimal. Yang et al. [350] observed that Qn − F may still bipancyclic for F ⊂ E(Qn ) with |F| ≤ 2n − 5 if we assume that every vertex is incident with at least two healthy edges. Formally, we say that a bipartite graph G is k conditional edge-fault-tolerant bipancyclic (abbreviated as k conditional fault-bipancyclic) if G − F is bipancyclic for every F ⊂ E(G) with |F| ≤ k under the condition that every vertex is incident with at least two nonfaulty edges; that is, at least two edges not in F. THEOREM 17.6 The hypercube Qn is (2n − 5) conditional fault-bipancyclic for n ≥ 3. Proof: We prove this by induction on n. By Theorem 17.5, Q3 is 1-edge fault-tolerant bipancyclic. Since 2 × 3 − 5 = 1, the theorem holds for n = 3. Assume that Qn−1 is 2(n − 1) − 5 = 2n − 7 conditional fault-bipancyclic for some n ≥ 4. We shall prove that Qn is (2n − 5) conditional fault-bipancyclic. Let F ⊂ E(Qn ) that satisfies the condition that every vertex is incident with at least two nonfaulty edges and |F| ≤ 2n − 5. We note that there are three possible fault distributions: 1. There is only one vertex incident with n − 2 faulty edges. Without loss of generality, we may assume that one of these n − 2 faulty edges is an n-dimensional edge. 2. There are two vertices that share a faulty edge and are both incident with n − 2 faulty edges. Without loss of generality, we may assume that the faulty edge they share is an n-dimensional edge. 3. Every vertex is incident with less than n − 2 faulty edges. We may assume without loss of generality that one of them is an n-dimensional edge. Note that there cannot be more than two vertices that are incident with n − 2 faulty edges for n ≥ 3. Then, we can divide Qn into Qn0 and Qn1 along dimension n. So both of Qn0 and Qn1 satisfy the condition that every vertex is incident with at least two nonfaulty edges. Let F 0 = F ∩ E(Qn0 ) and F 1 = F ∩ E(Qn1 ). Without loss of generality, we may
ch017.tex
30/6/2008
12: 32
Page 488
488
Graph Theory and Interconnection Networks
assume that |F 0 | ≥ |F 1 |. Since [(2n − 5) − 1]/2 = n − 3, |F 1 | ≤ n − 3. We discuss the existence of cycles of all even lengths from 4 to 2n in the following two cases: Case 1. Cycles of even lengths from 4 to 2n−1 . Note that |F 1 | ≤ n − 3 ≤ 2n − 7 for n ≥ 4. By induction hypothesis, Qn1 is (2n − 7) conditional fault-bipancyclic, so Qn1 contains cycles of all even lengths from 4 to 2n−1 . Case 2. Cycles of even lengths from 2n−1 + 2 to 2n . We divide this case further into two subcases. Case 2.1. |F 0 | = 2n − 6. Hence, there is only one n-dimensional faulty edge; say, e. Let x ∈ V (Qn0 ) be the vertex incident with e. Notice that there are at most n − 3 faulty edges incident with x in Qn0 . Since 2n − 6 > n − 3 for n ≥ 4, there must be a faulty edge in Qn0 , say e , such that it is not incident to x. Let F = F 0 − {e }. Clearly, |F 0 | = 2n − 7. By induction hypothesis, Qn0 is (2n − 7) conditional fault-bipancyclic, so Qn0 − F contains a Hamiltonian cycle, say C. Then, Qn0 − F 0 contains a Hamiltonian path on C, say P = u1 , u2 , . . . , u2n−1 , such that u1 = x and u2n−1 = x. Let 2 ≤ l ≤ 2n−1 be an even integer. We construct a cycle of length 2n−1 + l as follows. Since the edge e is the only faulty edge in n-dimension, there must exist two vertices ui and uj such that the two n-dimensional edges incident to ui and uj , respectively, are nonfaulty and j − i = l − 1. Since j − i is odd, ui and uj are in different partite sets, and then (ui )n and (uj )n are also in different partite sets. By Theorem 13.1, Qn1 is (n − 3)-fault Hamiltonian laceable. Since |F 1 | ≤ n − 3, Qn1 − F 1 contains a Hamiltonian path, say Q joining (uj )n to (ui )n . Obviously, ui , ui+1 , . . . , uj , (uj )n , Q, (ui )n , ui is a cycle of length 2n−1 + l in Qn − F. See Figure 17.6a for illustration. Case 2.2. |F 0 | ≤ 2n − 7. By induction hypothesis, Qn0 is (2n − 7) conditional fault-bipancyclic. Therefore, Qn0 − F 0 contains a Hamiltonian cycle, say C − u1 , u2 , . . . , u2n−1 , u1 . Let l be an even integer for 2 ≤ l ≤ 2n−1 . We construct a cycle of length 2n−1 + l as follows. First, we claim that there exist two vertices ui and uj on C such that the two n-dimensional edges incident to ui and uj , respectively, are nonfaulty, and j − i (mod 2n−1 ) = l − 1. Suppose on the contrary that there do Qn0
Qn1
Qn0
Qn1
u1 q
(u i) n
ui
(u i )n
q ui ui1
x xn uj
(u j )n
uj
(u j) n
u 2n1 (a)
FIGURE 17.6 Illustration for Theorem 17.6.
(b)
ch017.tex
30/6/2008
12: 32
Page 489
Pancyclic and Panconnected Property
489
not exist such ui and uj . Then there are at least 2n−1 /2 = 2n−2 n-dimensional faulty edges. However, 2n−2 > 2n − 5 for n ≥ 4. We obtain a contradiction. Thus, there exist such ui and uj . By Theorem 13.1, Qn1 is (n − 3) fault-Hamiltonian laceable. Since |F 1 | ≤ n − 3, Qn1 − F 1 is still Hamiltonian laceable. Since ui and uj are in different partite sets, (ui )n and (uj )n are also in different partite sets. There is a Hamiltonian path P in Qn1 − F 1 between (uj )n and (ui )n . Then ui , ui + 1 , . . . , uj , (uj )n , P, (ui )n , ui forms a cycle of length 2n−1 + l. See Figure 17.6b for illustration. The theorem is proved. Let a be any vertex of Qn and b = (a1 )2 . Let F = {(a, ai ) | 3 ≤ i ≤ n} ∪ {(b, bi ) | 3 ≤ i ≤ n}. Thus, |F| = 2n − 4. It is easy to see that there is no Hamiltonian cycle in Qn − F. Thus, the previous result is optimal.
17.4
PANCONNECTED AND PANCYCLIC PROPERTIES OF AUGMENTED CUBES
As before, we need a family of nonbipartite interconnection connection networks to discuss the corresponding panconnected and pancyclic properties. Here, we use augmented cubes. Now, we cover some background information on augmented cubes. Assume that n ≥ 1 is an integer. The graph of the n-dimensional augmented cube, denoted by AQn , has 2n vertices, each labeled by an n-bit binary string V (AQn ) = {u1 u2 . . . un | ui ∈ {0, 1}}. For n = 1, AQ1 is the graph K2 with vertex set {0, 1}. For n ≥ 2, AQn can be recursively constructed by two copies of AQn−1 , denoted 0 1 , and by adding 2n edges between AQ0 1 by AQn−1 and AQn−1 n−1 and AQn−1 as follows. 0 1 )= Let V (AQn−1 ) = {0u2 u3 . . . un | ui = 0 or 1 for 2 ≤ i ≤ n} and V (AQn−1 0 {1v2 v3 . . . vn | vi = 0 or 1 for 2 ≤ i ≤ n}. A vertex u = 0u2 u3 . . . un of AQn−1 is adjacent 1 to a vertex v = 1v2 v3 . . . vn of AQn−1 if and only if one of the following cases holds: 1. ui = vi , for 2 ≤ i ≤ n. In this case, (u, v) is called a hypercube edge. We set v = uh . 2. ui = vi , for 2 ≤ i ≤ n. In this case, (u, v) is called a complement edge. We set v = uc . The augmented cubes AQ1 , AQ2 , AQ3 , and AQ4 are illustrated in Figure 17.7. It is proved in Ref. 66 that AQn is a vertex-transitive, (2n − 1)-regular, and (2n − 1)connected graph with 2n vertices for any positive integer n. Let i be any index with 1 ≤ i ≤ n and u = u1 u2 u3 . . . un be a vertex of AQn . We use ui to denote the vertex v = v1 v2 v3 . . . vn such that uj = vj with 1 ≤ j = i ≤ n and ui = vi . Moreover, we use ui∗ to denote the vertex v = v1 v2 v3 . . . vn such that uj = vi for j < i and uj = vj for i ≤ j ≤ n. Obviously, un = un∗ , u1 = uh , uc = u1∗ , and NbdAQn (u) = {ui | 1 ≤ i ≤ n} ∪ {ui∗ | 1 ≤ i < n}. LEMMA 17.1 Assume that n ≥ 2. (u, v) ∈ E(G).
Then |NbdAQn (u) ∩ NbdAQn (v)| ≥ 2 if
Proof: We prove this lemma by induction. Since AQ2 is isomorphic to the complete graph K4 , the lemma holds for n = 2. Assume that the lemma
ch017.tex
30/6/2008
12: 32
Page 490
490
Graph Theory and Interconnection Networks 00
0
01
0000
0001 0100
0101
0010
0011 0110
0111
1000
1001 1100
1101
1011 1110
1111
1
(a) AQ1 10
11
(b) AQ2 000
001
100
101
010
011
110
111
1010
(d) AQ4
(c) AQ3
FIGURE 17.7 The augmented cubes AQ1 , AQ2 , AQ3 , and AQ4 . i ) for some i ∈ {0, 1}. By holds for 2 ≤ k < n. Suppose that {u, v} ⊂ V (AQn−1 induction, |NbdAQn (u) ∩ NbdAQn (v)| ≥ 2. Thus, consider the case that either v = uh or v = uc . Obviously, {u2∗ , uc } ⊂ NbdAQn (u) ∩ NbdAQn (v) if v = uh ; and {u2∗ , uh } ⊂ NbdAQn (u) ∩ NbdAQn (v) if v = uc . Then the statement holds.
The following lemma can easily obtained from the definition of AQn . LEMMA 17.2 Assume that n ≥ 3. For any two different vertices u and v of AQn , there exist two other vertices x and y of AQn such that the subgraph of {u, v, x, y} contains a 4-cycle. The following lemma can easily obtained from Theorem 11.19. LEMMA 17.3 Let F be a subset of V (AQn ). Then there exists a Hamiltonian path between any two vertices of V (AQn ) − F if |F| ≤ 2n − 4 for n ≥ 4 and |F| ≤ 1 for n = 3. LEMMA 17.4 [66] Let u and v be any two vertices in AQn with n ≥ 2. Suppose i for i = 0, 1. Then dAQn (u, v) = dAQi (u, v). Suppose that both u and v are in AQn−1 n−1
1−i i and v is a vertex in AQn−1 . Then there exist two shortthat u is a vertex in AQn−1 1−i est paths P1 and P2 of AQn joining u to v such that (V (P1 ) − {u}) ⊂ V (AQn−1 ) and i (V (P2 ) − {v}) ⊂ V (AQn−1 ).
Proof: We prove this theorem through the following steps. Case 1. We first prove that dAQn (u, v) = dAQi (u, v) if both u and v are in n−1
i . Without loss of generality, we assume that i = 0. Let P be a shortAQn−1 est path of AQn joining u to v that containing the most number of vertices in AQn0 . Obviously, dAQn (u, v) = dAQ0 (u, v) if V (P) ⊂ V (AQn0 ). Thus, we assume n−1
ch017.tex
30/6/2008
12: 32
Page 491
Pancyclic and Panconnected Property
491
that V (P) ∩ V (AQn1 ) = ∅. We can write P as u, P1 , a, b, P2 , c, d, P3 , v where (a, b) and (c, d) are the first and the second edges on P such that {a, d} ⊂ V (AQn0 ) and {b, c} ⊂ V (AQn1 ). Note that b = c if l(P2 ) = 0. However, a = d2∗ if b = c. Then
u, P1 , a, d, P3 , v is a path joining u to v shorter that P. Thus, b = c. Then b is either ah or ac . Similarly, c is either dh or dc . We consider all four combinations and get a contradiction to the length on P or of the same length but with more vertices in AQn0 . Let P0 be the copy of b, P2 , c in AQn0 under the isomorphism f (z) = zh . Case 1.1. b = ah and c = dh . Obviously, P0 is a path joining a to d. Then u, P1 , a, P0 , d, P3 , v forms a path joining u to v shorter that P. Case 1.2. b = ah and c = dc . Obviously, P0 is a path joining a to d2∗ . Then
u, P1 , a, P0 , d2∗ , d, P3 , v forms a path joining u to v shorter that P. Case 1.3. b = ac and c = dh . Obviously, P0 is a path joining a2∗ to d. Then
u, P1 , a, a2∗ , P0 , d, d, P3 , v forms a path joining u to v shorter that P. Case 1.4. b = ac and c = dc . Obviously, P0 is a path joining a2∗ to d2∗ . Then
u, P1 , a, a2∗ , P0 , d2∗ , d, d, P3 , v forms a path joining u to v of the same length as P but with more vertices in AQn0 . 0 1 . We prove Case 2. Suppose that u is a vertex in AQn−1 and v is a vertex in AQn−1 that there exists a shortest path P1 of AQn joining u to v such that (V (P1 ) − {u}) ⊂ 1 ). Let P be a shortest path of AQ joining u to v. We can write P as V (AQn−1 n
u, R1 , a, b, R2 , v where (a, b) is the last edge on P such that a ∈ V (AQn0 ) and b ∈ V (AQn1 ). Note that l(R1 ) if u = a and l(R2 ) if b = v. Obviously, the assertion holds if u = a. Thus, we consider u = a. With the previous proof, we may assume that V (R1 ) ⊂ V (AQn0 ) and V (R2 ) ⊂ V (AQn1 ). Obviously, b is either ah or ac . ah . Let R be the copy of u, P1 , a in AQn1 under the isomorphism f (z) = zh .
Case 2.1. b = ah . Obviously, R is a path joining uc to b. Then u, uc , R, b, R2 , v 1 ). forms a shortest path P1 joining u to v such that (V (P1 ) − {u}) ⊂ V (AQn−1 Case 2.2. b = ac . Suppose that a2∗ is a vertex in R1 . Let S be the section of R1 joining u to a2∗ . Then u, S, a2∗ , b = (a2∗ )h , R2 v forms a shorter path joining u to v. Thus, a2∗ is not a vertex in R1 . Similarly, ah is not a vertex in R2 . Obviously, R is a path joining xh to ah . Let R∗ be the copy of R in AQn1 under the isomorphism f (z) = z2∗ . Then u, uc , R∗ , b, R2 , v forms a shortest path P1 joining u to v such that 1 ). (V (P1 ) − {u}) ⊂ V (AQn−1 0 1 . We prove that Case 3. Suppose that u is a vertex in AQn−1 and v is a vertex in AQn−1 0 ). there exist a shortest path P2 of AQn joining u to v such that (V (P2 ) − {v}) ⊂ V (AQn−1 The proof in this case is exactly as earlier. The theorem is proved.
With Lemma 17.4, we have the following corollary. COROLLARY 17.2 Assume that n ≥ 3. Let x and y be two vertices of AQn with dAQn (x, y) ≥ 2. Then, there are two vertices p and q in NbdAQn (x) with dAQn (p, y) = dAQn (q, y) = dAQn (x, y) − 1.
ch017.tex
492
30/6/2008
12: 32
Page 492
Graph Theory and Interconnection Networks
LEMMA 17.5 [171] Let {u, v, x, y} be any four distinct vertices of AQn with n ≥ 2. Then there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining u and v, (2) P2 is a path joining x and y, and (3) P1 ∪ P2 spans AQn . We refer to Lemma 17.5 as 2H-property of the augmented cube. This property is used for many applications of the augmented cubes [152,171]. Obviously, l(P1 ) ≥ dAQn (u, v) and l(P2 ) ≥ dAQn (x, y), and l(P1 ) + l(P2 ) = 2n − 2. We expect that l(P1 ), and hence l(P2 ), can be an arbitrarily integer with the previous constraint. However, such an expectation is almost true. Let us consider AQ3 . Suppose that u = 001, v = 110, x = 101, and y = 010. Thus, dAQ3 (u, v) = 1 and dAQ3 (x, y) = 1. We can find P1 and P2 with l(P1 ) ∈ {1, 3, 5}. Note that {x, y} = NbdAQ3 (u) ∩ NbdAQ3 (v). We cannot find P1 with l(P1 ) = 2. Again, {u, v} = NbdAQ3 (x) ∩ NbdAQ3 (y). We cannot find P2 with l(P2 ) = 2. Hence, we cannot find P1 with l(P1 ) = 4. Similarly, we consider AQ4 . Suppose that u = 0000, v = 1001, x = 0001, and y = 1000. Thus, dAQ4 (u, v) = 2 and dAQ4 (x, y) = 2. We can find P1 and P2 with l(P1 ) ∈ {3, 4, . . . , 11}. Note that {x, y} = NbdAQ4 (u) ∩ NbdAQ4 (v). We cannot find P1 with l(P1 ) = 2. Again, {u, v} = NbdAQ4 (x) ∩ NbdAQ4 (y). We cannot find P2 with l(P2 ) = 2. Now, we propose the 2RH property of AQn with n ≥ 2. Let {u, v, x, y} be any four distinct vertices of AQn . Let l1 and l2 be two integers with l1 ≥ dAQn (u, v), l2 ≥ dAQn (x, y), and l1 + l2 = 2n − 2. Then there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining u and v with l(P1 ) = l1 , (2) P2 is a path joining x and y with l(P2 ) = l2 , and (3) P1 ∪ P2 spans AQn , except for the following cases: (a) l1 = 2 with dAQn (u, v) = 1 such that {x, y} = NbdAQn (u) ∩ NbdAQn (v), (b) l2 = 2 with dAQn (x, y) = 1 such that {u, v} = NbdAQn (x) ∩ NbdAQn (y), (c) l1 = 2 with dAQn (u, v) = 2 such that {x, y} = NbdAQn (u) ∩ NbdAQn (v), and (d) l2 = 2 with dAQn (x, y) = 2 such that {u, v} = NbdAQn (x) ∩ NbdAQn (y). THEOREM 17.7 [219] Assume that n is a positive integer with n ≥ 2. Then AQn satisfies the 2RH property. Proof: We prove this theorem by induction. By brute force, we check whether the theorem holds for n = 2, 3, 4. Assume that the theorem holds for any AQk with 4 ≤ k < n. Without loss of generality, we can assume that l1 ≥ l2 . Thus, l2 ≤ 2n−1 − 1. By the symmetric property of AQn , we can assume that at least one of u and v, say u, 0 ). Thus we have the following cases: is in V (AQn−1 Case 1.
0 ) and {x, y} ⊂ V (AQ1 ). v ∈ V (AQn−1 n−1
Case 1.1. dAQn (x, y) ≤ l2 ≤ 2n−1 − 3 except that (1) l2 = 2n−1 − 4 and (2) l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). By Lemma 17.3, there exists 0 a Hamiltonian path R of AQn−1 joining u and v. Since l(R) = 2n−1 − 1, we can write R as u, R1 , p, q, R2 , v for some vertices p and q such that {ph , qh } ∩ {x, y} = ∅. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining ph to qh with l(S1 ) = 2n−1 − l2 − 2, (2) S2 is a path joining x to y with l(S2 ) = l2 , 1 . We set P as u, R , p, ph , S , qh , q, R , v and P as S . and (3) S1 ∪ S2 spans AQn−1 1 1 1 2 2 2 Obviously, P1 and P2 are the required paths.
ch017.tex
30/6/2008
12: 32
Page 493
Pancyclic and Panconnected Property
493
Case 1.2. l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). Obviously, there exists a path P2 of length 2 in AQn − {u, v} joining x to y. By Lemma 17.3, there exists a Hamiltonian path P1 of AQn − V (P2 ) joining u to v. Obviously, P1 and P2 are the required paths. 1 ) − {x, y, uh , Case 1.3. l2 = 2n−1 − 4. Obviously, there exists a vertex p in V (AQn−1 h v }, a vertex q in NbdAQ1 (p) − {x, y}, and a vertex r in NbdAQ1 (q) − {x, y, p}. Supn−1
n−1
pose that rh ∈ / {u, v}. By induction, there exist two disjoint paths Q1 and Q2 such that (1) Q1 is a path joining u to ph , (2) Q2 is a path joining rh to v, and (3) Q1 ∪ Q2 spans 0 . By Lemma 17.3, there exists a Hamiltonian path P of AQ1 AQn−1 2 n−1 − {p, q, r} joining x to y. We set P1 as u, Q1 , ph , p, q, r, rh , Q2 , v. Suppose that rh ∈ {u, v}. Without loss of generality, we assume that rh = v. By Lemma 17.3, there exists a Hamilto0 nian path R of AQn−1 − {v} joining u to ph . We set P1 as u, R, ph , p, q, r, rh = v. Obviously, P1 and P2 are the required paths.
1 ) − {x, y, uh , Case 1.4. l2 = 2n−1 − 2. Obviously, there exists a vertex p ∈ V (AQn−1 uc , vh , vc }. By Lemma 17.5, there exist two disjoint paths Q1 and Q2 such that (1) Q1 is a path joining u and ph , (2) Q2 is a path joining pc and v, and (3) Q1 ∪ Q2 spans 0 . By Lemma 17.3, there exists a Hamiltonian path P of AQ0 AQn−1 2 n−1 − {p} joining x to y. We set P1 as u, Q1 , ph , p, pc , Q2 , v. Obviously, P1 and P2 are the required paths.
Case 1.5. l2 = 2n−1 − 1. By Lemma 17.3, there exists a Hamiltonian path P1 of 0 1 joining x and y. AQn−1 joining u and v and there exists a Hamiltonian path P2 of AQn−1 Obviously, P1 and P2 are the required paths. 0 ) and exactly one of x and y is in V (AQ0 ). Without loss of Case 2. v ∈ V (AQn−1 n−1 0 ). generality, we assume that x ∈ V (AQn−1
Case 2.1. l2 = 1. Obviously, dAQn (x, y) = 1. We set P2 as x, y. By Lemma 17.3, there exists a Hamiltonian path P1 of AQn − {x, y} joining u to v. Obviously, P1 and P2 are the required paths. Case 2.2. l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). The proof is the same to Case 1.2. Case 2.3.
l2 = 3.
Suppose that dAQn (x, y) = 1. There exists a vertex p in NbdAQ0 (x) − {u, v}. By n−1
Lemma 17.3, there exists a Hamiltonian path P1 of AQn − {x, y, p, ph } joining u to v. We set P2 as x, p, ph , y. Obviously, P1 and P2 are the required paths. Suppose that dAQn (x, y) = 2. By Lemma 17.4, there exists a path x, p, y 1 ). By Lemma 17.1, there exists a vertex from x to y such that p ∈ V (AQn−1 q ∈ NbdAQ1 (p) ∩ NbdAQ1 (y). By Lemma 17.3, there exists a Hamiltonian path P1 n−1 n−1 of AQn − {x, y, p, q} joining u to v. We set P2 as x, p, q, y. Obviously, P1 and P2 are the required paths. Suppose that dAQn (x, y) = 3. By Lemma 17.4, there exists a path P2 from x to y 1 ). By Lemma 17.3, there exists a Hamiltonian path such that (V (P2 ) − {x}) ⊂ V (AQn−1 P1 of AQn − V (P2 ) joining u to v. Obviously, P1 and P2 are the required paths.
ch017.tex
30/6/2008
12: 32
494
Case 2.4.
Page 494
Graph Theory and Interconnection Networks
4 ≤ l2 ≤ 2n−1 − 2 except l2 = 2n−1 − 3.
Suppose that dAQn (x, y) = 1 or 2. We first claim that there exists a vertex p in NbdAQn (x) ∩ NbdAQn (y). Assume that dAQn (x, y) = 1. Obviously, either y = xh or y = xc . We set p = xc if y = xh and p = xh if y = xc . Assume that dAQn (x, y) = 2. 1 ). By Lemma 17.4, there exists a path x, p, y from x to y such that p ∈ V (AQn−1 Obviously, p satisfies our claim. By Lemma 17.3, there exists a Hamiltonian path R of 0 AQn−1 − {x} joining u to v. Since l(R) = 2n−1 − 3, we can write R as u, R1 , s, t, R2 , v such that {sh , th } ∩ {p, y} = ∅. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining sh to th with l(S1 ) = 2n−1 − 1 − l2 , (2) S2 is 1 . We set P a path joining p to y with l(S2 ) = l2 − 1, and (3) S1 ∪ S2 spans AQn−1 1 h h as u, R1 , s, s , S1 , t , t, R2 , v and P2 as x, p, S2 , y. Obviously, P1 and P2 are the required paths. 1 ) Suppose that dAQn (x, y) ≥ 3. By Lemma 17.4, there exists a vertex p in V (AQn−1 such that dAQn (p, y) = dAQn (x, y) − 1. By Lemma 17.3, there exists a Hamiltonian 0 path R of AQn−1 − {x} joining u to v. We can write R as u, R1 , s, t, R2 , v such h h that {s , t } ∩ {p, y} = ∅. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining sh to th with l(S1 ) = 2n−1 − 1 − l2 , (2) S2 is a 1 . We set P path joining p to y with l(S2 ) = l2 − 1, and (3) S1 ∪ S2 spans AQn−1 1 h h as u, R1 , s, s , S1 , t , t, R2 , v and P2 as x, p, S2 , y. Obviously, P1 and P2 are the required paths. Case 2.5. l2 = 2n−1 − 3 or l2 = 2n−1 − 1. Let k = 3 if l2 = 2n−1 − 3 and k = 1 if l2 = 2n−1 − 1. There exists a vertex p in NbdAQ0 (x) − {u, v, yn }. By Lemma 17.3, n−1
0 there exists a Hamiltonian path R of AQn−1 − {x, p} joining u to v. We can write R as n
u, R1 , s, t, R2 , v such that {s, t} ∩ {p, y } = ∅. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining sn to tn with l(S1 ) = k, (2) S2 is a 1 . We set path joining pn to y with l(S2 ) = 2n−1 − k − 2, and (3) S1 ∪ S2 spans AQn−1 n n n P1 as u, R1 , s, s , S1 , t , t, R2 , v and P2 as x, p, p , S2 , y. Obviously, P1 and P2 are the required paths.
Case 3. Case 3.1.
0 ). {v, x, y} ⊂ V (AQn−1
l2 = 1. The proof is the same as that of Case 2.1.
Case 3.2. l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). The proof is the same as that of Case 1.2. Case 3.3. dAQn (x, y) ≤ l2 ≤ 2n−2 − 1. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to v with l(R1 ) = 2n−1 − l2 − 2, (2) R2 is 0 . We can write R a path joining x to y with l(R2 ) = l2 and (3) R1 ∪ R2 spans AQn−1 1 1 as u, R3 , p, q, R4 , v. By Lemma 17.3, there exists a Hamiltonian path S of AQn−1 joining ph to qh . We set P1 as u, R3 , p, ph , S, qh , q, R4 , v and P2 as R2 . Obviously, P1 and P2 are the required paths. Case 3.4. 2n−2 + 1 ≤ l2 ≤ 2n−1 − 1 except l2 = 2n−2 + 2. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to v with l(R1 ) = 2n−2 − 1, (2) R2 is a path joining x to y with l(R2 ) = 2n−2 − 1, and
ch017.tex
30/6/2008
12: 32
Page 495
Pancyclic and Panconnected Property
495
0 . We can write R as u, R , p, q, R , v and write R as (3) R1 ∪ R2 spans AQn−1 1 3 4 2
x, R5 , s, t, R6 , y. By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining ph to qh with l(S1 ) = 2n−1 − l2 + 2n−2 − 2, (2) S2 is a path 1 . We set P as joining sh to th with l(S2 ) = l2 − 2n−2 , and (3) S1 ∪ S2 spans AQn−1 1 h h h h
u, R3 , p, p , S1 , q , q, R4 , v and P2 as x, R5 , s, s , S2 , t , t, R6 , y. Obviously, P1 and P2 are the required paths.
Case 3.5. l2 = 2n−2 or 2n−2 + 2. Let k = 0 if l2 = 2n−2 and k = 2 if l2 = 2n−2 + 2. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to v with l(R1 ) = 2n−2 − k, (2) R2 is a path joining x to y with l(R2 ) = 2n−2 + k − 2, 0 . We can write R as u, R , p, q, R , v and write and (3) R1 ∪ R2 spans AQn−1 1 3 4 R2 as x, R5 , s, t, R6 , y. By Lemma 17.3, there exists a Hamiltonian path S of 1 AQn−1 − {sn , tn } joining pn to qn . We set P1 as u, R3 , p, pn , S, qn , q, R4 , v and P2 as x, R5 , s, sn , tn , t, R6 , y. Obviously, P1 and P2 are the required paths. Case 4.
1 ). {x, v, y} ⊂ V (AQn−1
Case 4.1. dAQn (x, y) ≤ l2 ≤ 2n−1 − 3 except that (1) l2 = 2n−1 − 4 and (2) l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). Obviously, there exists a vertex p in NbdAQ1 (v) − {x, y, uh }. By induction, there exist two disjoint paths S1 n−1
and S2 such that (1) S1 is a path joining p to v with l(S1 ) = l1 − 2n−1 , (2) S2 is a path 1 . By Lemma 17.3, there joining x to y with l(S2 ) = l2 , and (3) S1 ∪ S2 spans AQn−1 0 h exists a Hamiltonian path R of AQn−1 joining u and p . We set P1 as u, R, ph , p, S1 , v and P2 as S2 . Obviously, P1 and P2 are the required paths. Case 4.2. l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). The proof is the same as that of Case 1.2. Case 4.3.
l2 = 2n−1 − 4. Obviously, there exists a vertex p in NbdAQ1 (v) − {x, y}, n−1
and there exists a vertex q in NbdAQ1 (p) − {x, y, v, uh }. By Lemma 17.3, there exists n−1
0 a Hamiltonian path R of AQn−1 joining u to qh , and there exists a Hamiltonian path 1 − {v, p, q} joining x to y. We set P1 as u, R, qh , q, p, v. Obviously, P1 P2 of AQn−1 and P2 are the required paths.
Case 4.4. l2 = 2n−1 − 2. Let v be an element in {vh , vc } − {u}. By Lemma 17.3, 0 there exists a Hamiltonian path R of AQn−1 joining u and v , and there exists a Hamil1 tonian path P2 of AQn−1 − {v} joining x to y. We set P1 as u, R, v , v. Obviously, P1 and P2 are the required paths. Case 4.5. l2 = 2n−1 − 1. Obviously, there exists a vertex p in NbdAQ1 (v) − {x, y}. n−1 By induction, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining p to v with l(S1 ) = 1, (2) S2 is a path joining x to y with l(S2 ) = 2n−1 − 3, and (3) S1 ∪ S2 1 . Obviously, we can write S as x, S 1 , r, s, S 2 , y for some vertex r and spans AQn−1 2 2 2 s such that u ∈ / {rh , sh }. Again, by induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to ph with l(R1 ) = 2n−1 − 3, (2) R2 is a path joining 0 . We set P as u, R , ph , p, v rh to sh with l(R2 ) = 1, and (3) R1 ∪ R2 spans AQn−1 1 1 and P2 as x, S21 , r, rh , sh , s, S22 , y. Obviously, P1 and P2 are the required paths.
ch017.tex
30/6/2008
12: 32
496
Page 496
Graph Theory and Interconnection Networks
1 ) and exactly one of x and y is in V (AQ0 ). Without loss of Case 5. v ∈ V (AQn−1 n−1 0 ). generality, we assume that x ∈ V (AQn−1
Case 5.1.
l2 = 1. The proof is the same to Case 2.1.
Case 5.2. l2 = 2 if dAQn (x, y) = 1 or 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). The proof is the same of that for Case 1.2. Case 5.3.
l2 = 3.
Suppose that dAQn (x, y) = 1. Obviously, there exists a vertex p in NbdAQ0 (x) − {u, vh }. We set P2 as x, p, ph , y. By Lemma 17.3, there exists a Hamiln−1 tonian path P1 of AQn − V (P2 ) joining u to v. Obviously, P1 and P2 are the required paths. Suppose that dAQn (x, y) = 2. Assume that {u, v} = NbdAQn (x) ∩ NbdAQn (y). Thus, we have either v = xh or v = xc . Moreover, u = xα and y = vα for some α ∈ {i | 2 ≤ i ≤ n} ∪ {i∗ | 2 ≤ i ≤ n − 1}. We set P2 as x, xh∗ , (xh∗ )α , ((xh )α ) = y in the case of v = xh . Otherwise, we set P2 as x, xh , (xh )α , ((xh∗ )α ) = y. By Lemma 17.3, there exists a Hamiltonian path P1 of AQn − V (P2 ) joining u to v. Obviously, P1 and P2 are the required paths. Now, assume that {u, v} = NbdAQn (x) ∩ NbdAQn (y). By Lemma 17.1, there exists a vertex p in (NbdAQn (x) ∩ NbdAQn (y)) − {u, v}. Without loss 0 . By Lemma 17.1, there exists a vertex of generality, we may assume that p is in AQn−1 q in (NbdAQ0 (p) ∩ NbdAQ0 (x)) − {u}. By Lemma 17.3, there exists a Hamiltonian n−1 n−1 path P1 of AQn − {x, q, p, y} joining u to v. We set P2 as x, q, p, y. Obviously, P1 and P2 are the required paths. Suppose that dAQn (x, y) = 3. By Lemma 17.4, there are two shortest paths R1 and R2 of AQn joining x and y such that R1 can be written as x, r1 , r2 , y with 0 ) and R can be written as x, s , s , y with {s , s } ⊂ V (AQ1 ). {r1 , r2 } ⊂ V (AQn−1 2 1 2 1 2 n−1 Suppose that u = r2 or v = s1 . Without loss of generality, we assume that u = r2 . By Corollary 17.2, there exist a vertex t ∈ NbdAQ0 (x) ∩ NbdAQ0 (r2 ) − {u}. We n−1 n−1 set P2 as x, t, r2 , y. By Lemma 17.3, there exists a Hamiltonian path P1 of AQn − V (P2 ) joining u to v. Obviously, P1 and P2 are the required paths. Thus, we consider u = r2 and v = s1 . By Corollary 17.2, there exists a vertex p in NbdAQ0 (x) ∩ NbdAQ0 (u). Obviously, dAQn (p, y) = 2. By Lemma 17.4, there n−1
n−1
1 ) ∩ Nbd exists a vertex q in V (AQn−1 AQn (p) ∩ NbdAQn (y). Since dAQn (q, y) = 1 and dAQn (v, y) = 2, q = v. We set P2 as x, p, q, y. By Lemma 17.3, there exists a Hamiltonian path P1 of AQn − V (P2 ) joining u to v. Obviously, P1 and P2 are the required paths.
Case 5.4.
4 ≤ l2 ≤ 2n−1 − 1 with dAQn (x, y) = 1.
Suppose that l2 = 4. Obviously, there exists a vertex p in NbdAQ0 (x) − {u, vh }. n−1 By Lemma 17.1, there exists a vertex q in (NbdAQ0 (x) ∩ NbdAQ0 (p)) − {u}. By n−1
n−1
Lemma 17.3, there exists a Hamiltonian path P1 of AQn − {x, y, p, ph , q} joining u to v. We set P2 as x, q, p, ph , y. Obviously, P1 and P2 are the required paths. Suppose that 5 ≤ l2 ≤ 2n−1 − 1 except l2 = 2n−1 − 2. Obviously, there exists a vertex p in NbdAQ0 (x) − {u, vh , yh } and a vertex s in NbdAQ0 (u) − {x, p, vh , yh }. By n−1 n−1 induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining
ch017.tex
30/6/2008
12: 32
Page 497
Pancyclic and Panconnected Property
497
u to s with l(R1 ) = 2n−1 − 2 − l2 , (2) R2 is a path joining p to x with l(R2 ) = l2 − 2, 0 . By Lemma 17.3, there exists a Hamiltonian path and (3) R1 ∪ R2 spans AQn−1 1 − {y, ph } joining sh to v. We set P1 as u, R1 , s, sh , S, v and P2 as S of AQn−1 h
x, R2 , p, p , y. Obviously, P1 and P2 are the required paths. 0 ) − {u, x, vh , yh }. Suppose that l2 = 2n−1 − 2. Let s and p be two vertices in V (AQn−1 By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to s with l(R1 ) = 2n−2 , (2) R2 is a path joining p to x with l(R2 ) = 2n−2 − 2, 0 . Similarly, there exist two disjoint paths S and S such that (3) R1 ∪ R2 spans AQn−1 1 2 (1) S1 is a path joining sh to v with l(S1 ) = 2n−2 − 1, (2) S2 is a path joining ph to y 1 . We set P as u, R , s, sh , S , v with l(S2 ) = 2n−2 − 1, and (3) S1 ∪ S2 spans AQn−1 1 1 1 and P2 as x, R2 , p, ph , S2 , y. Obviously, P1 and P2 are the required paths. Case 5.5.
4 ≤ l2 ≤ 2n−1 − 1 except l2 = 2n−1 − 3 with dAQn (x, y) ≥ 2.
Suppose that dAQn (x, y) = 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). Thus, we have either v = xh or v = xc . Moreover, u = xα and y = (xh )α for some α ∈ {i | 2 ≤ i ≤ n} ∪ {i∗ | 2 ≤ i ≤ n − 1}. Obviously, there exists a vertex t in NbdAQ1 (v) − {xh , y, xc , uh }. By induction, there exist two disjoint paths R1 and R2 n−1
such that (1) R1 is a path joining t to v with l(R1 ) = 2n−1 − 1 − l2 , (2) R2 is a path joining xc to y with l(R2 ) = l2 − 1 in the case of v = xh ; otherwise R2 is a path joining 1 . By Lemma 17.3, there exists xh to y with l(R2 ) = l2 − 1, and (3) R1 ∪ R2 spans AQn−1 0 − {x} joining th to u. We set P1 as u, S, th , t, R1 , v a Hamiltonian path S of AQn−1 c and P2 as x, x , R2 , y in the case of v = xh ; otherwise, we set P2 as x, xh , R2 , y. Obviously, P1 and P2 are the required paths. Suppose that dAQn (x, y) = 2 with {u, v} = NbdAQn (x) ∩ NbdAQn (y). Then, there exists a vertex p in (NbdAQn (x) ∩ NbdAQn (y)) − {u, v}. Without loss of general1 ). Obviously, there exists a vertex t in ity, we may assume that p ∈ V (AQn−1 h h NbdAQ1 (v) − {y, p, u , x }. By induction, there exist two disjoint paths R1 and R2 n−1
such that (1) R1 is a path joining t to v with l(R1 ) = 2n−1 − 1 − l2 , (2) R2 is a path 1 . By Lemma 17.3, joining p to y with l(R2 ) = l2 − 1, and (3) R1 ∪ R2 spans AQn−1 0 there exists a Hamiltonian path S of AQn−1 − {x} joining th to u. We set P1 as
u, S, th , t, R1 , v and P2 as x, p, R2 , y. Obviously, P1 and P2 are the required paths. Suppose that dAQn (x, y) = k ≥ 3. By Lemma 17.4, there are two shortest paths S1 and S2 of AQn joining x and y such that S1 can be written as x = r0 , r1 , r2 , . . . , rk−1 , y 0 ) and S can be written as x, s , s , . . . , s with (V (S1 ) − {y}) ⊂ V (AQn−1 2 1 2 k−1 , y with 1 (V (S2 ) − {x}) ⊂ V (AQn−1 ). Suppose that u = rk−1 . We set p = rk−1 . Again, there exists a vertex s in NbdAQ0 (u) − {x, p, yh , vh }. By induction, there exist two disjoint n−1
paths R1 and R2 such that (1) R1 is a path joining u to s with l(R1 ) = 2n−1 − 1 − l2 , 0 . By (2) R2 is a path joining p to x with l(R2 ) = l2 − 1, and (3) R1 ∪ R2 spans AQn−1 1 − {y} joining sh to v. We set Lemma 17.3, there exists a Hamiltonian path S of AQn−1 h P1 as u, R1 , s, s , S, v and P2 as x, R2 , p, y. Obviously, P1 and P2 are the required paths. Now we assume that rk−1 = u and s1 = v. Since dAQn (rk−2 , y) = 2, by 1 ) such that Lemma 17.4, there exists a vertex p ∈ NbdAQn (rk−2 ) in V (AQn−1 dAQn (p, y) = 1. Suppose that l2 = 4 with dAQn (x, y) = 3. Thus, x, r1 , p, y is
ch017.tex
30/6/2008
12: 32
Page 498
498
Graph Theory and Interconnection Networks
a shortest path joining x and y. By Lemma 17.1, there exists a vertex q ∈ NbdAQ1 (p) ∩ NbdAQ1 (y) − {v}. By Lemma 17.3, there exists a Hamiltonian n−1 n−1 path P1 of AQn − {x, r1 , p, q, y} joining u to v. We set P2 as x, r1 , p, q, y. Obviously, P1 and P2 are the required paths. Suppose that l2 = 4 with dAQn (x, y) = 4. Thus, P2 = x, r1 , r2 , p, y is a shortest path joining x and y. By Lemma 17.3, there exists a Hamiltonian path P1 of AQn − {x, r1 , r2 , p, y} joining u to v. Obviously, P1 and P2 are the required paths. Suppose that 5 ≤ l2 ≤ 2n−2 with dAQn (x, y) ≥ 3. Obviously, there exists a vertex s in NbdAQ0 (u) − {x, rk−2 , yh , vh }. By induction, there exist two n−1
disjoint paths R1 and R2 such that (1) R1 is a path joining u to s with l(R1 ) = 2n−1 − l2 , 0 . (2) R2 is a path joining rk−2 to x with l(R2 ) = l2 − 2, and (3) R1 ∪ R2 spans AQn−1 1 By Lemma 17.3, there exists a Hamiltonian path S of AQn−1 − {p, y} joining sh to v. h We set P1 as u, R1 , s, s , S, v and P2 as x, R2 , rk−2 , p, y. Obviously, P1 and P2 are the required paths. Suppose that 2n−2 + 1 ≤ l2 < 2n−1 − 1 except 2n−1 − 3 with dAQn (x, y) ≥ 3. Obviously, there exists a vertex s in NbdAQ0 (u) − {x, rk−2 , yh , vh }. By n−1 induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to s with l(R1 ) = 2n−2 + 1, (2) R2 is a path joining rk−2 to x with l(R2 ) = 2n−2 − 3, and 0 . Again, by induction, there exist two disjoint paths S and S (3) R1 ∪ R2 spans AQn−1 1 2 such that (1) S1 is a path joining sh to v with l(S1 ) = 2n−1 − l2 + 2n−2 − 4, (2) S2 is 1 . We set a path joining p to y with l(S2 ) = l2 − 2n−2 + 2, and (3) S1 ∪ S2 spans AQn−1 P1 as u, R1 , s, sh , S1 , v and P2 as x, R2 , rk−2 , p, S2 , y. Obviously, P1 and P2 are the required paths.
Case 5.6. l2 = 2n−1 − 3 or l2 = 2n−1 − 1 with dAQn (x, y) ≥ 2. Let t = 0 if l2 = 2n−1 − 3 and t = 1 if l2 = 2n−1 − 1. Obviously, there exist two vertices s and p in 0 AQn−1 − {u, x, vn , yn }. By induction, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining u to s with l(R1 ) = 2n−2 − t, (2) R2 is a path joining p to 0 . Similarly, there exist two x with l(R2 ) = 2n−2 + t − 2, and (3) R1 ∪ R2 spans AQn−1 disjoint paths S1 and S2 such that (1) S1 is a path joining sn to v with l(S1 ) = 2n−2 − t, 1 . (2) S2 is a path joining pn to y with l(S2 ) = 2n−2 + t − 2, and (3) S1 ∪ S2 spans AQn−1 n n We set P1 as u, R1 , s, s , S1 , v and P2 as x, R2 , p, p , S2 , y. Obviously, P1 and P2 are the required paths. Thus, Theorem 17.7 is proved. COROLLARY 17.3 AQn is panconnected for every positive integer n. Proof: We prove that AQn is panconnected by Theorem 17.7. Obviously, AQn is panconnected for n = 1, 2. Now, we consider that n ≥ 3. Suppose that l = 2n − 1. By Remark 1, AQn is Hamiltonian connected. Obviously, the Hamiltonian path of AQn joining x and y is of length 2n − 1. Suppose that l = 2n − 2. Let u be a vertex in NbdAQn (y) − {x}. By Lemma 17.1, there exists a vertex v in (NbdAQn (u) ∩ NbdAQn (y)) − {x}. By Theorem 17.7, there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining x to u with l(P1 ) = 2n − 3, (2) P2 is a path joining y to v with l(P2 ) = 1, and (3) P1 ∪ P2 spans AQn . Obviously, x, P1 , u, y is a path of length 2n − 2 joining x to y. Suppose that l = 2n − 3. We can find two adjacent vertices u and v such that {u, v} ∩ {x, y} = ∅. By Theorem 17.7, there exist two disjoint
ch017.tex
30/6/2008
12: 32
Page 499
Pancyclic and Panconnected Property
499
paths P1 and P2 such that (1) P1 is a path joining x to y with l(P1 ) = 2n − 3, (2) P2 is a path joining u to v with l(P2 ) = 1, and (3) P1 ∪ P2 spans AQn . Obviously, P1 is a path of length 2n − 3 joining x to y. Suppose that l ≤ 2n − 4. By Lemma 17.2, there exist two vertices u and v such that dAQn (u, v) = 2, {x, y} = NbdAQn (u) ∩ NbdAQn (v), and {u, v} = NbdAQn (x) ∩ NbdAQn (y). By Theorem 17.7, there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining x to y with l(P1 ) = l, (2) P2 is a path joining u to v with l(P2 ) = 2n − 2 − l, and (3) P1 ∪ P2 spans AQn . Obviously, P1 is a path of length l joining x to y. Thus, AQn is panconnected. COROLLARY 17.4 AQn is edge-pancyclic for every positive integer n. Proof: Obviously, AQn is edge-pancyclic for n = 2. Thus, we consider that n ≥ 3. Suppose that l = 3. By Lemma 17.1, there exists u ∈ NbdAQn (x) ∩ NbdAQn (y). Obviously, x, y, u, x forms a cycle of length three containing e. Now, we consider that l = 2n and l = 2n − 1. By Lemma 17.1, there exists v ∈ (NbdAQn (u) ∩ NbdAQn (y)) − {x}. By Theorem 17.7, there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining x to u with l(P1 ) = 2n − 3, (2) P2 is a path joining v to y with l(P2 ) = 1, and (3) P1 ∪ P2 spans AQn . Obviously, x, P1 , u, v, y, x forms a cycle of length 2n containing e and x, P1 , u, y, x forms a cycle of length 2n − 1 containing e. Suppose l = 2n − 2. By Theorem 17.7, there exist two disjoint paths Q1 and Q2 such that (1) Q1 is a path joining x to y with l(Q1 ) = 2n − 3, (2) Q2 is a path joining u to v with l(Q2 ) = 1, and (3) Q1 ∪ Q2 spans AQn . Obviously, x, Q1 , y, x forms a cycle of length 2n − 2 containing e. Suppose that 4 ≤ l ≤ 2n − 3. By Lemma 17.2, there exist two vertices p and q of AQn such that dAQn (p, q) = 2, {x, y} = NbdAQn (p) ∩ NbdAQn (q), and {p, q} = NbdAQn (x) ∩ NbdAQn (y). By Theorem 17.7, there exist two disjoint paths R1 and R2 such that (1) R1 is a path joining x to y with l(R1 ) = l − 1, (2) R2 is a path joining u to v with l(R2 ) = 2n − l − 1, and (3) R1 ∪ R2 spans AQn . Obviously, x, R1 , y, x forms a cycle of length l containing e. With the panconnected property of AQn , there exists a path Pl (x, y) of length l if dAQn (x, y) ≤ l ≤ 2n − 1 between any two distinct vertices x and y of AQn . Again, we expect such path Pl (x, y) can be further extended by including the vertices not in Pl (x, y) into a Hamiltonian path from x to a fixed vertex z or a Hamiltonian cycle. THEOREM 17.8 Assume that n is a positive integer with n ≥ 2. For any three distinct vertices x, y and z of AQn and for any dAQn (x, y) ≤ l ≤ 2n − 1 − dAQn (y, z), there exists a Hamiltonian path R(x, y, z; l) from x to z such that dR(x,y,z;l) (x, y) = l. Proof: Obviously, the theorem holds for n = 2. Thus, we consider that n ≥ 3. We have the following cases: Case 1. dAQn (x, y) = 1 and dAQn (y, z) = 1. By Lemma 17.1, there exists a vertex w in (NbdAQn (y) ∩ NbdAQn (z)) − {x}. Similarly, there exists a vertex p in (NbdAQn (x) ∩ NbdAQn (y)) − {z}. Suppose that l = 2. By Theorem 17.7, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining x to p with l(S1 ) = 1, (2) S2 is a path joining y to z with l(S2 ) = 2n − 3, and (3) S1 ∪ S2 spans AQn . We
ch017.tex
500
30/6/2008
12: 32
Page 500
Graph Theory and Interconnection Networks
set R as x, p, y, S2 , z. Obviously, R forms a Hamiltonian path from x to z such that dR (x, y) = l. Suppose that l = 2n − 3. By Theorem 17.7, there exist two disjoint paths Q1 and Q2 such that (1) Q1 is a path joining x to y with l(Q1 ) = 2n − 3, (2) Q2 is a path joining w to z with l(Q2 ) = 1, and (3) Q1 ∪ Q2 spans AQn . We set R as x, Q1 , y, w, z. Obviously, R forms a Hamiltonian path from x to z such that dR (x, y) = l. Suppose that / {2, 2n − 3}. By Theorem 17.7, there exist two disjoint paths P1 1 ≤ l ≤ 2n − 2 with l ∈ and P2 such that (1) P1 is a path joining x to y with l(P1 ) = l, (2) P2 is a path joining w to z with l(P2 ) = 2n − 2 − l, and (3) P1 ∪ P2 spans AQn . We set R as x, P1 , y, w, P2 , z. Obviously, R forms a Hamiltonian path from x to z such that dR (x, y) = l. Case 2. dAQn (x, y) = 1 and dAQn (y, z) = 1. By Lemma 17.1, there exists a vertex p in NbdAQn (x) ∩ NbdAQn (y). Suppose that l = 2. By Theorem 17.7, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining x to p with l(S1 ) = 1, (2) S2 is a path joining y to z with l(S2 ) = 2n − 3, and (3) S1 ∪ S2 spans AQn . We set R as x, p, y, S2 , z. Obviously, R forms a Hamiltonian path from x to z such that dR (x, y) = l. Suppose that 1 ≤ l ≤ 2n − 1 − dAQn (y, z) with l = 2. By Corollary 17.2, there exists a vertex w in NbdAQn (y) − {x} such that dAQn (w, z) = dAQn (y, z) − 1. By Theorem 17.7, there exist two disjoint paths P1 and P2 such that (1) P1 is a path joining x to y with l(P1 ) = l, (2) S2 is a path joining w to z with l(P2 ) = 2n − 2 − l, and (3) P1 ∪ P2 spans AQn . We set R as x, P1 , y, w, P2 , z. Obviously, R forms a Hamiltonian path from x to z such that dR (x, y) = l. Case 3. dAQn (x, y) = 1 and dAQn (y, z) = 1. This case is similar to Case 2, but interchanging the roles of x and z. Case 4. dAQn (x, y) = 1 and dAQn (y, z) = 1. Let l be any integer with dAQn (x, y) ≤ l ≤ 2n − 1 − dAQn (y, z). Let w be a vertex in NbdAQn (y). By Theorem 17.7, there exist two disjoint paths S1 and S2 such that (1) S1 is a path joining x to y with l(S1 ) = l, (2) S2 is a path joining w to z with l(S2 ) = 2n − 2 − l, and (3) S1 ∪ S2 spans AQn . We set R as x, S1 , y, w, S2 , z. Obviously, R forms a Hamiltonian path from x to z such that dR (x, y) = l. The theorem is proved. COROLLARY 17.5 Assume that n is a positive integer with n ≥ 2. For any two distinct vertices x and y and for any dAQn (x, y) ≤ l ≤ 2n−1 , there exists a Hamiltonian cycle S(x, y; l) such that dS(x,y;l) (x, y) = l. Proof: Let z be a vertex in NbdAQn (x) − {y}. By Theorem 17.8, there exists a Hamiltonian path R joining x to z such that dR(x,y,z;l) (x, y) = l. We set S as x, R, z, x. Obviously, S forms the required Hamiltonian cycle.
17.5
COMPARISON BETWEEN PANCONNECTED AND PANPOSITIONABLE HAMILTONIAN
With Corollary 17.5, we can define the following term. A Hamiltonian graph G is panpositionable if for any two different vertices x and y of G and for any integer l satisfying d(x, y) ≤ l ≤ |V (G)| − d(x, y), there exists a Hamiltonian cycle C of G such
ch017.tex
30/6/2008
12: 32
Page 501
Pancyclic and Panconnected Property
501
that the4 relative 5 distance between x and y on C is l; more precisely, dC (x, y) = l |V (G)| or DC (x, y) = l if l > |V (G)|/2. Given a Hamiltonian cycle C, if if l ≤ 2 dC (x, y) = l, we have DC (x, y) = |V (G)| − dC (x, y). Therefore, a graph is panpositionable Hamiltonian if for any integer l with d(x, y) ≤ l ≤ |V (G)|/2, there exists a Hamiltonian cycle C of G with dC (x, y) = l. With Corollary 17.5, we have seen every AQn with n ≥ 2 is panpositionable Hamiltonian. It is easy to see that the length of the shortest cycle for any panpositionable Hamiltonian graph is 3. Moreover, every panpositionable Hamiltonian graph is pancyclic. A Hamiltonian bipartite graph G is bipanpositionable if for any two different vertices x and y of G and for any integer k with dG (x, y) ≤ k ≤ |V (G)|/2 and (k − dG (x, y)) is even, there exists a Hamiltonian cycle C of G such that dC (x, y) = k. With Corollary 17.1, we have seen every Qn with n ≥ 2 is bipanpositionable Hamiltonian. Assume that
G is a panpositionable Hamiltonian graph with n vertices. Obviously, d2∗ (u, v) = n2 if u and v are two different vertices in G. Hence D2∗ (G) = n2 . Similarly, let G be a bipanpositionable Hamiltonian graph with n vertices. Obviously,
d2∗ (u, v) is either n2 + 1 or n2 depending on the parity of d(u, v). In the following, we would like to compare the difference among pancyclic, panconnected, and panpositionable Hamiltonian. Assume that G is a panconnected graph with at least three vertices. Let u and v be any two vertices with dG (u, v) = 1. Obviously, there exists a path Pk of length k for any 1 ≤ k ≤ n(G) − 1. Obviously, P1 ∪ Pk constitute a cycle of length k + 1 for any 2 ≤ k ≤ n(G). Thus, G contains a cycle of length l for any 3 ≤ l ≤ n(G). Therefore, any panconnected graph is pancyclic. With the following theorem, we have examples of a pancyclic graph that is neither panconnected nor panpositionable Hamiltonian. THEOREM 17.9 Let m be an integer with m ≥ 3. Km × K2 is a pancyclic graph that is neither panconnected nor panpositionable Hamiltonian. Proof: We use G to denote the graph Km × K2 . We can describe G with V (G) = {0, 1, 2, . . . , m − 1} ∪ {0 , 1 , 2 , . . . , (m − 1) } and E(G) = {(i, j) | i < j, 0 ≤ i, j ≤ m − 1} ∪ {(i , j ) | i < j, 0 ≤ i, j ≤ m − 1} ∪ {(i, i ) | 0 ≤ i ≤ m − 1}. Let P = m − 2, m − 3, m − 4, . . . , 1. Since Km is a subgraph of G, G contains a cycle of every length from 3 to m. Obviously, 0, m − 2, P, 1, 1 , 0 , 0 is a cycle of length m + 1, 0, m − 2, P, 1, 1 , 2 , 0 , 0 is a cycle of length m + 2,
0, m − 2, P, 1, 1 , 2 , 3 , . . . , k , 0 , 0 is a cycle of length m + k with 3 ≤ k < m, and
0, m − 1, m − 2, P, 1, 1 , 2 , 3 , . . . , (m − 1) , 0 , 0 is a cycle of length 2 m. Thus, G is pancyclic. Now, we want to prove that G is not panposionable Hamiltonian. Let u = 0 and v = 0 of G. Obviously, dG (u, v) = 1. Since N(u) ∩ N(v) = ∅, it is impossible to have a path with length 2 between u and v. Thus, G is not panconnected. For the same reason, G cannot be panpositionable Hamiltonian. The theorem is proved. In the following, we will prove that every Harary graph H2,n is panconnected. Moreover, H2,n is panpositionable Hamiltonian if and only if n ∈ {5, 6, 7, 8, 9, 11}.
ch017.tex
30/6/2008
12: 32
Page 502
502
Graph Theory and Interconnection Networks
THEOREM 17.10 Let n be an integer with n ≥ 5. Then the Harary graph H2,n is a panconnected graph. Proof: Let G = H2,n . To show that G is panconnected, we prove that there exists a path of length l for dG (x, y) ≤ l ≤ n − 1 between any two distinct vertices x, y of G. Without loss of generality, let x = 0 and y ≤ n2 . We define some paths as follows: I(i, j) = i, i + 1, i + 2, . . . , j − 1, j S(i) = i, i + 2 S t (i) = i, i + 2, i + 4, . . . , i + 2(t − 1), i + 2t S −t (i) = i, i − 2, i − 4, . . . , i − 2(t − 1), i − 2t 4
y−k 2
5
Suppose that l ≤ y. Let k = 2(l − dG (0, y)). )Then* 0, I(0, k), S (k), y is l−y the required path. Suppose that l > y. Let k = 2 . Then the required path
is 0, I(0, y − 1), S k (y − 1), y + 2k − 1, y + 2k, S −k (y + 2k), y if l − y is even and
0, I(0, y − 1), S k (y − 1), y + 2k − 1, y + 2k − 2, S −(k−1) (y + 2k − 2), y if otherwise. The theorem is proved. THEOREM 17.11 H2,n is panpositionable Hamiltonian if and only if n ∈ {5, 6, 7, 8, 9, 11}. Proof: We first show that H2,n is panpositionable Hamiltonian if n ∈ {5,6,7, 8,9,11}. With the symmetric property of H2,n , it suffices to show that for any vertex u with 1 ≤ u ≤ n/2 and for any integer k with dH2,n (0, u) ≤ k ≤ n/2, there exists a Hamiltonian C of G(n; 1, 2) such that dC (0, u) = k. It is easy to see that
cycle dH2,n (0, u) = u2 . We set r = u2 . To describe the required Hamiltonian cycles, we define some path patterns: p(i, j) = i, i + 1, i + 2, . . . , j − 1, j q(i, j) = i, i + 2, i + 4, . . . , j − 2, j q
−1
(j, i) = j, j − 2, j − 4, . . . , i + 2, i
Case 1. n ∈ {5, 7, 9, 11}. Suppose that u = 1. Obviously, 0, 1, 3, 2, 4, p(4, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 1 and
0, 2, 1, 3, p(3, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2. Suppose we want to find a Hamiltonian cycle of H2,n such that dC (0, u) = 3. Then n ∈ {7, 9, 11}. Then 0, 2, 3, 1, n − 1, q−1 (n − 1, 4), 4, 5, q(5, n − 2), n − 2, 0 forms the required Hamiltonian cycle. Similarly, 0, 2, 4, 3, 1, n − 1, q−1 (n − 1, 6), 6, 5, q(5, n − 2), n − 2, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n ∈ {9, 11}. Moreover, 0, 9, q−1 (9, 1), 1, 2, q(2, 10), 10, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n = 11. Suppose that u = 2. Then 0, 2, 1, 3, p(3, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 1; 0, p(0, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, n − 1, 1, p(1, n − 2), n − 2, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3 with n ∈ {7, 9, 11};
ch017.tex
30/6/2008
12: 32
Page 503
Pancyclic and Panconnected Property
503
0, n − 1, 1, 3, 2, 4, p(4, n − 2), n − 2, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n ∈ {9, 11}; and 0, 9, q−1 (9, 3), 3, 2, q(2, 10), 10, 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 5 with n = 11. Suppose u = 3. Then dH2,n (0, u) = 2 and n ∈ {7, 9, 11}. Then 0, 2, p(2, n − 1), n − 1, 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, p(0, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; 0, 1, 2, 4, 3, 5, p(5, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n ∈ {9, 11}; and 0, 10, 1, 2, 4, 3, 5, p(5, 9), 9, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 5 with n = 11. Suppose that u = 4. Then 0, q(0, n − 1), n − 1, 1, q(1, n − 2), n − 2, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, 2, p(2, n − 1), n − 1, 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; 0, p(0, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4; and 0, p(0, 3), 3, 5, 4, 6, p(6, 10), 10, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 5 with n = 11. Suppose u = 5. Obviously, n = 11. Then 0, 1, q(1, 9), 9, 10, q−1 (10, 0), 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; 0, 10, 1, q(1, 9), 9, 8, q−1 (8, 0), 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4; and 0, p(0, 10), 10, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 5. Case 2. n ∈ {6, 8}. Suppose that u = 1. Then 0, p(0, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 1; 0, 2, 1, 3, p(3, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, 2, 3, 1, n − 1, q−1 (n − 1, 5), 5, 4, q (4, n − 2), n − 2, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; and
0, 2, 4, 3, 1, 7, 5, 6, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n = 8. Suppose that u = 2. Then 0, 2, 1, 3, p(3, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 1; 0, p(0, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, 1, 3, 2, 4, p(4, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; and 0, 7, 1, 3, 2, 4, 5, 6, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n = 8. Suppose that u = 3. Then 0, 2, p(2, n − 1), n − 1, 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, p(0, n − 1), n − 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; and 0, 1, 2, 4, 3, 5, 6, 7, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4 with n = 8. Suppose that u = 4. Then 0, q(0, 6), 7, q−1 (7, 1), 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 2; 0, 2, p(2, 7), 7, 1, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 3; and 0, p(0, 7), 7, 0 forms a Hamiltonian cycle of H2,n such that dC (0, u) = 4. To show that H is not panpositionable Hamiltonian if n = 10 or n ≥ 12, we prove that there exists no Hamiltonian cycle in H such that the distance between 0 and 2 is 5. Suppose that C is a Hamiltonian cycle of H with dC (0, 2) = 5. Obviously, P1 = 0, n − 2, n − 1, 1, 3, 2, P2 = 0, n − 1, 1, 3, 4, 2, and P3 = 0, 1, 3, 5, 4, 2 are all the possible paths of length 5 joining 0 and 2. Then C contains exactly one of P1 , P2 , and P3 . Suppose that C contains P1 . Then (0, 1) and (0, n − 1) are in C. Thus, C contains
n − 2, 0, 2. This means that C contains a cycle 0, P1 , 2, 0, which is impossible.
ch017.tex
30/6/2008
12: 32
Page 504
504
Graph Theory and Interconnection Networks
Suppose that C contains P2 or P3 . Then (2, 1) and (2, 3) are not in C. Thus, C contains
0, 2, 4. This means that C contains a cycle 0, P2 , 2, 0 or 0, P3 , 2, 0, which is impossible. The theorem is proved. Thus, we have some examples of pancyclic graphs that are neither panconnected nor panpositionable Hamiltonian, some examples of panconnected graphs that are not panpositionable Hamiltonian, and some examples of graphs that are panconnected and panpositionable Hamiltonian. The existence of panpositionable Hamiltonian graphs that are not panconnected is still an open problem.
17.6
BIPANPOSITIONABLE BIPANCYCLIC PROPERTY OF HYPERCUBE
Again, we would like to compare the difference among bipancyclic, bipanconnected, and bipanpositionable Hamiltonian. Obviously, any bipanconnected graph is bipancyclic. However, we introduce another interesting concept. A k-cycle is a cycle of length k. A bipartite graph G is k-cycle bipanpositionable if for every different vertices x and y of G and for any integer l with dG (x, y) ≤ l ≤ k/2 and (l − dG (x, y)) being even, there exists a k-cycle C of G such that dC (x, y) = l. (Note that dC (x, y) ≤ k/2 for every cycle C of length k.) A bipartite graph G is bipanpositionable bipancyclic if G is k-cycle bipanpositionable for every even integer k with 4 ≤ k ≤ |V (G)|. Now, we prove that the hypercube Qn is bipanpositionable bipancyclic if and only if n ≥ 2, by induction. LEMMA 17.6 Q3 is bipanpositionable bipancyclic. Proof: Let x and y be two different vertices in Q3 . It is known that the diameter of Qn is n, so dQ3 (x, y) = 1, 2, or 3. Since the hypercube is vertex-symmetric, without loss of generality, we may assume that x = 000. Case 1. Suppose that dQ3 (x, y) = 1. Since Q3 is edge-symmetric, we may assume that y = 001. y = 001
Case 2.
4-cycle
dC (x, y) = 1
000, 001, 011, 010, 000
6-cycle
dC (x, y) = 1 dC (x, y) = 3
000, 001, 101, 111, 110, 100, 000
000, 100, 101, 001, 011, 010, 000
8-cycle
dC (x, y) = 1 dC (x, y) = 3
000, 001, 101, 111, 011, 010, 110, 100, 000
000, 100, 101, 001, 011, 111, 110, 010, 000
Suppose that dQ3 (x, y) = 2. We have y ∈ {011, 101, 110}. y = 011
4-cycle
dC (x, y) = 2
000, 001, 011, 010, 000
6-cycle
dC (x, y) = 2
000, 001, 011, 010, 110, 100, 000
8-cycle
dC (x, y) = 2 dC (x, y) = 4
000, 001, 011, 010, 110, 111, 101, 100, 000
000, 001, 101, 111, 011, 010, 110, 100, 000
ch017.tex
30/6/2008
12: 32
Page 505
Pancyclic and Panconnected Property
y = 101
y = 110
Case 3.
505
4-cycle
dC (x, y) = 2
000, 001, 101, 100, 000
6-cycle
dC (x, y) = 2
000, 001, 101, 111, 110, 100, 000
8-cycle
dC (x, y) = 2 dC (x, y) = 4
000, 001, 101, 111, 011, 010, 110, 100, 000
000, 001, 011, 111, 101, 100, 110, 010, 000
4-cycle
dC (x, y) = 2
000, 010, 110, 100, 000
6-cycle
dC (x, y) = 2
000, 100, 110, 111, 101, 001, 000
8-cycle
dC (x, y) = 2 dC (x, y) = 4
000, 100, 110, 010, 011, 111, 101, 001, 000
000, 100, 101, 111, 110, 010, 011, 001, 000
Suppose that dQ3 (x, y) = 3. We have y = 111. y = 111
6-cycle 8-cycle
dC (x, y) = 3 dC (x, y) = 3
000, 001, 011, 111, 110, 100, 000
000, 001, 011, 111, 101, 100, 110, 010, 000
Thus, Q3 is bipanpositionable bipancyclic.
THEOREM 17.12 Qn is bipanpositionable bipancyclic if and only if n ≥ 2. Proof: We observe that Q1 is not bipanpositionable bipancyclic. So we start with n ≥ 2. We prove that Qn is bipanpositionable bipancyclic by induction on n. It is easy to see that Q2 is bipanpositionable bipancyclic. By Lemma 17.7, this statement holds for n = 3. Suppose that Qn−1 is bipanpositionable bipancyclic for some n ≥ 4. Let x and y be two distinct vertices in Qn , and let k be an even integer with k ≥ max{4, 2dQn (x, y)} and k ≤ 2n . For every integer l with dQn (x, y) ≤ l ≤ k/2 and (l − dQn (x, y)) being even, we need to construct a k-cycle C of Qn with dC (x, y) = l. Case 1. dQn (x, y) = 1. Without loss of generality, we may assume that both x and y are in Qn0 . (l − dQn (x, y)) is even, so l is an odd number. Case 1.1. l = 1. Suppose that k ≤ 2n−1 . By induction, there is a k-cycle C of Qn0 with dC (x, y) = 1. Suppose that k ≥ 2n−1 + 2. By induction, there is a 2n−1 -cycle C of Qn0 with dC (x, y) = 1. Without loss of generality, we write C = x, P, z, y, x such that dP (x, z) = k − 2. Suppose that k − 2n−1 = 2. Then C = x, P, z, z, y, y, x forms a (2n−1 + 2)-cycle with dC (x, y) = 1. Suppose that k − 2n−1 ≥ 4. By induction, there is a (k − 2n−1 )-cycle C of Qn1 such that dC (z, y) = 1. We write C = z, R, y, z with dR (z, y) = k − 2n−1 − 1. Then C = x, P, z, z, R, y, y, x forms a k-cycle of Qn with dC (x, y) = l. Case 1.2. l ≥ 3. Suppose that k − l − 1 ≤ 2n−1 . By induction, there is a (l + 2)cycle C of Qn0 with dC (x, y) = 1. We write C = x, P, y, x where dP (x, y) = l. By induction, there is a (k − l − 1)-cycle C of Qn1 with dC (x, y) = 1. We then write C = y, R, x, y such that dR (y, x) = k − l − 1. Then C = x, P, y, y, R, x, x forms a k-cycle of Qn with dC (x, y) = l. Suppose that k − l − 2 ≥ 2n−1 + 1. By induction, there is a (k − 2n−1 )-cycle C of Qn0 with dC (x, y) = l. We write C = x, P, y, u, R, x with dP (x, y) = l and dR (u, x) = k − (2n−1 − 1) − l − 2. By induction, there is a (2n−1 )-cycle C of Qn1 with dC (x, u) = 1. We write C = x, u, S, x with
ch017.tex
30/6/2008
12: 32
Page 506
506
Graph Theory and Interconnection Networks
dS (u, x) = 2n−1 − 1. Then C = x, P, y, R, u, u, S, x, x forms a k-cycle of Qn with dC (x, y) = l. Case 2. dQn (x, y) ≥ 2 and l = 2. Since dQn (x, y) ≤ l and l = 2, so dQn (x, y) = 2. Without loss of generality, we may assume that x is in Qn0 and y is in Qn1 . Then dQn (x, y) = 1 and dQn (y, x) = 1. Suppose that k = 4. Then C = x, x, y, y, x forms a 4-cycle of Qn with dQn (x, y) = 2. Suppose that 6 ≤ k ≤ 2n−1 + 2. By induction, there is a (k − 2)-cycle C = x, P, y, x of Qn0 such that dP (x, y) = k − 3. Then C = x, P, y, y, x, x forms a k-cycle of Qn with dC (x, y) = 2. Suppose that k ≥ 2n−1 + 4. By induction, there is a 2n−1 -cycle C of Qn0 with dC (x, y) = 1. We write C = x, P, z, y, x with dP (x, z) = 2n−1 − 2. By induction, there is a (k − 2n−1 )-cycle C of Qn1 with dC (y, z) = 1. We write C = y, z, R, y with dR (y, z) = k − 2n−1 − 1. Then C = x, P, z, z, R, y, y, x forms a k-cycle of Qn with dC (x, y) = 2. Case 3. dQn (x, y) ≥ 2 and l ≥ 3. Without loss of generality, we may assume that x is in Qn0 and y is in Qn1 . Suppose that k − l − dQn (x, y) + 2 ≤ 2n−1 . By induction, there is a (l + dQn (x, y) − 2)-cycle C = x, P, y, u, R, x of Qn0 such that dP (x, y) = l − 1 and dR (u, x) = dQn (x, y) − 2. By induction, there is a (k − l − dQn (x, y) + 2)-cycle C of Qn1 with dC (y, u) = 1. We write C = y, S, u, y with dS (y, u) = k − l − dQn (x, y) + 1. Then C = x, P, y, y, S, u, u, R, x forms a k-cycle of Qn with dC (x, y) = l. Suppose that k − l − dQn (x, y) + 4 ≥ 2n−1 . By induction, there is a (k − 2n−1 )-cycle C = x, P, y, u, R, x of Qn0 such that dP (x, y) = l − 1 and dR (u, x) = k − 2n−1 − l. By induction, there is a 2n−1 -cycle C of Qn1 with dC (y, u) = 1. We write C = y, S, u, y with dS (y, u) = 2n−1 − 1. Then C = x, P, y, y, S, u, u, R, x forms a k-cycle of Qn with dC (x, y) = l. The theorem is proved. Thus, Qn with n ≥ 2 is bipanpositionable bipancyclic, bipanpositionable Hamiltonian, and bipanconnected. Yet there is a bipanconnected graph that is not bipanpositionable Hamiltonian. Let G be the bipartite graph shown in Figure 17.8. It is
y1
y2
y8
x1
y7
x8
x2
x7 x6
x3 x4 x5
y3
y4
y6
y5
FIGURE 17.8 A bipanconnected graph that is not bipanpositionable Hamiltonian.
ch017.tex
30/6/2008
12: 32
Page 507
Pancyclic and Panconnected Property
507
easy to check that G is bipanconnected. Moreover, there is no Hamiltonian cycle C of G such that dC (x1 , x2 ) = 5. Thus, G is not bipanpositionable Hamiltonian. Since any bipanpositionable bipancyclic graph is bipanpositionable Hamiltonian, G is not bipanpositionable bipancyclic. However, we cannot find bipanpositionable Hamiltonian graphs that are not bipanconnected.
ch017.tex
30/6/2008
12: 32
Page 508
ch018.tex
11/8/2008
18 18.1
17: 8
Page 509
Mutually Independent Hamiltonian Cycles
INTRODUCTION
In Section 9.5, we discussed the concept of mutually independent Hamiltonian paths. Obviously, we can extend this concept into mutually independent Hamiltonian cycles. A Hamiltonian cycle C of graph G is described as u1 , u2 , . . . , un(G) , u1 to emphasize the order of vertices in C. Thus, u1 is the beginning vertex and ui is the ith vertex in C. Two Hamiltonian cycles of G beginning at a vertex x, C1 = u1 , u2 , . . . , un(G) , u1 and C2 = v1 , v2 , . . . , vn(G) , v1 , are independent if x = u1 = v1 and ui = vi for every i, 2 ≤ i ≤ n(G). A set of Hamiltonian cycles {C1 , C2 , . . . , Ck } of G are mutually independent if any two different Hamiltonian cycles are independent. The mutually independent Hamiltonianicity of graph G, IHC(G), is the maximum integer k such that for any vertex u of G there exist k mutually independent Hamiltonian cycles of G starting at u. Obviously, IHC(G) ≤ δ(G) if G is a Hamiltonian graph. Assume that K5 is the complete graph with vertex set {0, 1, 2, 3, 4}. Let C1 = 0, 1, 2, 3, 4, 0, C2 = 0, 2, 3, 4, 1, 0, C3 = 0, 3, 4, 1, 2, 0, and C4 = 0, 4, 1, 2, 3, 0. Obviously, C1 , C2 , C3 , and C4 are mutually independent. Thus, IHC(K5 ) = 4. However, we rewrite C1 , C2 , C3 , and C4 into the following Latin square: 1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
A Latin square of order n is an n × n array made from the integers 1 to n with the property that any integer occurs once in each row and column. If we delete some rows from a Latin square, we will get a Latin rectangle. Obviously, a Latin square of order n can be viewed as n mutually independent Hamiltonian cycles with respect to the complete graph Kn+1 . Thus, the concept of mutually independent Hamiltonian cycles can be interpreted as a Latin rectangle for graphs. We can apply mutually independent Hamiltonian cycles in a lot of areas. Consider the following scenario. At Christmas, we have a holiday of ten days. A tour agency will organize a ten-day tour to Italy. Suppose that there will be a lot of people joining this tour. However, the maximum number of people staying in each local area is limited to say, 100 people, because of the hotel contract. One trivial solution is the first-come-first-serve approach. So only 100 people can attend this tour. (Note that we cannot schedule the tour in a pipelined manner, because the holiday period is fixed.) 509
ch018.tex
11/8/2008
17: 8
Page 510
510
Graph Theory and Interconnection Networks
Nonetheless, we observe that a tour is like a Hamiltonian cycle based on a graph, in which a vertex is denoted as a hotel and any two vertices are joined with an edge if the associated two hotels can be traveled in a reasonable time. Therefore, we can organize several subgroups; that is, each subgroup has its own tour. In this way, we do not allow two subgroups to stay in the same area during the same time period. In other words, any two different tours are indeed independent Hamiltonian cycles. Suppose that there are ten mutually independent Hamiltonian cycles. Then we may allow 1000 people to visit Italy on Christmas vacation. For this reason, we would like to find the maximum number of mutually independent Hamiltonian cycles. Such applications are useful for task scheduling and resource placement, and are also important for compiler optimization to exploit parallelism. Recently, there have been some studies on the mutually independent Hamiltonianicity of some graphs and variations [163,207,209,236,290].
18.2
MUTUALLY INDEPENDENT HAMILTONIAN CYCLES ON SOME GRAPHS
The bound for IHC(G) is studied in Ref. 236. LEMMA 18.1 Assume that G is a Hamiltonian graph. Then IHC(G) ≤ δ(G). LEMMA 18.2 Let x be a vertex of a graph G such that degG (x) ≥ n(G)/2 and G − {x} is Hamiltonian. Then there are (2 degG (x) − n(G) + 1) mutually independent Hamiltonian cycles of G beginning at x. Proof: Assume that C = v1 , v2 , . . . , vn(G)−1 , v1 is a Hamiltonian cycle of G − {x}. Suppose that degG (x) = n(G) − 1. We set Ci = x, vi , vi+1 , . . . , vn(G)−1 , v1 , v2 , . . . , vi−1 , x for every 1 ≤ i ≤ n(G) − 1. Then {C1 , C2 , . . . , Cn(G)−1 } forms a set of (n(G) − 1) mutually independent Hamiltonian cycles of G beginning at x. Note that n(G) − 1 = 2 degG (x) − n(G) + 1. Suppose that degG (x) ≤ n(G) − 2. Without loss of generality, we may assume that (x, v1 ) ∈ E(G) and (x, vn(G)−1 ) ∈ / E(G). Let S = {vi | (x, vi ) ∈ E(G) and (x, vi+1 ) ∈ E(G) for 1 ≤ i ≤ n(G) − 2}, and let H = {vi | (x, vi ) ∈ E(G) and (x, vi+1 ) ∈ / E(G) for 1 ≤ i ≤ n(G) − 2}. We have |H| = degG (x) − |S|. Suppose that |S| ≤ 2 degG (x) − n(G). Then we have n(G) ≥ |S| + 2|H| + 1 = |S| + 2(degG (x) − |S|) + 1 = 2 degG (x) − |S| + 1 ≥ 2 degG (x) − (2 degG (x) − n(G)) + 1 = n(G) + 1 We obtain a contradiction. Thus, |S| ≥ 2 degG (x) − n(G) + 1. We set Ci = x, vi , vi+1 , . . . , vn(G)−1 , v1 , v2 , . . . , vi−1 , x for every vi ∈ S. Then {Ci | for every vi ∈ S} forms a set of |S| mutually independent Hamiltonian cycles
ch018.tex
11/8/2008
17: 8
Page 511
Mutually Independent Hamiltonian Cycles
511
of G beginning at x. Therefore, we obtain at least 2 degG (x) − n(G) + 1 mutually independent Hamiltonian cycles beginning at x. With Lemma 18.2, we have the following theorem. THEOREM 18.1 Assume that G is a graph with δ(G) ≥ n(G)/2. Then IHC(G) ≥ 2δ(G) − n(G) + 1. Proof: Since δ(G) ≥ n(G)/2, n(G) ≥ 3. Case 1.
n(G) = 3. Then G = K3 . Obviously, IHC(G) = 2 = 2δ(G) − n(G) + 1.
Case 2. n(G) = 2k for some positive integer k with k ≥ 2. Suppose that δ(G) = n(G)/2. By Dirac’s Theorem, G is Hamiltonian. Thus, IHC(G) ≥ 1. Suppose that δ(G) ≥ (n(G)/2) + 1. We have n(G) ≥ 4. Let x be an arbitrary vertex of G. Obviously, δ(G − {x}) ≥ δ(G) − 1 ≥ n(G)/2 > n(G − {x})/2 and n(G − {x}) = n(G) − 1 ≥ 3. By Dirac’s Theorem, G − {x} is Hamiltonian. Then by Lemma 18.2, there exist (2 degG (x) − n(G) + 1) mutually independent Hamiltonian cycles of G beginning at x. Since degG (x) ≥ δ(G), IHC(G) ≥ 2δ(G) − n(G) + 1. Case 3. n(G) = 2k + 1 for some positive integer k with k ≥ 2. Obviously, n(G) ≥ 5. Let x be an arbitrary vertex of G. Obviously, δ(G − {x}) ≥ δ(G) − 1 ≥ k = n(G − {x})/2 and n(G − {x}) = n(G) − 1 ≥ 4. By Dirac’s Theorem, G − {x} is Hamiltonian. Then by Lemma 18.2, there exist (2 degG (x) − n(G) + 1) mutually independent Hamiltonian cycles of G beginning at x. Since degG (x) ≥ δ(G), IHC(G) ≥ 2δ(G) − n(G) + 1. The theorem is proved. In the following sections, we present some graphs that meet the bound mentioned previously. THEOREM 18.2 IHC(Kn ) = n − 1 if n ≥ 3. Proof: By Lemma 18.1, IHC(Kn ) ≤ n − 1. By Theorem 18.1, IHC(Kn ) ≥ n − 1. Thus, IHC(Kn ) = n − 1. THEOREM 18.3 IHC(G) = n(G) − 3 if G is a graph with δ(G) = n(G) − 2 ≥ 4. Proof: By Theorem 18.1, IHC(G) ≥ n(G) − 3. Thus, we only need to show that IHC(G) ≤ n(G) − 3. Let x be any vertex of G with degG (x) = n(G) − 2. Let {C1 , C2 , . . . , Cr } be a set of r mutually independent Hamiltonian cycles beginning at x. We may write Ci = x = vi1 , vi2 , . . . , vin(G) , x for every 1 ≤ i ≤ r. Since degG (x) = n(G) − 2, there is exactly one vertex y with (x, y) ∈ / E(G). Let i be any index with 1 ≤ i ≤ r. Obviously, i( y) y∈ / {vi1 , vi2 , vin(G) }. Thus, y = vi for some i( y) with 3 ≤ i( y) < n(G). Since i( y) = j(y) for any 1 ≤ i < j ≤ r, r ≤ n(G) − 3. Thus, IHC(G) ≤ n(G) − 3. The theorem is proved.
ch018.tex
11/8/2008
17: 8
Page 512
512
Graph Theory and Interconnection Networks
x
y
FIGURE 18.1 Illustration for H(4).
Let G and H be two graphs. We use Gc to denote the complement of G, use G + H to denote the disjoint union of G and H, and use G ∨ H to denote the graph obtained from G + H by joining each vertex of G to each vertex of H. Let m be a positive integer. We use H(m) to denote the graph K2c ∨ (Km + Km ). We illustrate H(4) in Figure 18.1. THEOREM 18.4 IHC(H(m)) = 1 for any positive integer m. Proof: Obviously, n(H(m)) = 2m + 2 and δ(H(m)) = m + 1 = n(H(m))/2. By Theorem 18.1, IHC(H(m)) ≥ 1. Let x and y be the vertices in H(m) correspond to K2c . Let C = x = u1 , u2 , . . . , u2m+2 , x be any Hamiltonian cycle of H(m) beginning at x. It is easy to see that um+2 = y. Thus, beginning at x, there does not exist any other Hamiltonian cycle of H(m) independent with C. Thus, IHC(H(m)) = 1.
18.3
MUTUALLY INDEPENDENT HAMILTONIAN CYCLES OF HYPERCUBES
In Ref. 291, Sun et al. study the mutually independent Hamiltonicity for hypercubes. We need the following lemmas. LEMMA 18.3 Assume that 1 ≤ n ≤ 3. Let {bi | 1 ≤ i ≤ n} be any n-sets of black nodes of Qn and {wi | 1 ≤ i ≤ n} be any n-sets of white nodes of Qn such that (bi , wi ) is an edge of Qn . Then there exist n Hamiltonian paths P1 , . . . , Pn of Qn such that (1) Pi joins from bi to wi for 1 ≤ i ≤ n and (2) Pi (k) = Pj (k) for 1 ≤ k ≤ 2n and 1 ≤ i < j ≤ n. Proof: It is obvious that the theorem holds for n = 1. Assume that n = 2. Without loss of generality, we may assume that (b1 , w1 ) = (10, 00) and (b2 , w2 ) = (01, 11). Then 10, 11, 01, 00 and 01, 00, 10, 11 are the desired paths. Assume that n = 3. Let tj = | {(bi , wi ) | (bi , wi ) is a j-dimensional edge with 1 ≤ i ≤ 3} | . Without loss of generality, we assume that t1 ≥ t2 ≥ t3 . j Suppose that t3 = 0. Let rj = | {bi | bi ∈ Q3 , 1 ≤ i ≤ 3} | for j = 0, 1. Without loss of generality, we assume that r0 ≥ r1 . Obviously, r0 + r1 = 3. Since there are only four nodes in Q2 , we may assume that {(bi , wi ) | 1 ≤ i ≤ 2} ⊂ Q30 and (b3 , w3 ) ⊂ Q31 . Since the theorem holds for n = 2, there exist two Hamiltonian paths P1 and P2 of Q30 such that (1) Pi joins from bi to wi for 1 ≤ i ≤ 2 and (2) P1 (k) = P2 (k) for 1 ≤ k ≤ 22 .
ch018.tex
11/8/2008
17: 8
Page 513
Mutually Independent Hamiltonian Cycles
513
By Theorem 13.1, there exists a Hamiltonian path P3 of Q31 from b3 to w3 . Obviously, 6i |1 ≤ i ≤ 3} forms the desired paths. {P Now, we assume that t3 = 0. Obviously, t1 = t2 = t3 = 1. By the symmetric property of Q3 , we may assume that b1 = 100 and w1 = 000. Then b2 ∈ {001, 111}. Case 1. b2 = 001. Then w2 = 011. Moreover, b3 = 111 and w3 = 110. The required Hamiltonian paths are 100, 101, 111, 110, 010, 011, 001, 000, 001, 000, 100, 101, 111, 110, 010, 011, and 111, 011, 010, 000, 001, 101, 100, 110. Case 2. b2 = 111. Then w2 = 101. Moreover, b3 = 010 and w3 = 011. The required Hamiltonian paths are 100, 101, 111, 110, 010, 011, 001, 000, 111, 110, 010, 011, 001, 000, 100, 101, and 010, 000, 001, 101, 100, 110, 111, 011. LEMMA 18.4 IHC(Qn ) = n − 1 if n ∈ {1, 2, 3}. Proof: Let n = 1. Obviously, there is no Hamiltonian cycle in Q1 . Thus, IHC(Q1 ) = 0. Let n = 2. Since Q2 is Hamiltonian, IHC(Q2 ) ≥ 1. Moreover, it is easy to see that there is no two mutually independent Hamiltonian cycles beginning at any node. Thus, IHC(Q2 ) = 1. Let n = 3. Obviously, Q3 is Hamiltonian. Let C = 000 = v1 , v2 , . . . , v8 , v1 be any Hamiltonian cycle beginning at 000. Obviously, 111 is either v4 or v6 . Thus, IHC(Q3 ) ≤ 2. However, there are two mutually independent Hamiltonian cycles beginning at 000; namely 000, 100, 101, 111, 110, 010, 011, 001, 000 and 000, 010, 011, 001, 101, 111, 110, 100, 000. By the symmetric property of Qn , IHC(Q3 ) ≥ 2. Therefore, IHC(Q3 ) = 2. LEMMA 18.5 Q4 − {x, y} is Hamiltonian laceable if x and y are any two nodes from different partite sets of Q4 . Proof: Without loss of generality, we can assume that x = 0000. Then the Hamming weight of y, w(y), is either 1 or 3. Thus, we can assume that y = 1000 or 1110. Case 1. y = 1000. Obviously, 0010, 1010, 1110, 1100, 0100, 0110, 0010 forms a Hamiltonian cycle C of Q40 − {x, y}. Let u and v be any two nodes from different partite sets of Q4 − {x, y}. Without loss of generality, we assume that u is a white node. Case 1.1. |{u, v} ∩ Qn0 | = 2. Write C beginning at u as u = x1 , x2 , . . . , x6 , x1 . Since C can be traversed backward and forward, v is either x2 or x4 . By Theorem 13.1, there exists a Hamiltonian path P1 of Qn1 joining (x3 )4 to (x2 )4 , and there exists a Hamiltonian path P2 of Qn1 joining (x3 )4 to (x6 )4 in Qn1 . Then
u = x1 , x6 , x5 , x4 , x3 , (x3 )4 , P1 , (x2 )4 , x2 is a Hamiltonian path of Q4 − {x, y} from u to x2 and u = x1 , x2 , x3 , (x3 )4 , P2 , (x6 )4 , x6 , x5 , x4 is a Hamiltonian path of Q4 − {x, y} from u to x4 . Case 1.2. |{u, v} ∩ Qn0 | = 1. Without loss of generality, we assume that u ∈ Qn0 . Write C as u = x1 , x2 , . . . , x6 , x1 . By Theorem 13.1, there exists a Hamiltonian path P of Qn1 from (x6 )4 to v. Then u, x2 , x3 , . . . , x6 , (x6 )4 , P, v forms the desired path.
ch018.tex
514
11/8/2008
17: 8
Page 514
Graph Theory and Interconnection Networks
Case 1.3. |{u, v} ∩ Qn0 | = 0. Thus, u and v are in Qn1 . Suppose that u = 1001. Write C as u4 = x1 , x2 , . . . , x6 , x1 . Since C can be traversed backward and forward, we assume that (x6 )4 = v. By Theorem 13.1, there exists a Hamiltonian path P of Q41 − {u} joining (x6 )4 to v. Then u, (u)4 , x2 , . . . , x6 , (x6 )4 , P, v forms the desired path. Suppose that v = 0001. Write C as v4 = x1 , x2 , . . . , x6 , x1 . Since C can be traversed backward and forward, we can assume that (x6 )4 = u. By Theorem 13.1, there exists a Hamiltonian path S of Q41 − {v} joining (x6 )4 to u. Then v, v4 , x2 , . . . , x6 , (x6 )4 , S, u forms the desired path. Finally, we assume that v = 0001 and u = 1001. Then
0001, 0101, 1101, 1111, 0111, 0011, 0010, 0110, 0100, 1100, 1110, 1010, 1011, 1001 forms the desired path. Case 2. y = 1110. Obviously, 0100, 0110, 0010, 1010, 1000, 1100, 0100 forms a Hamiltonian cycle C of Q40 − {x, y}. We can use the same technique as in Case 1 to prove that Q40 − {x, y} is Hamiltonian laceable. LEMMA 18.6 Qn − {x, y} is Hamiltonian laceable if x and y are any two nodes from different partite sets of Qn with n ≥ 4. Proof: We prove this lemma by induction. The induction basis is proved in Lemma 18.5. Assume that this lemma is true for Qk with 4 ≤ k < n. By the symmetric property of Qn , we can assume that x = e. Thus, w(y) is odd. Let u and v be any two nodes from different partite sets of Qn − {x, y}. Without loss of generality, we may assume that u is a white node. Case 1. w(y) < n. Without loss of generality, we assume that (y)n = 0. Obviously, {x, y} ⊂ Qn0 . Case 1.1. |{u, v} ∩ Qn0 | = 2. By induction, there exists a Hamiltonian path P of Qn − {x, y} joining u to v. Write P as u = y1 , y2 , . . . , y2n−1 −2 = v. By Theorem 13.1, there exists a Hamiltonian path S joining un to (y2 )n . Then
u, un , S, (y2 )n , y2 , y3 , . . . , y2n−1 −2 = v forms the desired path. Case 1.2. |{u, v} ∩ Qn0 | = 1. Without loss of generality, we assume that u ∈ Qn0 . Since there are 2n−2 black nodes in Qn0 , we can choose a black node r of Qn0 such that r = y. By induction, there exists a Hamiltonian path P of Qn0 − {x, y} joining u to r. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 joining rn to v. Then u, P, r, rn , S, v forms the desired path. Case 1.3. |{u, v} ∩ Qn0 | = 0. Thus, u and v are in Qn1 . Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path P of Qn1 between u and v. We write P as u = x1 , x2 , . . . , x2n−1 = v. Obviously, there exists some index i with 1 ≤ i < 2n−1 such that {(xi )n , (xi+1 )n } ∩ {x, y} = ∅. By induction, there exists a Hamiltonian path S of Qn0 − {x, y} between (xi )n and (xi+1 )n . Then
u = x1 , x2 , . . . , xi , (xi )n , S, (xi+1 )n , xi+1 , xi+2 , . . . , x2n−1 −2 = v forms the desired path. Case 2. w(y) = n. Since w(y) is odd, n is odd. Moreover, w(v) < n because y = v. Without loss of generality, we assume that (v)n = 0. Therefore, v ∈ Qn0 and y ∈ Qn1 .
ch018.tex
11/8/2008
17: 8
Page 515
Mutually Independent Hamiltonian Cycles
515
Case 2.1. u ∈ Qn0 . Since every hypercube is hyper Hamiltonian laceable, there exists a Hamiltonian path P of Qn0 − {v} joining u to e. Write P as u, S, r, e. Similarly, there exists a Hamiltonian path R of Qn1 − {y} joining rn to vn . Then u, S, r, rn , R, vn , v forms the desired path. Case 2.2. u ∈ / Qn0 . Since there are 2n−2 black nodes in Qn0 , we can choose a black 0 node r of Qn such that r = v. Since every hypercube is hyper Hamiltonian laceable, there exists a Hamiltonian path P of Qn0 − {e} joining r to v. Similarly, there exists a Hamiltonian path S of Qn0 − {y} joining u to rn . Then u, S, rn , r, P, v forms the desired path. LEMMA 18.7 Let {bi | 1 ≤ i ≤ n − 1} be any (n − 1)-sets of black nodes of Qn and {wi | 1 ≤ i ≤ n − 1} be any (n − 1)-sets of white nodes of Qn such that (bi , wi ) is an edge of Qn . Then there exist (n − 1) Hamiltonian paths P1 , . . . , Pn−1 of Qn such that (1) Pi joins from bi to wi for 1 ≤ i ≤ n − 1 and (2) Pi (k) = Pj (k) for 1 ≤ k ≤ 2n and 1 ≤ i < j ≤ n − 1. Proof: We prove this lemma by induction. The induction basis are n = 1, 2, 3, and 4. With Lemma 18.3, the lemma is true for n = 1, 2, and 3. Suppose that n = 4. Let tj = | {(bi , wi ) | (bi , wi ) be a j-dimensional edge with 1 ≤ i ≤ 3}|. Without loss of generality, we assume that t1 ≥ t2 ≥ t3 ≥ t4 . Obviously, t4 = 0. j Let rj = | {bi | bi ∈ Q4 , 1 ≤ i ≤ 3}| for j = 0, 1. Without loss of generality, we may assume that r0 ≥ r1 . Obviously, r0 + r1 = 3. Suppose that r0 < 3. Then r0 = 2 and r1 = 1. Without loss of generality, we may assume that {(bi , wi ) | 1 ≤ i ≤ 2} ⊂ Q40 and (b3 , w3 ) ⊂ Q41 . By Lemma 18.3, there exist two Hamiltonian paths P1 and P2 of Q40 such that (1) Pi joins from bi to wi for 1 ≤ i ≤ 2 and (2) P1 (k) = P2 (k) for 1 ≤ k ≤ 23 . 6i | 1 ≤ i ≤ 3} By Theorem 13.1, there exists a Hamiltonian path P3 of Q41 . Obviously, {P forms a set of the desired paths. Suppose that r0 = 3. Thus, {(bi , wi ) | 1 ≤ i ≤ 3} ⊂ Q40 . By Lemma 18.5, there exist three Hamiltonian paths P1 , P2 , and P3 of Q40 such that (1) Pi joins from bi to wi for 6i | 1 ≤ i ≤ 3} 1 ≤ i ≤ 3 and (2) Pi (k) = Pj (k) for 1 ≤ i < j ≤ 3 and 1 ≤ k ≤ 23 . Then {P forms a set of the desired paths. Suppose that the lemma is true for Qk with 4 ≤ k < n. Let tj = | {(bi , wi ) | (bi , wi ) be a j-dimensional edge with 1 ≤ i ≤ n − 1}|. Without loss of generality, we assume that t1 ≥ t2 · · · ≥ tn . j Obviously, tn = 0. Let rj = | {bi | bi ∈ Qn , 1 ≤ i ≤ n − 1}| for j = 0, 1. Obviously, r0 + r1 = n − 1. Without loss of generality, we may assume that r0 ≥ r1 . Suppose that r0 < n − 1. Without loss of generality, we may assume that {(bi , wi ) | 1 ≤ i ≤ r0 } ⊂ Qn0 and {(bi , wi ) | r0 + 1 ≤ i ≤ n − 1} ⊂ Qn1 . By induction, there exist r0 Hamiltonian paths P1 , P2 , . . . , Pr0 of Qn0 such that (1) Pi joins from bi to wi for 1 ≤ i ≤ r0 and (2) Pi (k) = Pj (k) for 1 ≤ i < j ≤ r0 and 1 ≤ k ≤ 2n−1 . Similarly, there exist (n − r0 − 1) Hamiltonian paths Pr0 +1 , Pr0 +2 , . . . , Pn−1 of Qn1 such that (1) Pi joins from bi to wi for r0 + 1 ≤ i ≤ n − 1 and (2) Pi (k) = Pj (k) for r0 + 1 ≤ i < j ≤ n − 1 and 1 ≤ k ≤ 2n−1 . 6i | 1 ≤ i ≤ n − 1} forms a set of desired paths. Obviously, {P Suppose that r0 = n − 1. Thus, {(bi , wi ) | 1 ≤ i ≤ n − 1} ⊂ Qn0 . Note that the complete bipartite graph Km,m is not a subgraph of Qm for m ≥ 3. Thus, the subgraph
ch018.tex
11/8/2008
17: 8
Page 516
516
Graph Theory and Interconnection Networks Q n0 {b i }
Q n1 bi (bi)n
T 1i
(x2i )n
x2i
T 0i
wi
(wi)n Q 0n {b n1 ,wn1 } b n1 x xn ( b n1
P0
v
( 1 i n2)
Q 1n { x, ( bn1 )n } vn
)n
P1
wn1 ( wn1)n
FIGURE 18.2 Illustration of Lemma 18.7.
induced by {(bi )n | 1 ≤ i ≤ n − 1} ∪ {(wi )n | 1 ≤ i ≤ n − 1} is not a complete bipartite graph. Therefore, there exists some index j and a neighbor x of (bj )n such that x is not in {(wi )n | 1 ≤ i ≤ n − 1}. Without loss of generality, we assume that j = n − 1. By induction, there exist (n − 2) Hamiltonian paths R1 , R2 , . . . , Rn−2 of Qn0 such that (1) Pi joins from bi to wi for 1 ≤ i ≤ n − 2 and (2) Ri (k) = Rj (k) for 1 ≤ i < j ≤ n − 2 and 1 ≤ k ≤ 2n−1 . Write Ri as bi = x1i , x2i , . . . , x2i n−1 = wi . For 1 ≤ i ≤ n − 2, let T1i = (wi )n = (x2i n−1 )n , (x2i n−1 −1 )n , . . . , (x2i )n and T0i = x2i , x3i , . . . , x2i n−1 = wi . For 1 ≤ i ≤ n − 2, we set Si as bi , (bi )n , (wi )n , T1i , (x2i )n , x2i , T0i , wi . Let v be any black node of Qn0 such that v = bn−1 . By Lemma 18.6, there exists a Hamiltonian path P0 of Qn0 − {bn−1 , wn−1 } from xn to v and there exists a Hamiltonian path P1 of Qn1 − {(bn−1 )n , x} from vn to (wn−1 )n . Set Sn−1 as
bn−1 , (bn−1 )n , x, xn , P0 , v, vn , P1 , (wn−1 )n , wn−1 . Then {Si | 1 ≤ i ≤ n − 1} forms a set of desired paths. See Figure 18.2 for illustration. THEOREM 18.5 IHC(Qn ) = n − 1 if n ∈ {1, 2, 3} and IHC(Qn ) = n if n ≥ 4. Proof: By Lemma 18.4, IHC(Qn ) = n − 1 if n ∈ {1, 2, 3}. Now, we prove that IHC(Qn ) = n for n ≥ 4 by induction. We need to construct n mutually independent Hamiltonian cycles of Qn beginning at any node u. Without loss of generality, we assume that u = e. Let n = 4. The corresponding mutually independent Hamiltonian cycles beginning at e are: 0000, 0010, 0110, 0100, 1100, 1000, 1010, 1110, 1111, 1101, 1001, 1011, 0011, 0111, 0101, 0001, 0000 0000, 0100, 0101, 0001, 0011, 0111, 0110, 0010, 1010, 1110, 1100, 1101, 1111, 1011, 1001, 1000, 0000 0000, 0001, 1001, 1011, 1111, 1101, 0101, 0111, 0011, 0010, 0110, 1110, 1010, 1000, 1100, 0100, 0000 0000, 1000, 1100, 1110, 1010, 1011, 1111, 1101, 1001, 0001, 0011, 0111, 0101, 0100, 0110, 0010, 0000
Let n = 5. The corresponding mutually independent Hamiltonian cycles beginning at e are: 00000, 00001, 01001, 01101, 01100, 01000, 01010, 01011, 01111, 01110, 11110, 11111, 11011, 11010, 11000, 11100, 11101, 11001, 10001, 10000, 10010, 10011, 10111, 10110, 10100, 10101, 00101, 00111, 00011, 00010, 00110, 00100 00000, 00010, 10010, 10110, 10100, 10000, 10001, 10011, 10111, 10101, 11101, 11001, 11000, 11100, 11110, 11010, 11011, 11111, 01111, 01101, 01001, 01011, 01010, 01000, 01100, 01110, 00110, 00100, 00101, 00111, 00011, 00001
ch018.tex
11/8/2008
17: 8
Page 517
Mutually Independent Hamiltonian Cycles
517
00000, 00100, 00101, 00001, 00011, 00111, 00110, 01110, 01010, 01000, 01100, 01101, 01111, 01011, 01001, 11001, 11000, 11010, 11110, 11100, 11101, 11111, 11011, 10011, 10111, 10110, 10100, 10101, 10001, 10000, 10010, 00010 00000, 10000, 10001, 10101, 10111, 10011, 10010, 10110, 10100, 00100, 00101, 00111, 00110, 00010, 00011, 00001, 01001, 01011, 01010, 01110, 01111, 01101, 01100, 11100, 11101, 11111, 11110, 11010, 11011, 11001, 11000, 01000 00000, 01000, 11000, 11100, 11110, 11111, 11101, 11001, 11011, 11010, 10010, 10011, 10001, 10101, 10111, 10110, 00110, 00010, 00011, 00111, 00101, 00001, 01001, 01101, 01111, 01011, 01010, 01110, 01100, 00100, 10100, 10000
Thus, we assume that IHC(Qk ) = n with 5 ≤ k < n. By induction, there exist (n − 2) mutually independent Hamiltonian cycles of Qn00 beginning at e. However, we pick any (n − 3) mutually independent Hamiltonian cycles M1 , M2 , . . . , Mn−3 i , a , ei , e for 1 ≤ i ≤ n − 3. By of Qn00 beginning at e. Write Mi as e, P00 i 1 , P 2 , . . . , P n−3 of Q01 such Lemma 18.7, there exist (n − 3) Hamiltonian paths P01 n 01 01 i (k) = P j (k) i n i n that (1) P01 joins from (ai ) to (e ) for 1 ≤ i ≤ n − 3 and (2) P01 01 for 1 ≤ i < j ≤ n − 3 and 1 ≤ k ≤ 2n−2 . Again, there exist (n − 3) Hamiltonian 1 , P 2 , . . . , P n−3 } of Q11 such that (1) P i i n n−1 to paths {P11 n 11 11 11 joins from ((e ) ) j i (k) = P (k) for 1 ≤ i < j ≤ n − 3 and ((ai )n )n−1 for 1 ≤ i ≤ n − 3 and (2) P11 11 1 , P 1 , . . . , P n−3 } n−2 1 ≤ k ≤ 2 . Moreover, there exist (n − 3) Hamiltonian paths {P10 10 10 i 10 n−1 i n−1 of Qn such that (1) P10 joins from (ai ) to (e ) for 1 ≤ i ≤ n − 3 and i (k) = P j (k) for 1 ≤ i < j ≤ n − 3 and 1 ≤ k ≤ 2n−2 . For 1 ≤ i ≤ n − 3, we set (2) P10 10 i , a , (a )n , P i , (ei )n , ((ei )n )n−1 , P i , ((a )n )n−1 , (a )n−1 , P i , (ei )n−1 , ei , e. Ci as e, P00 i i i i 01 11 10 Since there are 2n−2 nodes in Qn01 , we can choose a path x1 , y1 , z1 in Qn01 such that (1) y1 is a black node not in {(ai )n | 1 ≤ i ≤ n − 3} ∪ {en } and (2) z1 is i (2) | 1 ≤ i ≤ n − 3}. Similarly, we can choose a path x , y , z in Q11 not in {P01 2 2 2 n such that (1) y2 is a black node not in {((ei )n )n−1 | 1 ≤ i ≤ n − 3} ∪ {(z1 )n−1 } and (2) i (2) | 1 ≤ i ≤ n − 3}. Moreover, we can choose a path x , y , z in z2 is not in {P11 3 3 3 10 Qn such that (1) y3 is a black node not in {(ai )n−1 | 1 ≤ i ≤ n − 3} ∪ {(z2 )n } and i (2) | 1 ≤ i ≤ n − 3} ∪ {(en−2 )n−1 }. By Lemma 18.6, there exists (2) z3 is not in {P10 a Hamiltonian path S01 of Qn01 − {y1 , z1 } from en to x1 . Again, there exists a Hamiltonian path S11 of Qn11 − {y2 , z2 } from (z1 )n−1 to x2 . Moreover, there exists a Hamiltonian path S10 of Qn10 − {y3 , z3 } from (z2 )n to x3 . By Theorem 13.1, there exists a Hamiltonian path S00 of Qn00 − {e} from (z3 )n−1 to en−2 . We set Cn−2 as
e, en , S01 , x1 , y1 , z1 , (z1 )n−1 , S11 , x2 , y2 , z2 , (z2 )n , S10 , x3 , y3 , z3 , (z3 )n−1 , S00 , en−2 , e. i (2) | 1 ≤ i ≤ n − 3}, let r Let v be the only node in {ei | 1 ≤ i ≤ n − 2} − {P00 1 be any white node of Qn10 such that r1 = vn−1 , let r2 be any white node of Qn00 such that r2 = e, and let r3 be any white node of Qn01 . By Theorem 13.1, there exists a Hamiltonian path R10 of Qn10 − {en−1 } from vn−1 to r1 . By Lemma 18.6, there exists a Hamiltonian path R00 of Qn00 − {e, v} from (r1 )n−1 to r2 . By Theorem 13.1, there exists a Hamiltonian path R01 of Qn01 from (r2 )n to r3 and there exists a Hamiltonian path R11 of Qn11 from (r3 )n−1 to (en−1 )n . We set Cn−1 as
e, v, vn−1 , R10 , r1 , (r1 )n−1 , R00 , r2 , (r2 )n , R01 , r3 , (r3 )n−1 , R11 , (en−1 )n , en−1 , e. Let q be any black node of Qn11 such that q = (z1 )n−1 , let s be any white node of Qn10 such that s = qn , and let w be any black node of Qn00 such that w = sn−1 . By Theorem 13.1, there exists a Hamiltonian path T11 of Qn11 from (en−1 )n to q and there exists a Hamiltonian path T01 of Qn01 from wn to en . By Theorem 13.1, there exists a Hamiltonian path T10 of Qn10 − {en−1 } from qn to s
ch018.tex
11/8/2008
17: 8
Page 518
518
Graph Theory and Interconnection Networks
Qn00{ei}
Qn01
i P01
e
ai
(ai)n
Qn11 ((ei)n)n1 i ((ai)n)n1 P11
i P01 i n
e
en
i (2) P11
(e )
i (2) P01
Qn01
Qn10
x1 y1 z1
(z1)n1 S11
i (ei)n1 P10
n1
(ai)
x2 y2 z2
(z2)n
n1 Q10 } n {e n1 e v v
R10
r1
(r1)n1 r R00 2
S10
x3 y3 z3
(z3)n1
e
S00
Qn01
n2
Qn11
(r2)n
R01
r3
(r2)n1 R (en1)n 11
e e
Qn11
n1 Q10 } n {e
e en1
T11
q
qn
T10
Qn00{e} s
sn1
n1 n
(e
(1 i n3)
i
Qn00{e}
e Qn00{e,v}
e e
Q10 n
Qn11 S01
i (2) P10
)
T00
n1
Qn01 w wn
T01
e en
FIGURE 18.3 Illustration of Theorem 18.5.
and there exists a Hamiltonian path T00 of Qn00 − {e} from sn−1 to w. We set Cn as e, en−1 , (en−1 )n , T11 , q, qn , T10 , s, sn−1 , T00 , w, wn , T01 , en , e. Then {Ci | 1 ≤ i ≤ n} forms a set of desired cycles. See Figure 18.3 for illustration.
18.4
MUTUALLY INDEPENDENT HAMILTONIAN CYCLES OF PANCAKE GRAPHS
In Ref. 238, Lin et al. studied the mutually independent Hamiltonicity for pancake graphs. LEMMA 18.8 Let k ∈ n with n ≥ 4, and let x be a vertex of Pn . There is a Hamiltonian path P of Pn − {x} joining the vertex (x)n to some vertex v with (v)1 = k. Proof: Suppose that n = 4. Since P4 is vertex-transitive, we may assume that x = 1234. The required paths of P4 − {1234} are: k=1 k=2 k=3 k=4
4321, 3421, 2431, 4231, 1324, 3124, 2134, 4312, 1342, 2143, 4132, 2314, 3214, 4123, 2143, 3412, 1432, 2341, 3241, 1423, 2413, 4213, 1243
4321, 3421, 2431, 4231, 1324, 3124, 2134, 4312, 1342, 3142, 2413, 4213, 1243, 2143, 3412, 1432, 4132, 2314, 3214, 4123, 1423, 3241, 2341
4321, 3421, 2431, 4231, 1324, 3124, 2134, 4312, 1342, 3142, 4132, 2314, 3214, 4123, 1423, 2413, 4213, 1342, 2143, 3412, 1432, 2341, 3241
4321, 3421, 2431, 1342, 3142, 4132, 2314, 3214, 4123, 2143, 1243, 4213, 2413, 1423, 3241, 2341, 1432, 3412, 4312, 2134, 3124, 1324, 4231
With Theorem 11.14, we can find the required Hamiltonian path in Pn for every n, n ≥ 5.
ch018.tex
11/8/2008
17: 8
Page 519
Mutually Independent Hamiltonian Cycles
519
LEMMA 18.9 Let a and b be any two distinct elements in n with n ≥ 4, and let x be a vertex of Pn . There is a Hamiltonian path P of Pn − {x} joining a vertex u with (u)1 = a to a vertex v with (v)1 = b. Proof: Suppose that n = 4. Since P4 is vertex-transitive, we may assume that x = 1234. Without loss of generality, we may assume that a < b. The required paths of P4 − {1234} are: a = 1 and b = 2
1423, 4123, 3214, 2314, 1324, 3124, 4213, 2413, 3142, 4132, 1432, 3412, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 4312, 2134 a = 1 and b = 3
1423, 4123, 2143, 1243, 4213, 2413, 3142, 1342, 2431, 3421, 4321, 2341, 3241, 4231, 1324, 3124, 2134, 4312, 3412, 1432, 4132, 2314, 3214 a = 1 and b = 4
1423, 2413, 3142, 1342, 2431, 3421, 4321, 2341, 3241, 4231, 1324, 2314, 3214, 4123, 2143, 1243, 4213, 3124, 2134, 4312, 3412, 1432, 4132 a = 2 and b = 3
2134, 4312, 1342, 3142, 2413, 4213, 1243, 2143, 3412, 1432, 4132, 2314, 3214, 4123, 1423, 3241, 2341, 4321, 3421, 2431, 4231, 1324, 3124 a = 2 and b = 4
2134, 3124, 1324, 2314, 3214, 4123, 2143, 1243, 4213, 2413, 1423, 3241, 4231, 2431, 3421, 4321, 2341, 1432, 3412, 4312, 1342, 3142, 4132 a = 3 and b = 4
3214, 4123, 2143, 1243, 4213, 3124, 2134, 4312, 3412, 1432, 2341, 4321, 3421, 2431, 1342, 3142, 2413, 1423, 3241, 4231, 1324, 2314, 4132
With Theorem 11.14, we can find the required Hamiltonian path on Pn for every n, n ≥ 5. LEMMA 18.10 Let a and b be any two distinct elements in n with n ≥ 4. Assume that x and y are two adjacent vertices of Pn . There is a Hamiltonian path P of Pn − {x, y} joining a vertex u with (u)1 = a to a vertex v with (v)1 = b. Proof: Since Pn is vertex-transitive, we may assume that x = e and y = (e)i for some i ∈ {2, 3, . . . , n}. Without loss of generality, we assume that a < b. Thus, a = n and b = 1. We prove this statement by induction on n. For n = 4, the required paths of P4 − {1234, (1234)i } are: y = 2134 a = 1 and b = 2
1432, 2413, 3142, 4132, 1432, 3412, 4312, 1342, 2431, 3421, 4321, 2341, 3241, 4231, 1324, 3124, 4213, 1243, 2143, 4123, 3214, 2314 a = 1 and b = 3
1432, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 4312, 3412, 1432, 4132, 3142, 2413, 4213, 3124, 1324, 2314, 3214 a = 1 and b = 4
1432, 4123, 3214, 2314, 1324, 3124, 4213, 2413, 3142, 4132, 1432, 2341, 3241, 4231, 2431, 1342, 4312, 3412, 2143, 1243, 3421, 4321 a = 2 and b = 3
2314, 3214, 4123, 2143, 1243, 4213, 3124, 1324, 4231, 2431, 1342, 4312, 3412, 1432, 4132, 3142, 2413, 1423, 3241, 2341, 4321, 3421 a = 2 and b = 4
2314, 3214, 4123, 2143, 3412, 4312, 1342, 2431, 3421, 1243, 4213, 3124, 1324, 4231, 3241, 1423, 2413, 3142, 4132, 1432, 2341, 4321 a = 3 and b = 4
3214, 4123, 2143, 1243, 3421, 2431, 4231, 3241, 1423, 2413, 4213, 3124, 1324, 2314, 4132, 3142, 1342, 4312, 3412, 1432, 2341, 4321
ch018.tex
11/8/2008
17: 8
Page 520
520
Graph Theory and Interconnection Networks
y = 3214 a = 1 and b = 2
1423, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 3142, 2413, 4213, 3124, 1324, 2314, 4132, 1432, 3412, 4312, 2134 a = 1 and b = 3
1423, 4123, 2143, 1243, 4213, 2413, 3142, 1342, 2431, 3421, 4321, 2341, 3241, 4231, 1324, 2314, 4132, 1432, 3412, 4312, 2134, 3124 a = 1 and b = 4
1423, 4123, 2143, 1243, 3421, 2431, 1342, 3142, 2413, 4213, 3124, 2134, 4312, 3412, 1432, 4132, 2314, 1324, 4231, 3241, 2341, 4321 a = 2 and b = 3
2134, 4312, 1342, 2431, 4231, 3241, 1423, 4123, 2143, 3412, 1432, 2341, 4321, 3421, 1243, 4213, 2413, 3142, 4132, 2314, 1324, 3124
a = 2 and b = 4
2134, 3124, 4213, 2413, 3142, 1342, 4312, 3412, 1432, 4132, 2314, 1324, 4231, 2431, 3421, 1243, 2143, 4123, 1423, 3241, 2341, 4321 a = 3 and b = 4
3124, 2134, 4312, 1342, 3142, 2413, 4213, 1243, 3421, 2431, 4231, 1324, 2314, 4132, 1432, 3412, 2143, 4123, 1423, 3241, 2341, 4321
y = 4321 a = 1 and b = 2
1423, 4123, 3214, 2314, 4132, 3142, 2413, 4213, 3124, 1324, 4231, 3241, 2341, 1432, 3412, 2143, 1243, 3421, 2431, 1342, 4312, 2134 a = 1 and b = 3
1423, 4123, 2143, 3412, 1432, 2341, 3241, 4231, 1324, 3124, 2134, 4312, 1342, 2431, 2431, 1243, 4213, 2413, 3142, 4132, 2314, 3214 a = 1 and b = 4
1423, 2413, 4213, 3124, 2134, 4312, 3412, 2143, 1243, 3421, 2431, 1342, 3142, 4132, 1432, 2341, 3241, 4231, 1324, 2314, 3214, 4123 a = 2 and b = 3
2134, 4312, 1342, 3142, 4132, 2314, 3214, 4123, 2143, 3412, 1432, 2341, 3241, 1423, 2413, 4213, 1243, 3421, 2431, 4231, 1324, 3124 a = 2 and b = 4
2134, 3124, 4213, 2413, 1423, 3241, 2341, 1432, 4132, 3142, 1342, 4312, 3412, 2143, 1243, 3421, 2431, 4231, 1324, 2314, 3214, 4123 a = 3 and b = 4
3214, 2314, 1324, 4231, 3241, 2341, 1432, 4132, 3142, 1342, 2431, 3421, 1243, 2143, 3412, 4312, 2134, 3124, 4213, 2413, 1423, 4123
Suppose that this statement holds for Pk for every k, 4 ≤ k < n. We have the following cases: {n}
Case 1. y = (e)i for some i = 1 and i = n, that is, y ∈ Pn . Let c ∈ n − 1 − {a}. {n} By induction, there is a Hamiltonian path R of Pn −{e, (e)i } joining a vertex u with
n−1−{c} with (v)1 = b. (u)1 = a to a vertex z with (z)1 = c. We choose a vertex v in Pn
n−1 By Theorem 11.13, there is a Hamiltonian path H of Pn joining the vertex (z)n to v. Then u, R, z, (z)n , H, v is the desired path. {1}
Case 2. y = (e)n , that is, y ∈ Pn . Let c ∈ n − 1 − {1, a} and d ∈ n − 1 − {1, b, c}. {n} By Lemma 18.9, there is a Hamiltonian path R of Pn − {e} joining a vertex u with (u)1 = a to a vertex w with (w)1 = c. Again, there is a Hamiltonian path H {1} of Pn − {(e)n } joining a vertex z with (z)1 = d to a vertex v with (v)1 = b. By Theo n−1−{1} joining the vertex (w)n to the rem 11.13, there is a Hamiltonian path Q of Pn n n n vertex (z) . Then u, R, w, (w) , Q, (z) , z, H, v is the desired path. LEMMA 18.11 Let a and b be any two distinct elements in n with n ≥ 4. Let x be any vertex of Pn . Assume that x1 and x2 are two distinct neighbors of x. There is a Hamiltonian path P of Pn − {x, x1 , x2 } joining a vertex u with (u)1 = a to a vertex v with (v)1 = b.
ch018.tex
11/8/2008
17: 8
Page 521
Mutually Independent Hamiltonian Cycles
521
Proof: Since Pn is vertex-transitive, we may assume that x = e. Moreover, we assume that x1 = (e)i and x2 = (e)j for some {i, j} ⊂ n − {1} with i < j. Without loss of generality, we assume that a < b. Thus, a = n and b = 1. We prove this lemma by induction on n. For n = 4, the required paths of P4 − {1234, (1234)i , (1234) j } are:
x1 = 2134 and x2 = 3214 a = 1 and b = 2
1423, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 4312, 3412, 1432, 4132, 3142, 2413, 4213, 3124, 1324, 2314 a = 1 and b = 3
1423, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 4312, 3412, 1432, 4132, 2314, 1324, 3124, 4213, 2413, 3142 a = 1 and b = 4
1423, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 3142, 2413, 4213, 3124, 1324, 2314, 4132, 1432, 3412, 4312 a = 2 and b = 3
2143, 4123, 1423, 3241, 4231, 2431, 1342, 4312, 3412, 1432, 2341, 4321, 3421, 1243, 4213, 2413, 3142, 4132, 2314, 1324, 3124 a = 2 and b = 4
2143, 4123, 1423, 2413, 3142, 1342, 4312, 3412, 1432, 4132, 2314, 1324, 3124, 4213, 1243, 3421, 2431, 4231, 3241, 2341, 4321 a = 3 and b = 4
3124, 4213, 2413, 3142, 1342, 4312, 3412, 1432, 4132, 2314, 1324, 4231, 2431, 3421, 1243, 2143, 4123, 1423, 3241, 2341, 4321
x1 = 2134 and x2 = 4321 a = 1 and b = 2
1423, 2413, 3142, 4132, 1432, 2341, 3241, 4231, 1324, 3124, 4213, 1243, 3421, 2431, 1342, 4312, 3412, 2143, 4123, 3214, 2314 a = 1 and b = 3
1423, 4123, 2143, 1243, 3421, 2431, 1342, 4312, 3412, 1432, 2341, 3241, 4231, 1342, 3124, 4213, 2413, 3142, 4132, 2314, 3214 a = 1 and b = 4
1423, 4123, 3214, 2314, 1324, 3124, 4213, 2413, 3142, 1342, 4312, 3412, 2143, 1243, 3421, 2431, 4231, 3241, 2341, 1432, 4132 a = 2 and b = 3
2314, 3214, 4123, 2143, 3412, 4312, 1342, 3142, 4132, 1432, 2341, 3241, 1423, 2413, 4213, 1243, 3421, 2431, 4231, 1324, 3124 a = 2 and b = 4
2314, 3214, 4123, 2143, 1243, 3421, 2431, 4231, 1324, 3124, 4213, 2413, 1423, 3241, 2341, 1432, 3412, 4312, 1342, 3142, 4132 a = 3 and b = 4
3214, 2314, 4132, 3142, 1342, 4312, 3412, 1432, 2341, 3241, 1423, 2413, 4213, 3124, 1324, 4231, 2431, 3421, 1243, 2143, 4123
x1 = 3214 and x2 = 4321 a = 1 and b = 2
1423, 4123, 2143, 1243, 3421, 2431, 1342, 4312, 3412, 1432, 2341, 3241, 4231, 1324, 2314, 4132, 3142, 2413, 4213, 3124, 2134 a = 1 and b = 3
1423, 4123, 2143, 3412, 1432, 2341, 3241, 4231, 1324, 2314, 4132, 3142, 2413, 4213, 1243, 3421, 2431, 1342, 4312, 2134, 3124 a = 1 and b = 4
1423, 2413, 4213, 3124, 2134, 4312, 3412, 1432, 2341, 3241, 4231, 1324, 2314, 4132, 3142, 1342, 2431, 3421, 1243, 2143, 4123 a = 2 and b = 3
2134, 4312, 3412, 1432, 2341, 3241, 4231, 1324, 2314, 4132, 3142, 1341, 2431, 3421, 1243, 2143, 4123, 1423, 2413, 4213, 3124 a = 2 and b = 4
2134, 3124, 4213, 2413, 3142, 1342, 4312, 3412, 1432, 2341, 3241, 1423, 4123, 2143, 1243, 3421, 2431, 4231, 1324, 2314, 4132 a = 3 and b = 4
3124, 2134, 4312, 3412, 1432, 2341, 3241, 4231, 1324, 2314, 4132, 3142, 1342, 2431, 3421, 1243, 2143, 4123, 1423, 2413, 4213
Suppose that this statement holds for Pk for every k, 4 ≤ k < n. We have the following cases.
ch018.tex
11/8/2008
17: 8
Page 522
522
Graph Theory and Interconnection Networks {n}
{n}
Case 1. j = n; that is, x1 ∈ Pn and x2 ∈ Pn . Let c ∈ n − 1 − {1, a}. By induction, {n} there is a Hamiltonian path R of Pn − {e, x1 , x2 } joining a vertex u with (u)1 = a {1} to a vertex z with (z)1 = c. We choose a vertex v in Pn with (v)1 = b. By Theorem
n − 1 joining the vertex (z)n to v. We set 11.13, there is a Hamiltonian path H of Pn n P = u, R, z, (z) , H, v. Then P is the desired path. {n}
{1}
Case 2. j = n; that is, x1 ∈ Pn and x2 ∈ Pn . Let c ∈ n − 1 − {1, a} and {n} d ∈ n − 1 − {1, b, c}. By Lemma 18.10, there is a Hamiltonian path R of Pn − {e, x1 } joining a vertex u with (u)1 = a to a vertex z with (z)1 = c. By Lemma 18.9, there is {1} a Hamiltonian path H of Pn − {x2 } joining a vertex w with (w)1 = d to a vertex v
n−1 − {1} joining with (v)1 = b. By Theorem 11.13, there is a Hamiltonian path Q of Pn the vertex (z)n to the vertex (w)n . We set P = u, R, z, (z)n , Q, (w)n , w, H, v. Then P is the desired path. We then have the following theorem: THEOREM 18.6
IHC(P3 ) = 1 and IHC(Pn ) = n − 1 if n ≥ 4.
Proof: It is easy to see that P3 is isomorphic to a cycle with six vertices. Thus, IHC(P3 ) = 1. Since Pn is an (n − 1)-regular graph, it is clear that IHC(Pn ) ≤ n − 1. Since Pn is vertex-transitive, we need to show only that there exist (n − 1) mutually independent Hamiltonian cycles of Pn starting from the vertex e. For n = 4, we prove that IHC(P4 ) ≥ 3 by listing the required Hamiltonian cycles as following: C1 = 1234, 2134, 4312, 3412, 2143, 1243, 4213, 3124, 1324, 4231, 3241, 2341, 1432, 4132, 2314, 3214, 4123, 1423, 2413, 3142, 1342, 2431, 3421, 4321, 1234 C2 = 1234, 3214, 2314, 1324, 3124, 4213, 2413, 1423, 4123, 2143, 1243, 3421, 4321, 2341, 3241, 4231, 2431, 1342, 3142, 4132, 1432, 3412, 4312, 2134, 1234 C3 = 1234, 4321, 2341, 1432, 4132, 2314, 1324, 4231, 3241, 1423, 2413, 3142, 1342, 2431, 3421, 1243, 4213, 3124, 2134, 4312, 3412, 2143, 4123, 3214, 1234
Let n ≥ 5. Let B be the (n − 1) × n matrix with & bi, j =
i+j−1 i+j−n+1
if i + j − 1 ≤ n if n ≥ i + j
More precisely, ⎡
1 ⎢ 2 B=⎢ ⎣ ...
n−1
2 3 .. .
n
3 4 .. .
1
4 5 .. .
2
··· ··· .. . ···
n−1 n .. .
n−3
⎤ n 1 ⎥ .. ⎥ . . ⎦
n−2
It is not hard to see that bi,1 bi,2 . . . bi,n forms a permutation of {1, 2, . . . , n} for every i with 1 ≤ i ≤ n − 1. Moreover, bi, j = bi , j for any 1 ≤ i < i ≤ n − 1 and 1 ≤ j ≤ n. In other words, B forms a Latin rectangle with entries in {1, 2, . . . , n}.
ch018.tex
11/8/2008
17: 8
Page 523
Mutually Independent Hamiltonian Cycles
523
We construct {C1 , C2 , . . . , Cn−1 } as follows: {b } (1) k = 1. By Lemma 18.8, there is a Hamiltonian path H1 of Pn 1,n − {e} joining a vertex x with x = (e)n−1 and (x)1 = n − 1 to the vertex (e)n−1 . By Theorem 11.13, {b1,t } joining the vertex (e)n to the vertex (x)n there is a Hamiltonian path H2 of ∪n−1 t=1 Pn {b }
with H2 (i + ( j − 1)(n − 1)!) ∈ Pn 1, j for every i ∈ (n − 1)! and for every j ∈ n − 1. We set C1 = e, (e)n , H2 , (x)n , x, H1 , (e)n−1 , e. {b } (2) k = 2. By Lemma 18.10, there is a Hamiltonian path Q1 of Pn 2,n−1 − {e, (e)2 } joining a vertex y with (y)1 = n − 1 to a vertex z with (z)1 = 1. By Theorem 11.13, {b2,t } joining the vertex ((e)2 )n to the vertex (y)n such there is a Hamiltonian Q2 of ∪n−2 t=1 Pn {b }
that Q2 (i + ( j − 1)(n − 1)!) ∈ Pn 2, j for every i ∈ (n − 1)! and for every j ∈ n − 2. {b } By Theorem 11.14, there is a Hamiltonian path Q3 of Pn 2,n joining the vertex (z)n to the vertex (e)n . We set C2 = e, (e)2 , ((e)2 )n , Q2 , (y)n , y, Q1 , z, (z)n , Q3 , (e)n , e. (3) 3 ≤ k ≤ n − 1. By Lemma 18.11, there is a Hamiltonian path R1k of {bk,n−k+1 } Pn − {e, (e)k−1 , (e)k } joining a vertex wk with (wk )1 = n − 1 to a vertex vk {bk,t } with (vk )1 = 1. By Theorem 11.13, there is a Hamiltonian path R2k of ∪n−k joint=1 Pn {b }
ing the vertex ((e)k )n to the vertex (wk )n such that R2k (i + ( j − 1)(n − 1)!) ∈ Pn k, j for every i ∈ (n − 1)! and for every j ∈ n − k. Again, there is a Hamiltonian {b } path R3k of ∪nt=n−k+2 Pn k,t joining the vertex (vk )n to the vertex ((e)k−1 )n such that {b
}
R3k (i + (j − 1)(n − 1)!) ∈ Pn k,n−k+j+1 for every i ∈ (n − 1)! and for every j ∈ k − 1. We set Ck = e, (e)k , ((e)k )n , R2k , (wk )n , wk , R1k , vk , (vk )n , R3k , ((e)k−1 )n , (e)k−1 , e. Then {C1 , C2 , . . . , Cn−1 } forms a set of (n − 1) mutually independent Hamiltonian cycles of Pn starting from the vertex e.
Example 18.1 We illustrate the proof of Theorem 18.6 with n = 5 as follows. We set ⎡
1 ⎢2 B=⎢ ⎣3 4
2 3 4 5
3 4 5 1
4 5 1 2
⎤ 5 1⎥ ⎥ 2⎦ 3
Then we construct {C1 , C2 , C3 , C4 } as follows: {b } (1) k = 1. By Lemma 18.8, there is a Hamiltonian path H1 of P5 1,5 − {e} joining a vertex x with x = (e)4 and (x)1 = 4 to the vertex (e)4 . By Theorem 11.13, {b } there is a Hamiltonian path H2 of ∪4t=1 P5 1,t joining the vertex (e)5 to the vertex {b }
(x)5 with H2 (i + 24( j − 1)) ∈ P5 1,j for every i ∈ 24 and for every j ∈ 4. We set C1 = e, (e)5 , H2 , (x)5 , x, H1 , (e)4 , e. {b } (2) k = 2. By Lemma 18.10, there is a Hamiltonian path Q1 of P5 2,4 − {e, (e)2 } joining a vertex y with (y)1 = 4 to a vertex z with (z)1 = 1. By Theorem 11.13, there is
ch018.tex
11/8/2008
17: 8
Page 524
524
Graph Theory and Interconnection Networks
FIGURE 18.4 Illustration for Theorem 18.6 on P5 .
{b2,t }
a Hamiltonian path Q2 of ∪3t=1 P5 {b } Q2 (i + 24( j − 1)) ∈ P5 2,j
joining the vertex ((e)2 )5 to the vertex (y)5 such
for every i ∈ 24 and for every j ∈ 3. By Theorem that {b } 11.14, there is a Hamiltonian path Q3 of P5 2,5 joining the vertex (z)5 to the vertex (e)5 . We set C2 = e, (e)2 , ((e)2 )5 , Q2 , (y)5 , y, Q1 , z, (z)5 , Q3 , (e)5 , e. (3) 3 ≤ k ≤ 4. By Lemma 18.11, there is a Hamiltonian path R1k of {bk,6−k } P5 − {e, (e)k−1 , (e)k } joining a vertex wk with (wk )1 = 4 to a vertex vk with {bk,t } (vk )1 = 1. By Theorem 11.13, there is a Hamiltonian path R2k of ∪5−k t = 1 P5 {b }
joining the vertex ((e)k )5 to the vertex (wk )5 such that R2k (i + 24( j − 1)) ∈ P5 k,j for every i ∈ 24 and for every j ∈ 5 − k. Again, there is a Hamiltonian path {b } R3k of ∪5t=7−k P5 k,t joining the vertex (vk )5 to the vertex ((e)k−1 )5 such that {b
}
R3k (i + 24( j − 1)) ∈ P5 k,6−k+j for every i ∈ 24 and for every j ∈ k − 1. We set Ck = e, (e)k , ((e)k )5 , R2k , (wk )5 , wk , R1k , vk , (vk )5 , R3k , ((e)k−1 )5 , (e)k−1 , e. Then {C1 , C2 , C3 , C4 } forms a set of four mutually independent Hamiltonian cycles of P5 starting from the vertex e. See Figure 18.4 for illustration.
18.5
MUTUALLY INDEPENDENT HAMILTONIAN CYCLES OF STAR GRAPHS
In Ref. 238, Lin et al. also studied the mutually independent Hamiltonicity for star graphs. LEMMA 18.12 Let a and b be any two distinct elements in n with n ≥ 4. Assume that x is a white vertex of Sn and assume that x1 and x2 are two distinct neighbors of x. Then there is a Hamiltonian path P of Sn − {x, x1 , x2 } joining a white vertex u with (u)1 = a to a white vertex v with (v)1 = b. Proof: Since Sn is vertex-transitive and edge-transitive, we may assume that x = e, x1 = (e)2 , and x2 = (e)3 . Without loss of generality, we may also assume that a < b.
ch018.tex
11/8/2008
17: 8
Page 525
Mutually Independent Hamiltonian Cycles
525
We have a = n and b = 1. We prove this statement by induction on n. For n = 4, the required paths of S4 − {1234, 2134, 3214} are: a = 1 and b = 2 a = 1 and b = 3 a = 1 and b = 4 a = 2 and b = 3 a = 2 and b = 4 a = 3 and b = 4
1324, 3142, 4132, 1432, 3412, 4312, 2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431
1423, 2413, 4213, 1243, 2143, 4123, 3124, 1324, 2314, 4312, 3412, 1432, 4132, 3142, 1342, 2341, 4321, 3421, 2431, 4231, 3241
1324, 3142, 4132, 1432, 3412, 4312, 2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 2431, 4231, 3241, 2341, 4321
2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431, 1432, 4132, 3142, 1342, 4312, 3412
2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431, 1432, 3412, 4312, 1342, 3142, 4132
3124, 1324, 2314, 4312, 3412, 1432, 4132, 3142, 1342, 2341, 4321, 3421, 2431, 4231, 3241, 1243, 2143, 4123, 1423, 2413, 4213
Suppose that this statement holds for Sk for every k, 4 ≤ k ≤ n − 1. Let c be any element in n − 1 − {1, a}. By induction, there is a Hamiltonian path H of {n} Sn − {e, (e)2 , (e)3 } joining a white vertex u with (u)1 = a to a white vertex z with {1} (z)1 = c. We choose a white vertex v in Sn with (v)1 = b. By Theorem 14.33, there is a
n−1 joining the black vertex (z)n to v. Then u, H, z, (z)n , R, v Hamiltonian path R of Sn is the desired path of Sn − {e, (e)2 , (e)3 }. The following theorem is our main result for the star graph Sn : THEOREM 18.7 IHC(S3 ) = 1, IHC(S4 ) = 2, and IHC(Sn ) = n − 1 if n ≥ 5. Proof: It is easy to see that S3 is isomorphic to a cycle with six vertices. Thus, IHC(S3 ) = 1. Using a computer, we have IHC(S4 ) = 2 by brute force checking. Thus, we assume that n ≥ 5. We know that Sn is an (n − 1)-regular graph; it is clear that IHC(Sn ) ≤ n − 1. Since Sn is vertex-transitive, we need to show only that there are (n − 1) mutually independent Hamiltonian cycles of Sn starting from e. Let B be the (n − 1) × n matrix with & bi, j =
i+j−1 i+j−n+1
if i + j − 1 ≤ n if n < i + j − 1
We construct {C1 , C2 , . . . , Cn−1 } as follows: {b } (1) k = 1. We choose a black vertex x in Sn 1,n − {(e)n−1 } with (x)1 = n − 1. By {b } Theorem 13.2, there is a Hamiltonian path H1 of Sn 1,n − {e} joining x to the black ver{b1,t } joining the tex (e)n−1 . By Theorem 14.33, there is a Hamiltonian path H2 of ∪n−1 t=1 Sn {b }
black vertex (e)n to the white vertex (x)n with H2 (i + ( j − 1)(n − 1)!) ∈ Sn 1, j for every i ∈ (n − 1)! and for every j ∈ n − 1. We set C1 = e, (e)n , H2 , (x)n , x, H1 , (e)n−1 , e. {b } (2) k = 2. We choose a white vertex y in Sn 2,n−1 − {e, (e)2 } with (y)1 = n − 1. {b } By Lemma 13.35, there is a Hamiltonian path Q1 of Sn 2, j − {e, (e)2 } joining y to a black vertex z with (z)1 = 1. By Theorem 14.33, there is a Hamiltonian path
ch018.tex
11/8/2008
17: 8
Page 526
526
Graph Theory and Interconnection Networks {b2,t }
Q2 of ∪n−2 t=1 Sn
joining the white vertex ((e)2 )n to the black vertex (y)n such that {b }
Q2 (i + ( j − 1)(n − 1)!) ∈ Sn 2,j for every i ∈ (n − 1)! and for every j ∈ n − 2. Again, {b } there is a Hamiltonian path Q3 of Sn 2,n joining the white vertex (z)n to the black vertex (e)n . We set C2 = e, (e)2 , ((e)2 )n , Q2 , (y)n , y, Q1 , z, (z)n , Q3 , (e)n , e. (3) 3 ≤ k ≤ n − 1. By Lemma 18.12, there is a Hamiltonian path R1k of {bk,n−k+1 } Sn − {e, (e)k−1 , (e)k } joining a white vertex wk with (wk )1 = n − 1 to a white vertex vk with (vk )1 = 1. By Theorem 14.33, there is a Hamil{bk,t } joining the white vertex ((e)k )n to the black tonian path R2k of ∪n−k t=1 Sn {b }
vertex (wk )n such that R2k (i + ( j − 1)(n − 1)!) ∈ Sn k,j for every i ∈ (n − 1)! and for every j ∈ n − k − 1. Again, there is a Hamiltonian path R3k of {b } ∪nt=n−k+2 Sn k,t joining the black vertex (vk )n to the black vertex ((e)k−1 )n such that {b
}
R3k (i + ( j − 1)(n − 1)!) ∈ Sn k,n−k+j+1 for every i ∈ (n − 1)! and for every j ∈ k − 1. We set Ck = e, (e)k , ((e)k )n , R2k , (wk )n , wk , R1k , vk , (vk )n , R3k , ((e)k−1 )n , (e)k−1 , e. Then {C1 , C2 , . . . , Cn−1 } forms a set of (n − 1) mutually independent Hamiltonian cycles of Sn starting form the vertex e.
18.6
FAULT-FREE MUTUALLY INDEPENDENT HAMILTONIAN CYCLES IN A FAULTY HYPERCUBE
We can also study the mutually independent Hamiltonicity of a faulty graph. In Refs 163 and 209, the mutually independent Hamiltonicity of hypercubes with edge fault are discussed. Then we study the mutually independent Hamiltonicity of star graphs in the following section. Let F be the set of faulty edges of Qn . Suppose that Qn is partitioned over dimension i into {Qn0 , Qn1 } for some 1 ≤ i ≤ n and Ec is the set of crossing edges between Qn0 and Qn1 . Then we define F0 = F ∩ E(Qn0 ), F1 = F ∩ E(Qn1 ), and Fc = F ∩ Ec . Moreover, we set δ = n − 1 − |F| in the remainder of this paper. To tolerate faulty edges in hypercube networks, we have the following results. LEMMA 18.13 Let F ⊆ E(Qn ) be a set of at most n − 2 faulty edges for n ≥ 3. Suppose that A = {(wi , bi ) ∈ E(Qn ) | wi ∈ V0 (Qn ), bi ∈ V1 (Qn ), 1 ≤ i ≤ δ} consists of δ distinct edges with no shared endpoints. Then Qn − F contains δ mutually fully independent Hamiltonian paths P1 , P2 , . . . , Pδ where Pi is joining wi to bi for every i ∈ {1, 2, . . . , δ}. Proof: By Lemma 18.7, this lemma holds for |F| = 0. Suppose that |F| = n − 2. Then δ = n − 1 − (n − 2) = 1. By Theorem 13.1, there is a Hamiltonian path of Qn − F between any two vertices from different partite sets. Hence, we need to consider only the case where 1 ≤ |F| ≤ n − 3. The proof is by induction on n. One can see that the statement holds for Q3 , as the induction basis. In what follows, we assume that n ≥ 4. Suppose that the statement holds for Qn−1 . Since δ + |F| = n − 1 < n, there must exist a dimension d such that no edge of A ∪ F is a d-dimensional edge. Since Qn is edge-transitive, we can assume, without loss of generality, that d = n. Then we partition Qn into {Qn0 , Qn1 } over dimension d = n.
ch018.tex
11/8/2008
17: 8
Page 527
Mutually Independent Hamiltonian Cycles
527
Thus, each (wi , bi ) is either in Qn0 or in Qn1 . Let r0 = |{(wi , bi ) ∈ E(Qn0 ) | 1 ≤ i ≤ δ}| and r1 = |{(wi , bi ) ∈ E(Qn1 ) | 1 ≤ i ≤ δ}|. Clearly, r0 + r1 = δ. Without loss of generality, we assume that {(w1 , b1 ), . . . , (wr0 , br0 )} ⊂ E(Qn0 ) and {(wr0 +1 , br0 +1 ), . . . , (wδ , bδ )} ⊂ E(Qn1 ). Moreover, we have that r0 + |F0 | ≤ δ + |F| = n − 1 and r1 + |F1 | ≤ δ + |F| = n − 1. With symmetry, we assume that r0 + |F0 | ≥ r1 + |F1 |. Then we have to take the following cases into account. Case 1. Suppose that ri + |Fj | ≤ n − 2 for all i, j ∈ {0, 1}. Since r0 + |F0 | ≤ n − 2, r0 ≤ n − 2 − |F0 | = (n − 1) − 1 − |F0 |. By the induction hypothesis, there exist r0 mutually fully independent Hamiltonian paths Hi = wi , Hi , ui , bi joining wi to bi , 1 ≤ i ≤ r0 , with some vertex ui adjacent to bi in Qn0 − F0 . Similarly, there exist r1 mutually fully independent Hamiltonian paths Hi = wi , Hi , ui , bi joining wi to bi , r0 + 1 ≤ i ≤ δ, with some ui adjacent to bi in Qn1 − F1 . Next, we construct r0 paths in Qn1 − F1 to incorporate the previously established r0 paths of Qn0 − F0 . Since r0 + |F1 | ≤ n − 2, we have r0 ≤ n − 2 − |F1 |. By the induction hypothesis, Qn1 − F1 also contains r0 mutually fully independent Hamiltonian paths R1 , R2 , . . . , Rr0 where Ri joining (ui )n to (bi )n for every i ∈ {1, 2, . . . , r0 }. Similarly, Qn0 − F0 also contains r1 mutually fully independent Hamiltonian paths Rr0 +1 , Rr0 +2 , . . . , Rδ where Ri joining (ui )n to (bi )n for every i ∈ {r0 + 1, r0 + 2, . . . , δ}. Accordingly, we set Pi = wi , Hi , ui , (ui )n , Ri , (bi )n , bi for every 1 ≤ i ≤ δ. Thus, {P1 , P2 , . . . , Pδ } forms a set of δ mutually fully independent Hamiltonian paths in Qn . See Figure 18.5a for illustration. Case 2. Suppose that ri + |Fi | = n − 1 for some i ∈ {0, 1}. Without loss of generality, we assume that r0 + |F0 | = n − 1. Since r0 = n − 1 − |F0 | ≥ n − 1 − |F| = δ, we must have r0 = δ and |F0 | = |F| ≤ n − 3. By Theorem 13.1, there is a Hamiltonian path H1 = w1 , u1 , H1 , (b1 ) j , b1 joining w1 to b1 with some 1 ≤ j ≤ n − 1 and with some u1 adjacent to w1 in Qn0 − F0 . Note that r0 − 1 = δ − 1 = n − 2 − |F| = (n − 1) − 1 − |F0 |. By induction hypothesis, there are (r0 − 1) mutually fully independent Hamiltonian paths Hi = wi , Hi , ui , bi joining wi to bi , 2 ≤ i ≤ r0 , with some ui adjacent to bi in Qn0 − F0 . Case 2.1. Suppose that n = 4. Let X1 = {((u1 )4 , v) ∈ E(Q41 ) | v = (u2 )4 } and X2 = {((u2 )4 , v) ∈ E(Q41 ) | v = (u1 )4 }. Obviously, |X0 | ≤ 1 and |X1 | ≤ 1. By Theorem 13.1, there is a Hamiltonian path R1 joining (w1 )4 to (u1 )4 of Q41 − X1 and there is a Hamiltonian path R2 joining (u2 )4 to (b2 )4 of Q41 − X2 . One can see that R1 (7) = R2 (1) and R1 (8) = R2 (2). Then we set P1 = w1 , (w1 )4 , R1 , (u1 )4 , u1 , H1 , (b1 ) j , b1 and P2 = w2 , H2 , u2 , (u2 )4 , R2 , (b2 )4 , b2 . Consequently, {P1 , P2 } forms a set of two mutually fully independent Hamiltonian paths in Q4 . See Figure 18.5b for illustration. Case 2.2. Suppose that n ≥ 5. By Lemma 18.6, there is a Hamiltonian path R1 joining (w1 )n to (u1 )n in Qn1 − {(b1 )n , ((b1 ) j )n }. Then we set P1 =
w1 , (w1 )n , R1 , (u1 )n , u1 , H1 , (b1 )j , ((b1 ) j )n , (b1 )n , b1 . Since r0 − 1 = δ − 1 = n − 2 − |F| < n − 2, there exist (r0 − 1) mutually fully independent Hamiltonian paths Ri joining (ui )n to (bi )n , 2 ≤ i ≤ r0 in Qn1 − {((bi )n , ((b1 ) j )n )}. One can see that Ri (2n−1 − 1) = ((b1 ) j )n for 2 ≤ i ≤ r0 . Thus, we set Pi = wi , Hi , ui , (ui )n , Ri , (bi )n , bi
ch018.tex
528
11/8/2008
17: 8
Page 528
Graph Theory and Interconnection Networks
FIGURE 18.5 Illustration for the proof of Lemma 18.13.
for 2 ≤ i ≤ r0 . Consequently, {P1 , . . . , Pr0 } forms a set of r0 mutually fully independent Hamiltonian paths in Qn . See Figure 18.5c for illustration. Case 3. Suppose that ri + |F1−i | = n − 1 for some i ∈ {0, 1}. Without loss of generality, we assume that r1 + |F0 | = n − 1. Since r1 = n − 1 − |F0 | ≥ n − 1 − |F| = δ, we must have r1 = δ and |F0 | = |F|. By induction hypothesis, there are (r1 − 1) mutually fully independent Hamiltonian paths Hi = wi , Hi , ui , bi joining wi to bi , 1 ≤ i ≤ r1 − 1, with some ui adjacent to bi in Qn1 . Since r1 − 1 = δ − 1 = n − 2 − |F| = (n − 1) − 1 − |F0 |, there exist (r1 − 1) mutually fully independent Hamiltonian paths Ri joining (ui )n to (bi )n , 1 ≤ i ≤ r1 − 1, in Qn0 − F0 .
ch018.tex
11/8/2008
17: 8
Page 529
Mutually Independent Hamiltonian Cycles
529
For 1 ≤ i ≤ r1 − 1, we set Pi = wi , Hi , ui , (ui )n , Ri , (bi )n , bi . Next, we have to choose a vertex v of V0 (Qn0 ) and construct a Hamiltonian path Rr1 joining (wr1 )n to v in Qn0 − F0 such that v = Ri (2) and Rr1 (2n−1 − 1) = (ui )n for every 1 ≤ i ≤ r1 − 1. This leads to the following cases. Case 3.1. Suppose that n = 5 or |F| > 1. One can see that (u1 )n , (u2 )n , . . . , (ur1 − 1 )n have at most (r1 − 1)(n − 1) neighbors in V0 (Qn0 ). Since 2n−2 > (r1 − 1)(n − 1) = (n − 2 − |F|)(n − 1) for all n ≥ 3, we can choose v other than all neighbors of (u1 )n , (u2 )n , . . . , (ur1 −1 )n . Obviously, v = Ri (2) for 1 ≤ i ≤ r1 − 1. By Theorem 13.1, there is a Hamiltonian path Rr1 joining (wr1 )n to v of Qn0 − F0 such that Rr1 (2n−1 − 1) = (ui )n for every 1 ≤ i ≤ r1 − 1. By Theorem 13.1, there is a Hamiltonian path Hr1 joining (v)n to br1 in Qn1 − {wr1 }. Then we set Pr1 = wr1 , (wr1 )n , Rr1 , v, (v)n , Hr1 , br1 . Consequently, {P1 , P2 , . . . , Pr1 } forms a set of r1 mutually fully independent Hamiltonian paths in Qn . See Figure 18.5d for illustration. Case 3.2. Suppose that n = 5, |F| = 1, and (u1 )n , (u)2 )n , . . . , (ur1 −1 )n have at least one common neighbor. Thus, r1 = 3. Since 2n−2 = 8 > 7 = (r1 − 1)(n − 1) − 1, we still can choose v other than all neighbors of (u1 )n , (u2 )n , . . . , (ur1 −1 )n . Obviously, v = Ri (2) for 1 ≤ i ≤ r1 − 1. By Theorem 13.1, there is a Hamiltonian path Rr1 joining (wr1 )n to v of Qn0 − F0 such that Rr1 (2n−1 − 1) = (ui )n for every 1 ≤ i ≤ r1 − 1. By Theorem 13.1, there is a Hamiltonian path Hr1 joining (v)n to br1 in Qn1 − {wr1 }. Similarly, we set Pr1 = wr1 , (wr1 )n , Rr1 , v, (v)n , Hr1 , br1 . Then {P1 , P2 , . . . , Pr1 } forms a set of r1 mutually fully independent Hamiltonian paths in Qn . Case 3.3. Suppose that n = 5, |F| = 1, and (u1 )n , (u2 )n , . . . , (ur1 −1 )n have no common neighbors. Then we choose v as the vertex that is adjacent to (u1 )n but is not identical to R1 (2). Obviously, v = Ri (2) for 1 ≤ i ≤ r1 − 1. By Theorem 13.1, Qn0 − (F0 ∪ {(v, (u1 )n )}) remains Hamiltonian laceable. Thus, there is a Hamiltonian path Rr1 joining (wr1 )n to v of Qn0 − (F0 ∪ {(v, (u1 )n )}) such that Rr1 (2n−1 − 1) = (ui )n for every 1 ≤ i ≤ r1 − 1. By Theorem 13.1, there is a Hamiltonian path Hr1 joining (v)n to br1 in Qn1 − {wr1 }. Similarly, we set Pr1 = wr1 , (wr1 )n , Rr1 , v, (v)n , Hr1 , br1 . Then {P1 , P2 , . . . , Pr1 } forms a set of r1 mutually fully independent Hamiltonian paths in Qn . THEOREM 18.8 Let n ≥ 3. Suppose that F ⊆ E(Qn ) consists of at most n − 2 faulty edges. Then Qn − F contains (n − 1 − |F|) mutually independent Hamiltonian cycles beginning from any vertex. Proof: Since Qn is vertex-transitive, we need to construct only δ mutually independent Hamiltonian cycles beginning from e = 0n . Suppose that |F| = 0. By Theorem 18.5, the statement holds. Thus, we only consider the situation that F is nonempty. The proof is by induction on n. It is trivial that the statement holds for Q3 , as the induction basis. For n ≥ 4, we assume that the statement holds for Qn−1 . Now we consider how to build δ mutually independent Hamiltonian cycles in Qn − F. By selecting an arbitrary faulty edge of dimension d, d ∈ {1, 2, . . . , n}, one can partition Qn into {Qn0 , Qn1 } over dimension d such that |F0 |, |F1 | ≤ n − 3.
ch018.tex
11/8/2008
17: 8
Page 530
530
Graph Theory and Interconnection Networks Q 1n
Q 0n e Pi
ai
(ai)d
Ci Hi
bi
Ri
(bi)d
FIGURE 18.6 Illustration for the proof of Theorem 18.8.
By the induction hypothesis, Qn0 − F0 contains δ mutually independent Hamiltonian cycles C1 , C2 , . . . , Cδ beginning from e = 00 . . . 0, because of |F0 | ≤ |F| − 1 ≤ n − 3 and (n − 1) − 1 − |F0 | ≥ (n − 1) − 1 − (|F| − 1) = n − 1 − |F| = δ. For convenience, we assume that the vertices of each cycle are ranked clockwise from 0 to 2n−1 − 1; that is, the beginning vertex e has index 0. Next, we claim that there must exist an integer t, 0 ≤ t ≤ 2n−2 − 1, so that the crossing edges (Ci (t), (Ci (t))d ) and (Ci (t + 1(mod 2n−1 )), (Ci (t + 1(mod 2n−1 )))d ) are both fault-free for all 1 ≤ i ≤ δ. If such edges do not exist, then |F| ≥ |Fc | ≥ 2n−2 /δ > |F| for n ≥ 3, which leads to an immediate contradiction. Let ai = Ci (t) and bi = Ci (t + 1(mod 2n−1 )). Thus, Ci can be represented as e, Pi , ai , bi , Hi , e, 1 ≤ i ≤ δ. See Figure 18.6 for illustration. Note that (ai )d and (bi )d are adjacent in Qn1 . By Lemma 18.13, Qn1 − F1 contains δ mutually fully independent Hamiltonian paths R1 , R2 , . . . , Rδ where Ri joining (ai )d to (bi )d for every 1 ≤ i ≤ δ. Therefore, { e, Pi , ai , (ai )d , Ri , (bi )d , bi , Hi , e | 1 ≤ i ≤ δ} forms a set of δ mutually independent Hamiltonian cycles beginning from e.
18.7
FAULT-FREE MUTUALLY INDEPENDENT HAMILTONIAN CYCLES IN FAULTY STAR GRAPHS
Kueng et al. [211] study the Hamiltonicity of star graphs with edge faults. By Theorem 13.2, Sn − F remains Hamiltonian for any F ⊂ E(Sn ) with |F| ≤ n − 3. Kueng et al. prove that IHC(Sn − F) ≥ n − 1 − f for any F ⊂ E(Sn ) with f = |F| ≤ n − 3. LEMMA 18.14 Let n ≥ 5. Assume that F ⊂ E(Sn ) with |F| ≤ n − 4 and assume that I = {a1 , . . . , ar } is a subset of r elements of n for some r ∈ n. Sup{a } {a } pose that u ∈ V0 (Sn 1 ) and v ∈ V1 (Sn r ). Then there is a Hamiltonian path H = u = x1 , P1 , y1 , x2 , P2 , y2 , . . . , xr , Pr , yr = v of SnI − F joining u to v such that {a } x1 = u, yr = v, and Pi is a Hamiltonian path of Sn i − F joining xi to yi for every 1 ≤ i ≤ r. Proof: By Theorem 13.2, this statement holds for r = 1. Thus, suppose that r ≥ 2 and we set x1 = u and yr = v. By Lemma 13.7, there are (n − 2)!/2 > n − 4 edges joining
ch018.tex
11/8/2008
17: 8
Page 531
Mutually Independent Hamiltonian Cycles {a
{a }
531 }
vertices of V1 (Sn i ) to vertices of V0 (Sn i+1 ) for every i ∈ r − 1. Therefore, we {a } {a } choose (yi , xi+1 ) ∈ E ai ,ai+1 − F with yi ∈ V1 (Sn i ) and xi+1 ∈ V0 (Sn i+1 ) for i ∈ r − 1. {a } By Theorem 13.2, there is a Hamiltonian path Pi of Sn i − F joining xi to yi for every i ∈ r. As a result, u = x1 , P1 , y1 , x2 , P2 , y2 , . . . , xr , Pr , yr = v forms the desired Hamiltonian path of SnI − F joining u to v. LEMMA 18.15 Let n ≥ 5. Assume that F ⊂ E(Sn ) with |F| ≤ n − 4 and {i} |F ∩ Sn | ≤ n − 5 for every i ∈ n. Moreover, assume that I = {a1 , . . . , ar } is a subset {a } {a } of r elements of n for some 2 ≤ r ≤ n. Suppose that u ∈ V0 (Sn 1 ), w ∈ V1 (Sn 1 ), and {ar } v ∈ V0 (Sn ). Then there is a Hamiltonian path H of SnI − (F ∪ {w}) joining u to v. Proof: By Lemma 13.7, there are (n − 2)!/2 > n − 3 edges joining vertices of {a } {a } {a } V0 (Sn 1 ) to vertices of V1 (Sn 2 ). Thus, we choose a vertex x of V0 (Sn 1 ) − {u} n / F. By Theorem 13.2, there is a Hamiltonian path P with (x)1 = a2 and (x, (x) ) ∈ {a1 } of Sn − (F ∪ {w}) joining u to x. By Lemma 18.14, there is a Hamiltonian path I−{a } Q of Sn 1 − F joining (x)n to v. As a result, u, P, x, (x)n , Q, v forms the desired Hamiltonian path. LEMMA 18.16 Let i ∈ n and F ⊂ E(Sn ) with |F| ≤ n − 4 for n ≥ 4. Suppose that w and b are two adjacent vertices of Sn and u ∈ V0 (Sn ) − {w, b}. Then there is a Hamiltonian path of Sn − (F ∪ {w, b}) joining u to some vertex v of V1 (Sn ) − {w, b} with (v)1 = i. Proof: Since Sn is vertex-transitive and edge-transitive, we assume that w = e and {k} b = (e) j with some j ∈ n − {1}. We set Fk = F ∩ E(Sn ) for every k ∈ n. Then we prove this lemma by induction on n. The induction bases depend upon Lemma 13.35. Suppose that this statement holds on Sn−1 with n ≥ 5. We consider the dimensions of all edges of F ∪ {(e, (e)j )}. If there is an edge of F whose dimension, say j , is different from j, we can partition Sn over dimension j . Otherwise, every edge of F has the same dimension as j. Case 1. There is an edge of F whose dimension, say j , is different from j. Since Sn {n} is edge-transitive, we assume that j = n. Thus, (e, (e) j ) ∈ E(Sn ) and |Fk | ≤ n − 5 for every k ∈ n. {n}
Case 1.1. Suppose that u ∈ V0 (Sn ). Since |F| ≤ n − 4, we can choose an integer r ∈ n − 1 such that |F ∩ E r,n | = 0. By induction hypothesis, there is a Hamiltonian {n} {n} path P of Sn − (Fn ∪ {e, (e)j }) joining u to a vertex x ∈ V1 (Sn ) with (x)1 = r. We
n − 1−{r} ) with (v)1 = i. By Lemma 18.14, there is a Hamilchoose a vertex v in V1 (Sn
n−1 − F joining (x)n to v. Then u, P, x, (x)n , Q, v is the desired tonian path Q of Sn path. {k}
Case 1.2. Suppose that u ∈ V0 (Sn ) for some k ∈ n − 1. By Lemma 13.7, there {k} {n} are (n − 2)!/2 > n − 3 edges joining vertices of V1 (Sn ) to vertices of V0 (Sn ). We {k} {n} / F. By choose a vertex y of V1 (Sn ) such that (y)n ∈ V0 (Sn ) − {e} and (y, (y)n ) ∈
ch018.tex
11/8/2008
17: 8
Page 532
532
Graph Theory and Interconnection Networks {k}
Theorem 13.2, there is a Hamiltonian path H of Sn − Fk joining u to y. We choose an integer r of n − 1 − {k} such that |F ∩ E r,n | = 0. By induction hypoth{n} esis, there is a Hamiltonian path P of Sn − (Fn ∪ {e, (e)j }) joining (y)n to a vertex x
n−1−{k,r} {n} ) of V1 (Sn ) − {(e)j } with (x)1 = r. Besides, we choose a vertex v of V1 (Sn
n−1−{k} −F with (v)1 = i. By Lemma 18.14, there is a Hamiltonian path Q of Sn joining (x)n to v. Then u, H, y, (y)n , P, x, (x)n , Q, v forms the desired path. Case 2. Every edge of F has the same dimension j. Without loss of generality, we may assume that j = n. Thus, |Ft | = 0 for every t ∈ n. {k}
Case 2.1. Suppose that u ∈ V0 (Sn ) for some k ∈ n − 1 − {1}. By Lemma 13.7, {k} {1} there are (n − 2)!/2 > n − 4 edges joining vertices of V1 (Sn ) to vertices of V0 (Sn ). {k} / F. By TheoThus, we can choose a vertex x of V1 (Sn ) with (x)1 = 1 and (x, (x)n ) ∈ {k} rem 13.2, there is a Hamiltonian path H of Sn joining u to x. Similarly, we can choose a {1} / F. By Theorem 13.2, there is a Hamilvertex y of V0 (Sn ) with (y)1 = n and (y, (y)n ) ∈
n−1−{1,k} {1} ) tonian path P of Sn − {(e)n } joining (x)n to y. Let v be a vertex in V1 (Sn
n−{1,k} − (F ∪ {e}) with (v)1 = i. By Lemma 18.15, there is a Hamiltonian path Q of Sn joining (y)n to v. Then u, H, x, (x)n , P, y, (y)n , Q, v forms the desired path. {1}
Case 2.2. Suppose that u ∈ V0 (Sn ). By Lemma 13.7, there are (n − 2)!/2 > n − 4 {1} {n} edges joining vertices of V0 (Sn ) to vertices of V1 (Sn ). Thus, we can choose {1} / F. By Theorem 13.2, a vertex x of V0 (Sn ) − {u} with (x)1 = n and (x, (x)n ) ∈ {1} there is a Hamiltonian path H of Sn − {(e)n } joining u to x. We choose a ver n−1−{1} ) with (v)1 = i. By Lemma 18.15, there is a Hamiltonian tex v of V1 (Sn
n−{1} − (F ∪ {e}) joining (x)n to v. Then u, H, x, (x)n , Q, v forms the path Q of Sn desired path. {n}
Case 2.3. Suppose that u ∈ V0 (Sn ). Since |F| ≤ n − 4, we can choose two integers k1 and k2 in n − 1 − {1} such that ((e)k1 , ((e)k1 )n ) ∈ / F and ((e)k2 , ((e)k2 )n ) ∈ / F. t Let X = {(e, (e) ) | t ∈ n − 1 − {1, k1 , k2 }}. Obviously, |X| = n − 4. Moreover, we can {n} / F. choose a vertex x ∈ V1 (Sn ) such that (x)1 ∈ n − 1 − {1, k1 , k2 } and (x, (x)n ) ∈ Since (x)1 = k1 and (x)1 = k2 , we have x = (e)k1 and x = (e)k2 . By Theorem 13.2, {n} there is a Hamiltonian path H = u, H1 , (e)k1 , e, (e)k2 , H2 , x of Sn − X joining u to k 2 x. Let y = (e) . Since (y)1 = (x)1 , we have i = (x)1 or i = (y)1 . {k }
Case 2.3.1. Suppose that i = (x)1 . Let k3 = (x)1 . We choose a vertex v of V1 (Sn 3 ) with (v)1 = i. By Lemma 13.7, there are (n − 2)!/2 > n − 4 edges joining vertices of {1} {k } {k } V1 (Sn 1 ) to vertices of V0 (Sn ). Thus, we can choose a vertex z of V1 (Sn 1 ) with {k } / F. By Theorem 13.2, there is a Hamiltonian path T of Sn 3 (z)1 = 1 and (z, (z)n ) ∈ {k1 } k n n joining (x) to v. Similarly, there is a Hamiltonian path P of Sn joining ((e) 1 ) to z.
n − 1−{k1 ,k3 } − (F ∪ {(e)n }) By Lemma 18.15, there exists a Hamiltonian path Q of Sn n n k k n n n 1 1 joining (z) to (y) . Then u, H1 , (e) , ((e) ) , P, z, (z) , Q, (y) , y, H2 , x, (x)n , T , v forms the desired path. Case 2.3.2. Suppose that i = (y)1 . Let k3 = (y)1 . Then the proof of this case is similar to that of Case 2.3.1.
ch018.tex
11/8/2008
17: 8
Page 533
Mutually Independent Hamiltonian Cycles
533
TABLE 18.1 The Required Hamiltonian Path of S4 − {1234, 2134, 3214} a = 1 and b = 2 a = 1 and b = 3 a = 1 and b = 4 a = 2 and b = 3 a = 2 and b = 4 a = 3 and b = 4
1324, 3142, 4132, 1432, 3412, 4312, 2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431
1423, 2413, 4213, 1243, 2143, 4123, 3124, 1324, 2314, 4312, 3412, 1432, 4132, 3142, 1342, 2341, 4321, 3421, 2431, 4231, 3241
1324, 3142, 4132, 1432, 3412, 4312, 2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 2431, 4231, 3241, 2341, 4321
2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431, 1432, 4132, 3142, 1342, 4312, 3412
2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431, 1432, 3412, 4312, 1342, 3142, 4132
3124, 1324, 2314, 4312, 3412, 1432, 4132, 3142, 1342, 2341, 4321, 3421, 2431, 4231, 3241, 1243, 2143, 4123, 1423, 2413, 4213
LEMMA 18.17 Let {a, b} ⊂ n with a < b and let F ⊂ E(Sn ) with |F| ≤ n − 4 for n ≥ 4. Suppose that x ∈ V0 (Sn ), and assume that x1 and x2 are two distinct neighbors of x. Then there is a Hamiltonian path of Sn − (F ∪ {x, x1 , x2 }) between two vertices u and v in V0 (Sn ) − {x} such that (u)1 = a and (v)1 = b. Proof: Since Sn is vertex-transitive and edge-transitive, we assume that x = e, x1 = (e)i1 , and x2 = (e)i2 with some {i1 , i2 } ⊂ {2, 3, . . . , n}. We prove this lemma by induction on n. Suppose that n = 4. Thus, we have |F| = 0. Since S4 is edge-transitive, we assume that x1 = (e)2 = 2134 and x2 = (e)3 = 3214. The required paths of S4 − {1234, 2134, 3214} are listed in Table 18.1. {k} Suppose that the statement holds for Sn−1 with n ≥ 5. Let Fk = F ∩ E(Sn ) for every k ∈ n. Without loss of generality, suppose that there is at least one edge of F in dimension n. Thus, |Fk | ≤ n − 5 for every k ∈ n. Because a < b, we have a = n and b = 1. Since |F| ≤ n − 4, we can choose an integer c in n − 1 − {1, a} such that {1} |F ∩ E c,n | = 0. Moreover, we choose a vertex v of V0 (Sn ) with (v)1 = b. Case 1. Suppose that i1 = n and i2 = n. By induction hypothesis, there is a Hamilto{n} {n} nian path H of Sn − (Fn ∪ {e, (e)i1 , (e)i2 }) joining a vertex u of V0 (Sn ) with (u)1 = a {n} to a vertex y of V0 (Sn ) with (y)1 = c. By Lemma 18.14, there is a Hamiltonian path
n−1 − F joining (y)n to v. As a result, u, H, y, (y)n , R, v forms the desired R of Sn path in Sn − (F ∪ {e, (e)i1 , (e)i2 }). Case 2. Either i1 = n or i2 = n. Without loss of generality, we assume that i2 = n. We {n} choose a vertex u ∈ V0 (Sn ) with (u)1 = a. By Lemma 18.16, there exists a Hamilto{n} {n} nian path H of Sn − (Fn ∪ {e, (e)i1 }) joining a vertex u to some vertex y of V1 (Sn )
n−1 − (F ∪ {(e)n }) with (y)1 = c. By Lemma 18.15, there is a Hamiltonian path Q of Sn n n joining (y) to v. As a result, u, H, y, (y) , Q, v forms the desired path.
ch018.tex
11/8/2008
534
17: 8
Page 534
Graph Theory and Interconnection Networks
TABLE 18.2 All Hamiltonian Cycles of S4 − {(1234, 4231)}, Beginning from 1234
1234, 2134, 3124, 1324, 2314, 4312, 3412, 1432, 4132, 3142, 1342, 2341, 4321, 3421, 2431, 4231, 3241, 1243, 2143, 4123, 1423, 2413, 4213, 3214, 1234
1234, 2134, 3124, 1324, 4321, 2341, 3241, 4231, 2431, 3421, 1423, 4123, 2143, 1243, 4213, 2413, 3412, 1432, 4132, 3142, 1342, 4312, 2314, 3214, 1234
1234, 2134, 3124, 4123, 1423, 2413, 4213, 1243, 2143, 3142, 4132, 1432, 3412, 4312, 1342, 2341, 3241, 4231, 2431, 3421, 4321, 1324, 2314, 3214, 1234
1234, 2134, 4132, 1432, 2431, 4231, 3241, 1243, 2143, 3142, 1342, 2341, 4321, 3421, 1423, 4123, 3124, 1324, 2314, 4312, 3412, 2413, 4213, 3214, 1234
1234, 2134, 4132, 3142, 1342, 4312, 3412, 1432, 2431, 4231, 3241, 2341, 4321, 3421, 1423, 2413, 4213, 1243, 2143, 4123, 3124, 1324, 2314, 3214, 1234
1234, 2134, 4132, 3142, 2143, 4123, 3124, 1324, 2314, 4312, 1342, 2341, 4321, 3421, 1423, 2413, 3412, 1432, 2431, 4231, 3241, 1243, 4213, 3214, 1234
1234, 3214, 2314, 1324, 3124, 4123, 2143, 1243, 4213, 2413, 1423, 3421, 4321, 2341, 3241, 4231, 2431, 1432, 3412, 4312, 1342, 3142, 4132, 2134, 1234
1234, 3214, 2314, 1324, 4321, 3421, 2431, 4231, 3241, 2341, 1342, 4312, 3412, 1432, 4132, 3142, 2143, 1243, 4213, 2413, 1423, 4123, 3124, 2134, 1234
1234, 3214, 2314, 4312, 1342, 3142, 4132, 1432, 3412, 2413, 4213, 1243, 2143, 4123, 1423, 3421, 2431, 4231, 3241, 2341, 4321, 1324, 3124, 2134, 1234
1234, 3214, 4213, 2413, 1423, 4123, 2143, 1243, 3241, 4231, 2431, 3421, 4321, 2341, 1342, 3142, 4132, 1432, 3412, 4312, 2314, 1324, 3124, 2134, 1234
1234, 3214, 4213, 2413, 3412, 4312, 2314, 1324, 3124, 4123, 1423, 3421, 4321, 2341, 1342, 3142, 2143, 1243, 3241, 4231, 2431, 1432, 4132, 2134, 1234
1234, 3214, 4213, 1243, 3241, 4231, 2431, 1432, 3412, 2413, 1423, 3421, 4321, 2341, 1342, 4312, 2314, 1324, 3124, 4123, 2143, 3142, 4132, 2134, 1234
LEMMA 18.18
Let f ∈ E(S4 ). Then IHC(S4 − { f }) = 1.
Proof: Since S4 is vertex-transitive, we only consider the mutually independent Hamiltonian cycles of S4 − { f } beginning from 1234. Suppose that f = (1234, 4231). We list all Hamiltonian cycles of S4 − {(1234, 4231)}, beginning from 1234, in Table 18.2. By brute force, there do not exist two mutually independent Hamiltonian cycles of S4 − {(1234, 4231)} beginning from 1234. Thus, IHC(S4 − {(1234, 4231)}) ≤ 1. By Theorem 13.2, there exists a Hamiltonian cycle in S4 − {(1234, 4231)}. Hence, IHC(S4 − { f }) = 1. LEMMA 18.19 Suppose that n ≥ 5 and F ⊂ E(Sn ) with |F| = n − 3. Let u ∈ V (Sn ). Then there exist two mutually independent Hamiltonian cycles of Sn − F beginning from u. Proof: Since Sn is vertex-transitive and edge-transitive, we assume that u = e and {k} also that F contains at least one edge in dimension n. Let Fk = F ∩ E(Sn ) for every k ∈ n. As a result, |Fk | ≤ n − 4 for every k ∈ n.
ch018.tex
11/8/2008
17: 8
Page 535
Mutually Independent Hamiltonian Cycles
Case 1.
535
Suppose that (e, (e)n ) ∈ / F. Let B = (bi, j ) be the 2 × n matrix with
bi, j
⎧ j ⎪ ⎪ ⎪ ⎪ ⎨n = j+1 ⎪ ⎪ 2 ⎪ ⎪ ⎩ 1
if if if if if
i=1 i = 2 and j = 1 i = 2 and 2 ≤ j ≤ n − 2 i = 2 and j = n − 1 i = 2 and j = n
" {b1,j } n − F joining (e)n S By Lemma 18.14, there is a Hamiltonian path P of n j=1 " {b2,j } n to e. Similarly, there is a Hamiltonian path H of − F joining e to (e)n . j=1 Sn n n Then we set C1 = e, (e) , P, e and C2 = e, H, (e) , e. Obviously, {C1 , C2 } forms a set of two mutually independent Hamiltonian cycles of Sn − F beginning from e. See Figure 18.7a for illustration. Case 2. Suppose that (e, (e)n ) ∈ F and |Fn | = n − 4. Obviously, |Fk | = 0 for every k ∈ n − 1. By Theorem 13.2, there is a Hamiltonian cycle H = e, R, q, p, e of {n} / F and (q, (q)n ) ∈ / F. By Lemma 13.8, Sn − Fn . Accordingly, we have (p, (p)n ) ∈ (p)1 = (q)1 . We set (p)1 = in−1 and (q)1 = i1 . Let i2 i3 . . . in−2 be an arbitrary permutation of n − 1 − {i1 , in−1 }. {i } For 1 ≤ k ≤ n − 2, let xk be a vertex of V0 (Sn k ) such that (xk )1 = ik+1 and {i } n / F. By Theorem 13.2, there is a Hamiltonian path P1 of Sn 1 joining (xk , (xk ) ) ∈ {i } (q)n to x1 . Similarly, there is a Hamiltonian path Pk of Sn k joining (xk−1 )n to xk for {i } 2 ≤ k ≤ n − 2 and there is a Hamiltonian path Pn−1 of Sn n−1 joining (xn−2 )n to (p)n . n n Then we set C1 = e, R, q, (q) , P1 , x1 , (x1 ) , P2 , x2 , (x2 )n , . . . , xn−2 , (xn−2 )n , Pn−1 , (p)n , p, e. {i } Obviously, we can choose a vertex yn−1 of V1 (Sn n−1 ) such that (yn−1 )1 = i2 {i } and (yn−1 , (yn−1 )n ) ∈ / F. For 2 ≤ k ≤ n − 3, |{u ∈ V1 (Sn k )|(u)1 = ik+1 and d(u, {i } (xk−1 )n ) = 2}| = n − 3 < (n − 2)!/2 if n ≥ 5. Thus, we choose a vertex yk of V1 (Sn k ) n n such that d(yk , (xk−1 ) ) > 2, (yk )1 = ik+1 , and (yk , (yk ) ) ∈ / F for 2 ≤ k ≤ n − 3. Since {i } |{u ∈ V1 (Sn n−2 )|(u)1 = i1 and d(u, (xn−3 )n ) = 2}| = n − 3 < (n − 2)!/2 if n ≥ 5, we {i } choose a vertex yn−2 of V1 (Sn n−2 ) such that d(yn−2 , (xn−3 )n ) > 2, (yn−2 )1 = i1 , and (yn−2 , (yn−2 )n ) ∈ / F. By Theorem 13.2, there exists a Hamiltonian path Q1 {i1 } {i } of Sn joining (yn−2 )n to (q)n . Again, there is a Hamiltonian path Q2 of Sn 2 {i } joining (yn−1 )n to y2 , there is a Hamiltonian path Qn−1 of Sn n−1 joining (p)n {ik } to yn−1 , and there is a Hamiltonian path Qk of Sn joining (yk−1 )n to yk for 3 ≤ k ≤ n − 2. Then we set C2 = e, p, (p)n , Qn−1 , yn−1 , (yn−1 )n , Q2 , y2 , (y2 )n , Q3 , y3 , (y3 )n , . . . , (yn−2 )n , Q1 , (q)n , q, R−1 , e. In summary, {C1 , C2 } forms a set of two mutually independent Hamiltonian cycles of Sn − F beginning from e. Figure 18.7b illustrates C1 and C2 in S5 . Case 3. Suppose that (e, (e)n ) ∈ F and |Fn | ≤ n − 5. Since |F| = n − 3, there must exist an integer in−1 of n − 1 − {1} such that |F ∩ E in−1 ,n | = 0. Assume that
536
11/8/2008 17: 8
FIGURE 18.7 The two mutually independent Hamiltonian cycles in S5 − F for Lemma 18.19.
ch018.tex Page 536
Graph Theory and Interconnection Networks
ch018.tex
11/8/2008
17: 8
Page 537
Mutually Independent Hamiltonian Cycles
537
i1 and i2 are two integers of n − 1 − {in−1 } such that |F ∩ E i1 ,i2 | = max{|F ∩ E s,t ||s, t ∈ n − 1 − {in−1 }}. Moreover, let i3 i4 . . . in−2 be an arbitrary permutation of n − 1 − {i1 , i2 , in−1 }. Since (e, (e)n ) ∈ F, we have |F ∩ E i1 ,i2 | ≤ n − 4. Thus, |F ∩ E in−2 ,i1 | ≤ n − 5 and |F ∩ E ik ,ik+1 | ≤ n − 5 for 2 ≤ k ≤ n − 3. {n} By Lemma 13.7, there are (n − 2)!/2 > n − 3 edges joining vertices of V0 (Sn ) {n} {i1 } to vertices of V1 (Sn ). Thus, we can choose a vertex w ∈ V0 (Sn ) − {e} such that (w)1 = i1 and (w, (w)n ) ∈ / F. By Theorem 13.2, there exists a Hamiltonian path {n} R of Sn − (Fn ∪ {(e)in−1 }) joining e to w. For 1 ≤ k ≤ n − 2, let xk be a ver{i } / F. By Theorem 13.2, there tex of V0 (Sn k ) such that (xk )1 = ik+1 and (xk , (xk )n ) ∈ {i } exists a Hamiltonian path P1 of Sn 1 − Fi1 joining (w)n to x1 . Similarly, there is {i } a Hamiltonian path Pk of Sn k − Fik joining (xk−1 )n to xk for 2 ≤ k ≤ n − 2 and {i } there is a Hamiltonian path Pn−1 of Sn n−1 − Fin−1 joining (xn−2 )n to ((e)in−1 )n . Then n we set C1 = e, R, w, (w) , P1 , x1 , (x1 )n , P2 , x2 , (x2 )n , . . . , (xn−2 )n , Pn−1 , ((e)in−1 )n , (e)in−1 , e. {i } Obviously, we can choose a vertex yn−1 of V1 (Sn n−1 ) such that {i } / F. For 2 ≤ k ≤ n − 3, |{u ∈ V1 (Sn k )|(u)1 = ik+1 (yn−1 )1 = i2 and (yn−1 , (yn−1 )n ) ∈ and d(u, (xk−1 )n ) = 2}| = n − 3. By Lemma 13.7, there are (n − 2)!/2 edges {i } {i } joining vertices of V1 (Sn k ) to vertices of V0 (Sn k+1 ). We emphasize that (n − 2)!/2 > (n − 3) + (n − 5) = 2n − 8 if n ≥ 5. Thus, we choose a vertex yk {i } of V1 (Sn k ) such that d(yk , (xk−1 )n ) > 2, (yk )1 = ik+1 , and (yk , (yk )n ) ∈ / F for {in−2 } n 2 ≤ k ≤ n − 3. Since (n − 2)!/2 > |{u ∈ V1 (Sn )|(u)1 = i1 and d(u, (xn−3 ) ) = 2}| + {i } (n − 5) = (n − 3) + (n − 5) = 2n − 8 if n ≥ 5, we choose a vertex yn−2 of V1 (Sn n−2 ) n n such that d(yn−2 , (xn−3 ) ) > 2, (yn−2 )1 = i1 , and (yn−2 , (yn−2 ) ) ∈ / F. Again, there {i } exists a Hamiltonian path Q1 of Sn 1 − Fi1 joining (yn−2 )n to (w)n . Again, there is a {i } Hamiltonian path Q2 of Sn 2 − Fi2 joining (yn−1 )n to y2 , there is a Hamiltonian path {i } Qn−1 of Sn n−1 − Fin−1 joining ((e)in−1 )n to yn−1 , and there is a Hamiltonian path Qk {ik } of Sn − Fik joining (yk−1 )n to yk for 3 ≤ k ≤ n − 2. We set C2 = e, (e)in−1 , ((e)in−1 )n , Qn−1 , yn−1 , (yn−1 )n , Q2 , y2 , (y2 )n , Q3 , y3 , (y3 )n , . . . , (yn−2 )n , Q1 , (w)n , w, R−1 , e. As a result, {C1 , C2 } forms a set of two mutually independent Hamiltonian cycles of Sn − F beginning from e. Figure 18.7c illustrates C1 and C2 in S5 . LEMMA 18.20 Let f be any integer of n − 4 with n ≥ 5. Suppose that F ⊂ E(Sn ) with |F| = f . Let u ∈ V (Sn ). Then there exist (n − 1 − f ) mutually independent Hamiltonian cycles of Sn − F beginning from u. Proof: Since Sn is vertex-transitive and edge-transitive, we assume that u = e and {k} also that F contains at least one edge in dimension n. Let Fk = F ∩ E(Sn ) for every 1,n k ∈ n. Thus, |Fk | ≤ n − 5 for every k ∈ n. Moreover, let A1 = E − {(e, (e)n )} and let Ai = E i,n ∪ {(e, (e)i )} for 2 ≤ i ≤ n − 1. Case 1. Suppose that (e, (e)n ) ∈ F. We emphasize that there are at least n − 1 − f elements of {|F ∩ A2 |, |F ∩ A3 |, . . . , |F ∩ An−1 |} equal to 0. Without loss of generality, we assume that |F ∩ (∪n−1 i=f +1 Ai )| = 0. Thus, at least one of {|F ∩ A1 |, . . . , |F ∩ Af |} equals to 0.
ch018.tex
11/8/2008
17: 8
Page 538
538
Graph Theory and Interconnection Networks
Case 1.1. Suppose that |F ∩ A1 | = 0. Let B = (bi, j ) be the (n − 1 − f ) × n matrix with & f +i+j if f + i + j ≤ n bi, j = f + i + j − n otherwise Note that bi,n−f −i = n for every 1 ≤ i ≤ n − 1 − f . Then we construct (n − 1 − f ) mutually independent Hamiltonian cycles {C1 , C2 , . . . , Cn−1−f } of Sn − F beginning from e as follows. Let i ∈ n − 2 − f . We set ti = n − f − i. By Lemma 18.17, there is a Hamilto{bi,t } nian path Qi of Sn i − (Fbi,ti ∪ {e, (e)bi,1 , (e)bi,n }) joining two vertices xi and yi in {bi,t }
V0 (Sn i ) − {e} such that (xi )1 = bi,ti −1 and (yi )1 = bi,ti +1 . By Lemma 18.14, there is i −1 {bi, j } a Hamiltonian path Pi of (∪tj=1 Sn ) − F joining ((e)bi,1 )n to (xi )n . Similarly, there {b }
is a Hamiltonian path Ri of (∪nj=ti +1 Sn i, j ) − F joining (yi )n to ((e)bi,n )n . Then we set Ci = e, (e)bi,1 , ((e)bi,1 )n , Pi , (xi )n , xi , Qi , yi , (yi )n , Ri , ((e)bi,n )n , (e)bi,n , e. {b } By Lemma 18.16, there is a Hamiltonian path T of Sn n−1−f ,1 − (Fbn−1−f ,n ∪ {bn−1−f ,1 }
{e, (e)bn−1−f ,n }) joining (e)b1,n to a vertex z of V0 (Sn
) − {e} with (z)1 = bn−1−f ,2 . } {b n By Lemma 18.14, there is a Hamiltonian path W of (∪j=2 Sn n−1−f , j ) − F joining (z)n to ((e)bn−1−f ,n )n . Then we set Cn−1−f = e, (e)b1,n , T , z, (z)n , W , ((e)bn−1−f ,n )n , (e)bn−1−f ,n , e.
As a result, {C1 , . . . , Cn−2−f , Cn−1−f } forms a set of (n − 1 − f ) mutually independent Hamiltonian cycles of Sn − F beginning from e. Figure 18.8 illustrates {C1 , C2 , C3 , C4 } in S6 − F with |F| = f = 1. Case 1.2. Suppose that |F ∩ A1 | > 0. We emphasize that f ≥ 2 in this subcase. Thus, at least one of {|F ∩ A2 |, . . . , |F ∩ Af |} equals to 0. Without loss of generality, we assume that |F ∩ A2 | = 0. Let B = (bi, j ) be the (n − 1 − f ) × n matrix with
bi, j
⎧ f +i+j ⎪ ⎪ ⎨ 2 = 1 ⎪ ⎪ ⎩ f +i+j−n
if f + i + j ≤ n if f + i + j = n + 1 if f + i + j = n + 2 otherwise
Then we build (n − 1 − f ) mutually independent Hamiltonian cycles {C1 , C2 , . . . , Cn−1−f } of Sn − F beginning from e in the same manner as that of Case 1.1. Case 2. Suppose that (e, (e)n ) ∈ / F. We emphasize that there are at least n − 2 − f elements of {|F ∩ A2 |, |F ∩ A3 | . . . , |F ∩ An−1 |} equaling to 0. Without loss of generality, we assume that |F ∩ (∪n−1 i=f +2 Ai )| = 0. Thus, at least one of {|F ∩ A1 |, . . . , |F ∩ Af +1 |} is 0. Case 2.1. Suppose that |F ∩ A1 | = 0. with ⎡ 1 B5 = ⎣4 5
Let Bn = (bi, j ) be the (n − 1 − f ) × n matrix 2 5 4
3 1 2
4 2 3
⎤ 5 3⎦ 1
17: 8
Mutually independent Hamiltonian cycles in S6 − F with |F| = 1 for Case 1.1 of Lemma 18.20.
11/8/2008
FIGURE 18.8
ch018.tex Page 539
Mutually Independent Hamiltonian Cycles 539
ch018.tex
11/8/2008
17: 8
Page 540
540
Graph Theory and Interconnection Networks
and for n ≥ 6,
bi, j
⎧ j ⎪ ⎪ ⎪ ⎪ f +i+j ⎪ ⎪ ⎪ ⎪ ⎪ f +i+j−n ⎪ ⎪ ⎪ ⎪ ⎪ ⎨n = 3 ⎪ ⎪ ⎪2 ⎪ ⎪ ⎪ ⎪ ⎪ n−1 ⎪ ⎪ ⎪ ⎪ j−1 ⎪ ⎪ ⎩ 1
if if if if if if if if if
i=1 2 ≤ i ≤ n − 2 − f and f + i + j ≤ n 2 ≤ i ≤ n − 2 − f and f + i + j > n i = n − 1 − f and j = 1 i = n − 1 − f and j = 2 i = n − 1 − f and j = 3 i = n − 1 − f and j = 4 i = n − 1 − f and 5 ≤ j ≤ n − 1 i = n − 1 − f and j = n
Then we build (n − 1 − f ) mutually independent Hamiltonian cycles {C1 , C2 , . . . , Cn−1−f } of Sn − F beginning from e as follows. {b } We choose a vertex v of V1 (Sn 1,n ) − {(e)bn−2−f ,1 } with (v)1 = b1,n−1 . By Theo{b } rem 13.2, there is a Hamiltonian path W of Sn 1,n − (Fb1,n ∪ {e}) joining v to (e)bn−2−f ,1 . {b }
1,j By Lemma 18.14, there is a Hamiltonian path D of (∪n−1 ) − F joining (e)n to j=1 Sn (v)n . We set C1 = e, (e)n , D, (v)n , v, W , (e)bn−2−f ,1 , e. Let i ∈ n − 2 − f − {1}. We set ti = n − f − i. By Lemma 18.17, there is a Hamil{bi,t } tonian path Qi of Sn i − (Fbi,ti ∪ {e, (e)bi,1 , (e)bi,n }) joining two vertices xi and yi in
{bi,t }
V0 (Sn i ) − {e} such that (xi )1 = bi,ti −1 and (yi )1 = bi,ti +1 . By Lemma 18.14, there is i −1 {bi, j } a Hamiltonian path Pi of ( ∪tj=1 Sn ) − F joining ((e)bi,1 )n to (xi )n . Similarly, there {b }
is a Hamiltonian path Ri of ( ∪nj=ti +1 Sn i, j ) − F joining (yi )n to ((e)bi,n )n . Then we set Ci = e, (e)bi,1 , ((e)bi,1 )n , Pi , (xi )n , xi , Qi , yi , (yi )n , Ri , ((e)bi,n )n , (e)bi,n , e. By Lemma 13.7, there are (n − 2)!/2 > n − 3 edges joining vertices of {b } {b } V0 (Sn n−1−f ,k ) to vertices of V1 (Sn n−1−f ,k−1 ) for 3 ≤ k ≤ n − 1. Thus, we choose {bn−1−f ,k } ) such that (zk )1 = bn−1−f ,k−1 , (zk , (zk )n ) ∈ / F, and a vertex zk of V0 (Sn zk = C1 ((k − 1)(n − 1)! + 1). By Lemma 18.15, there is a Hamiltonian path T {b } of (∪2j=1 Sn n−1−f , j ) − (F ∪ {e}) joining (e)b2,n to (z3 )n . Again, there is a Hamilto{bn−1−f ,k }
nian path Hk of Sn
− Fbn−1−f ,k joining zk to (zk+1 )n for 3 ≤ k ≤ n − 2. By {b
}
Lemma 18.14, there is a Hamiltonian path Hn−1 of (∪nj=n−1 Sn n−1−f , j ) − F joining zn−1 to (e)n . Then we set Cn−1−f = e, (e)b2,n , T , (z3 )n , z3 , H3 , (z4 )n , . . . , zn−2 , Hn−2 , (zn−1 )n , zn−1 , Hn−1 , (e)n , e. Consequently, {C1 , C2 , . . . , Cn−2−f , Cn−1−f } forms a set of (n − 1 − f ) mutually independent Hamiltonian cycles of Sn − F beginning from e. Figure 18.9a illustrates {C1 , C2 , C3 , C4 } in S6 − F with |F| = f = 1. Case 2.2. Suppose that |F ∩ A1 | > 0. Thus, at least one of {|F ∩ A2 |, . . . , |F ∩ Af +1 |} equals to 0. Without loss of generality, we assume that |F ∩ A2 | = 0. Let Bn = (bi, j )
ch018.tex
11/8/2008
17: 8
Page 541
Mutually Independent Hamiltonian Cycles
541
be the (n − 1 − f ) × n matrix with
bi, j
⎧ n ⎪ ⎪ ⎪ ⎪ j+1 ⎪ ⎪ ⎪ ⎪ ⎪ 2 ⎪ ⎪ ⎪ ⎪ ⎪ ⎨1 = f +i+j ⎪ ⎪ ⎪2 ⎪ ⎪ ⎪ ⎪ ⎪ 1 ⎪ ⎪ ⎪ ⎪ f +i+j−n ⎪ ⎪ ⎩ j
if if if if if if if if if
i = 1 and j = 1 i = 1 and 2 ≤ j ≤ n − 2 i = 1 and j = n − 1 i = 1 and j = n 2 ≤ i ≤ n − 2 − f and f + i + j 2 ≤ i ≤ n − 2 − f and f + i + j 2 ≤ i ≤ n − 2 − f and f + i + j 2 ≤ i ≤ n − 2 − f and f + i + j i =n−1−f
≤n =n+1 =n+2 ≥n+3
By Lemma 13.7, there are (n − 2)!/2 > n − 3 edges joining vertices of {b } {b } {b } V0 (Sn 1,2 ) to vertices of V1 (Sn 1,1 ). Thus, we choose a vertex z of V0 (Sn 1,2 ) n n b such that (z)1 = b1,1 , (z, (z) ) ∈ / F, and (z) = (e) 2,n . Again, there is a Hamil{b1,1 } − (Fb1,1 ∪ {e}) joining (e)b2,n to (z)n . By Lemma 18.14, tonian path T of Sn {b }
there is a Hamiltonian path H of (∪nj=2 Sn 1,j ) − F joining z to (e)n . Then we set C1 = e, (e)b2,n , T , (z)n , z, H, (e)n , e. Let i ∈ n − 2 − f − {1}. We set ti = n − f − i. By Lemma 18.17, there is a Hamil{bi,t } tonian path Qi of Sn i − (Fbi,ti ∪ {e, (e)bi,1 , (e)bi,n }) joining two vertices xi and yi in {bi,t }
V0 (Sn i ) − {e} such that (xi )1 = bi,ti −1 and (yi )1 = bi,ti +1 . By Lemma 18.14, there is i −1 {bi, j } a Hamiltonian path Pi of (∪tj=1 Sn ) − F joining ((e)bi,1 )n to (xi )n . Similarly, there {b }
is a Hamiltonian path Ri of (∪nj=ti +1 Sn i, j ) − F joining (yi )n to ((e)bi,n )n . Then we set Ci = e, (e)bi,1 , ((e)bi,1 )n , Pi , (xi )n , xi , Qi , yi , (yi )n , Ri , ((e)bi,n )n , (e)bi,n , e. By Lemma 13.7, there are (n − 2)!/2 > n − 3 edges joining vertices of {b } {b } V0 (Sn n−1−f ,2 ) to vertices of V1 (Sn n−1−f ,3 ). Thus, we choose a vertex w of {bn−1−f ,2 } ) such that (w)1 = bn−1−f ,3 , (w, (w)n ) ∈ / F, and d(w, (yn−2−f )n ) > 1. V0 (Sn {b
}
Moreover, we choose a vertex v of V1 (Sn n−1−f ,n ) such that (v)1 = bn−1−f ,n−1 and (v, (v)n ) ∈ / F. By Lemma 18.14, there is a Hamiltonian path D1 of {bn−1−f , j } 2 ) − F joining (e)n to w. Similarly, there is a Hamiltonian path D2 (∪j=1 Sn {bn−1−f , j }
of (∪n−1 j=3 Sn
) − F joining (w)n to (v)n . By Theorem 15.2, there is a Hamil{b
}
tonian path W of Sn n−1−f ,n − (Fbn−1−f ,n ∪ {e}) joining v to (e)bn−2−f ,1 . Then we set Cn−1−f = e, (e)n , D1 , w, (w)n , D2 , (v)n , v, W , (e)bn−2−f ,1 , e. Hence, {C1 , C2 , . . . , Cn−2−f , Cn−1−f } forms a set of (n − 1 − f ) mutually independent Hamiltonian cycles of Sn − F beginning from e. Figure 18.9b illustrates {C1 , C2 , C3 , C4 } in S6 − F with |F| = f = 1. According to Lemmas 18.18 through 18.20, and the result in Ref. 211, we summarize the main result as follows.
17: 8
Mutually independent Hamiltonian cycles in S6 − F with |F| = 1 for Case 2 of Lemma 18.20.
542
11/8/2008
FIGURE 18.9
ch018.tex Page 542
Graph Theory and Interconnection Networks
ch018.tex
11/8/2008
17: 8
Page 543
Mutually Independent Hamiltonian Cycles
543
THEOREM 18.9 Let F ⊂ E(Sn ) with |F| ≤ n − 3 for n ≥ 3 and let u ∈ V (Sn ). Then there exist (n − 2 − |F|) mutually independent Hamiltonian cycles of Sn − F beginning from u if n ∈ {3, 4} and also that there exist (n − 1 − |F|) mutually independent Hamiltonian cycles of Sn − F beginning from u if n ≥ 5. We believe that our result can be further refined. We conjecture that IHC(Sn − F) = δ(Sn − F) where δ(Sn − F) denotes the minimum degree of Sn − F.
18.8
ORTHOGONALITY FOR SETS OF MUTUALLY INDEPENDENT HAMILTONIAN CYCLES
The concept of mutually independent Hamiltonian cycles can be viewed as a generalization of Latin rectangles. Perhaps one of the most interesting topics related to the Latin square is the orthogonal Latin square. Two Latin squares of order n are orthogonal if the n-squared pairs formed by juxtaposing the two arrays are all distinct. Similarly, two Latin rectangles of order n × m are orthogonal if the n × m pairs formed by juxtaposing the two arrays are all distinct. With this in mind, let G be a Hamiltonian graph and C1 and C2 be two sets of mutually independent Hamiltonian cycles of G from a given vertex x. We say that C1 and C2 are orthogonal if their corresponding Latin rectangles are orthogonal. For example, we know that IHC(P4 ) = 3. The following Latin rectangle represents three mutually independent Hamiltonian cycles beginning at 1234: 2134,4312,1342,2431,3421,1243,4213,3124,1324,4231,3241,1423,2413,3142,4132,2314,3214,4123,2143,3412,1432,2341,4321 3214,2314,4132,1432,3412,4312,1342,3142,2413,4213,1243,2143,4123,1423,3241,2341,4321,3421,2431,4231,1324,3124,2134 4321,2341,1432,3412,2143,4123,1423,3241,4231,1324,3124,2134,4312,1342,2431,3421,1243,4213,2413,3142,4132,2314,3214
Yet the following Latin rectangle also represents three mutually independent Hamiltonian cycles beginning at 1234: 2134,3124,4213,1243,2143,4123,1423,2413,3142,4132,1432,3412,4312,1342,2431,3421,4321,2341,3241,4231,1324,2314,3214 3214,2314,4132,3142,2413,4213,1243,3421,2431,1342,4312,2134,3124,1324,4231,3241,1423,4123,2143,3412,1432,2341,4321 4321,3421,1243,2143,3412,4312,1342,2431,4231,1324,2314,3214,4123,1423,3241,2341,1432,4132,3142,2413,4213,3124,2134
We can confirm that these two Latin rectangles are orthogonal. Thus, we have two sets of three mutually independent Hamiltonian cycles that are orthogonal. With this example in mind, we can consider the following problem. Let G be any Hamiltonian graph. We can define MOMH(G) as the largest integer k such that there exist k sets of mutually independent Hamiltonian cycles of G beginning from any vertex x such that each set contains exactly IHC(G) Hamiltonian cycles and any two different sets are orthogonal. It would be interesting to study the value of MOMH(G) for some Hamiltonian graph G. Recently, people have become interested in a mathematical puzzle called Sudoku [341]. Sudoku can be viewed as a 9 × 9 Latin square with some constraints. There are several Sudoku variations that are presented. Mutually independent Hamiltonian cycles can also be considered a variation of Sudoku.
ch018.tex
11/8/2008
17: 8
Page 544
ch019.tex
12/8/2008
19 19.1
11: 10
Page 545
Mutually Independent Hamiltonian Paths
INTRODUCTION
In Chapter 18, we discussed the mutually independent hamiltonicity of graph G. Similarly, we can discuss the mutually independent Hamiltonian connectivity of graph G. A graph is k mutually independent Hamiltonian connected if there exist k mutually independent Hamiltonian paths between any two distinct vertices. Moreover, the mutually independent Hamiltonian connectivity of a graph G, IHP(G), is the maximum integer k such that G is k mutually independent Hamiltonian connected. THEOREM 19.1 (1) IHP(Kn ) = 1 if n ∈ {1, 2} and IHP(Kn ) = n − 2 if n ≥ 3. (2) IHP(G) ≤ δ(G) − 1. (3) Suppose that r is a positive integer. Then IHP(G) ≥ r for any graph G such that degG (x) + degG (y) ≥ n + r for any two distinct vertices x and y. Proof: Statement (1) follows from Theorem 9.20; let u and v be two adjacent vertices in G such that deg (u) = δ(G). Obviously, there are at most deg (u) − 1 mutually independent Hamiltonian paths joining u to v. Hence, Statement (2) follows. By Corollary 9.1, we obtain Statement (3). The theorem is proved. Obviously, the concept of mutually independent Hamiltonian connectivity is not suitable for bipartite graphs. For this reason, we say that a bipartite graph is k mutually independent Hamiltonian laceable if there exist k mutually independent Hamiltonian paths between any two vertices from distinct partite sets. Moreover, the mutually independent Hamiltonian laceability of a bipartite graph G, IHPL (G), is the maximum integer k such that G is k mutually independent Hamiltonian laceable. Let Kn,n be the complete bipartite graph with n vertices in each partite set. It can be confirmed that IHPL (Kn,n ) = 1 if n = 1 and IHPL (Kn,n ) = n − 1 if n ≥ 2. Again, we have IHPL (G) ≤ δ(G) − 1 for any bipartite graph with at least three vertices.
19.2
MUTUALLY INDEPENDENT HAMILTONIAN LACEABILITY FOR HYPERCUBES
Hypercubes are one of the most popular interconnection networks. In Ref. 290, Sun et al. study the mutually independent Hamiltonian laceability for hypercubes. We need the following lemmas. 545
ch019.tex
12/8/2008
11: 10
546
Page 546
Graph Theory and Interconnection Networks
LEMMA 19.1 Suppose that P3 = x1 , x2 , x3 is a path of Q4 joining two white nodes x1 and x3 . There exists a Hamiltonian path of Q4 − {x1 , x2 , x3 } between any two different black nodes u and v. Proof: By the symmetric property of Q4 , we may assume that P3 = 0000, 1000, 1100. Case 1.
u, v ∈ Q40 . Thus, u, v ∈ {1110, 0100, 0010}. Hence,
1110, 1010, 0010, 0110, 0111, 1111, 1011, 0011, 0001, 1001, 1101, 0101, 0100
1110, 0110, 0100, 0101, 1101, 1111, 0111, 0011, 0001, 1001, 1011, 1010, 0010
0100, 0110, 1110, 1010, 1011, 1111, 1101, 1001, 0001, 0101, 0111, 0011, 0010
form the desired paths. Case 2.
u ∈ Q40 and v ∈ Q41 . Then u ∈ {1110, 0010, 0100}.
Suppose that u ∈ {1110, 0010}. Set r = 0100. Again, we set P = u, 1010, 0010, 0110, r if u = 1110 and P = u, 1010, 1110, 0110, r if u = 0010. By Theorem 13.1, there exists a Hamiltonian path R of Qn1 between r4 and v. Obviously, u, P, r, r4 , R, v forms a Hamiltonian path of Q4 − {x1 , x2 , x3 }. Suppose that u = 0100. We set r = 0010 and P = u, 0110, 1110, 1010, r. By Theorem 13.1, there exists a Hamiltonian path S of Qn1 between r4 and v. Obviously,
u, P, r, r4 , S, v forms a Hamiltonian path of Q4 − {x1 , x2 , x3 }. Case 3. v are:
u, v ∈ Q41 . The corresponding Hamiltonian paths of Q4 − P3 between u and 0001, 1001, 1101, 0101, 0100, 0110, 1110, 1010, 0010, 0011, 0111, 1111, 1011 0001, 1001, 1101, 0101, 0100, 0110, 1110, 1010, 0010, 0011, 1011, 1111, 0111 0001, 1001, 1011, 0011, 0111, 0101, 0100, 0110, 0010, 1010, 1110, 1111, 1101 1011, 0011, 0010, 1010, 1110, 0110, 0100, 0101, 0001, 1001, 1101, 1111, 0111 1011, 1111, 1110, 1010, 0010, 0110, 0100, 0101, 0111, 0011, 0001, 1001, 1101 0111, 0011, 0010, 1010, 1110, 0110, 0100, 0101, 0001, 1001, 1011, 1111, 1101
The lemma is proved.
LEMMA 19.2 Suppose that P3 = x1 , x2 , x3 is a path of Qn joining two white vertices x1 and x3 . There exists a Hamiltonian path of Qn − {x1 , x2 , x3 } between any two black vertices u and v for n ≥ 4. Proof: We prove this lemma by induction. The induction basis is proved by Lemma 19.1. Assume that this lemma is true for Qk with 4 ≤ k < n. By the symmetric property of Qn , we may assume that P3 ⊂ Qn0 . Case 1. u, v ∈ Qn0 . By induction, there exists a Hamiltonian path R of Qn − {x1 , x2 , x3 } joining u to v. Write R as u = y1 , y2 , . . . , y2n−1 −3 = v. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 joining un to (y2 )n . Then u = y1 , un , S, (y2 )n , y2 , y3 , . . . , y2n−1 −3 = v forms the desired path.
ch019.tex
12/8/2008
11: 10
Page 547
Mutually Independent Hamiltonian Paths
547
Case 2. u ∈ Qn0 and v ∈ Qn1 . Let y be any black vertex of Qn0 not in {x2 , u}. By induction, there exists a Hamiltonian path R of Qn0 − {x1 , x2 , x3 } from u to y. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path S of Qn1 from yn to v. Then u, R, y, yn , S, v forms the desired path. Case 3. u, v ∈ Qn1 . Since degQn1 (u) ≥ 4, there exists a neighbor r of u in Qn1 such that rn = x2 . Let t be a black vertex of Qn0 not in {x2 , rn }. By induction, there exists a Hamiltonian path S of Qn0 from rn to t. By Lemma 18.6, there exists a Hamiltonian path R of Qn1 − {u, r} from tn to v. Then u, r, rn , S, t, tn , R, v forms the desired path. In the following, we use e˜ to denote the vertex in Qn which (˜e)i = 1 for every 1 ≤ i ≤ n. LEMMA 19.3 Assume that n is even and n ≥ 4. There exists a Hamiltonian path P1 , P2 , . . . , Pn of Qn such that (1) Pi joins from e to (˜e)i and (2) Pi (k) = Pj (k) for 1 ≤ i < j ≤ n and 2 ≤ k ≤ 2n . Proof: We prove this lemma by induction. Suppose that n = 4. The required Hamiltonian paths joining e to (˜e)i in Q4 are: 0000, 0100, 0110, 0010, 0011, 0001, 0101, 0111, 1111, 1101, 1001, 1011, 1010, 1000, 1100, 1110 0000, 0001, 0101, 0100, 0110, 0111, 0011, 0010, 1010, 1000, 1100, 1110, 1111, 1101, 1001, 1011 0000, 0010, 0011, 0001, 1001, 1011, 1010, 1000, 1100, 1110, 1111, 1101, 0101, 0100, 0110, 0111 0000, 1000, 1100, 1110, 1010, 0010, 0110, 0100, 0101, 0111, 0011, 0001, 1001, 1011, 1111, 1101
Thus, we assume that the lemma is true for Qk with 4 ≤ k < n. By induction, 1 , P 2 , . . . , P n−2 of Q00 such that (1) P i there exist (n − 2) Hamiltonian paths P00 n 00 00 00 i (k) = P j (k) for 1 ≤ i < j ≤ n − 2 and joins from e to (˜e)i for 1 ≤ i ≤ n − 2 and (2) P00 00 1 , P 2 , . . . , P n−3 of 2 ≤ k ≤ 2n−2 . However, we pick any (n − 3) Hamiltonian paths P00 00 00 i i 00 i n−1 n Qn . We write P00 as e, M00 , ai , (((˜e) ) ) for 1 ≤ i ≤ n − 3. By Lemma 18.7, there 1 , P 2 , . . . , P n−3 } of Q01 such that (1) P i joins from exist (n − 3) Hamiltonian paths {P01 n 01 01 01 i (k) = P j (k) for 1 ≤ i < j ≤ n − 3 and i n−1 n to (ai ) for 1 ≤ i ≤ n − 3 and (2) P01 ((˜e) ) 01 1 , Y 2 , . . . , Y n−3 } of Q11 1 ≤ k ≤ 2n−2 . Again, there exist (n − 3) Hamiltonian paths {Y11 n 11 11 i joins from ((a )n )n−1 to (˜ i (k) = Y j (k) such that (1) Y11 e)i for 1 ≤ i ≤ n − 3 and (2) Y11 i 11 i i , b , (˜ i as ((ai )n )n−1 , P11 for 1 ≤ i < j ≤ n − 3 and 1 ≤ k ≤ 2n−2 . Write Y11 i e) for 1 ≤ i ≤ n − 3. By Lemma 18.7, there exist (n − 3) Hamiltonian paths 1 , P 2 , . . . , P n−3 } of Q10 such that (1) P i n {P10 e)i )n for n 10 10 10 joins from (bi ) to ((˜ j i (k) = P (k) for 1 ≤ i < j ≤ n − 3 and 1 ≤ k ≤ 2n−2 . Set P as 1 ≤ i ≤ n − 3 and (2) P10 i 10 i i , (a )n , ((a )n )n−1 , P i , b , (b )n , P i , ((˜ i n−1 n
e, P00 , (((˜e) ) ) , ((˜e)i )n−1 , P01 e)i )n , (˜e)i for i i i 11 i 10 1 ≤ i ≤ n − 3. Since there are 2n−2 vertices in Qn01 , we can choose an edge (y1 , z1 ) ∈ E(Qn01 ) such that (1) z1 is a white vertex not in {((˜e)i )n−1 |1 ≤ i ≤ n − 3} and (2) y1 = en . Again,
ch019.tex
12/8/2008
11: 10
Page 548
548
Graph Theory and Interconnection Networks
we can choose an edge (y2 , z2 ) ∈ E(Qn11 ) such that (1) z2 is a white vertex not in {((ai )n )n−1 |1 ≤ i ≤ n − 3} ∪ {˜e} and (2) y2 = (z1 )n−1 . Let b be any black vertex of Qn00 such that b = (((˜e)n−2 )n )n−1 . Since every hypercube is hyper Hamiltonian laceable, there exists a Hamiltonian path S01 of Qn01 − {z1 } from en to y1 . Again, there exists a Hamiltonian path S11 of Qn11 − {z2 } from (z1 )n−1 to y2 . Moreover, there exists a Hamiltonian path S00 of Qn00 − {e} from b to (((˜e)n−2 )n )n−1 . By Lemma 18.6, there exists a Hamiltonian path S10 of Qn10 − {((˜e)n−2 )n , (˜e)n } from (z2 )n to bn−1 . We set Pn−2 as e, en , S01 , y1 , z1 , (z1 )n−1 , S11 , y2 , z2 , (z2 )n , S10 , bn−1 , b, S00 , (((˜e)n−2 )n )n−1 , ((˜e)n−2 )n ), (˜e)n . i (2)|1 ≤ i ≤ n − 3}, let r Let x be the only vertex in {ei |1 ≤ i ≤ n − 2} − {P00 1 10 n−1 be any black vertex of Qn such that r1 = e , and let r2 be any black vertex of Qn00 such that r2 = x. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path R10 of Qn10 from xn−1 to r1 . Again, there exists a Hamiltonian path R01 of Qn01 from (r2 )n to ((r1 )n−1 )n . Moreover, there exists a Hamiltonian path R11 of Qn11 from (r1 )n to (˜e)n−2 . By Lemma 18.6, there exists a Hamiltonian path R00 of Qn00 − {e, x} from (r1 )n−1 to r2 . Set Pn−1 as
e, x, xn−1 , R10 , r1 , (r1 )n−1 , R00 , r2 , (r2 )n , R01 , ((r1 )n−1 )n , (r1 )n , R11 , (˜e)n−2 . Since there exist 2n−2 vertices in Qn11 , we can choose an edge (u, v) of Qn11 such that u is a white vertex, u = (en−1 )n and v = (z1 )n−1 . Let w be any white vertex of Qn10 such that w = vn and let t be any black vertex of Qn00 not in {b, wn−1 }. Since every hypercube is hyper Hamiltonian laceable, there exists a Hamiltonian path T11 of Qn11 − {v} from (en−1 )n to u. Again, there exists a Hamiltonian path T10 of Qn10 − {en−1 } from vn to w. Moreover, there exists a Hamiltonian path T00 of Qn00 − {e} from wn−1 to t. Since every hypercube is Hamiltonian laceable, there exists a Hamiltonian path T01 of Qn01 from tn to (˜e)n−1 . Set Pn as e, en−1 , (en−1 )n , T11 , u, v, vn , T10 , w, wn−1 , T00 , t, tn , T01 , (˜e)n−1 . Then {Pi |1 ≤ i ≤ n − 1} forms a set of desired paths. See Figure 19.1 for illustration.
FIGURE 19.1 Illustration of Lemma 19.3.
ch019.tex
12/8/2008
11: 10
Page 549
Mutually Independent Hamiltonian Paths
549
THEOREM 19.2 IHPL (Qn ) = 1 if n ∈ {1, 2, 3} and IHPL (Qn ) = n − 1 if n ≥ 4. Proof: By Lemma 19.9, IHPL (Qn ) = 1 if n ∈ {1, 2, 3}. Now, we want to prove that IHPL (Qn ) = n − 1 if n ≥ 4 by induction. We need to construct (n − 1) mutually independent Hamiltonian paths of Qn from any white vertex u to any black vertex v. Without loss of generality, we can assume that u = e. Suppose that n = 4. Then the Hamming weight of v, w(v), is either 1 or 3. Thus, we can assume that v = 1000 or 1110. The corresponding mutually independent Hamiltonian paths from u to v in Q4 are: v = 1000 v = 1110
0000, 0010, 0110, 0100, 1100, 1110, 1010, 1011, 0011, 0001, 0101, 0111, 1111, 1101, 1001, 1000 0000, 0100, 1100, 1110, 0110, 0010, 0011, 0001, 0101, 0111, 1111, 1101, 1001, 1011, 1010, 1000 0000, 0001, 0011, 1011, 1001, 1101, 0101, 0111, 1111, 1110, 1010, 0010, 0110, 0100, 1100, 1000 0000, 1000, 1100, 0100, 0110, 0010, 1010, 1011, 1001, 1101, 0101, 0001, 0011, 0111, 1111, 1110 0000, 0010, 1010, 1000, 1100, 1101, 1001, 0001, 0011, 1011, 1111, 0111, 0101, 0100, 0110, 1110 0000, 0001, 1001, 1011, 0011, 0111, 1111, 1101, 0101, 0100, 0110, 0010, 1010, 1000, 1100, 1110
Suppose that the theorem holds for Qk with 4 ≤ k < n. We need to construct (n − 1) mutually independent Hamiltonian paths of Qn from e to v. We have the following cases. Case 1. w(v) < n. Without loss of generality, we assume that (v)n = 0. By induction, there exist (n − 2) mutually independent Hamiltonian paths R1 , R2 , . . . , Rn−2 of Qn0 from e to v. By Lemma 18.7, there exist (n − 2) Hamiltonian paths S1 , S2 , . . . , Sn−2 of Qn1 such that (1) Si joins from (Ri (3))n to (Ri (4))n and (2) Si (k) = Sj (k) for 1 ≤ i < j ≤ n − 2 and 1 ≤ k ≤ 2n−1 . Set Pi as e, Ri (2), Ri (3), (Ri (3))n , Si , (Ri (4))n , Ri (4), Ri (5), . . . , Ri (2n−1 − 1), v for 1 ≤ i ≤ n − 2. Let X = {x|dQn1 (x, en ) = 2, x ∈ Qn1 }. Obviously, |X| = n−1 2 . We can choose r2 in X − ({en } ∪ {Si (1)|1 ≤ i ≤ n − 2}) such that path R = en , r1 , r2 of Qn1 . Since there are 2n−2 white vertices in Qn1 , we can choose a white vertex z of Qn1 not in {(Ri (4))n |1 ≤ i ≤ n − 2} ∪ {r1 , vn }. By Lemma 18.6, there exists a Hamiltonian path T0 of Qn0 − {e, v} from (r2 )n to (z)n . By Lemma 19.2, there exists a Hamiltonian path T1 of Qn1 − {en , r1 , r2 } from z to vn . Set Pn−1 as e, en , r1 , r2 , (r2 )n , T0 , (z)n , z, T1 , vn , v. Then {Pi |1 ≤ i ≤ n − 1} forms a set of desired paths. See Figure 19.2a for illustration.
e Ri (3) Ri (2) e en r1
Qn0
Qn0 {e,Ri (2),Ri (3)}
Qn1 Si
(Ri (4))n
(Ri (3))tn
v
e
~ e
(1≤ i ≤ n 2)
Ri (4)
Qn0 {e,v} T0
Ri (5)
Qn1 ~1n ~1 S1 ((e) ) (e) T1
Qn1 {e,r1,r1} T1
zn z
vn v
(r2)n
Q n0 e
S n1
Qn1 ~ n 1T n1 (e)
((e)n 1)n
(a)
FIGURE 19.2 Illustration of Theorem 19.2.
(b)
~ e
ch019.tex
12/8/2008
550
11: 10
Page 550
Graph Theory and Interconnection Networks
Case 2. w(v) = n. Since w(v) is odd, n is odd. Obviously, v = e˜ . Since Qn1 is isomorphic to Qn−1 , by Theorem 18.5, there exist (n − 1) mutually independent Hamiltonian cycles C1 , C2 , . . . , Cn−1 of Qn1 beginning at e˜ . Write Ci = ˜e, Ti , (˜e)i , e˜ for 1 ≤ i ≤ n − 1. Since Qn0 is isomorphic to Qn−1 , by Lemma 19.3, there exist (n − 1) Hamiltonian paths S1 , S2 , . . . , Sn−1 of Qn0 such that (1) Si joins from ((˜e)i )n to e and (2) Si (k) = Sj (k) for 1 ≤ i < j ≤ n − 1 and 1 ≤ k < 2n−1 . Set Pi as e, Si , ((˜e)i )n , (˜e)i , Ti , e˜ for 1 ≤ i ≤ n − 1. Obviously, {P1 , P2 , . . . , Pn−1 } forms a set of desired paths. See Figure 19.2b for illustration. The theorem is proved.
19.3
MUTUALLY INDEPENDENT HAMILTONIAN LACEABILITY FOR STAR GRAPHS
Similarly, we should study the corresponding problem for star graphs. Lin et al. [231] study the mutually independent Hamiltonian laceability for star graphs. We need the following properties for star graphs. THEOREM 19.3 Let u be any white vertex of Sn with n ≥ 4 and {a1 , a2 , . . . , an−1 } be an n − 1 subset of n. Then there exist Hamiltonian paths P1 , P2 , . . . , Pn−1 of Sn such that Pi is a path joining u to a black vertex zi with 1. zi = Pi (n!) and (zi )1 = ai for 1 ≤ i ≤ n − 1 2. |{P1 (i), P2 (i), . . . , Pn−1 (i)}| = n − 1 for 2 ≤ i ≤ n! Proof: Since Sn is vertex-transitive, we may assume that u = e. We prove that this theorem holds for S4 by exhibiting the three required Hamiltonian paths, as follows: {a1 , a2 , a3 } = {1, 2, 3} (1234)(2134)(3124)(1324)(2314)(3214)(4213)(1243)(3241)(4231)(2431)(3421)(4321)(2341)(1342) (4312)(3412)(2413)(1423)(4123)(2143)(3142)(4132)(1432) (1234)(3214)(2314)(4312)(1342)(3142)(4132)(1432)(3412)(2413)(4213)(1243)(2143)(4123)(1423) (3421)(2431)(4231)(3241)(2341)(4321)(1324)(3124)(2134) (1234)(4231)(2431)(1432)(3412)(4312)(1342)(3142)(4132)(2134)(3124)(1324)(2314)(3214)(4213) (2413)(1423)(4123)(2143)(1243)(3241)(2341)(4321)(3421) {a1 , a2 , a3 } = {1, 2, 4} (1234)(4231)(2431)(3421)(4321)(2341)(3241)(1243)(2143)(3142)(1342)(4312)(3412)(1432)(4132) (2134)(3124)(4123)(1423)(2413)(4213)(3214)(2314)(1324) (1234)(3214)(4213)(1243)(3241)(4231)(2431)(1432)(3412)(2413)(1423)(3421)(4321)(2341)(1342) (4312)(2314)(1324)(3124)(4123)(2143)(3142)(4132)(2143) (1234)(2134)(3124)(1324)(2314)(3214)(4213)(2413)(1423)(4123)(2143)(1243)(3241)(4231)(2431) (3421)(4321)(2341)(1342)(3142)(4132)(1432)(3412)(4312) {a1 , a2 , a3 } = {1, 3, 4} (1234)(4231)(3241)(1243)(4213)(3214)(2314)(4312)(1342)(2341)(4321)(3421)(2431)(1432)(3412) (2413)(1423)(4123)(2143)(3142)(4132)(2134)(3124)(1324) (1234)(3214)(4213)(2413)(1423)(3421)(2431)(4231)(3241)(1243)(2143)(4123)(3124)(2134)(4132) (1432)(3412)(4312)(2314)(1324)(4321)(2341)(1342)(3142) (1234)(2134)(4132)(1432)(3412)(2413)(4213)(3214)(2314)(4312)(1342)(3142)(2143)(1243)(3241) (2341)(4321)(1324)(3124)(4123)(1423)(3421)(2431)(4231)
ch019.tex
12/8/2008
11: 10
Page 551
Mutually Independent Hamiltonian Paths
551
{a1 , a2 , a3 } = {2, 3, 4} (1234)(3214)(4213)(1243)(3241)(4231)(2431)(1432)(3412)(2413)(1423)(3421)(4321)(2341)(1342) (4312)(2314)(1324)(3124)(4123)(2143)(3142)(4132)(2143) (1234)(4231)(2431)(1432)(3412)(4312)(1342)(3142)(4132)(2134)(3124)(1324)(2314)(3214)(4213) (2413)(1423)(4123)(2143)(1243)(3241)(2341)(4321)(3421) (1234)(2134)(3124)(1324)(2314)(3214)(4213)(2413)(1423)(4123)(2143)(1243)(3241)(4231)(2431) (3421)(4321)(2341)(1342)(3142)(4132)(1432)(3412)(4312)
Assume that the theorem holds on Sk for every 4 ≤ k < n. Without loss of generality, we suppose that a1 < a2 < · · · < an−3 < an−1 < an−2 . Obviously, ai = i + 2 for 1 ≤ i ≤ n − 3, an−2 = 2, and an−1 = n. By the induction hypothesis, there exist Hamiltonian paths H1 , H2 , . . . , Hn−2 of Snn such that Hi is a path joining e to a black vertex vi with 1. (vi )1 = (Hi ((n − 1)!))1 = i + 3 for 1 ≤ i ≤ n − 4, (vn−3 )1 = (Hn−3 ((n − 1)!))1 = 1, (vn−2 )1 = (Hn−2 ((n − 1)!))1 = 3 2. |{H1 (i), H2 (i), . . . , Hn−2 (i)}| = n − 2 for 2 ≤ i ≤ (n − 1)! For any i, j ∈ n with i = j, |{v ∈ Sni |v is a black vertex with (v)1 = j}|= (n−2)! 2 ≥ 2. We choose a black vertex zi ∈ Sni+2 with (zi )1 = ai for 1 ≤ i ≤ n − 3, a black vertex zn−2 ∈ Sn2 with (zn−2 )1 = an−2 , and a black vertex zn−1 ∈ Snn with (zn−1 )1 = an−1 . We let B be the (n − 2) × (n − 1) matrix with ⎧ i+j+2 if i ≤ n − 3 and i + j + 2 ≤ n − 1 ⎪ ⎪ ⎪ ⎨ i + j − n + 3 if i ≤ n − 3 and n − 1 < i + j + 2 bi, j = ⎪j+2 if i = n − 2 and j ≤ n − 3 ⎪ ⎪ ⎩ j−n+3 if i = n − 2 and n − 2 ≤ j ≤ n − 1 More precisely, ⎡ 4 ⎢ ⎢5 ⎢ ⎢ B = ⎢ ... ⎢ ⎢ ⎣1 3
5 6 .. . 2 4
··· ··· .. . ··· ···
n−2 n−1 .. . n−5 n−3
n−1 1 .. . n−4 n−2
1 2 .. . n−3 n−1
2 3 .. . n−2 1
⎤ 3 ⎥ 4 ⎥ ⎥ .. ⎥ . ⎥ ⎥ ⎥ n − 1⎦ 2
Obviously, bi,1 , bi,2 , . . . , bi,n−1 forms a permutation of {1, 2, . . . , n − 1} for every i with 1 ≤ i ≤ n − 2. Moreover, bi,j = bi ,j for any 1 ≤ i < i ≤ n − 2 and 1 ≤ j ≤ n − 2. In other words, B forms a rectangular Latin square with entries in {1, 2, . . . , n − 1}. Let i be any index with 1 ≤ i ≤ n − 2. By Theorem 13.9, there exists a path i i , yi n Wi = x1i , T1i , y1i , x2i , T2i , y2i , . . . , xn−1 , Tn−1 n−1 joining the white vertex (vi ) to zi b
i such that x1i = (vi )n , yn−1 = zi , and Tji is a Hamiltonian path of Sn ij joining xji to yji for every 1 ≤ j ≤ n − 1. Moreover, there exists a path W = x1n−1 , T1n−1 , y1n−1 , x2n−1 , T2n−1 , n−1 n−1 n−1 y2n−1 , . . . , xn−1 , Tn−1 , yn−1 joining the black vertex (e)n to the white vertex ((e)n−1 )n n−1 n−1 such that x1 = (e)n , yn−1 = ((e)n−1 )n , and Tin−1 is a Hamiltonian path of Sni joining
ch019.tex
12/8/2008
11: 10
Page 552
552
Graph Theory and Interconnection Networks
xin−1 to yin−1 for 1 ≤ i ≤ n − 1. Since Snn is isomorphic to Sn−1 , by Theorem 13.2, there exists a Hamiltonian path R of Snn − {e} joining the black vertex (e)n−1 to zn−1 . We set Pi = e, Hi , vi , (vi )n , Wi , zi for every 1 ≤ i ≤ n − 2 and Pn−1 = e, W , n−1 ((e) )n , (e)n−1 , R, zn−1 . Then {P1 , P2 , . . . , Pn−1 } form the desired paths. Hence, the theorem is proved.
Example 19.1 We illustrate the proof of Theorem 19.3 with n = 5 as follows. Since a1 < a2 < a4 < a3 , a1 = 3, a2 = 4, a3 = 2, and a4 = 5. By the induction hypothesis, there exist Hamiltonian paths H1 , H2 , and H3 of S55 such that Hi is a path joining e to a black vertex vi with (v1 )1 = (H1 (24))1 = 4, (v2 )1 = (H2 (24))1 = 1, (v3 )1 = (H3 (24))1 = 3 and |{H1 (i), H2 (i), H3 (i)}| = 3 for 2 ≤ i ≤ 24. We choose a black vertex z1 in S53 with (z1 )1 = a1 , a black vertex z2 in S54 with (z2 )1 = a2 , a black vertex z3 in S52 with (z3 )1 = a3 , and a black vertex z4 in S52 with (z4 )1 = a4 . We set ⎡
4
3
⎤
⎢ B=⎣1
1
2
2
3
⎥ 4⎦
3
4
1
2
By Theorem 13.9, there exists a path W1 = x11 , T41 , y11 , x21 , T11 , y21 , x31 , T21 , y31 , x41 , 1 1 T3 , y4 joining the white vertex (v1 )5 to the black vertex z1 such that x11 = (v1 )5 , b y41 = z1 , and Tj1 is a Hamiltonian path of S5 1j for every 1 ≤ j ≤ 4. Similarly, 2 2 2 2 2 2 2 there exists a path W2 = x1 , T1 , y1 , x2 , T2 , y2 , x3 , T32 , y32 , x42 , T42 , y42 joining the white vertex (v2 )5 to the black vertex z2 such that x12 = (v2 )5 , y42 = z2 , and Tj2 is a b Hamiltonian path of S5 2j for every 1 ≤ j ≤ 4. Furthermore, there exists a path 3 3 3 3 3 3 3 W3 = x1 , T3 , y1 , x2 , T4 , y2 , x3 , T13 , y33 , x43 , T23 , y43 joining the white vertex (v3 )5 to the b black vertex z3 such that x13 = (v3 )5 , y43 = z3 , and Tj3 is a Hamiltonian path of S5 3j for every 1 ≤ j ≤ 4. Moreover, there exists a path W = x14 , T14 , y14 , x24 , T24 , y24 , x34 , T34 , y34 , x44 , T44 , y44 joining the black vertex (e)5 to the white vertex ((e)4 )5 such that x14 = (e)5 , y44 = ((e)4 )5 , and Ti4 is a Hamiltonian path of S5i for 1 ≤ i ≤ 4. Since S55 is isomorphic to S4 , by Theorem 13.2, there exists a Hamiltonian path R of S55 − {e} joining the black vertex (e)4 to z4 .
Let Pi = e, Hi , vi , (vi )n , Wi , zi for every 1 ≤ i ≤ 3 and P4 = e, W , ((e)4 )5 , (e)4 , R, z4 . Thus, {P1 , P2 , P3 , P4 } form the desired paths. See Figure 19.3 for illustration. THEOREM 19.4 IHPL (S2 ) = 1, IHPL (S3 ) = 0, and IHPL (Sn ) = n − 2 if n ≥ 4. Proof: Suppose that n = 2. Since S2 is isomorphic to K1,1 , it is easy to see that IHPL (S2 ) = 1. Suppose that n = 3. Obviously, S3 is isomorphic to the cycle graph with six vertices. It is easy to see that S3 is not Hamiltonian laceable. Thus, IPHL (S3 ) = 0. Now, we assume that n ≥ 4. Since δ(Sn ) = n − 1, IHPL (Sn ) ≤ n − 2. To prove our theorem, we need to construct (n − 2) mutually independent Hamiltonian paths of Sn between any white vertex u and any black vertex v. We prove this theorem by induction.
ch019.tex
12/8/2008
11: 10
Page 553
Mutually Independent Hamiltonian Paths 4
S 55 P1
P2
e
v1
x11
S5
e
x2
e
H2
v2
T 21
y21
H3
v3
x31
(e)5
x12
x22
T 31
y31
x32
2 2
y22
x24
S5
x13
x41
y24
T13
y13
T 23
y23
S 53 T
x23
T 32
y32
x33
x34
y44
z1
x42
T 42
z2
T 43
z3
2
S5 T 33 S 54
T 34
T41
S 54
S 51
S5 T24
3
S 52
3
2
y41
y12
S 54
S5 T14
T 12
S 52
3
1
e
y11
S5
S5 P4
T 11
1
S 55
S 55 P3
S 51
S5 H1
553
y33
x43
5
S 5 {e}
x34 T 44 ((e)4)5 (e)4R z4
FIGURE 19.3 Illustration of Theorem 19.8 on S5 .
Since S4 is vertex-transitive, we assume that u = 1234. The required Hamiltonian paths of S4 are: v = (2134) (1234)(4231)(2431)(1432)(4132)(3142)(2143)(1243)(3241)(2341)(1342)(4312)(3412)(2413)(4213) (3214)(2314)(1324)(4321)(3421)(1423)(4123)(3124)(2134) (1234)(3214)(4213)(2413)(3412)(4312)(2314)(1324)(3124)(4123)(1423)(3421)(4321)(2341)(1342) (3142)(2143)(1243)(3241)(4231)(2431)(1432)(4132)(2134) v = (3214) (1234)(2134)(3124)(1324)(2314)(4312)(3412)(1432)(4132)(3142)(1342)(2341)(4321)(3421)(2431) (4231)(3241)(1243)(2143)(4123)(1423)(2413)(4213)(3214) (1234)(4231)(2431)(3421)(4321)(2341)(3241)(1243)(4213)(2413)(1423)(4123)(2143)(3142)(1342) (4312)(3412)(1432)(4132)(2134)(3124)(1324)(2314)(3214) v = (4231) (1234)(2134)(4132)(1432)(2431)(3421)(4321)(1324)(3124)(4123)(1423)(2413)(3412)(4312)(2314) (3214)(4213)(1243)(2143)(3142)(1342)(2341)(3241)(4231) (1234)(3214)(2314)(4312)(3412)(2413)(4213)(1243)(3241)(2341)(1342)(3142)(2143)(4123)(1423) (3421)(4321)(1324)(3124)(2134)(4132)(1432)(2431)(4231) v = (1432) (1234)(2134)(4132)(3142)(1342)(2341)(4321)(1324)(3124)(4123)(2143)(1243)(3241)(4231)(2431) (3421)(1423)(2413)(4213)(3214)(2314)(4312)(3412)(1432) (1234)(3214)(2314)(4312)(3412)(2413)(4213)(1243)(3241)(4231)(2431)(3421)(1423)(4123)(2143) (3142)(1342)(2341)(4321)(1324)(3124)(2134)(4132)(1432) v = (1243) (1234)(4231)(3241)(2341)(1342)(4312)(3412)(1432)(2431)(3421)(4321)(1324)(2314)(3214)(4213) (2413)(1423)(4123)(3124)(2134)(4132)(3142)(2143)(1243) (1234)(2134)(4132)(3142)(2143)(4123)(3124)(1324)(2314)(3214)(4213)(2413)(1423)(3421)(4321) (2341)(1342)(4312)(3412)(1432)(2431)(4231)(3241)(1243) v = (1324) (1234)(2134)(3124)(4123)(1423)(2413)(3412)(1432)(4132)(3142)(2143)(1243)(4213)(3214)(2314) (4312)(1342)(2341)(3241)(4231)(2431)(3421)(4321)(1324) (1234)(4231)(2431)(3421)(4321)(2341)(3241)(1243)(4213)(3214)(2314)(4312)(1342)(3142)(2143) (4123)(1423)(2413)(3412)(1432)(4132)(2134)(3124)(1324)
ch019.tex
12/8/2008
11: 10
Page 554
554
Graph Theory and Interconnection Networks
v = (2341) (1234)(2134)(4132)(3142)(1342)(4312)(2314)(3214)(4213)(1243)(2143)(4123)(3124)(1324)(4321) (3421)(1423)(2413)(3412)(1432)(2431)(4231)(3241)(2341) (1234)(3214)(4213)(1243)(3241)(4231)(2431)(3421)(1423)(2413)(3412)(1432) (4132)(2134)(3124)(4123)(2143)(3142)(1342)(4312)(2314)(1324)(4321)(2341) v = (3142) (1234)(3214)(2314)(4312)(1342)(2341)(3241)(4231)(2431)(1432)(3412)(2413)(4213)(1243)(2143) (4123)(1423)(3421)(4321)(1324)(3124)(2134)(4132)(3142) (1234)(4231)(2431)(1432)(4132)(2134)(3124)(4123)(1423)(3421)(4321)(1324)(2314)(3214)(4213) (2413)(3412)(4312)(1342)(2341)(3241)(1243)(2143)(3142) v = (4123) (1234)(4231)(2431)(3421)(1423)(2413)(4213)(3214)(2314)(1324)(4321)(2341)(3241)(1243)(2143) (3142)(1342)(4312)(3412)(1432)(4132)(2134)(3124)(4123) (1234)(3214)(2314)(1324)(3124)(2134)(4132)(3142)(1342)(4312)(3412)(1432)(2431)(4231)(3241) (2341)(4321)(3421)(1423)(2413)(4213)(1243)(2143)(4123) v = (4312) (1234)(4231)(3241)(2341)(1342)(3142)(4132)(2134)(3124)(1324)(4321)(3421)(2431)(1432)(3412) (2413)(1423)(4123)(2143)(1243)(4213)(3214)(2314)(4312) (1234)(2134)(3124)(1324)(2314)(3214)(4213)(2413)(1423)(4123)(2143)(1243)(3241)(4231)(2431) (3421)(4321)(2341)(1342)(3142)(4132)(1432)(3412)(4312) v = (2413) (1234)(2134)(3124)(4123)(1423)(3421)(2431)(4231)(3241)(1243)(2143)(3142)(4132)(1432)(3412) (4312)(1342)(2341)(4321)(1324)(2314)(3214)(4213)(2413) (1234)(4231)(3241)(1243)(4213)(3214)(2314)(4312)(1342)(2341)(4321)(1324)(3124)(2134)(4132) (3142)(2143)(4123)(1423)(3421)(2431)(1432)(3412)(2413) v = (3421) (1234)(3214)(4213)(2413)(1423)(4123)(3124)(2134)(4132)(1432)(3412)(4312)(2314)(1324)(4321) (2341)(1342)(3142)(2143)(1243)(3241)(4231)(2431)(3421) (1234)(2134)(4132)(1432)(2431)(4231)(3241)(2341)(1342)(3142)(2143)(1243)(4213)(3214)(2314) (4312)(3412)(2413)(1423)(4123)(3124)(1324)(4321)(3421)
Suppose that the theorem holds on Sk for every 4 ≤ k < n. Without loss of generality, we assume that (u)n = n and (v)n = n − 1. We let C be the (n − 2) × (n − 2) matrix with ' i+j−1 if i + j − 1 ≤ n − 2 cij = i + j − n + 1 if n − 2 < i + j − 1 More precisely, ⎡ ⎢ ⎢ C=⎢ ⎢ ⎣
1 2 .. .
2 3 .. .
3 4 .. .
⎤ ... n − 2 ... 1 ⎥ ⎥ ⎥ .. ⎥ .. . . ⎦
n−2
1
2
...
n−3
Obviously, ci,1 , ci,2 , . . . , ci,n−2 forms a permutation of {1, 2, . . . , n − 2} for every i with 1 ≤ i ≤ n − 2. Moreover, ci, j = ci , j for any 1 ≤ i < i ≤ n − 2 and 1 ≤ j ≤ n − 2. In other words, C forms a Latin square with entries in {1, 2, . . . , n − 2}. It follows from Theorem 19.8 that there exist Hamiltonian paths Q1 , Q2 , . . . , Qn−2 of Snn such that Qi is a path joining u to a black vertex si with (1)
ch019.tex
12/8/2008
11: 10
Page 555
Mutually Independent Hamiltonian Paths 5
1
S5 P1
u
P2
S5 u
Q2
S 35
s2
S 25 (s2)5 S 35
S 15
5
u
Q3
s3
( s3)
5
4
S5 W1
(s1 )
S5
3
S5 5
s1
5
P3
2
S5 Q1
555
S5 5
( t1 ) S51
W2
R1
v
R2
v
R3
v
S54 5
( t2 ) S52
W3
t1
t2 S54
( t 3 )5
t3
FIGURE 19.4 Illustration for three mutually independent Hamiltonian paths on S5 .
(si )1 = ci1 for every 1 ≤ i ≤ n − 2 and (2) |{Q1 (i), Q2 (i), . . . , Qn−2 (i)}| = n − 2 for every 2 ≤ i ≤ (n − 1)!. Again, there exist Hamiltonian paths R1 , R2 , . . . , Rn−2 of Snn−1 such that Ri is a path joining v to a white vertex ti with (1) (ti )1 = ci(n−2) for every 1 ≤ i ≤ n − 2 and (2) |{R1 (i), R2 (i), . . . , Rn−2 (i)}| = n − 2 for every 2 ≤ i ≤ (n − 1)!. For every 1 ≤ i ≤ n − 2 by Theorem 13.9, there exists a path i i , yi i , Tn−2 Wi = x1i , T1i , y1i , x2i , T2i , y2i , . . . , xn−2 n−2 joining the white vertex x1 to the i n black vertex yn−2 such that x1i = (si )n , yn−2 = (ti )n , and Tji is a Hamiltonian path of b
Sn i+j−1 joining xji to yji for every 1 ≤ j ≤ n − 1. Hence, {P1 , P2 , . . . , Pn−2 } form the desired paths. See Figure 19.4 for illustration of the case n = 5. Hence, the theorem is proved.
19.4
MUTUALLY INDEPENDENT HAMILTONIAN CONNECTIVITY FOR (n, k)-STAR GRAPHS
Here, we recall the definition of (n, k)-star graphs. Let n and k be two positive integers with n > k. We use n to denote the set {1, 2, . . . , n}. The (n, k)-star graph, Sn,k , is a graph with the node set V (Sn,k ) = {u1 u2 . . . uk |ui ∈ n and ui = uj for i = j}. Adjacency is defined as follows: a node u1 u2 . . . ui . . . uk is adjacent to (1) the node ui u2 u3 . . . ui−1 u1 ui+1 . . . uk , where 2 ≤ i ≤ k (i.e., swap ui with u1 ) and (2) the node xu2 u3 . . . uk , where x ∈ n − {ui |1 ≤ i ≤ k}. The edges of type (1) are referred to as an i-edge and the edges of type (2) are referred to as 1-edges. By definition, Sn,k is an (n − 1)-regular graph with n!/(n − k)! nodes. Moreover, it is node-transitive [60]. We use boldface to denote nodes in Sn,k . Hence u1 , u2 , . . . , um denotes a sequence of nodes in Sn,k . Let u = u1 u2 . . . uk be any node of Sn,k . We say that ui is the ith coordinate of u, denoted by (u)i , for 1 ≤ i ≤ k. By the definition of Sn,k , there is exactly one neighbor v of u such that u and v are adjacent through an i-edge with 2 ≤ i ≤ k. For this reason, we use (u)i to denote the unique i-neighbor of {i} u. Obviously, ((u)i )i = u. For 1 ≤ i ≤ n, let Sn,k denote the subgraph of Sn,k induced by those nodes u with (u)k = i. In Ref. 60, it is shown that Sn,k can be decomposed into {i} {i} n subgraphs Sn,k , 1 ≤ i ≤ n, such that each subgraph Sn,k is isomorphic to Sn−1,k−1 . {(u) }
Thus, the (n, k)-star graph can be constructed recursively. Obviously, u ∈ Sn,k k . Let
ch019.tex
12/8/2008
11: 10
556
Page 556
Graph Theory and Interconnection Networks
TABLE 19.1 The Desired Hamiltonian Paths for S4,2 − {14} of Lemma 19.4
x = 41, 21, 31, 13, 23, 43, 34, 24, 42, 32, 12 = y
x = 41, 21, 31, 13, 43, 34, 24, 42, 12, 32, 23 = y
x = 41, 21, 31, 13, 23, 43, 34, 24, 42, 12, 32 = y
x = 41, 21, 31, 13, 23, 32, 12, 42, 24, 34, 43 = y
{i = 1} {i = 2} {i = 3} {i = 4}
I to denote the subgraph of S I ⊆ n. We use Sn,k n,k induced by those nodes u with i,j
(u)k ∈ I. For 1 ≤ i ≤ n and 1 ≤ j ≤ n with i = j, we use En,k to denote the set of edges {i}
{j}
between Sn,k and Sn,k . S3,1 , S4,1 , S4,2 , and S5,2 are shown in Figure 16.15. Now, we need some properties concerning the (n, k)-star graphs.
LEMMA 19.4 Let n and k be any two integers with k ≥ 2 and n − k ≥ 2. Let u be any vertex of Sn,k and let i be any positive integer with 1 ≤ i ≤ n. Then there is a Hamiltonian path P of Sn,k − {u} joining a vertex x to a vertex y where (x)1 = (u)k and (y)1 = i. Proof: By Theorem 16.6, this statement holds for n ≥ 5. Thus, we assume that n = 4. Therefore, k = 2. Since S4,2 is vertex-transitive, we assume that u = 14. Note that (u)2 = 4. We list all of the desired x, y, and Hamiltonian paths of S4,2 − {u = 14} in Table 19.1. Thus, this statement is proved. LEMMA 19.5 Let n and k be any two integers with n ≥ 5, k ≥ 2, and n − k ≥ 2. Let u and v be any two distinct vertices of Sn,k with (u)t = (v)t for every 2 ≤ t ≤ k, and let i and j be two integers in n with i < j. Then there is a Hamiltonian path P of Sn,k − {u, v} joining a vertex x to a vertex y with (x)1 = i and (y)1 = j. Proof: Without loss of generality, we assume that (u)1 = 1, (v)1 = 2, and (u)t = (v)t = n − k + t for every 2 ≤ t ≤ k. Since i < j, i = n, and j = 1. We have the following cases. Case 1. n = 5 and k = 2. Since (u)1 = 1, (v)1 = 2, and (u)2 = (v)2 = 5, we have u = 15 and v = 25. We list all of the desired Hamiltonian paths of S5,2 − {u, v} in Table 19.2. Case 2. n = 5 and k = 3. Since (u)1 = 1, (v)1 = 2, and (u)t = (v)t = t + 2 for every 2 ≤ t ≤ 3, we have u = 145 and v = 245. Let x1 = 135, x2 = 235, x3 = 325, x4 = 425, and p0 = 345. Depending on the value i, we set x and R as x = x1 and R = 135, 315, 415, 215, 125, 425, 325, 235, 435, 345 = p0 if i = 1 x = x2 and R = 235, 325, 425, 125, 215, 415, 315, 135, 435, 345 = p0 if i = 2 x = x3 and R = 325, 425, 125, 215, 415, 315, 135, 235, 435, 345 = p0 if i = 3 and x = x4 and R = 425, 325, 125, 215, 415, 315, 135, 235, 435, 345 = p0 if i = 4
ch019.tex
12/8/2008
11: 10
Page 557
Mutually Independent Hamiltonian Paths
557
TABLE 19.2 The Desired Hamiltonian Paths for Case 1 of Lemma 19.5 {i = 1, j = 2} {i = 1, j = 3} {i = 1, j = 4} {i = 1, j = 5} {i = 2, j = 3} {i = 2, j = 4} {i = 2, j = 5} {i = 3, j = 4} {i = 3, j = 5} {i = 4, j = 5}
12, 42, 52, 32, 23, 13, 43, 53, 35, 45, 54, 34, 24, 14, 41, 31, 51, 21
12, 42, 52, 32, 23, 13, 43, 53, 35, 45, 54, 34, 24, 14, 41, 21, 51, 31
12, 52, 32, 42, 24, 34, 54, 14, 41, 21, 51, 31, 13, 23, 43, 53, 35, 45
12, 42, 52, 32, 23, 13, 43, 53, 35, 45, 54, 34, 24, 14, 41, 31, 21, 51
23, 13, 43, 53, 35, 45, 54, 34, 24, 14, 41, 31, 51, 21, 12, 42, 52, 32
23, 13, 43, 53, 35, 45, 54, 34, 24, 14, 41, 31, 51, 21, 12, 32, 52, 42
23, 13, 43, 53, 35, 45, 54, 34, 24, 14, 41, 31, 51, 21, 12, 42, 32, 52
35, 45, 54, 14, 24, 34, 43, 53, 23, 13, 31, 41, 51, 21, 12, 32, 52, 42
35, 45, 54, 14, 24, 34, 43, 53, 23, 13, 31, 41, 51, 21, 12, 32, 42, 52
45, 35, 53, 23, 13, 43, 34, 24, 54, 14, 41, 31, 51, 21, 12, 32, 42, 52
{5}
Note that R is a Hamiltonian path of S5,3 − {u, v} joining x to p0 . We set p1 = 453, {1}
1,j
p2 = 254, and p3 = 152. By Lemma 16.17, |{z|z ∈ S5,3 and (z)1 = j}| = |E5,3 | = 3 for {1}
2 ≤ j ≤ 5. We can choose a vertex p4 in S5,3 − {(p3 )3 } with (p4 )1 = j. By Theorem 16.6,
{(p ) } there is a Hamiltonian path Qt of S5,3 t 3 joining (pt−1 )3 to pt for every 1 ≤ t ≤ 4. We set y = p4 and P = x, R, p0 , (p0 )3 , Q1 , p1 , (p1 )3 , Q2 , p2 , . . . , (p3 )3 , Q4 , p4 = y. Then
P forms a desired path.
Case 3. n ≥ 6, k ≥ 2, and n − k ≥ 2. Let x and y be any two vertices of Sn,k − {u, v} with (x)1 = i and (y)1 = j. By Theorem 16.6, there is a Hamiltonian path P of Sn,k − {u, v} joining x to y. Thus, this statement is proved. We divided this section into three subsections, depending on k = 1, k = 2, and k ≥ 3. THEOREM 19.5 IHP(Sn,1 ) = n − 2 if n ≥ 3. Proof: Since IHP(G) ≤ δ(G) − 1 for every graph G with at least three vertices, IHP(Sn,1 ) ≤ n − 2 for every n ≥ 3. To prove this statement, we need to construct (n−2) mutually independent Hamiltonian paths of Sn,1 between any two distinct vertices. Let u and v be any two distinct vertices of Sn,1 . Since Sn,1 is isomorphic to complete graph Kn with order n vertices, we assume that u = n and v = n − 1. For every 1 ≤ i ≤ n − 2 and 1 ≤ j ≤ n − 2, we set zji as ' zji
=
i+j−1 i+j−n+1
if i + j ≤ n − 1 if n ≤ i + j
i We set Pi = u, z1i , z2i , . . . , zn−2 , v for every 1 ≤ i ≤ n − 2. Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,1 from u to v.
ch019.tex
12/8/2008
11: 10
Page 558
558
Graph Theory and Interconnection Networks
TABLE 19.3 All Hamiltonian Paths of S 4,2 between Vertices 12 and 14 P1 = 12, 32, 42, 24, 34, 43, 23, 13, 31, 21, 41, 14 P2 = 12, 21, 41, 31, 13, 43, 23, 32, 42, 24, 34, 14
THEOREM 19.6 IHP(S4,2 ) = 1. Proof: By Theorem 16.6, S4,2 is Hamiltonian-connected. Thus, IHP(S4,2 ) ≥ 1. Using depth-first search, we list all Hamiltonian paths of S4,2 from 12 to 14 in Table 19.3. It is easy to see that P1 (6) = P2 (6) = 43. Thus, IHP(S4,2 ) < 2. Hence, IHP(S4,2 ) = 1. LEMMA 19.6 Let u be any vertex of Sn,1 , and let {i1 , i2 , . . . , im } be any nonempty subset of n − {(u)1 } with n ≥ 2. Then, there are m Hamiltonian paths P1 , P2 , . . . , Pm of Sn,1 such that (1) Pj joins u to some vertex xj with xj = (xj )1 = ij for every 1 ≤ j ≤ m and (2)|{P1 ( j), P2 ( j), . . . , Pm ( j)}| = m for every 2 ≤ j ≤ n. Proof: Without loss of generality, we assume that u = (u)1 = n and xj = (xj )1 = ij = j j for every 1 ≤ j ≤ n − 1. For every 1 ≤ j ≤ n − 1 and for every 1 ≤ l ≤ n − 1, we set zl as & j + l − 1 if j + l ≤ n j zl = j + l − n if n + 1 ≤ j + l j
j
j
j
We set xj = zn−1 and Pj = u, z1 , z2 , . . . , zn−1 = xj for every 1 ≤ j ≤ n − 1. Then Pi1 , Pi2 , . . . , Pim form desired paths. THEOREM 19.7 IHP(Sn,2 ) = n − 2 if n ≥ 5. Proof: Since IHP(G) ≤ δ(G) − 1 for every graph G with at least three vertices, IHP(Sn,2 ) ≤ n − 2 if n ≥ 5. Let u and v be any two distinct vertices of Sn,2 . We need to construct (n − 2) mutually independent Hamiltonian paths of Sn,2 from u to v. We have the following cases. Case 1. (u)2 = (v)1 and (u)1 = (v)2 . Without loss of generality, we assume that u = 12 and v = 21. By Lemma 19.6, there are (n − 2) Hamiltonian paths {2} H1 , H2 , . . . , Hn−2 of Sn,2 such that (1) Hi joins u to some vertex xi with (xi )1 = i + 2 for every 1 ≤ i ≤ n − 2 and (2) |{H1 ( j), H2 ( j), . . . , Hn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ n − 1. Again, there are (n − 2) Hamiltonian paths Q1 , Q2 , . . . , Qn−2 {1} of Sn,2 such that (1) Q1 joins v to some vertex y1 with (y1 )1 = n and Qi joins v to some vertex yi with (yi )1 = i + 1 for every 2 ≤ i ≤ n − 2, and (2) |{Q1 ( j), Q2 ( j), . . . , Qn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ n − 1. Let A be an (n − 2) × (n − 2) matrix defined by ' i+j+1 if i + j ≤ n − 1 ai, j = i + j − n + 3 if n ≤ i + j
ch019.tex
12/8/2008
11: 10
Page 559
Mutually Independent Hamiltonian Paths
559
More precisely, ⎡
3 ⎢4 ⎢ A=⎢. ⎣ .. n
4 5 .. .
3
··· ··· .. . ···
n−2 n−1 .. .
n−1 n .. .
n−3
n−2
n 3 .. .
⎤ ⎥ ⎥ ⎥ ⎦
n−1
Obviously, aj,1 aj,2 . . . aj,n−1 forms a permutation of {3, 4, . . . , n} for every j with 1 ≤ j ≤ n − 2. Moreover, aj,l = aj ,l for any 1 ≤ j < j ≤ n − 2 and 1 ≤ l ≤ n − 2. In other words, A forms a rectangular Latin square with entries in {3, 4, . . . , n}. We set pi0 = xi and pin−2 = (yi )2 for every 1 ≤ i ≤ n − 2. For every 1 ≤ i ≤ n − 2 and 1 ≤ j ≤ n − 3, we set pij = ai,j+1 ai,j . By Theorem 16.6, there is a Hamiltonian {a }
path Tji of Sn,2i,j joining (pij−1 )2 to pij for every 1 ≤ i ≤ n − 2 and 1 ≤ j ≤ n − 2. We i , pi 3 set Pi = u, Hi , xi = pi0 , (pi0 )2 , T1i , pi1 , (pi1 )2 , T2i , pi2 , . . . , (pin−3 )2 , Tn−2 n−2 = (yi ) , yi , −1 Qi , v for every 1 ≤ i ≤ n − 2. Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,2 from u to v. See Figure 19.5 for an illustration. Case 2. Either (u)2 = (v)1 and (u)1 = (v)2 or (u)1 = (v)2 and (u)2 = (v)1 . Without loss of generality, we assume that (u)2 = (v)1 and (u)1 = (v)2 . Moreover, we assume that u = 12 and v = 23. By Lemma 19.6, there are (n − 3) Hamiltonian path H1 , {2} H2 , . . . , Hn−3 of Sn,2 such that (1) Hi joins u to some vertex xi with (xi )1 = i + 3 for every 1 ≤ i ≤ n − 3 and (2) |{H1 ( j), H2 ( j), . . . , Hn−3 ( j)}| = n − 3 for every {3} 2 ≤ j ≤ n − 1. Again, there are (n − 3) Hamiltonian path Q1 , Q2 , . . . , Qn−3 of Sn,2 such that (1) Q1 joins v to some vertex y1 with (y1 )1 = 1 and Qi joins v to some vertex yi with (yi )1 = i + 2 for every 2 ≤ i ≤ n − 3, and (2) |{H1 ( j), H2 ( j), . . . , Hn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ n − 1. Let A be an (n − 3) × (n − 2) matrix defined by ⎧ ⎨i+j+2 ai,j = 1 ⎩ i+j−n+4 {2}
{3}
S 6,2 S 6,2 1 2 u H 1 x1 p10 ( p 10 ) T 1 {2}
{4}
S 6,2 S 6,2 2 2 u H 2 x2 p20 ( p 20 ) T 1 {2}
{5}
{2}
{6}
S 6,2 S 6,2 3 u H 3 x3 p30 ( p 30 )2 T 1 S 6,2 S 6,2 4 2 u H 4 x4 p40 ( p 40 ) T 1
{4}
p 11
S 6,2 1 ( p 11 ) 2 T 2 {5}
if i + j ≤ n − 2 if i + j = n − 1 if n ≤ i + j {5}
p 12
S 6,2 (p 12 )2 T 13 {6}
{6}
p 13
S 6,2 1 ( p 13 )2 T 4 {3}
{1}
p 14
S 6,2 1 ( p 14 )2 y1 Q1 v {1}
S 6,2 2 p 21 ( p 21 ) 2 T 2
S 6,2 p 22 (p 22 )2 T 23
S 6,2 2 p 23 ( p 23 )2 T 4
S 6,2 3 p 31 ( p 31 ) 2 T 2
{6}
S 6,2 2 p 32 (p 32 ) T 33
{3}
S 6,2 3 p 33 ( p 33 )2 T 4
{4}
S 6,2 1 p 34 ( p 34 )2 y3 Q3 v
{3}
S 6,2 2 p 32 ( p 42 ) T 43
{4}
S 6,2 4 p 43 ( p 43 )2 T 4
{5}
S 6,2 1 p 44 ( p 44 )2 y4 Q4 v
S 6,2 4 p 41 ( p 41 ) 2 T 2
FIGURE 19.5 Illustration for Case 1 of Theorem 19.7 on S6,2 .
S 6,2 p 24 ( p 24 )2
1
y2 Q2 v
{1}
{1}
ch019.tex
12/8/2008
11: 10
Page 560
560
Graph Theory and Interconnection Networks
More precisely, ⎡
4 ⎢5 ⎢ A=⎢. ⎣ .. n
5 6 .. .
6 ··· 7 ··· .. . . . . 1 4 ···
n−1 n .. .
n−3
n 1 .. .
n−2
1 4 .. .
⎤ ⎥ ⎥ ⎥ ⎦
n−1
We set pi0 = xi and pin−2 = (yi )2 for every 1 ≤ i ≤ n − 2. For every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 3, we set pij = ai,j+1 ai,j . By Theorem 16.6, there is a Hamiltonian {a }
path Tji of Sn,2i,j joining (pij−1 )2 to pij for every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 2. We i , pi 3 set Pi = u, Hi , xi = pi0 , (pi0 )2 , T1i , pi1 , (pi1 )2 , T2i , pi2 , . . . , (pin−3 )2 , Tn−2 n−2 = (yi ) , yi , Qi−1 , v for every 1 ≤ i ≤ n − 3. Let b1 = 1, b2 = 3, bi = i + 1 for every 3 ≤ i ≤ n − 1, and bn = 2. We set w0 = u, wi = bi bi+1 for every 1 ≤ i ≤ n − 1, and wn = (v)2 . Note that {3} {2} {(w1 )2 = 13, w2 = 43} ⊂ V (Sn,2 ) − {v} and {(wn−1 )2 = n2, wn = 32} ⊂ V (Sn,2 ) − {u}. {b }
By Theorem 16.6, there is a Hamiltonian path Wi of Sn,2i joining (wi−1 )2 to wi for every i ∈ n − 1 − {2}. By Lemma 16.18, there is a {3} Hamiltonian path W2 of Sn,2 − {v} joining (w1 )2 to w2 . Again, there {2}
is a Hamiltonian path Wn of Sn,2 − {u} joining (wn−1 )2 to wn . We set Pn−2 = u = w0 , (w0 )2 , W1 , w1 , (w1 )2 , W2 , w2 , . . . , (wn−1 )2 , Wn , wn = (v)2 , v. Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,2 from u to v. See Figure 19.6 for illustration. Case 3. (u)2 = (v)2 . Without loss of generality, we assume that u = 12 and v = 32. Suppose that n = 5. We show there are three mutually independent Hamiltonian paths on S5,2 joining u to v by exhibiting the three required Hamiltonian paths in Table 19.4. Thus, we assume that n ≥ 6. For every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 3, we set zji as ⎧ ⎨ (i + j + 4)2 zji = (i + j − n + 7)2 ⎩ 42
if i + j ≤ n − 4 if n − 3 ≤ i + j ≤ 2n − 7 if i + j = 2n − 6
FIGURE 19.6 Illustration for Case 2 of Theorem 19.7 on S6,2 .
ch019.tex
12/8/2008
11: 10
Page 561
Mutually Independent Hamiltonian Paths
561
TABLE 19.4 TheThree Mutually Independent Hamiltonian Paths of S 5,2 between 12 and 32 P1 = 12, 42, 24, 34, 54, 14, 41, 51, 21, 31, 13, 43, 23, 53, 35, 45, 15, 25, 52, 32 P2 = 12, 52, 25, 15, 45, 35, 53, 43, 23, 13, 31, 21, 51, 41, 14, 34, 54, 24, 42, 32 P3 = 12, 21, 31, 41, 51, 15, 45, 35, 25, 52, 42, 24, 14, 54, 34, 43, 53, 13, 23, 32
i We set Hi = u, z1i , z2i , . . . , zn−4 for every 1 ≤ i ≤ n − 3. Obviously, Hi is a {2} i i Hamiltonian path of Sn,2 − {v, zn−3 } joining u to zn−4 for every 1 ≤ i ≤ n − 4, and |{H1 ( j), H2 ( j), . . . , Hn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ n − 3. Let A be an (n − 3) × (n − 1) matrix defined by
ai, j
⎧ i−j+4 ⎪ ⎪ ⎪ ⎪ 1 ⎪ ⎪ ⎪ ⎪ 3 ⎪ ⎪ ⎪ ⎪ ⎨n+i−j+3 = n ⎪ ⎪ 3 ⎪ ⎪ ⎪ ⎪ n−j+2 ⎪ ⎪ ⎪ ⎪ 1 ⎪ ⎪ ⎩ 4
if if if if if if if if if
i = n − 3 and j ≤ i i = n − 3 and j − 1 = i i = n − 3 and j − 2 = i i = n − 3 and j − 3 ≥ i i = n − 3 and j = 1 i = n − 3 and j = 2 i = n − 3 and 3 ≤ j ≤ n − 3 i = n − 3 and j = n − 2 i = n − 3 and j = n − 1
More precisely, ⎡
4 5 .. .
1 4 .. .
⎢ ⎢ ⎢ A=⎢ ⎢ ⎣n−1 n−2 n 3
3 1 .. .
n 3 .. .
n−3 n−4 n−1 n−2
n−1 n .. .
··· ··· .. .
n − 5 ··· n − 3 ···
⎤ 5 6⎥ ⎥ .. ⎥ .⎥ ⎥ 4 1 3 n⎦ 6 5 1 4 8 9 .. .
7 8 .. .
6 7 .. .
Let q1 = 24, q2 = 54, q3 = 34, qn−1 = 14, and qi = (i + 2)4 for every 4 ≤ i ≤ n − 2. We set Q1 = q1 , q2 , . . . , qn−1 , Q2 = q2 , q1 , q3 , q4 , . . . , qn−1 , and 1 )2 = q , and Q is a Hamiltonian Q3 = qn−1 , q2 , q3 , . . . , qn−2 , q1 . Obviously, (zn−4 1 i {4} path of Sn,2 for every 1 ≤ i ≤ 3. 1 )2 , and p1 = a We construct P1 as following. Let p11 = qn−1 , p1n−1 = (zn−3 1,j+1 a1,j j for every 2 ≤ j ≤ n − 2. By Theorem 16.6, there is a Hamiltonian path Tj1 of {a }
1 ,q ,Q , Sn,21,j joining (p1j−1 )2 to p1j for every 2 ≤ j ≤ n − 1. We set P1 = u, H1 , zn−4 1 1 1 1 1 1 1 1 1 1 1 2 2 2 qn−1 = p1 , (p1 ) , T2 , p2 , . . . , (pn−2 ) , Tn−1 , pn−1 = (zn−3 ) , zn−3 , v. 2 )2 , and p2 = a We construct P2 as following. Let p22 = qn−1 , p2n−1 = (zn−3 2,j+1 a2,j j {a }
for every 3 ≤ j ≤ n − 2. By Theorem 16.6, there is a Hamiltonian path Tj2 of Sn,22,j joining (p2j−1 )2 to p2j for every 3 ≤ j ≤ n − 1. Again, there is a Hamiltonian path H
ch019.tex
12/8/2008
11: 10
Page 562
562
Graph Theory and Interconnection Networks {5}
2 )2 to (q )2 . We set P = u, H , z2 , (z2 )2 , H, (q )2 , q , Q , of Sn,2 joining (zn−4 2 2 2 n−4 2 2 2 n−4 2 , p2 2 2 2 qn−1 = p22 , (p22 )2 , T32 , p23 , . . . , (p2n−2 )2 , Tn−1 n−1 = (zn−3 ) , zn−3 , v. i We construct Pi for every 3 ≤ i ≤ n − 3 as following. Let pi0 = zn−4 and pin−1 = i i 2 (zn−3 ) for every 3 ≤ i ≤ n − 3. We set pj = ai,j+1 ai, j for every 3 ≤ i ≤ n − 3 {a }
and 1 ≤ j ≤ n − 2. By Theorem 16.6, there is a Hamiltonian path Tji of Sn,2i, j joining (pij−1 )2 to pij for every 3 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 1. We set Pi = i , i i
u, Hi , zn−4 pin−1 = (zn−3 )2 , = pi0 , (pi0 )2 , T1i , pi1 , (pi1 )2 , T2i , pi2 , . . . , (pin−2 )2 , Tn−1 i zn−3 , v for every 3 ≤ i ≤ n − 3. We construct Pn−2 as following. Let x1 = n2, xn−3 = 35, and xi = (n − i + 1) (n − i + 2) for every 2 ≤ i ≤ n − 4. By Lemma 16.18, there is a Hamiltonian {2} path W1 of Sn,2 − {u, v} joining (q1 )2 to x1 . By Theorem 16.6, there is {1}
a Hamiltonian path W0 of Sn,2 joining (u)2 to (qn−1 )2 . Again, there is a
Hamiltonian path Wi of
{n − i + 2} Sn,2
joining (xi−1 )2 to xi for every 2 ≤ i ≤ n − 3. {3}
Moreover, there is a Hamiltonian path Wn−2 of Sn,2 joining (xn−3 )2 to (v)2 . We set Pn−2 = u, (u)2 , W0 , (qn−1 )2 , qn−1 , Q3 , q1 , (q1 )2 , W1 , x1 , (x1 )2 , W2 , x2 , . . . , (xn−4 )2 , Wn−3 , xn−3 , (xn−3 )2 , Wn−2 , (v)2 , v. Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,2 from u to v. See Figure 19.7 for illustration. Case 4. (u)1 = (v)1 . Without loss of generality, we assume that u = 12 and v = 13. {2} By Lemma 19.6, there are (n − 2) Hamiltonian paths H1 , H2 , . . . , Hn−2 of Sn,2 such that (1) Hi joins u to some vertex xi with (xi )1 = i + 4 for every 1 ≤ i ≤ n − 4, (xn−3 )1 = 3, and (xn−2 )1 = 4, and (2) |{H1 ( j), H2 ( j), . . . , Hn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ n − 1. Let A be an (n − 2) × (n − 1) matrix defined by
ai, j
⎧ i+j+3 ⎪ ⎪ ⎪ ⎪ i ⎨ +j−n+5 = 1 ⎪ ⎪ i+j−n+4 ⎪ ⎪ ⎩ 3
if if if if if
i + j≤n − 3 n − 2≤i + j≤n − 1 i+j =n n + 1 ≤ i + j ≤ 2n − 4 i + j = 2n − 3
FIGURE 19.7 Illustration for Case 3 of Theorem 19.7 on S6,2 .
ch019.tex
12/8/2008
11: 10
Page 563
Mutually Independent Hamiltonian Paths
563
More precisely, ⎡
5 6 7 8 ··· ⎢6 7 8 9 ··· ⎢ ⎢ ⎢ .. .. .. .. . . ⎢ . A=⎢. . . . ⎢n 3 4 1 ··· ⎢ ⎢ ⎣3 4 1 5 ··· 4
1
5
6
···
n 3 .. . n−4 n−3
3 4 .. . n−3 n−2
n−2
n−1
⎤ 4 1 1 5 ⎥ ⎥ ⎥ .. .. ⎥ . . ⎥ ⎥ n−2 n−1⎥ ⎥ ⎥ n−1 n ⎦ n
3
We set p10 = x1 , p1j = a1,j+1 a1,j for every 1 ≤ j ≤ n − 2, and p1n−1 = (v)2 . Obvi{3}
ously, {(p1n−4 )2 = n3, p1n−3 = 43} ⊂ V (Sn,2 ) − {v}. By Lemma 16.18, there is a Hamil{a }
tonian path Tj1 of Sn,21,j joining (p1j−1 )2 to p1j for every j ∈ n − 1 − {n − 3} and {3}
1 of Sn,2 − {v} joining (p1n−4 )2 to p1n−3 . We set P1 = there is a Hamiltonian path Tn−3 1 1 1 1 1 1 , p1 2 2 2
u, H1 , x1 = p0 , (p0 ) , T1 , p1 , (p1 ) , T21 , p12 , . . . , (p1n−2 )2 , Tn−1 n−1 = (v) , v. Let yi = ai+1,n−1 3 for every 1 ≤ i ≤ n − 4. For every 2 ≤ i ≤ n − 3, we set pi0 = xi , pij = ai,j+1 ai, j for every 1 ≤ j ≤ n − 2, and pin−1 = (yi−1 )2 . Note that 2 {(pi+1 n−i−4 ) = n3,
{3}
pi+1 n−i−3 = 43} ⊂ V (Sn,2 ) − {v, yi } for every 1 ≤ i ≤ n − 5,
{3} n−3 2 = 43} ⊂ V (Sn,2 ) − {v, yn−4 }. {(pn−3 0 ) = 23, p1
For every 2 ≤ i ≤ n − 3, {a } Sn,2i, j
Tji
and by
of joining the vertex Lemma 16.18, there is a Hamiltonian path i i 2 (pj−1 ) to pj for every j ∈ n − 1 − {n − i − 2} and there is a Hamiltonian path {3}
i of Sn,2 − {v, yi−1 } joining (pin−i−3 )2 to pin−i−2 . We set Pi = u, Hi , xi = Tn−i−2 i i i , pi 2 2 p0 , (p0 ) , T1i , pi1 , (pi1 )2 , T2i , pi2 , . . . , (pin−2 )2 , Tn−1 n−1 = (yi−1 ) , yi−1 , v for every 2 ≤ i ≤ n − 3. We set pn−2 = xn−2 , pn−2 = an−2,j+1 an−2,j for every 1 ≤ j ≤ n − 3, and pn−2 j 0 n−2 = 4n. {a
}
2 By Theorem 16.6, there is a Hamiltonian path Tjn−2 of Sn,2n−2,j joining (pn−2 j−1 ) to pn−2 for every j ∈ n − 2 − {1}. Let w = 34 and z = 23. By Lemma 16.18, j {4}
n−2 2 2 there is a Hamiltonian path T1n−2 of Sn,2 − {w, (pn−2 n−2 ) } joining (p0 ) to {3}
2 pn−2 1 . Again, there is a Hamiltonian path Q of Sn,2 − {v} joining (w) to z. n−2 n−2 2 n−2 n−2 n−2 2 n−2 n−2 We set Pn−2 = u, Hn−2 , xn−2 = p0 , (p0 ) , T1 , p1 , (p1 ) , T2 , p2 , . . . , n−2 n−2 n−2 2 2 2 (pn−2 n−3 ) , Tn−2 , pn−2 , (pn−2 ) , w, (w) , Q, z, v. Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,2 from u to v. See Figure 19.8 for illustration.
Case 5. (u)2 = (v)2 , (u)2 = (v)1 , (u)1 = (v)2 , and (u)1 = (v)1 . Without loss of generality, we assume that u = 12 and v = 34. By Lemma 19.6, there are (n − 3) Hamiltonian {2} paths H1 , H2 , . . . , Hn−3 of Sn,2 such that (1) Hi joins u to some vertex xi with (xi )1 = i + 4 for every 1 ≤ i ≤ n − 4 and Hn−3 joins u to some vertex xn−3 with (xn−3 )1 = 3, and (2) |{H1 ( j), H2 ( j), . . . , Hn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ n − 1. {4} Again, there are (n − 3) Hamiltonian paths Q1 , Q2 , . . ., Qn−3 of Sn,2 such that (1) Q1 joins v to some vertex y1 with (y1 )1 = 1 and Qi joins v to some vertex yi with
ch019.tex
12/8/2008
11: 10
Page 564
564
Graph Theory and Interconnection Networks
FIGURE 19.8 Illustration for Case 4 of Theorem 19.7 on S6,2 .
(yi )1 = i + 3 for every 2 ≤ i ≤ n − 3, and (2) |{Q1 ( j), Q2 ( j), . . . , Qn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ n − 1. Let A be an (n − 3) × (n − 2) matrix defined as ⎧ i+j+3 if i + j ≤ n − 3 ⎪ ⎪ ⎪ ⎨3 if i + j = n − 2 ai, j = ⎪ 1 if i+j =n−1 ⎪ ⎪ ⎩ i + j − n + 5 if n ≤ i + j More precisely, ⎡ 5 ⎢ ⎢6 ⎢ ⎢ A = ⎢ ... ⎢ ⎢ ⎣n 3
6
7
8
···
n−1
n
3
7 .. .
8 .. .
9 .. .
··· .. .
3 .. . n−3
1 .. . n−2
n−2
n−1
3
1
5
···
n .. . n−4
1
5
6
···
n−3
1
⎤
⎥ 5 ⎥ ⎥ .. ⎥ . ⎥ ⎥ ⎥ n−1⎦ n
We set pi0 = xi and pin−2 = (yi )2 for every 1 ≤ i ≤ n − 3. For every 1 ≤ i ≤ n − 3 and every 1 ≤ j ≤ n − 3, we set pij = ai, j+1 ai, j . By Theorem 16.6, there is a Hamiltonian {a }
path Tji of Sn,2i, j joining the vertex (pij−1 )2 to pij for every 1 ≤ i ≤ n − 3 and for every 1 ≤ j ≤ n − 2. We set Pi = u, Hi , xi = pi0 , (pi0 )2 , T1i , pi1 , (pi1 )2 , T2i , pi2 , . . . , (pin−3 )2 , −1 i , pi i 2 Tn−2 n−2 , (pn−2 ) = yi , Qi , v for every 1 ≤ i ≤ n − 3. Let b1 = 1, b2 = 4, bi = i + 2 for every 3 ≤ i ≤ n − 2, bn−1 = 2, and bn = 3. We set w0 = u, wi = bi+1 bi for every 1 ≤ i ≤ n − 1 and wn = (v)2 . Note that {(w1 )2 = 14, {4} {2} w2 = 54} ⊂ V (Sn,2 ) − {v} and {(wn−2 )2 = n2, wn−1 = 32} ⊂ V (Sn,2 ) − {u}. By {b }
Lemma 16.18, there is a Hamiltonian path Wi of Sn,2i joining the vertex (wi−1 )2 to wi for every i ∈ n − {2, n − 1} and there is a Hamiltonian path {4} W2 of Sn,2 − {v} joining the vertex (w1 )2 to w2 . Again, there is a Hamil{2}
tonian path Wn−1 of Sn,2 − {u} joining the vertex (wn−2 )2 to wn−1 . We set Pn−2 = u = w0 , (w0 )2 , W1 , w1 , (w1 )2 , W2 , w2 , . . . , (wn−1 )2 , Wn , wn = (v)2 , v.
ch019.tex
12/8/2008
11: 10
Page 565
Mutually Independent Hamiltonian Paths
565
Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,2 from u to v. See Figure 19.9 as illustration. Thus, this statement is proved. THEOREM 19.8 Let {i1 , i2 , . . . , in−1 } be any subset of n, and let u be any vertex of Sn,k with 2 ≤ k ≤ n − 2. There are (n − 1) Hamiltonian paths P1 , P2 , . . . , Pn−1 of Sn,k such that (1) Pj joins u to some vertex zj with (zj )1 = ij for every 1 ≤ j ≤ n − 1 and (2) |{P1 ( j), P2 ( j), . . . , Pn−1 ( j)}| = n − 1 for every 2 ≤ j ≤ n!/(n − k)!. Proof: We prove this statement by induction on k. Suppose that n = 4 and k = 2. Since S4,2 is vertex-transitive, we assume that u = 14. We prove this statement holds on S4,2 by exhibiting the three required Hamiltonian paths in Table 19.5. Suppose that n ≥ 5 and k = 2. Since Sn,2 is vertex-transitive, we assume that u = 1n. Without loss of generality, we suppose that i1 < i2 < · · · < in−1 . Obviously, ij = j or j + 1 for 1 ≤ j ≤ n − 1. Hence, ij ∈ / { j + 2, j + 3} for every 1 ≤ j ≤ n − 4,
FIGURE 19.9 Illustration for Case 5 of Theorem 19.7 on S6,2 .
TABLE 19.5 All Cases of the Required Hamiltonian Paths for S 4,2 of Theorem 19.8 {i1 , i2 , i3 } = {1, 2, 3}
{i1 , i2 , i3 } = {1, 2, 4}
{i1 , i2 , i3 } = {1, 3, 4}
{i1 , i2 , i3 } = {2, 3, 4}
P1 = 14, 34, 24, 42, 32, 23, 43, 13, 31, 41, 21, 12 P2 = 14, 41, 21, 31, 13, 43, 34, 24, 42, 12, 32, 23 P3 = 14, 24, 42, 32, 12, 21, 41, 31, 13, 23, 43, 34 P1 = 14, 34, 24, 42, 32, 23, 43, 13, 31, 41, 21, 12 P2 = 14, 41, 31, 21, 12, 32, 42, 24, 34, 43, 13, 23 P3 = 14, 24, 34, 43, 23, 13, 31, 41, 21, 12, 32, 42 P1 = 14, 24, 34, 43, 23, 32, 42, 12, 21, 41, 31, 13 P2 = 14, 41, 21, 31, 13, 23, 43, 34, 24, 42, 12, 32 P3 = 14, 34, 24, 42, 32, 12, 21, 41, 31, 13, 23, 43 P1 = 14, 24, 34, 43, 13, 31, 41, 21, 12, 42, 32, 23 P2 = 14, 41, 21, 12, 32, 42, 24, 34, 43, 23, 13, 31 P3 = 14, 34, 24, 42, 12, 32, 23, 43, 13, 31, 21, 41
ch019.tex
12/8/2008
11: 10
Page 566
566
Graph Theory and Interconnection Networks
in−3 ∈ / {1, n − 1}, in−2 ∈ / {1, 2}, and in−1 ∈ / {2, 3}. By Lemma 19.6, there are (n − 2) {n} Hamiltonian paths H1 , H2 , . . . , Hn−2 of Sn,2 such that (1) Hj joins u to some vertex xj with (xj )1 = j + 1 for every 1 ≤ j ≤ n − 2 and (2) |{H1 ( j), H2 ( j), . . . , Hn−2 ( j)}| = n − 2 j,l for every 2 ≤ j ≤ n − 1. Since k = 2, by Lemma 16.17, |En,2 | = (n − 2)!/(n − 2)! = 1. {j+2}
{1}
We choose a vertex zj ∈ Sn,2 with (zj )1 = ij for 1 ≤ j ≤ n − 3, a vertex zn−2 ∈ Sn,2 with (zn−2 )1 = in−2 . Let A be an (n − 2) × (n − 1) matrix defined by ' aj,l =
j−l+2
if j ≤ i + 1
j−l+n+1
if i + 2 ≤ j
More precisely, ⎡
2 ⎢ ⎢ 3 ⎢ ⎢ A = ⎢ ... ⎢ ⎢ ⎣n−2
1 2 .. . n−3
n−1 1 .. . n−4
n − 2 ··· n − 1 ··· .. .. . . n − 5 ···
⎤ 4 3 ⎥ 5 4 ⎥ ⎥ .. .. ⎥ . . ⎥ ⎥ ⎥ 1 n−1⎦
n−1
n−2
n−3
n−4
2
···
1 j
For every j ∈ n − 2 − {2}, we construct Pj as following. Let p0 = xj for every j ∈ n − 2 − {2}. Since ij ∈ / {j + 2, j + 3} for every j ∈ n − 2 − {2}, j in−3 ∈ / {1, n − 1}, and in−2 ∈ / {1, 2}, we can choose a vertex pn−1 = ij aj,n−1 = zj {a
}
j
in Sn,2j,n−2 . We set pl = aj,l+1 aj,l for every 1 ≤ j ≤ n − 2 and 1 ≤ l ≤ n − 2. Note j
{a
}
j
that (pl )2 ∈ Sn,2j,l+1 − {pl+1 } for every j ∈ n − 2 − {2} and 0 ≤ l ≤ n − 2. By j
{a }
j
j
Lemma 16.18, there is a Hamiltonian path Tl in Sn,2j,l joining (pl−1 )2 to pl for every j
j
j
j
j
j
j ∈ n − 2 − {2} and 1 ≤ l ≤ n − 1. We set Pj = u, Hj , xj = p0 , (p0 )2 , T1 , p1 , (p1 )2 , T2 , j j j j p2 , . . . , (pn−2 )2 , Tn−1 , pn−1 = zj for every j ∈ n − 2 − {2}. We construct P2 as follows. Let p20 = x2 . Since i2 ∈ / {4, 5}, we can choose a vertex {a2,n−2 } 2 2 pn−1 = i2 a2,n−1 = z2 in Sn,2 . We set pl = a2,l+1 a2,l for every 1 ≤ l ≤ n − 2. Note {a
}
that (p2l )2 ∈ Sn,22,l+1 − {p2l+1 } for every 0 ≤ l ≤ n − 2. By Lemma 16.18, there is a {3}
Hamiltonian path T in Sn,2 − {(p20 )2 } joining y = 43 to p21 . Again, there is a Hamiltonian {a }
path Tl2 in Sn,22,l joining (p2l−1 )2 to p2l for every 2 ≤ l ≤ n − 1. We set P2 = u, H2 , x2 = 2 , p2 p20 , (p20 )2 , y, T , p21 , (p21 )2 , T22 , p22 , (p22 )2 , T32 , p23 , . . . , (p2n−2 )2 , Tn−1 n−1 = z2 . We construct Pn−1 as follows. Let x = 13, q0 = n3, and qi = (n − i)(n − i + 1) {2} / {2, 3}, we choose a vertex z in Sn,2 with for every 1 ≤ i ≤ n − 2. Since in−1 ∈ {1}
(z)1 = in−1 (z = in−1 2). By Theorem 16.6, there is a Hamiltonian path R of Sn,2 {2}
joining (u)2 = n1 to (x)2 = 31. Again, there is a Hamiltonian path Qn−1 of Sn,2 joining (qn−2 )2 to z. By Lemma 16.18, there is a Hamiltonian path Q1 of {n − i + 1}
joining (q0 )2 to q1 . And, there is a Hamiltonian path Qi of Sn,2
{n} Sn,2 − {u}
− {qi } joining
ch019.tex
12/8/2008
11: 10
Page 567
Mutually Independent Hamiltonian Paths
567
FIGURE 19.10 Illustration for Theorem 19.8 on S6,2 .
(q1 )2 to wi = (n − i − 1)(n − i + 1) for 2 ≤ i ≤ n − 3. Moreover, there is a Hamilto{3} nian path Qn−2 of Sn,2 − {x, q0 } joining (qn−3 )2 to qn−2 . We set zn−1 = z and set Pn−1 = u, (u)2 , R, (x)2 , x, q0 , (q0 )2 , Q1 , q1 , (q1 )2 , Q2 , w2 , q2 , (q2 )2 , Q3 , w3 , q3 , (q3 )2 , Q4 , w4 , q4 , . . . , (qn−3 )2 , Qn−2 , qn−2 , (qn−2 )2 , Qn−1 , z = zn−1 . Then P1 , P2 , . . . , Pn−1 form the desired paths of Sn,2 . Note that qi = (n − i)(n − i + 1) = p1i+1 ; hence qi does 1 (2) for all 2 ≤ i ≤ n − 3. See Figure 19.10 as illustration. not equal to Ti+1 Suppose that this statement holds for Sm,l for every 4 ≤ m ≤ n − 1, 2 ≤ l ≤ k − 1, and l ≤ m − 2. Let u be any vertex of Sn,k . Since Sn,k is vertex-transitive, we assume that u is a vertex in Sn,k with (u)1 = 1 and (u)i = n − k + i for {n} every 2 ≤ i ≤ k. Note that u ∈ Sn,k . Without loss of generality, we suppose that i1 < i2 < · · · < in−3 < in−1 < in−2 . Obviously, ij = j + 2 for every 1 ≤ j ≤ n − 3, in−2 = 2, and in−1 = n. By the induction hypothesis, there are (n − 2) Hamil{n} tonian paths H1 , H2 , . . . , Hn−2 of Sn,k such that Hi is joining u to a vertex vj such that (1) (vj )1 = (Hj ((n − 1)!/(n − k − 1)!))1 = j + 3 for every 1 ≤ j ≤ n − 4, (vn−3 )1 = (Hn−3 ((n −1)!/(n −k −1)!))1 = 1, (vn−2 )1 = (Hn−2 ((n −1)!/ (n − k − 1)!))1 = 3 and (2) |{H1 ( j), H2 ( j), . . . , Hn−2 ( j)}| = n − 2 for 2 ≤ j ≤ (n − 1)!/ (n − k − 1)!. j,l Since n ≥ 5 and k ≥ 3, by Lemma 16.17, |En,k | = (n − 2)!/(n − k)! ≥ 3. We {j+2}
choose a vertex zj ∈ Sn,k
{2}
with (zj )1 = ij for 1 ≤ j ≤ n − 3, a vertex zn−2 ∈ Sn,k {n}
with (zn−2 )1 = in−2 , and a vertex zn−1 ∈ Sn,k − {u} with (zn−1 )1 = in−1 . Let B be an (n − 2) × (n − 1) matrix defined as ⎧ j+l+2 if j ⎪ ⎪ ⎪ ⎨ j + l − n + 3 if j bj,l = ⎪ l+2 if j ⎪ ⎪ ⎩ l−n+3 if j
≤ n − 3 and j + l ≤ n − 3 ≤ n − 3 and n − 2 ≤ j + l = n − 2 and l ≤ n − 3 = n − 2 and n − 2 ≤ l ≤ n − 1
ch019.tex
12/8/2008
11: 10
Page 568
568
Graph Theory and Interconnection Networks
More precisely, ⎡
4 5 .. .
5 6 .. .
··· ··· .. .
⎢ ⎢ ⎢ ⎢ ⎢ B=⎢ ⎢n − 1 1 ··· ⎢ ⎢ ⎣ 1 2 ··· 3 4 ···
n−2 n−1 .. .
n−1 1 .. .
1 2 .. .
2 3 .. .
n−6 n−5 n−4 n−3 n−5 n−4 n−3 n−2 n−3 n−2 n−1 1
3 4 .. . n−2 n−1 2
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦
Let j be any index with 1 ≤ j ≤ n − 2. By Theorem 16.7, there is a Hamiltonian path j j j j j j j j j
n − 1 Wj = x1 , T1 , y1 , x2 , T2 , y2 , . . . , xn−1 , Tn−1 , yn−1 of Sn,k joining the vertex (vj )k to j
j
j
{b }
j
zj such that x1 = (vj )k , yn−1 = zj , and Tl is a Hamiltonian path of Sn,kj,l joining xl to j yl
i for every 1 ≤ l ≤ n − 1. We set Pi = u, Hi , vi , (vi )k = x1i , Wi , yn−1 = zi for every 1 ≤ i ≤ n − 2. {n} Since Sn,k is isomorphic to Sn−1,k−1 , by Lemma 19.4, there is a Hamiln − {u} joining a vertex w to a vertex z tonian path R of Sn,k n−1 with (w)1 = (u)k−1 = n − 1 and (zn−1 )1 = in−1 . By Theorem 16.7, there is a Hamilto n − 1 n−1 n−1 n−1 , Tn−1 , yn−1 of Sn,k nian path W = x1n−1 , T1n−1 , y1n−1 , x2n−1 , T2n−1 , y2n−1 , . . . , xn−1 n−1 joining the vertex (u)k to the vertex (w)k such that x1n−1 = (u)k , yn−1 = (w)k , and {i} n−1 n−1 n−1 Ti to yi for 1 ≤ i ≤ n − 1. We set is a Hamiltonian path of Sn,k joining xi k k Pn−1 = u, (u) , W , (w) , w, R, zn−1 . Then {P1 , P2 , . . . , Pn−1 } forms a set of desired paths of Sn,k . Note that (y1n−1 )1 = 2, = n = (x1n−3 )1 , and (yin−1 )1 = i + 1 = i − 1 = (xin−3 )1 for 2 ≤ i ≤ n − 1. See Figure 19.11 for an illustration. Hence, this statement is proved.
FIGURE 19.11 Illustration for Theorem 19.8 on S6,3 .
ch019.tex
12/8/2008
11: 10
Page 569
Mutually Independent Hamiltonian Paths
569
LEMMA 19.7 Let u = 1n, v = 2n, yi = (i + 2)n for every 1 ≤ i ≤ n − 3, and yn−2 = n2 be vertices in Sn,2 with n ≥ 5. Then there are (n − 2) paths P1 , P2 , . . . , Pn−2 of Sn,2 such that (1) Pi is a Hamiltonian path of Sn,2 − {v, yi } joining u to a vertex xi with (xi )1 = i + 1 for every 1 ≤ i ≤ n − 2 and (2) |{P1 ( j), P2 ( j), . . . , Pn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ n(n − 1) − 2. {2}
{n}
Proof: Obviously, {u, v, y1 , y2 , . . . , yn−3 } = V (Sn,2 ) and yn−2 ∈ Sn,2 . For every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 4, let zji be defined as ' zji
=
(i + j + 2)n
if i + j ≤ n − 3
(i + j − n + 5)n
if n − 2 ≤ i + j
i for every 1 ≤ i ≤ n − 3. Obviously, Ri is We set Ri = u, z1i , z2i , . . . , zn−4 {n} i a Hamiltonian path of Sn,2 − {v, yi } joining u to zn−4 for every 1 ≤ i ≤ n − 3, and |{R1 ( j), R2 ( j), . . . , Rn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ n − 3. Moreover, 1 ) = n − 1 and (zi (zn−4 1 n−4 )1 = i + 1 for every 2 ≤ i ≤ n − 3. Let C be an (n − 3) × (n − 1) matrix defined by
ci, j
⎧ n−1 if i = 1 and j = 1 ⎪ ⎪ ⎪ ⎪ ⎪ 5−j if i = 1 and 2 ≤ j ≤ 4 ⎪ ⎪ ⎪ ⎪ ⎪ j − 1 if i = 1 and 5 ≤ j ⎪ ⎪ ⎪ ⎨4−j if i = 2 and 1 ≤ j ≤ 3 = ⎪ j if i = 2 and 4 ≤ j ⎪ ⎪ ⎪ ⎪ ⎪ i + j if 3 ≤ i and i + j ≤ n − 1 ⎪ ⎪ ⎪ ⎪ ⎪ n − i − j + 3 if 3 ≤ i and n ≤ i + j ≤ n + 2 ⎪ ⎪ ⎩ i + j − n + 1 if 3 ≤ i and n + 3 ≤ i + j
More precisely, ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ C=⎢ ⎢ ⎢ ⎢ ⎣
n−1
3
2
3 4
2 5
1 6
1 4 ... n − 5 n − 4 n − 3 4 5 ... n − 4 n − 3 n − 2 7 8 ... n − 1 3 2
5 .. .
6 .. .
7 .. .
8 .. .
9 .. .
... .. .
n−2
n−1
3
2
1
...
3 .. . n−6
2 .. . n−5
⎤ n−2 n−1⎥ ⎥ ⎥ 1 ⎥ ⎥ 4 ⎥ ⎥ ⎥ .. ⎥ . ⎦
1 .. . n−4
n−3
i For every 1 ≤ i ≤ n − 3, we set pi0 = zn−4 , pij = ci, j+1 ci, j for every 1 ≤ j ≤ n − 2, {c }
{c
}
and pin−1 = (i + 1)ci,n−1 . Note that pij ∈ Sn,2i, j and (pij )2 ∈ Sn,2i, j+1 − {pij+1 } for every 1 ≤ i ≤ n − 3 and 0 ≤ j ≤ n − 2. {c } By Theorem 16.6, there is a Hamiltonian path Tj2 of Sn,22, j joining (p2j−1 )2 to p2j {c
for every j ∈ n − 1 − {2} and there is a Hamiltonian path T of Sn,22,2
= 2}
− {(p21 )2 }
ch019.tex
12/8/2008
11: 10
Page 570
570
Graph Theory and Interconnection Networks
FIGURE 19.12 Illustration for Lemma 19.7 on S6,2 .
joining the vertex w = 52 to p22 . We set T22 = (p21 )2 , w, T , p22 , . By Theo{c }
rem 16.6, there is a Hamiltonian path Tji of Sn,2i, j joining (pij−1 )2 to pij for every i ∈ n − 3 − {2} and 1 ≤ j ≤ n − 1. We set Pi = u, Ri , pi0 , (pi0 )2 , T1i , pi1 , (pi1 )2 , T2i , i , pi pi2 , . . . , (pin−2 )2 , Tn−1 n−1 for every i ∈ n − 3. We set d1 = 1, d2 = 2, di = i + 1 for every 3 ≤ i ≤ n − 2, dn−1 = 3, and dn = n. We set q1 = (u)2 and qi = di−1 di for every 2 ≤ i ≤ n. Obvi{d } {d } ously, qi ∈ Sn,2i and (qi )2 ∈ Sn,2i−1 − {qi−1 } for every 2 ≤ i ≤ n. Moreover, {2}
{n}
q2 , (q3 )2 ∈ Sn,2 − {yn−2 = (v)2 } and qn ∈ Sn,2 − {u, v}. By Lemma 16.18, and there {d }
is a Hamiltonian path Qi of Sn,2i joining qi to (qi+1 )2 for every i ∈ n − 1 − {2}. {d }
Again, there is a Hamiltonian path Q of Sn,22 − {(q3 )2 , yn−2 } joining q2 to {d }
w = 52. Moreover, there is a Hamiltonian path Qn of Sn,2n − {u, v} joining qn = 3n to the vertex z = (n − 1)n. We set Q2 = q2 , Q, w, (q3 )2 . Then we set Pn−2 = u, (u)2 = q1 , Q1 , (q2 )2 , q2 , Q2 , (q3 )2 , . . . , qn−1 , Qn−1 , (qn )2 , qn , Qn , z. Then P1 , P2 , . . . , Pn−2 form desired paths. See Figure 19.12 for illustration.
LEMMA 19.8 Let n and k be any two positive integers with n ≥ 5, k ≥ 2, and n − k ≥ 2. Let u and v be two vertices of Sn,k with (u)1 = 1, (v)1 = 2, and (u)i = (v)i = n − k + i for every 2 ≤ i ≤ k, and let yi ∈ NSn,k (v) with (yi )1 = i + 2 for every 1 ≤ i ≤ n − 2. Then there are (n − 2) paths P1 , P2 , . . . , Pn−2 of Sn,k such that (1) Pi is a Hamiltonian path of Sn,k − {v, yi } joining u to a vertex xi with (xi )1 = i + 1 for every 1 ≤ i ≤ n − 2, and (2) |{P1 ( j), P2 ( j), . . . , Pn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ n!/(n − k)! − 2. Proof: Note that when k = 2, it is proved by Lemma 19.7. Obviously, {n} {2} {u, v, y1 , y2 , . . . , yn−3 } ⊂ Sn,k and yn−2 ∈ Sn,k . We have the following cases. Case 1. n = 5 and k = 3. We have u = 145, v = 245, y1 = 345, y2 = 425, and y3 = 542. We prove that this statement holds on S5,3 by listing every path in Table 19.6. Case 2. n ≥ 6, k ≥ 3, and n − k ≥ 2. We prove this case by induction on n and k. By Lemma 19.7, this statement holds for every n ≥ 5 and k = 2. By Case 1, this
ch019.tex
12/8/2008
11: 10
Page 571
Mutually Independent Hamiltonian Paths
571
TABLE 19.6 Desired Hamiltonian Paths of S 5,3 − {245, yi } for Lemma 19.8 y1 = 345 145, 415, 315, 215, 125, 425, 325, 235, 135, 435, 534, 354, 154, 254, 524, 324, 124, 214, 514, 314, 134, 234, 432, 532, 352, 152, 452, 542, 342, 142, 412, 512, 312, 132, 231, 531, 431, 341, 541, 241, 421, 321, 521, 251, 451, 351, 153, 453, 543, 243, 143, 413, 513, 213, 123, 423, 523, 253 y2 = 425 145, 345, 435, 235, 135, 315, 415, 215, 125, 325, 523, 423, 243, 143, 543, 453, 253, 153, 513, 413, 213, 123, 321, 421, 521, 251, 351, 451, 541, 241, 341, 431, 531, 231, 132, 532, 352, 452, 152, 512, 312, 412, 142, 542, 342, 432, 234, 324, 124, 524, 254, 154, 514, 214, 314, 134, 534, 354 y3 = 524 145, 541, 241, 341, 431, 231, 321, 421, 521, 251, 451, 351, 531, 135, 315, 415, 215, 125, 425, 325, 235, 435, 345, 543, 143, 243, 423, 523, 123, 213, 413, 513, 153, 253, 453, 354, 154, 254, 524, 124, 324, 234, 534, 134, 314, 514, 214, 412, 142, 342, 432, 532, 132, 312, 512, 152, 352, 452
statement holds for n = 5 and k = 3. Thus, we assume that this statement holds on {n} Sm,l for every 5 ≤ m < n and for every 2 ≤ l < k with m − l ≥ 2. Obviously, Sn,k is iso{n}
morphic to Sn−1,k−1 . By induction, there are (n − 3) paths W1 , W2 , . . . , Wn−3 of Sn,k {n}
such that (1) Wi is a Hamiltonian path of Sn,k − {v, yi } joining u to a vertex wi with (wi )1 = i + 1 for every 1 ≤ i ≤ n − 3 and (2) |{W1 ( j), W2 ( j), . . . , Wn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ (n − 1)!/(n − k)! − 2. Let C be an (n − 3) × (n − 1) matrix defined by
ci, j
⎧ i+j ⎪ ⎪ ⎪ ⎨1 = ⎪ n−1 ⎪ ⎪ ⎩ i+j−n+1
if i + j ≤ n − 2 if i + j = n − 1 if i + j = n if i + j ≥ n + 1
More precisely, ⎡
2 3 .. .
3 4 .. .
4 5 .. .
5 6 .. .
... n − 3 ... n − 2 .. .. . .
n−2 1 .. .
1 n−1 .. .
⎤ n−1 2 ⎥ ⎥ ⎥ .. ⎥ . ⎦
n−2
1
n−1
2
...
n−6
n−5
n−4
n−3
⎢ ⎢ C=⎢ ⎢ ⎣
{c }
We set pi0 = wi for every 1 ≤ i ≤ n − 3. We choose a vertex pij in Sn,ki, j with (pij )1 = ci,j+1 for every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 2, and choose a vertex {c
}
pin−1 in Sn,ki,n−1 with (pin−1 )1 = i + 1 for every 1 ≤ i ≤ n − 3. Note that (pij )k ∈ {c
}
Sn,ki,j+1 − {pij+1 } for every 1 ≤ i ≤ n − 3 and 0 ≤ j ≤ n − 2. By Theorem 16.6, there {c }
is a Hamiltonian path Tji of Sn,ki, j joining the vertex (pij−1 )k to pij for every i for 1 ≤ i ≤ n − 3, then we set 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 1. Let xi = Pn−1 i i i i i i i i , pi k k Pi = u, Wi , wi = p0 , (p0 ) , T1 , p1 , (p1 ) , p2 , . . . , (pn−2 )k , Tn−1 n−1 = xi for every 1 ≤ i ≤ n − 3.
ch019.tex
12/8/2008
11: 10
Page 572
572
Graph Theory and Interconnection Networks
We set d1 = 1, d2 = n, d3 = n − 1, and di = i − 2 for every 4 ≤ i ≤ n. Since d ,d n ≥ 6, k ≥ 3, and n − k ≥ 2, by Lemma 16.17, |En,ki i+1 | = (n − 2)!/(n − k)! ≥ 3. By {d = n}
− {u, v} joining a verLemma 19.5, there is a Hamiltonian path P of Sn,k2 tex x to a vertex y with (x)1 = 1 and (y)1 = n − 1. We set q1 = (u)k , q2 = x, and {d } q3 = (y)k . We choose a vertex qi in Sn,ki with (qi )1 = di−1 for every 4 ≤ i ≤ n. Obvi{d
{d }
}
ously, (q2 )k ∈ Sn,k1 − {q1 } and (qi )k ∈ Sn,ki−1 − {qi−1 } for every 3 ≤ i ≤ n. Moreover, {d }
{q4 , (q5 )k } ⊂ V (Sn,k4 ) − {yn−2 }. By Theorem 16.6, there is a Hamiltonian path Qi of {d }
Sn,ki joining qi to (qi+1 )k for every i ∈ n − 1 − {2, 4}. Again, there is a Hamiltonian {d }
path Q4 of Sn,k4 − {yn−2 } joining q4 to the vertex (q5 )k . Moreover, there is a Hamil{d }
tonian path Qn of Sn,kn joining qn to a vertex z with (z)1 = n − 1. We set Q2 = P. Then we set Pn−2 = u, (u)k = q1 , Q1 , (q2 )k , q2 , Q2 , (q3 )k , . . . , qn−1 , Qn−1 , (qn )k , qn , Qn , z. Then P1 , P2 , . . . , Pn−2 form the desired paths of Sn,k . Note that ((q4 )k )1 = 2 = 1 = n−3 k ((p2 ) )1 . See Figure 19.13 for illustration. THEOREM 19.9 IHP(Sn,k ) = n − 2 if 3 ≤ k ≤ n − 2. Proof: Since δ(Sn,k ) = n − 1, IHP(Sn,k ) ≤ n − 2. Let u and v be any two distinct vertices of Sn,k . To prove that this statement is true, we need to construct (n − 2) mutually independent Hamiltonian paths of Sn,k between u and v. We have the following cases. Case 1. (u)i = (v)i for some 2 ≤ i ≤ k. Without loss of generality, we assume that (u)k = (v)k . Moreover, we assume that (u)k = n and (v)k = n − 1. Let C be an (n − 2) × (n − 2) matrix defined by ' ci, j =
i+j−1 i+j−n+1
if i + j ≤ n − 1 if n ≤ i + j
FIGURE 19.13 Illustration for Lemma 19.8 on S6,3 .
ch019.tex
12/8/2008
11: 10
Page 573
Mutually Independent Hamiltonian Paths
573
More precisely, ⎡
1 ⎢ 2 ⎢ C=⎢ ⎢ .. ⎣ . n−2
2 3 .. . 1
3 4 .. . 2
⎤ ... n − 2 ... 1 ⎥ ⎥ ⎥ .. ⎥ .. . . ⎦ ... n − 3 {n}
By Theorem 19.8, there are Hamiltonian paths Q1 , Q2 , . . . , Qn−2 of Sn,k such {n}
that Qi is a Hamiltonian path of Sn,k joining u to a vertex si with (1) (si )1 = ci,1 for every 1 ≤ i ≤ n − 2 and (2) |{Q1 ( j), Q2 ( j), . . . , Qn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ (n − 1)!/(n − k)!. Again, there are Hamiltonian paths R1 , R2 , . . . , Rn−2 of {n−1} {n − 1} joining v to a vertex ti with Sn,k such that Ri is a Hamiltonian path of Sn,k (1) (ti )1 = ci,(n−2) for every 1 ≤ i ≤ n − 2 and (2) |{R1 ( j), R2 ( j), . . . , Rn−2 ( j)}| = n − 2 for every 2 ≤ j ≤ (n − 1)!/(n − k)!. For every 1 ≤ i ≤ n − 2, by Theorem 16.7, there
n − 2 i i , yi , Tn−2 exists a Hamiltonian path Wi = x1i , T1i , y1i , x2i , T2i , y2i , . . . , xn−2 n−2 of Sn,k i i joining the vertex x1i to the vertex yn−2 such that x1i = (si )k , yn−2 = (ti )k , and {c }
Tji is a Hamiltonian path of Sn,ki, j joining xji to yji for every 1 ≤ j ≤ n − 2. Let i = (ti )k , ti , Ri−1 , v for every 1 ≤ i ≤ n − 2. Hence, Pi = u, Qi , si , (si )k = x1i , Wi , yn−2 {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,k from u to v. See Figure 19.14 for illustration.
Case 2. (u)i = (v)i for every 2 ≤ i ≤ k. Without loss of generality, we assume that (u)1 = 1, (v)1 = 2, and (u)i = (v)i = n − k + i for every 2 ≤ i ≤ k. Suppose that n = 5 and k = 3. We prove there are three mutually independent Hamiltonian paths on S5,3 joining u = 145 to v = 245 by exhibiting the three required Hamiltonian paths in Table 19.7. Thus, we assume that n ≥ 6, k ≥ 3, and n − k ≥ 2. Let yi be a vertex of {n} {n} NSn,k (v) with (yi )1 = i + 2 for every 1 ≤ i ≤ n − 2. Obviously, u ∈ Sn,k , v ∈ Sn,k , {6}
{1}
{2}
{3}
S 6,4 S 6,4 x 14 T 14 y 14 t1 R11 v
{6}
{2}
{3}
{4}
S 6,4 S 6,4 x 24 T 24 y 24 t2 R21 v
{6}
{3}
{4}
{1}
S 6,4 S 6,4 x 34 T 34 y 34 t3 R31 v
{6}
{4}
{1}
{2}
S 6,4 S 6,4 x 44 T 44 y 44 t4 R41 v
S 6,4 S 6,4 S 6,4 S 6,4 u Q1 s1 x11 T 11 y 11 x12 T 12 y12 x 13 T 13 y 13 S 6,4 S 6,4 S 6,4 S 6,4 u Q2 s2 x21 T 21 y 21 x22 T 22 y 22 x 23 T 23 y 23 S 6,4 S 6,4 S 6,4 S 6,4 u Q3 s3 x31 T 31 y 31 x32 T 32 y 32 x 33 T 33 y 33 S 6,4 S 6,4 S 6,4 S 6,4 u Q4 s4 x41 T 41 y 41 x42 T 42 y 42 x 43 T 43 y 43
{4}
{5}
{1}
{5}
{2}
{5}
{3}
{5}
FIGURE 19.14 Illustration for Case 1 of Theorem 19.9 for n = 6 and k = 4.
ch019.tex
12/8/2008
11: 10
Page 574
574
Graph Theory and Interconnection Networks
TABLE 19.7 The Three Mutually Independent Hamiltonian Paths of S 5,3 between 145 and 245 P1 = 145, 345, 435, 135, 235, 325, 523, 423, 243, 143, 543, 453, 253, 153, 513, 413, 213, 123, 321, 521, 421, 241, 341, 541, 451, 251, 351, 531, 431, 231, 132, 532, 352, 452, 152, 512, 312, 412, 142, 542, 342, 432, 234, 534, 134, 314, 214, 124, 324, 524, 254, 354, 154, 514, 415, 315, 215, 125, 425, 245 P2 = 145, 415, 315, 215, 125, 425, 524, 324, 124, 214, 514, 314, 134, 234, 534, 354, 154, 254, 452, 352, 532, 132, 432, 342, 542, 142, 412, 312, 512, 152, 251, 451, 541, 341, 241, 421, 521, 321, 231, 431, 531, 351, 153, 513, 413, 213, 123, 423, 243, 143, 543, 453, 253, 523, 325, 235, 135, 435, 345, 245 P3 = 145, 541, 341, 241, 421, 521, 321, 231, 431, 531, 351, 251, 451, 154, 354, 254, 524, 124, 324, 234, 534, 134, 314, 214, 514, 415, 315, 215, 125, 425, 325, 235, 135, 435, 345, 543, 143, 413, 213, 513, 153, 453, 253, 523, 123, 423, 243, 342, 142, 412, 512, 312, 132, 432, 532, 352, 152, 452, 542, 245
{n}
{2}
yi ∈ Sn,k for every 1 ≤ i ≤ n − 3, and yn−2 ∈ Sn,k . By Lemma 19.8, there are {n}
(n − 3) paths R1 , R2 , . . . , Rn−3 of Sn,k such that (1) Ri is a Hamiltonian path of {n}
Sn,k − {v, yi } joining u to a vertex xi with (xi )1 = i + 1 for every 1 ≤ i ≤ n − 3 and (2) |{R1 ( j), R2 ( j), . . . , Rn−3 ( j)}| = n − 3 for every 2 ≤ j ≤ (n − 1)!/(n − k)! − 2. Let C be an (n − 3) × (n − 1) matrix defined by ' i−j+2 if j ≤ i + 1 ci, j = i + n − j + 1 if i + 2 ≤ j More precisely, ⎡ ⎢ ⎢ C=⎢ ⎢ ⎣
2 3 .. .
1 2 .. .
n−1 1 .. .
n−2 n−1 .. .
n−2
n−3
n−4
n−5
⎤ ... 4 3 ... 5 4 ⎥ ⎥ ⎥ .. .. ⎥ .. . . . ⎦ ... 1 n − 1
We set pi0 = xi and pin−1 = (yi )k for every 1 ≤ i ≤ n − 3. We choose a vertex {c }
pij in Sn,ki, j with (pij )1 = ci,j+1 for every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 2. Note that {c
}
(pij )k ∈ Sn,ki,j+1 − {pij+1 } for every 1 ≤ i ≤ n − 3 and 0 ≤ j ≤ n − 2. By Theorem 16.6, {c }
there is a Hamiltonian path Tji of Sn,ki, j joining (pij−1 )k to pij for every 1 ≤ i ≤ n − 3 and 1 ≤ j ≤ n − 1. We set Pi = u, Ri , xi = pi0 , (pi0 )k , T1i , pi1 , (pi1 )k , T2i , pi2 , . . . , (pin−2 )k , i , pi k Tn−1 n−1 = (yi ) , yi , v for every 1 ≤ i ≤ n − 3. {n} By Lemma 19.5, there is a Hamiltonian path Q2 of Sn,k − {u, v} joining a vertex x to a vertex y with (x)1 = 1 and (y)1 = n − 1. We set {n−i+2} q0 = u, q1 = (x)k , q2 = y, and qn = yn−2 . We choose a vertex qi ∈ Sn,k {1}
for every 3 ≤ i ≤ n − 1 with (qi )1 = n − i + 1. Note that (q0 )k ∈ Sn,k − {q1 }, and {n−i+1}
(qi )k ∈ Sn,k
− {qi+1 } for every 2 ≤ i ≤ n − 1. By Theorem 16.6, there is a
ch019.tex
12/8/2008
11: 10
Page 575
Mutually Independent Hamiltonian Paths {6} {2} S 6,4 {v,y1} S 6,4 u R1 p10 (p10)4
T 11
S 6,4 p11 (p1)4 T 21 1
{6} {3} S 6,4 {v,y2} S 6,4 2 u R2 p0 (p20)4
T 12
p21
{4} {6} S 6,4 {v,y3} S 6,4 u R2 p30 (p40)4
T 13
S 6,4 p31 (p3)4 T 3 2 1
{6}
S 6,4 u (q0)4
Q1
q1
{5}
{1}
p21
S 6,4 1 (p21)4 T 3
p22
S 6,4 2 (p22)4 T 3
p23
S 6,4 3 (p23)4 T 3
{4}
S 6,4 2 (p21)4 T 2
{4}
p31
S 6,4 1 (p31)4 T 4
p32
S 6,4 2 (p32)4 T 4
p33
S 6,4 3 (p33)4 T 4
{5}
{3}
{6} {5} S 6,4 {u,v} S 6,4 4 (q1) Q2 q1 (q2)4
575
q3
p42
S 6,4 2 (p42)4 T 5
p43
S 6,4 3 (p43)4 T 5
Q4
q4
p52
v
p53
v
{5}
{3}
S 6,4 (q4)4
p51 y1 v
{4}
{1}
{4}
Q3
S 6,4 1 (p41)4 T 5
{5}
{2}
S 6,4 (q3)4
{3}
p41
{3}
Q5
q5
S 6,4 (q5)4 Q5 q6 y4 v
FIGURE 19.15 Illustration for Case 2 of Theorem 19.9 for n = 6 and k = 4.
{1}
Hamiltonian path Q1 of Sn,k joining (q0 )k to q1 . Again, there is a Hamil{n−i+2}
joining (qi−1 )k to qi for every 3 ≤ i ≤ n. We set tonian path Qi of Sn,k k Pn−2 = u = q0 , (q0 ) , Q1 , q1 , (q1 )k = x, Q2 , y = q2 , . . . , (qn−2 )k , Qn−1 , qn−1 , (qn−1 )k , Qn , qn = yn−2 , v. Then {P1 , P2 , . . . , Pn−2 } forms a set of (n − 2) mutually independent Hamiltonian paths of Sn,k joining u to v. Note that (q3 )1 = n − 2 = 1 = ((p12 )k )1 and (qi )1 = n − i + 1 = n − i + 3 = ((p1i−1 )k )1 for every 4 ≤ i ≤ n − 1. See Figure 19.15 for illustration. Thus, this statement is proved. According to Theorems 19.5 through 19.7 and Theorem 19.9, we have the following result. THEOREM 19.10 IHP(Sn,k ) = n − 2 for any 1 ≤ k ≤ n − 2 except that S4,2 , and IHP(S4,2 ) = 1.
19.5
CUBIC 2-INDEPENDENT HAMILTONIAN-CONNECTED GRAPHS
It is interesting to point out that the set of all cubic graphs G with IHP(G) = 2 have more interesting properties. Ho et al. [150] observed that every cubic graph G with IHP(G) = 2 is a 1-fault-tolerant Hamiltonian graph. THEOREM 19.11 Every cubic 2-independent Hamiltonian-connected graph is 1-fault-tolerant Hamiltonian. Proof: Suppose that G is a cubic 2-independent Hamiltonian-connected graph. Let F be a subset of V ∪ E with |F| = 1. Suppose that e = (x, y) is an edge in F. Let N(y) = {x, u, v}. Since G is a cubic 2-independent Hamiltonian-connected graph, there are two independent Hamiltonian paths joining y and u. Apparently, these two Hamiltonian paths can be written
ch019.tex
12/8/2008
11: 10
Page 576
576
Graph Theory and Interconnection Networks Cubic Hamiltonian-connected graphs
7
1
3*-connected graphs
2
4
5
6
3 Cubic 2-independent Hamiltonianconnected graphs
Super 3*-connected graphs
Cubic 1-fault-tolerant Hamiltonian graphs
FIGURE 19.16 The relationship between cubic 1-fault-tolerant Hamiltonian graphs, 3∗ -connected graphs, super 3∗ -connected graphs, cubic Hamiltonian-connected graphs, and cubic 2-independent Hamiltonian-connected graphs.
as y, v, P1 , u and y, x, P2 , u, where P1 and P2 are Hamiltonian paths in G − y. Obviously, y, v, P1 , u, y forms a Hamiltonian cycle of G − e. Suppose that x is a vertex in F. Let e = (x, y) be any edge incident with x and N(y) = {x, u, v}. Since G is cubic 2-independent Hamiltonian-connected graph, there are two independent Hamiltonian paths between x and v in G. Apparently, these two Hamiltonian paths can be written as x, y, u, Q1 , v and x, Q2 , u, y, v, where Q1 is a Hamiltonian path in G − {x, y} and Q2 is a Hamiltonian path in G − {y, v}. Obviously,
y, u, Q1 , v, y forms a Hamiltonian cycle of G − x. Thus, G is 1-fault-tolerant Hamiltonian. The theorem is proved. By Theorem 15.2, every cubic 3∗ -connected graph is also 1-fault-tolerant Hamiltonian. In Figure 19.16, we use a Venn diagram to illustrate the relation between cubic 1-fault-tolerant Hamiltonian graphs, 3∗ -connected graphs, super 3∗ -connected graphs, cubic Hamiltonian connected graphs, and cubic 2-independent Hamiltonian connected graphs. The set of cubic 2-independent Hamiltonian-connected graphs corresponds to regions 1 and 2; the set of cubic 1-fault-tolerant Hamiltonian graphs corresponds to regions 1, 2, 3, 4, 5, and 6; the set of 3∗ -connected graphs corresponds to regions 2, 4, and 5; the set of cubic Hamiltonian-connected graphs corresponds to regions 1, 2, 3, 4, and 7; the set of super 3∗ -connected graphs corresponds to regions 2 and 4. We are wondering about the existence of graphs for all the possible regions. In Section 15.2, the existence of graphs in regions 5, 6, and 7 is proved. Ho et al. [150] present some examples of graphs in regions 1, 2, 3, and 4.
19.5.1
Examples of Cubic 2-Independent Hamiltonian-Connected Graphs That Are Super 3∗ -Connected
Here, we present a family of cubic 2-independent Hamiltonian-connected graphs that are super 3∗ -connected. In the following, we use ⊕ and # to denote addition and subtraction in integer modulo n, Zn .
ch019.tex
12/8/2008
11: 10
Page 577
Mutually Independent Hamiltonian Paths
j
i (i1)
i i1
j
577
j (i1)
j
j
(a)
i j1
j
i (i1)
i i1
j
(b)
(c)
FIGURE 19.17 Illustrations for path patterns: (a) P(i, j), (b) Q(i , j ), and (c) M(i , j ).
The generalized Petersen graph P(n, 1) is the graph with vertex set {i | 0 ≤ i < n} ∪ {i | 0 ≤ i < n} and edge set {(i, i ⊕ 1) | 0 ≤ i < n} ∪ {(i , (i ⊕ 1) ) | 0 ≤ i < n} ∪{(i, i )|0 ≤ i < n}. THEOREM 19.12 P(n, 1) is cubic 2-independent Hamiltonian-connected and super 3∗ -connected if and only if n is odd. Proof: It is proved in Ref. 194 that P(n, 1) is super 3∗ -connected if and only if n is odd. It is easy to see that P(n, 1) is bipartite if and only if n is even. Thus, we consider the case where n is odd. We will prove that there exist two independent Hamiltonian paths between any two different vertices. Let n = 2k + 1. To describe the required Hamiltonian paths, we use the following path patterns. Let P(i, j) denote the path i, i ⊕ 1, . . . , j # 1, j, Q(i , j ) denote the path i , (i ⊕ 1) , . . . , ( j # 1) , j , and M(i , j ) denote the path
i , (i ⊕ 1) , i ⊕ 1, i ⊕ 2, (i ⊕ 2) , (i ⊕ 3) , . . . , j # 1, ( j # 1) , j . See Figure 19.17 for illustration. We also use P( j, i) to denote the path (P(i, j))−1 , Q( j , i ) to denote the path (Q(i , j ))−1 , and M( j , i ) to denote the path (M(i , j ))−1 . By the symmetric property of P(2k + 1, 1), we need to find only two independent Hamiltonian paths P1 and P2 between 0 to any vertex x in {1, 2, . . . , k, 0 , 1 , . . . , k }. We have the following cases. Case 1. x = 0 . Set P1 = 0, P(2k, 1), Q(1 , (2k) ), 0 and P2 = 0, P(1, 2k), Q((2k) , 1 ), 0 . From Figure 19.18a, it is easy to see that P1 and P2 are independent. Case 2. x = 1. Set P1 = 0, P(2k, 2), Q(2 , 0 ), 1 , 1 and P2 = 0, 0 , Q(1 , (2k) ), P(2k, 2), 1. From Figure 19.18b, it is easy to see that P1 and P2 are independent. Case 3. x = k and k is odd. Set P1 = 0, P(2k, k + 1), Q((k + 1) , (2k) ), M(0 , k ), k and P2 = 0, M(0 , k ), Q((k + 1) , (2k) ), P(2k, k + 1), k. From Figure 19.18c, it is easy to see that P1 and P2 are independent. Case 4. x = k and k is even. Set P1 = 0, P(1, k − 1), Q((k − 1) , 1 ), M(0 , k ), k and P2 = 0, M(0 , k ), Q((k − 1) , 1 ), P(1, k − 1), k. From Figure 19.18d, it is easy to see that P1 and P2 are independent.
578
12/8/2008
11: 10
Page 578
Graph Theory and Interconnection Networks
FIGURE 19.18 Illustrations for Theorem 19.12.
ch019.tex
ch019.tex
12/8/2008
11: 10
Page 579
Mutually Independent Hamiltonian Paths
579
Case 5. x = 2i + 1 for some positive integer i. Set P1 = 0, P(2k, x + 1), Q((x + 1) , (2k) ), M(0 , x ), x and P2 = 0, M(0 , x ), Q((x + 1) , (2k) ), P(2k, x + 1), x. From Figure 19.18e, it is easy to see that P1 and P2 are independent. Case 6. x = 2i for some positive integer i. Set P1 = 0, P(1, x − 1), Q((x − 1) , 1 ), M(0 , x ), x and P2 = 0, M(0 , x ), Q((x − 1) , 1 ), P(1, x − 1), x. From Figure 19.18f, it is easy to see that P1 and P2 are independent. Case 7. x = 1 and k is odd. Set P1 = 0, M(0 , 2 ), 2, 1, 1 and P2 = 0, 1, 2, M(2 , 0 ), 1 . From Figure 19.18g, it is easy to see that P1 and P2 are independent. Case 8. x = 1 and k is even. Set P1 = 0, M(0 , 2 ), 2, 1, 1 and P2 = 0, 1, 2, M(2 , 0 ), 1 . From Figure 19.18h, it is easy to see that P1 and P2 are independent. Case 9. x = k and k is odd. Set P1 = 0, M(0 , (k + 1) ), k + 1, k, P(k − 1, 1), Q(1 , (k −1) ), k and P2 = 0, P(1, k − 1), Q((k − 1) , 1 ), M(0 , (k +1) ), k + 1, k, k . From Figure 19.18i, it is easy to see that P1 and P2 are independent. Case 10. x = k and k is even. Set P1 = 0, M(0 , (k − 1) ), k − 1, k, P(k + 1, 2k), Q((2k) , (k + 1) ), k and P2 = 0, P(2k, k + 1), Q((k + 1) , (2k) ), M(0 , (k − 1) ), k − 1, k, k . From Figure 19.18j, it is easy to see that P1 and P2 are independent. Case 11. x = (2i + 1) for some positive integer i. Set P1 = 0, M(0 , (x + 1) ), x + 1, and P2 = 0, P(1, x − 1), Q((x − 1) , 1 ), M(0 , x, P(x − 1, 1), Q(1 , (x − 1) ), x (x + 1) , x + 1, x, x . From Figure 19.18k, it is easy to see that P1 and P2 are independent. Case 12. x = (2i) for some positive integer i. Set P1 = 0, M(0 , (x − 1) ), x − 1, x, P(x + 1, 2k), Q((2k) , (x + 1) ), x and P2 = 0, P(2k, x + 1), Q((x + 1) , (2k) ), M(0 , (x − 1) ), x − 1, x, x . From Figure 19.18l, it is easy to see that P1 and P2 are independent. From the previous discussion, the theorem is proved.
19.5.2
Examples of Super 3∗ -Connected Graphs That Are Not Cubic 2-Independent Hamiltonian-Connected
Now, we present a family of super 3∗ -connected graphs that are not cubic 2independent Hamiltonian-connected. Again, we use ⊕ and # to denote addition and subtraction in integer modulo n, Zn . Assume that n is a positive even integers with n ≥ 4. The graph H(n) is the graph with vertex set {0, 1, . . . , n − 1} and edge set {(i, n − i) | 1 ≤ i < n2 } ∪ {(i, i ⊕ 1) | 0 ≤ i ≤ n − 1} ∪ {(0, n2 )}. THEOREM 19.13 H(n) is super 3∗ -connected but not cubic 2-independent Hamiltonian-connected if n is even and n ≥ 4. Proof: By Theorem 15.3, H(n) is Hamiltonian-connected. Hence, H(n) is super 3∗ connected. Now, we want to show that H(n) is not cubic 2-independent Hamiltonianconnected if n is even and n ≥ 4. We only prove that L(4) is not cubic 2-independent
ch019.tex
12/8/2008
11: 10
Page 580
580
Graph Theory and Interconnection Networks 0
2
3
5
6
8
1
4
7
10
13
16
9
11
12
14
15
17
FIGURE 19.19 The graph N.
Hamiltonian-connected. Using the same technique, it is easy to see that H(n) is not cubic 2-independent Hamiltonian-connected if n is even and n ≥ 4. By brute force, it is easy to see that there are only two Hamiltonian paths between 1 and 7; namely, 1, 2, 6, 5, 3, 4, 0, 7 and 1, 0, 4, 5, 3, 2, 6, 7. Apparently, these two Hamiltonian paths are not independent.
19.5.3
Example of a Cubic 2-Independent Hamiltonian-Connected Graph That Is Not Super 3∗ -Connected
We will prove that the graph N in Figure 19.19 is 2-independent Hamiltonianconnected, but not super 3∗ -connected. Obviously, N is obtained from K3,3 by a sequence of 3-join with K4 . By Lemma 12.5, K3,3 is not 1-fault-tolerant Hamiltonian. By Theorem 15.2, K3,3 is not 3∗ -connected. Repeatedly using Theorem 15.1, N is not 3∗ -connected. Hence, N is not super 3∗ -connected. Now, we claim that N is cubic 2-independent Hamiltonianconnected. Since N is vertex-transitive, we need to find only two independent Hamiltonian paths between the vertex 0 to any other vertex of N. The corresponding cubic 2-independent Hamiltonian paths are: 0→1 0→2 0→3 0→4 0→5 0→6 0→7 0→8
0, 09, 11, 10, 03, 05, 04, 13, 12, 14, 07, 06, 08, 17, 16, 15, 02, 01
0, 02, 15, 16, 17, 08, 07, 06, 11, 09, 10, 03, 05, 04, 13, 14, 12, 01
0, 09, 10, 11, 06, 07, 08, 17, 15, 16, 05, 03, 04, 13, 14, 12, 01, 02
0, 01, 12, 14, 13, 04, 05, 03, 10, 09, 11, 06, 07, 08, 17, 16, 15, 02
0, 09, 10, 11, 06, 08, 07, 14, 13, 12, 01, 02, 15, 17, 16, 05, 04, 03
0, 02, 01, 12, 14, 13, 04, 05, 16, 15, 17, 08, 07, 06, 11, 09, 10, 03
0, 09, 10, 11, 06, 08, 07, 14, 13, 12, 01, 02, 15, 17, 16, 05, 03, 04
0, 01, 02, 15, 17, 16, 05, 03, 10, 09, 11, 06, 08, 07, 14, 12, 13, 04
0, 09, 10, 11, 06, 07, 08, 17, 16, 15, 02, 01, 12, 14, 13, 04, 03, 05
0, 02, 01, 12, 14, 13, 04, 03, 10, 09, 11, 06, 07, 08, 17, 15, 16, 05
0, 09, 11, 10, 03, 05, 04, 13, 14, 12, 01, 02, 15, 16, 17, 08, 07, 06
0, 01, 02, 15, 16, 17, 08, 07, 14, 12, 13, 04, 05, 03, 10, 09, 11, 06
0, 09, 11, 10, 03, 05, 04, 13, 14, 12, 01, 02, 15, 16, 17, 08, 06, 07
0, 01, 02, 15, 16, 17, 08, 06, 11, 09, 10, 03, 05, 04, 13, 12, 14, 07
0, 02, 01, 12, 13, 14, 07, 06, 11, 09, 10, 03, 04, 05, 16, 15, 17, 08
0, 09, 11, 10, 03, 04, 05, 16, 17, 15, 02, 01, 12, 13, 14, 07, 06, 08
ch019.tex
12/8/2008
11: 10
Page 581
Mutually Independent Hamiltonian Paths 0→9
581
0, 01, 02, 15, 17, 16, 05, 03, 04, 13, 12, 14, 07, 08, 06, 11, 10, 09
0, 02, 01, 12, 13, 14, 07, 06, 08, 17, 15, 16, 05, 04, 03, 10, 11, 09
0, 02, 01, 12, 14, 13, 04, 03, 05, 16, 15, 17, 08, 07, 06, 11, 09, 10
0, 09, 11, 06, 08, 07, 14, 13, 12, 01, 02, 15, 17, 16, 05, 04, 03, 10
0, 01, 02, 15, 16, 17, 08, 06, 07, 14, 12, 13, 04, 05, 03, 10, 09, 11
0, 09, 10, 03, 05, 04, 13, 14, 12, 01, 02, 15, 16, 17, 08, 07, 06, 11
0, 01, 02, 15, 17, 16, 05, 04, 03, 10, 09, 11, 06, 08, 07, 14, 13, 12
0, 09, 11, 10, 03, 05, 04, 13, 14, 07, 06, 08, 17, 16, 15, 02, 01, 12
0, 09, 10, 11, 06, 08, 07, 14, 12, 01, 02, 15, 17, 16, 05, 03, 04, 13
0, 01, 02, 15, 17, 16, 05, 04, 03, 10, 09, 11, 06, 08, 07, 14, 12, 13
0, 01, 02, 15, 16, 17, 08, 07, 16, 11, 09, 10, 03, 05, 04, 13, 12, 14
0, 09, 11, 10, 03, 05, 04, 13, 12, 01, 02, 15, 16, 17, 08, 06, 07, 14
0, 02, 01, 12, 14, 13, 04, 05, 03, 10, 09, 11, 06, 07, 08, 17, 16, 15
0, 09, 11, 10, 03, 04, 05, 16, 17, 08, 06, 07, 14, 13, 12, 01, 02, 15
0, 02, 01, 12, 14, 13, 04, 05, 02, 10, 09, 11, 06, 07, 08, 17, 15, 16
0, 09, 10, 11, 06, 07, 08, 17, 15, 02, 01, 12, 14, 13, 04, 03, 05, 16
0, 02, 01, 12, 13, 14, 07, 08, 06, 11, 09, 10, 03, 04, 05, 16, 15, 17
0, 09, 11, 10, 03, 04, 05, 16, 15, 02, 01, 12, 13, 14, 07, 06, 08, 17
0 → 10 0 → 11 0 → 12 0 → 13 0 → 14 0 → 15 0 → 16 0 → 17
Thus, we have the following theorem. THEOREM 19.14 N is cubic 2-independent Hamiltonian-connected but not super 3∗ -connected.
19.5.4
Example of a Cubic 1-Fault-Tolerant Hamiltonian Graph That Is Hamiltonian-Connected but Not Cubic 2-Independent Hamiltonian-Connected or Super 3∗ -Connected
We prove that the graph M in Figure 19.20a is 1-fault-tolerant Hamiltonian, and Hamiltonian-connected but not 2-independent Hamiltonian-connected or super 3∗ connected. Obviously, M is obtained from the graph M1 , in Figure 19.20b, by a sequence of 3-joins with K4 . It is proved that M1 is 1-fault-tolerant Hamiltonian [194]. By Theorem 12.1, M is 1-fault-tolerant Hamiltonian. Moreover, M is also obtained from 2 9 1
13 14
15
32
16
17
33 37
31 36
47 40
30
45
8
29 28 12 7
42 44
4
38 43
34
20 21
39 22
35 27
18 19
41
48 46
3 10
26
25
(a)
24 23 11
6
5
(b)
FIGURE 19.20 The graphs (a) M, (b) M1 , and (c) M2 .
(c)
ch019.tex
12/8/2008
11: 10
Page 582
582
Graph Theory and Interconnection Networks 2 9
3 10 13 14
1
15
16
17 18 19
33
32
r2
r1
4
r5
13 14 32
37
49
r6
37
41 47
31 36 30
48
42 44
20
38
46
40
34 43
48
r 11
21
39 8
22
35
12
26
27
25
7
24 23 11 6
(a)
r1
r2
r 10
5
48
r11 r10
(b)
r1 r15
r6
37 41
r14
r12
r4
r11
r14
41
r8
r12
r9
r4
r2 49
r15
r7 r11 r8
r14
r6
r12
r7
r13
r10 r3
(e)
r3 (c)
r13
r10
r8 r3
(d)
r9
r1
r6
37 48
r7
r2
r5 49
r13 r9
r7
r4
r15 49
r 12
r 13
45 29 28
41
r 14
r9
r4
r8 r3
(f)
FIGURE 19.21 The graphs (a) M, (b) M3 , (c) M4 , (d) M5 , (e) M6 , and (f) M7 .
the graph M2 , in Figure 19.20c, by a sequence of 3-joins with K4 . It is easy to see that M2 is isomorphic to the generalized Petersen graph P(8, 2). By Theorem 15.5, P(8, 2) is not 3∗ -connected. Repeatedly using Theorem 15.1, M is not 3∗ -connected. By brute force, we prove that M is Hamiltonian-connected. Now, we want to show that M is not cubic 2-independent Hamiltonian-connected. Assume that P = v1 = 14, v2 , . . . , v48 = 48 is any Hamiltonian path of M between 14 and 48 in M. We claim that v2 must be 15. Then M is not 2-independent Hamiltonianconnected once our claim is proved. To prove this claim, it is equivalent to show that the graph M3 , shown in Figure 19.21b, is not Hamiltonian. Repeatedly using Theorem 14.9, it is sufficient to show that the graph M4 , shown in Figure 19.21c, is not Hamiltonian. Suppose there exists a Hamiltonian cycle H in M4 . We can write H as H = 49, 48, vx , . . . , vz , 49. Obviously, vx is r14 , or 41. Case 1. vx = r14 . Then neither (48, 37) nor (48, 41) is in H. Thus, both (37, 41) and (41, r12 ) are in H. This implies that the graph M4 , shown in Figure 19.21c, has a Hamiltonian cycle C . And degM4 (r5 ) = 2. Therefore, the graph M5 , shown in Figure 19.21d, has a Hamiltonian cycle C. Note that the graph M5 is planar. By the − f ) = 0, where f is the number Grinberg condition, 2(f4 − f4 ) + 3(f5 − f5 ) + 9(f11 i 11 of faces of length i inside C and fi is the number of faces of length i outside C for i = 4, 5, 11. Obviously, 2(f4 − f4 ) = 0 (mod 3). Since |f4 − f4 | = 1, the equation cannot hold. We get a contradiction. Case 2. vx = 41. Neither (48, r14 ) nor (48, 37) is in H. Thus, both (48, 41) and (41, 37) are in H. This implies that the graph M6 , shown in Figure 19.21e, has a
ch019.tex
12/8/2008
11: 10
Page 583
Mutually Independent Hamiltonian Paths
583
Hamiltonian cycle C . Obviously, degM6 (48) = degM6 (41) = degM6 (37) = degM6 (r5 ) = 2. Therefore, the graph M7 , shown in Figure 19.21f, has a Hamiltonian cycle C. Since the graph M7 is planar, by the Grinberg condition, 2(f4 − f4 ) + 3(f5 − f5 ) + 6(f8 − f8 ) = 0, where fi is the number of faces of length i inside C and fi is the number of faces of length i outside C for i = 4, 5, 8. Obviously, 2(f4 − f4 ) = 0 (mod 3). Since |f4 − f4 | = 1, the equation cannot hold. We get a contradiction. From the previous discussion, we have the following theorem. THEOREM 19.15 M is cubic 1-fault-tolerant Hamiltonian, Hamiltonianconnected, but not cubic 2-independent Hamiltonian-connected or super 3∗ connected.
ch019.tex
12/8/2008
11: 10
Page 584
ch020.tex
30/6/2008
13: 47
Page 585
Properties 20 Topological of Butterfly Graphs 20.1
INTRODUCTION
The wrapped around butterfly graph BF(n), introduced in Chapter 2, is an important family of interconnection networks, due to its nice topological properties, and thus has been widely discussed in Refs 24,50,132,185,220,300,303, and 343. However, BF(n) is bipartite if and only if n is even. For this reason, it is difficult to discuss the corresponding topological properties in the previous chapters. Instead, we devote a chapter here to these properties. Let Zn = {0, 1, . . . , n − 1} denote the set of integers modulo n. The n-dimensional binary wrapped butterfly graph (or butterfly graph for short), denoted by BF(n), is a graph with Zn × Zn2 as vertex set. Each vertex is labeled by a two-tuple
, a0 . . . an−1 with a level ∈ Zn and an n-bit binary string a0 . . . an−1 ∈ Zn2 . A level- vertex , a0 . . . a . . . an−1 is adjacent to two vertices, ( + 1)mod n , a0 . . . a . . . an−1 and ( − 1)mod n ,a0 . . . a−1 . . . an−1 , by straight edges, and is adjacent to another two vertices, ( + 1)mod n , a0 . . . a−1 a a+1 . . . an−1 and
( − 1)mod n ,a0 . . . a−2 a−1 a . . . an−1 , by cross edges. More formally, the edges of BF(n) can be defined in terms of four generators g, g−1 , f , and f −1 as follows: g( , a0 . . . a . . . an−1 ) = ( + 1)mod n , a0 . . . a . . . an−1 f ( , a0 . . . a . . . an−1 ) = ( + 1)mod n , a0 . . . a−1 a a+1 . . . an−1 g
−1
( , a0 . . . a . . . an−1 ) = ( − 1)mod n , a0 . . . a . . . an−1
f −1 ( , a0 . . . a−1 . . . an−1 ) = ( − 1)mod n , a0 a1 . . . a−2 a−1 a . . . an−1 where a ≡ a + 1 (mod 2). Hence, the g-edges, (u, g(u)) or (u, g−1 (u)), and the f -edges, (u, f (u)) or (u, f −1 (u)) for any u ∈ V (BF(n)), represent the straight edges and cross edges, respectively. Consequently, we have Lemma 20.1. LEMMA 20.1 f −1 (g(u)) = g−1 ( f (u)) for any vertex u in BF(n). A level- edge of BF(n) is an edge that joins a level- vertex to a level-( + 1)mod n vertex. To avoid the degenerate case, we assume n ≥ 3 in what follows. So BF(n) is 4-regular. Moreover, BF(n) is bipartite if and only if n is even. Figure 20.1a depicts the structure of BF(3), and Figure 20.1b is the isomorphic structure of BF(3) with level-0 replication for easy visualization. For any ∈ Zn and i ∈ Z2 , we use BFi (n) to denote the subgraph of BF(n) induced j by { h, a0 . . . an−1 |h ∈ Zn , a = i}. Obviously, BFi 1 (n) is isomorphic to BF2 (n) for 585
ch020.tex
30/6/2008
13: 47
Page 586
586
Graph Theory and Interconnection Networks
000 001 010 011 100 101 110 111 0 000 100 010 110 001 101 011 111
0
2
1
1
2
0
(a)
(b)
FIGURE 20.1 (a) The structure of BF(3) and (b) BF(3) with level-0 replicated to ease visualization.
any i, j ∈ Z2 and 1 , 2 ∈ Zn . Moreover, {BFi (n)|i ∈ Z2 } forms a partition of BF(n). With such observation, Wong [343] proposed a stretching operation to obtain BFi (n) from BF(n − 1). More precisely, the stretching operation can be described as follows. Assume that ∈ Zn and i ∈ Z2 . Let $n be the set of all subgraphs of BF(n) and let G ∈ $n . We define the following subsets of V (BF(n + 1)) and E(BF(n + 1)): V1 = { h, a0 . . . a−1 ia . . . an−1 |0 ≤ h < , h, a0 . . . a−1 a . . . an−1 ∈ V (G)} V2 = { h + 1, a0 . . . a−1 ia . . . an−1 | < h ≤ n − 1, h, a0 . . . a−1 a . . . an−1 ∈ V (G)} V3 = { , a0 . . . a−1 ia . . . an−1 | , a0 . . . a−1 a . . . an−1 is incident with a level-( − 1)mod n edge in G} V4 = { + 1, a0 . . . a−1 ia . . . an−1 | , a0 . . . a−1 a . . . an−1 is incident with a level- edge in G} E1 = {( h, a0 . . . a−1 ia . . . an−1 , h + 1, b0 . . . b−1 ib . . . bn−1 ) | 0 ≤ h < , ( h, a0 . . . a−1 a . . . an−1 , h + 1, b0 . . . b−1 b . . . bn−1 ) ∈ E(G)} E2 = {( h + 1, a0 . . . a−1 ia . . . an−1 , (h + 2)mod (n+1) , b0 . . . b−1 ib . . . bn−1 ) | ≤ h ≤ n − 1, ( h, a0 . . . a−1 a . . . an−1 , (h + 1)mod n b0 . . . b−1 b . . . bn−1 ) ∈ E(G)} E3 = {( , a0 . . . a−1 ia . . . an−1 , + 1, a0 . . . a−1 ia . . . an−1 )|
, a0 . . . a−1 a . . . an−1 is incident with at least one level-( − 1)mod n edge and at least one level- edge in G} Then we define the function γi : ∪n≥3 $n → ∪n≥4 $n by assigning γi (G) as the graph with the vertex set V1 ∪ V2 ∪ V3 ∪ V4 and the edge set E1 ∪ E2 ∪ E3 . One may find that γi is well-defined and one-to-one. Furthermore, γi (G) ∈ $n+1 if G ∈ $n . In
ch020.tex
30/6/2008
13: 47
Page 587
Topological Properties of Butterfly Graphs
587 0000 0100 0010 0110 1001 1101 1011 1111
0
000
100
010
110
001
101
011
111
0
1
1
2
2
3
0
0 (a)
(b) 0000 1000 0010 1010 0001 1001 0011 1011
0
1
2
3
0 (c)
FIGURE 20.2 (a) A subgraph G of BF(3), (b) γ00 (G) in γ00 (BF(3)), and (c) γ10 (G) in γ10 (BF(3).
particular, γi (BF(n)) = BFi (n + 1). Moreover, γi (P) is a path in BF(n + 1) if P is a path in BF(n). In Figure 20.2, we illustrate a subgraph G of BF(3), γ00 (G) in γ00 (BF(3)), j and γ10 (G) in γ10 (BF(3)). Obviously, γi 1 (BF(n)) is isomorphic to γ2 (BF(n)) for any 1 , 2 ∈ Zn , i, j ∈ Z2 .
ch020.tex
30/6/2008
13: 47
Page 588
588
Graph Theory and Interconnection Networks 0000 0010 0001 0011
0000 0100 0001 0101
0000 0100 0010 0110
0
0
0
1
1
1
2
2
2
3
3
3
0
0
0
(a) 0000 0100
(b) 0000 0010
(c) 0000 0001
0
0
0
1
1
1
2
2
2
3
3
3
0
0 (d)
0 (e)
(f)
0,0 0,0 0,0 0,0,0 0,0,0 FIGURE 20.3 (a) BF0,1 (4), (b) BF0,2 (4), (c) BF0,3 (4), (d) BF0,1,3 (4), (e) BF0,2,3 (4), and 0,0,0 (f ) BF0,1,2 (4).
In fact, BF(n) can be further partitioned. Assume that 1 ≤ m ≤ n, i1 , . . . , im ∈ Z2 , m and 1 , . . . , m ∈ Zn such that 1 < · · · < m . We use BFi11,...,i ,...,m (n) to denote the subgraph of BF(n) induced by { h, a0 . . . an−1 |h ∈ Zn , aj = ij for 1 ≤ j ≤ m}. So, m {BFi11,...,i ,...,m (n)|i1 , . . . , im ∈ Z2 , 1 , . . . , m ∈ Zn , 1 < · · · < m } forms a partition of BF(n). To avoid the complicated case caused by modular arithmetic, we restrict our attention to 1 ≤ m ≤ n − 1, 0 ≤ 1 < · · · < m , and j < n − m + j − 1 for each 0,0 0,0 0,0 0,0,0 0,0,0 1 ≤ j ≤ m. Figure 20.3 illustrates BF0,1 (4), BF0,2 (4), BF0,3 (4), BF0,1,3 (4), BF0,2,3 (4), 0,0,0 0,0 0,0 and BF0,1,2 (4). One can find that BF0,1 (4) is isomorphic to BF0,3 (4). Moreover, 0,0,0 0,0,0 0,0,0 0,0 BF0,1,3 (4), BF0,2,3 (4), and BF0,1,2 (4) are also isomorphic. However, BF0,1 (4) is not 0,0 isomorphic to BF0,2 (4).
ch020.tex
30/6/2008
13: 47
Page 589
Topological Properties of Butterfly Graphs
589
The following lemmas can be easily derived according to the stretching operation. i,j
LEMMA 20.2 Assume that n ≥ 3 and i, j, k ∈ Z2 . Then BF0,1 (n) is isomorphic to i,j BF0,n−1 (n);
i,j,k BF0,1,2 (n),
i,j,k BF0,1,n−1 (n),
and
i,j,k BF0,n−2,n−1 (n)
are isomorphic.
LEMMA 20.3 Suppose that i1 , . . . , im ∈ Z2 and 1 , . . . , m are integers such that 0 ≤ 1 < · · · < m and j < n − m + j − 1 for each 1 ≤ j ≤ m. Then ⎧ im−1 im i3 i1 ,i2 ⎪ ◦ γ ◦ . . . ◦ γ (3) if m = n − 1 BF γ ⎪ m m−1 3 1 ,2 ⎪ ⎪ ⎨ im−1 m im i2 i1 BFi11,...,i if m = n − 2 ,...,m (n) = ⎪γm ◦ γm−1 ◦ . . . ◦ γ2 BF1 (3) ⎪ ⎪ ⎪ ⎩γ im ◦ γ im−1 ◦ . . . ◦ γ i1 (BF(n − m)) otherwise 1 m m−1 LEMMA 20.4 Let n ≥ 3. Assume that 0 ≤ ≤ n − 1, ∈ $n , and G is a connected spanning subgraph of . For any i, j ∈ Z2 , let F0 = { , a0 . . . an−1 = v | v ∈ V (G) is not incident with any level-( − 1)mod n, edge in G} F1 = { , a0 . . . an−1 = v | v ∈ V (G) is not incident with any level- edge in G} # F0 = { , a0 . . . a−1 ija . . . an−1 ,
,a0 ...a−1 a ...an−1 ∈F0
F1 =
#
,a0 ...a−1 a ...an−1 ∈F1
X0 =
#
,a0 ...a−1 a ...an−1 ∈F0
X1 =
#
,a0 ...a−1 a ...an−1 ∈F1
M0 =
#
,a0 ...an−1 ∈G−(F0 ∪F1 )
M1 =
#
,a0 ...an−1 ∈G−(F0 ∪F1 )
+ 1, a0 . . . a−1 ija . . . an−1 } { + 1, a0 . . . a−1 ija . . . an−1 ,
+ 2, a0 . . . a−1 ija . . . an−1 } {( , a0 . . . a−1 ija . . . an−1 ,
+ 1, a0 . . . a−1 ija . . . an−1 )} {( + 1, a0 . . . a−1 ija . . . an−1 ,
+ 2, a0 . . . a−1 ija . . . an−1 )} {( , a0 . . . a−1 ija . . . an−1 ,
+ 1, a0 . . . a−1 ija . . . an−1 )} {( + 1, a0 . . . a−1 ija . . . an−1 ,
+ 2, a0 . . . a−1 ija . . . an−1 )} j
j
Then F0 ∩ F1 = ∅ and F0 ∩ F1 = ∅. Thus, F0 ∪F1 = V (γ+1 ◦γi ()) − V (γ+1 ◦γi (G)) j i can be represented as ∪m k=1 {uk , g(uk )|uk ∈ V (γ+1 ◦ γ ())} with some m ≥ 1 such that
ch020.tex
30/6/2008
13: 47
Page 590
590
Graph Theory and Interconnection Networks j
{uk |1 ≤ k ≤ m} ∩ {g(uk )|1 ≤ k ≤ m} = ∅. Moreover, M0 ∪ M1 ⊆ E(γ+1 ◦ γi (G)) and j i X0 ∪ X1 = ∪m k=1 {(uk , g(uk ))|uk ∈ V (γ+1 ◦ γ ())} is a set of edges with no shared endpoints.
20.2
CYCLE EMBEDDING IN FAULTY BUTTERFLY GRAPHS
Embedding a cycle into a wrapped butterfly graph has attracted the efforts of many researchers in recent years [20,184,321,343]. Again, we would like to know the faulttolerant Hamiltonicity of the butterfly graphs. Tsai [303] proved that the faulty wrapped butterfly graph contains a cycle of length n2n − 2 if it has one vertex fault and one edge fault. Moreover, when n is an odd integer, we prove that the wrapped butterfly graph contains a Hamiltonian cycle if it has at most two faults and at least one of them is a vertex fault. To get this goal, we need some properties concerning BF(n). Let u be any vertex of BF(n). We observe that gn (u) = u. Moreover, u, g(u), g2 (u), . . . , gn (u) forms a simple cycle Cgu of length n. We call such cycle of BF(n) a g-cycle at u. Hence, Cgv % Cgu if and only if v ∈ V (Cgu ). As a result, all g-cycles form a partition of the straight edges of BF(n). Meanwhile, any f -edge joins vertices from two different g-cycles. It can f (u) be seen that (u, f (u)) joins vertices from Cgu and Cg . Lemmas 20.5 and 20.6 were proved in Ref. 320. f (u)
LEMMA 20.5 [320] (g(u), g−1 ( f (u))) is an f -edge joining vertices of Cgu and Cg . Moreover, the path u, f (u), g−1 ( f (u)), g(u), u forms a cycle of length 4. Any Cgu contains exactly one vertex at each level. In particular, Cgu contains exactly (a a ...a
)
one vertex at level 0, say 0, a0 a1 . . . an−1 . We use Cg 0 1 n−1 as the name for Cgu . Now, we form a new graph BF(n)G with all the g-cycles of BF(n) as vertices, where two different g-cycles are joined with an edge if and only if there exists at least one u f -edge joining them. The vertex of BF(n)G corresponding to Cgu is denoted by C g . We recall the definition of the hypercube as follows. An n-dimensional hypercube (abbreviated as n-cube) consists of 2n vertices, which are labeled with the 2n binary numbers from 0 to 2n − 1. Two vertices are connected by an edge if and only if their labels differ by exactly one bit. LEMMA 20.6 [320] BF(n)G is isomorphic to an n-dimensional hyper(a a ...a ) cube. Moreover, the set of vertices which are adjacent to C g 0 1 n−1 is (a a1 ...an−1 )
{C g 0
(a a1 ...an−1 )
, Cg 0 u
(a a1 ...an−1 )
, . . . , Cg 0
}.
Let h = (C g , C g ) be any edge of BF(n)G . We use X(h) to denote the set of edges in BF(n) joining vertices from Cgu and Cgv . Using standard counting techniques, we have the following two corollaries. v
COROLLARY 20.1 [184] If (u, f (u)) ∈ X(h) then (g(u), f −1 (g(u))) ∈ X(h) and |X(h)| = 2. Moreover, {u, f (u), g(u), f −1 (g(u))} induces a 4-cycle in BF(n).
ch020.tex
30/6/2008
13: 47
Page 591
Topological Properties of Butterfly Graphs
591
COROLLARY 20.2 [320] There is a unique cycle C such that edges of BF(n) joining vertices between Cgu and C are exactly (u, f (u)) and (g(u), f −1 (g(u))) and in f (u)
that case, C is isomorphic to Cg . u
According to Corollaries 20.1 and 20.2, any edge h = (C g , C g ) in BF(n)G induces a unique 4-cycle in BF(n), with two f -edges and two g-edges. We use Xf (Cgu , Cgv ) to denote the set of f -edges in this 4-cycle, and Xg (Cgu , Cgv ) to denote the set of g-edges in this cycle. v
LEMMA 20.7 Let T be any subtree of BF(n)G and let CgT be the subgraph of BF(n) generated by ⎞ ⎛ ⎟ # # ⎜ # u u v ⎟ u v ⎜ E C X , C X , C ∪ C − C f g g g g g g ⎠ ⎝ u v C g ,C g ∈E(T )
u
C g ∈V (T )
u v C g ,C g ∈E(T )
Then CgT is a cycle of length n × |V (T )|. u
Proof: Let T be a subtree of BF(n)G and let (C g , C g ) be an edge of T . Hence, two v u v cycles Cgu and " Cg vin"BF(n) uare vjoined byutwov f -edges Xf (Cg , Cg ). It is easy to see u that E(Cg ) E(Cg ) Xf (Cg , Cg ) − Xg (Cg , Cg ) forms a cycle of length 2n in BF(n). Therefore, the cycle CgT of BF(n) can be generated by ⎞ ⎟ Cgu , Cgv ⎟ ⎠−
⎛
⎜ # ⎜ E Cgu ∪ ⎝ u
C g ∈V (T )
#
u v C g ,C g ∈E(T )
Xf
v
At the same time, the length of CgT is n × |V (T )|.
#
u v C g ,C g ∈E(T )
Xg Cgu , Cgv
In Figure 20.4a, we have another layout of BF(3). The graph BF(3)G is shown (000) (001) in Figure 20.4b. For example, Xf (Cg , Cg ) = {( 0, 000, 2, 001), ( 2, 000, (000) (001)
0, 001)} and Xg (Cg , Cg ) = {( 0, 000, 2, 000), ( 0, 001, 2, 001)}. Let T be the tree indicated by bold lines in Figure 20.4b. The corresponding CgT is indicated by bold lines in Figure 20.4a. Let u = k, a0 a1 . . . an−1 be any vertex of BF(n) and let u˜ denote the vertex k, a0 a1 . . . an−1 . One can see that f n (u) = u˜ and f 2n (u) = u. Moreover,
u, f (u), f 2 (u), . . . , f 2n (u) forms a simple cycle of length 2n, denoted by Cfu . So all f -cycles form a partition of the cross edges of BF(n). Meanwhile, any g-edge joins vertices from two different f -cycles. And then (u, g(u)) joins vertices from Cfu and g(u)
Cf
. Lemmas 20.8 and 20.9 were proved in Ref. 320.
LEMMA 20.8 [320] ( f (u), g−1 ( f (u))), (˜u, g(˜u)), ( f (˜u), g−1 ( f (˜u))) are g-edges joing(u) ing vertices of Cfu and Cf . Moreover, the paths u, f (u), g−1 ( f (u)), g(u), u and
˜u, f (˜u), g−1 ( f (˜u)), g(˜u), u˜ form two 4-cycles in BF(n).
ch020.tex
30/6/2008
13: 47
Page 592
592
Graph Theory and Interconnection Networks
(001)
(000)
Cg
Cg
(010)
(011)
Cg
Cg
(100)
(101)
Cg
Cg
(111)
(110)
Cg
Cg
(a)
(b)
FIGURE 20.4 (a) Another layout of BF(3) and (b) the graph BF(3)G .
Any Cfu contains exactly two vertices at each level. Suppose that u is one of the vertices in Cfu at level i. Then the other vertex in Cfu at level i is u˜ . Thus, Cfu contains (a a ...a
0)
exactly one vertex at level 0, say 0, a0 a1 . . . an−1 , with an−1 = 0. We use Cf 0 1 n−2 as the name for Cfu . Now, we form a new graph BF(n)F with all the f -cycles of BF(n) as vertices, where two different f -cycles are joined with an edge if and only if there exists a g-edge joining them. The vertex of BF(n)F corresponding to Cfu is denoted u
by C f . We recall the definition of the folded hypercube as follows. An n-dimensional folded hypercube is basically an n-cube augmented with 2n−1 complement edges. Each complement edge connects two vertices whose labels are complements to each other. LEMMA 20.9 [320] BF(n)F is isomorphic to the (n − 1)-dimensional folded (a a ...a 0) hypercube. Moreover, the set of vertices that are adjacent to C f 0 1 n−2 is (a0 a1 ...an−2 0)
{C f
(a0 a1 ...an−2 0)
, Cf u
(a0 a1 ...an−2 0)
, . . . , Cf
(a0 a1 ...an−2 0)
} ∪ {C f
}.
Let h = (C f , C f ) be any edge of BF(n)F . We use Y (h) to denote the set of edges of BF(n) joining vertices from Cfu and Cfv . Using standard counting techniques, we have the following two corollaries. v
COROLLARY 20.3 [185] If (u, g(u)) ∈ Y (h) then ( f (u), g−1 ( f (u))), (˜u, g(˜u)), and ( f (˜u), g−1 ( f (˜u))) are in Y (h) and |Y (h)| = 4. Moreover, {u, f (u), g(u), g−1 ( f (u))} and {˜u, f (˜u), g(˜u), g−1 ( f (˜u))} induce two 4-cycles in BF(n). COROLLARY 20.4 [320] There is a unique cycle C such that edges of BF(n) joining vertices between Cfu and C are exactly (u, g(u)), ( f (u), g−1 ( f (u))), (˜u, g(˜u)), g(u)
and ( f (˜u), g−1 ( f (˜u))), and in that case, C is isomorphic to Cf
.
ch020.tex
30/6/2008
13: 47
Page 593
Topological Properties of Butterfly Graphs
593 u
v
According to Corollaries 20.3 and 20.4, any edge h = (C f , C f ) induces two u v 4-cycles in BF(n). Let α be an assignment of (C f , C f ) ∈ E(BF(n)F ) with one of the 4-cycles that it induced. We use Yfα (Cfu , Cfv ) to denote the set of f -edges induced by α(h) and Ygα (Cfu , Cfv ) to denote the set of g-edges induced by α(h). Hence, |Yfα (Cfu , Cfv )| = |Ygα (Cfu , Cfv )| = 2. LEMMA 20.10 Let T be any subtree of BF(n)F and let CfT ,α be the subgraph of BF(n) generated by ⎛ ⎞ # # ⎜ # ⎟ u α u v ⎟ α u v ⎜ ∪ C − C E C Y , C Y , C g f f f ⎠ f f f ⎝ u
u
C f ∈V (T )
u
v
C f ,C f ∈E(T )
v
C f ,C f ∈E(T )
Then CfT ,α is a cycle of BF(n) of length 2n × |V (T )|. u
u
Proof: Let T be a subtree of BF(n)F and let (C f , C f ) be an edge of T . Hence, (C f , C f ) u v induces two 4-cycles in BF(n). Let α be an assignment of (C f , C f ) ∈ E(BF(n)F ) with one of the 4-cycles it induced. Consequently, two cycles Cfu and Cfv are joined by two g" " edges in Ygα (Cfu , Cfv ). It is easy to see that E(Cfu ) E(Cfv ) Ygα (Cfu , Cfv ) − Yfα (Cfu , Cfv ) v
v
forms a cycle of length 4n in BF(n). Therefore, the subgraph CfT ,α of BF(n) generated by ⎛ ⎞ ⎟ # # ⎜ # ⎜ − E Cfu ∪ Ygα Cfu , Cfv ⎟ Yfα Cfu , Cfv ⎝ ⎠ u
u
C f ∈V (T )
v
C f ,C f ∈E(T )
is a cycle. Moreover, the length of CfT ,α is 2n × |V (T )|.
u
v
C f ,C f ∈E(T )
In Figure 20.5a, we have another layout of BF(3). The graph BF(3)F is shown (000) (100) in Figure 20.5b. For example, Ygα (Cf , Cf ) = {( 0, 000, 1, 000), ( 0, 100, (000)
1, 100)} and Yfα (Cf
(100)
, Cf
) = {( 0, 000, 1, 100), ( 0, 100, 1, 000)}. Let T be
the tree indicated by bold lines in Figure 20.5b. The corresponding CfT ,α is indicated by bold lines in Figure 20.5a. Now, we propose three lemmas. Lemma 20.11 proves that the cycle of length n2n − 2 can be embedded in BF(n) − F for any n ≥ 3 when F consists of one vertex and one edge. Lemma 20.12 shows that the maximum cycle length is n2n − 1 if n is odd when F consists of one vertex and one edge. Lemma 20.13 verifies that the maximum cycle length is n2n − 2 for odd n ≥ 3 when F consists of two vertices. To prove these three lemmas, we use three fundamental cycles, denoted by B1 , B2 , and B3 ( j), respectively, to construct a larger cycle in a faulty wrapped butterfly graph. The cycle B1 shown in Figure 20.6a is constructed as follows. Let a1 =
1, 00 . . . 0 and P1 be the path a1 , g(a1 ), g2 (a1 ), . . . , gn−2 (a1 ). Hence, n
ch020.tex
30/6/2008
13: 47
Page 594
594
Graph Theory and Interconnection Networks
s
q
Cf
r
Cf
(100)
Cf
(000)
(010)
Cf
(110)
p
s
q (a)
(b)
FIGURE 20.5 (a) Another layout of BF(3) and (b) the graph BF(3)F .
gn−2 (a1 ) = a2 = n − 1, 00 . . . 0,
f (a2 ) = 0, 00 . . . 0 1 = a3 ,
n
and
f (a3 ) = 1,
n−1
1 00 . . . 0 1 = a4 . Let P2 be the path a4 , g(a4 ), g2 (a4 ), . . . , gn−1 (a4 ). Consequently, n−2
gn−1 (a4 ) = a5 = 0, 1 00 . . . 0 1 and f −1 (a5 ) = n − 1, 1 00 . . . 0 = a6 . Let P3 be the n−2
n−1
path a6 , g−1 (a6 ), g−2 (a6 ), . . . , g−(n−1) (a6 ). Thus, g−(n−1) (a6 ) = a7 = 0, 1 00 . . . 0 n−1
and f (a7 ) = a1 . Let B1 be a1 , P1 , a2 , a3 , a4 , P2 , a5 , a6 , P3 , a7 , a1 . Obviously, P1 is a path in Cga1 , P2 is a path in Cga4 , and P3 is a path in Cga6 . Since V (Cgu ) ∩ V (Cgv ) = ∅ for u = v ∈ {a1 , a4 , a6 } and n ≥ 3, P1 , P2 , and P3 are disjoint paths. Therefore, B1 is a cycle of length 3n. Similarly, we can construct the basic cycle B2 shown in Figure 20.6b as follows. Let B2 = b1 , Q1 , b2 , b3 , Q2 , b4 , b5 , Q3 , b6 , b7 , Q4 , b8 , b1 , where :
9 n
9
b4 = 1, 00 . . . 0 10 , n−2
:
b7 = n − 2, 00 . . . 0 , n−1
n−2
:
b5 = 0, 1 00 . . . 0 10 , n−3
:
9
b8 = 0, 1 00 . . . 0 n−1
:
b3 = n − 2, 00 . . . 0 10
n
:
9
9
b2 = n − 1, 00 . . . 0 ,
b1 = 1, 00 . . . 0 , 9
:
9
9
:
b6 = n − 1, 1 00 . . . 0 10 n−3
ch020.tex
30/6/2008
13: 47
Page 595
Topological Properties of Butterfly Graphs
P1
00 ... 0
00...01
n
n1
595
00...0
Q1
b 3 n2
n1
1 0
00...010
n
n1
0 a2 0 a3 a1 a4 a7 a 6 a5
0
1 b4
Q 4 b5 n1 b7 b6 0 n2
1
0
n1
P3
100 ... 01
100 ... 0 n1
Q2
n1
b2
b1 b8
0
n1
0
1
n2
100 ... 0
P2
n2
100...010
n1
Q3
n3
(a)
(b) 0
0
1
00...0 c 1
c 8 100...0
n
n1
R1 j
R4
j1
j1
c2
j1
j1
j
j
00 ...0100...0 nj
j
c7 c6
c3 j1
1
R2
100...0100...0
R3
c4
j2
nj
c5 0
1
2
(c)
FIGURE 20.6 (a) A cycle B1 of length 3n if n ≥ 3, (b) a cycle B2 of length 3n if n ≥ 3, and (c) a cycle B3 ( j) of length 2n + 4 if n ≥ 3.
. Q1 = b1 , g(b1 ), g2 (b1 ), . . . , gn−2 (b1 ) . Q2 = b3 , g−1 (b3 ), g−2 (b3 ), . . . , g−(n−3) (b3 ) . Q3 = b5 , g(b5 ), g2 (b5 ), . . . , gn−1 (b5 ) . Q4 = b7 , g(b7 ), g2 (b7 )
Q1 is a path in Cgb1 , Q2 is a path in Cgb3 , Q3 is a path in Cgb5 , and Q4 is a path in Cgb7 . Since V (Cgu ) ∩ V (Cgv ) = ∅ for u = v ∈ {b1 , b3 , b5 , b7 } and n ≥ 3, Q1 , Q2 , Q3 , and Q4 are disjoint paths. Consequently, B2 is a cycle of length 3n.
ch020.tex
30/6/2008
13: 47
Page 596
596
Graph Theory and Interconnection Networks
Fix some j with 2 ≤ j ≤ n − 1. The cycle B3 ( j) shown in Figure 20.6c is constructed as follows. Let B3 (j) = c1 , R1 , c2 , c3 , R2 , c4 , c5 , R3 , c6 , c7 , R4 , c8 , c1 , where : : : 9 9 9 c1 = 1, 00 . . . 0 , n
c2 = j − 1, 00 . . . 0 , n
:
9
c4 = 0, 00 . . . 0 1 00 . . . 0 , n−j
j−1
c6 = j, 1 00 . . . 0 1 00 . . . 0 , j−2
n−j
n−j
j−1
:
9
c5 = 1, 1 00 . . . 0 1 00 . . . 0 n−j
j−2
:
9
c3 = j, 00 . . . 0 1 00 . . . 0
:
9
:
9
c7 = j − 1, 1 00 . . . 0 ,
c8 = 0, 1 00 . . . 0
n−1
n−1
. R1 = c1 , g(c1 ), g2 (c1 ), . . . , g j−2 (c1 ) . R2 = c3 , g−1 (c3 ), g−2 (c3 ), . . . , g−j (c3 ) . R3 = c5 , g−1 (c5 ), g−2 (c5 ), . . . , g−(n−j+1) (c5 ) . R4 = c7 , g−1 (c7 ), g−2 (c7 ), . . . , g−(n−j+1) (c7 ) R1 is a path in Cgc1 , R2 is a path in Cgc3 , R3 is a path in Cgc5 , and R4 is a path in c 7 Cg . Since V (Cgu ) ∩ V (Cgv ) = ∅ for u = v ∈ {c1 , c3 , c5 , c7 } and n ≥ 3, R1 , R2 , R3 , and R4 are disjoint paths. Consequently, B3 ( j) is a cycle of length 2n + 4. We even have
b3 = b4 and c1 = c2 if and only if n = 3. We have V (Bl ) ∩ V (Bk ) = ∅ for 1 ≤ l = k ≤ 3 and n ≥ 4 because P1 = Q1 and P1 ∩ R1 = ∅. LEMMA 20.11 For any integer n ≥ 3, BF(n) − F contains a cycle of length n2n − 2 if F consists of one vertex and one edge. Proof: Since BF(n) is vertex-transitive, we assume that the faulty vertex is x = 0, 00 . . . 0 and the faulty edge is e. Case 1. e is a g-edge. Let e = (u, g(u)) for some u ∈ V (BF(n)). Since n ≥ 3 and BF(n)F is isomorphic to an (n − 1)-dimensional folded hyperx u g(u) cube, BF(n)F − {C f , (C f , C f )} is connected. Let T be any spanning tree of x
u
g(u)
BF(n)F − {C f , (C f , C f )}. By Lemma 20.10, CfT ,α for any α forms an n2n − 2n cycle. Let Sg = {( y, g( y)) | y = f 2k (x); 1 ≤ k ≤ n − 1}, Sg = {( f ( y), g−1 ( f ( y))) | y = f 2k (x); 1 ≤ k ≤ n − 1}, Sf = {( y, f ( y)) | y = f 2k (x); 1 ≤ k ≤ n − 1}, and Sf = {(g( y), f −1 (g( y))) | y = g(x)
f 2k (x); 1 ≤ k ≤ n − 1}. Accordingly, Sf ⊂ E(Cfx ) and Sf ⊂ E(Cf
Case 1.1.
).
e∈ / Sg ∪ Sg (see Figure 20.7). One can observe that Sg ∪ Sg ∪ Sf ∪ Sf forms
n − 1 disjoint 4-cycles in BF(n). Meanwhile, Sf ⊂ E(CfT ,α ) and Sf ∩ E(CfT ,α ) = ∅.
ch020.tex
30/6/2008
13: 47
Page 597
Topological Properties of Butterfly Graphs
597
g (u 4) u5
g 1(u 5)
x
u4 e
u3
CfX u1 u2 CfT, α
g (u 2) g 1(u 3)
FIGURE 20.7 An illustration for Case 1.1 with n = 3, Sg = {(u2 , g(u2 )), (u4 , g(u4 ))}, Sg = {(u3 , g−1 (u3 )), (u5 , g−1 (u5 ))}, Sf = {(u2 , u3 ), (u4 , u5 )}, and Sf = {(g(u2 ), g−1 (u3 )), (g(u4 ), g−1 (u5 ))}.
Hence,
E CfT ,α ∪ Sg ∪ Sg ∪ Sf − Sf
forms a cycle in BF(n) − F and the cycle length is n2n − 2. Case 1.2. e ∈ Sg ∪ Sg . Constructing the cycle of length n2n − 2 is similar to Case 1.1, except that Sg = {( y, g( y)) | y = f 2k−1 (x); 1 ≤ k ≤ n − 1}, Sg = {( f ( y), g−1 ( f ( y))) | y = f 2k−1 (x); 1 ≤ k ≤ n − 1}, Sf = {( y, f ( y)) | y = f 2k−1 (x); 1 ≤ k ≤ n − 1}, and Sf = {(g( y), f −1 (g( y))) | y = f 2k−1 (x); 1 ≤ k ≤ n − 1}. Case 2. e is an f -edge. Let e = (u, f (u)) for some u ∈ V (BF(n)). Case 2.1. n is an even integer. Since n ≥ 3 and BF(n)G is isomorphic to the nx u f (u) dimensional hypercube, BF(n)G − {C g , (C g , C g )} is connected. Let T be any x
u
f (u)
spanning tree of BF(n)G − {C g , (C g , C g )}. By Lemma 20.7, CgT forms a cycle u
f (u)
spanning V (BF(n)) − V (Cgx ). Since T does not contain the edge (C g , C g ) and f (u) y f ( y) e ∈ Xf (Cgu , Cg ), CgT does not contain the faulty edge e. Let S = Xf (Cg , Cg ) | y = g2k (x); 1 ≤ k < n/2 . " Case 2.1.1. e ∈ / S. One can observe that (u,v)∈S Xg (Cgu , Cgv ) ∪ S forms n/2 − 1 dis; < joint 4-cycles in BF(n) − F. Let S1 = ( f ( y), g−1 ( f ( y))) | y = g2k (x); 1 ≤ k < n/2 . Hence, S1 ⊂ E(CgT ) and S1 ⊂ ∪(u,v)∈S Xg (Cgu , Cgv ). Therefore, # (u,v)∈S
Xg Cgu , Cgv ∪ S ∪ E CgT − S1
forms a cycle of length n2n − 2 in BF(n) − F. Case 2.1.2. e ∈ S. The cycle can be constructed usingthe method of Case 2.1.1, y f ( y) except that S = Xf (Cg , Cg ) | y = g2k−1 (x); 1 ≤ k < n/2 .
ch020.tex
30/6/2008
13: 47
Page 598
598
Graph Theory and Interconnection Networks
f (u3) u4 f 1(u4)
Cgx
x
u3
e
z Cgz u2
u1
CgT f 1(u2)
f(u1)
FIGURE 20.8 An illustration for Case 2.2.1 with n = 3, S1 = {(u3 , f (u3 )), (u4 , f −1 (u4 ))}, and S2 = {(u1 , f (u1 )), (u2 , f −1 (u2 ))}.
y f ( y) Case 2.2. n is an odd integer. Let S1 = Xf (Cg , Cg ) | y = g2k−1 (x); 1 ≤ k ≤ (n − 1)/2 . u
f (u)
Case 2.2.1. e ∈ / S1 (see Figure 20.8). Since C g = C g , we can choose z ∈ {u, f (u)} according to the following rules: u
x
f (u)
x
z
x
1. If either C g = C g or C g = C g , then we choose z such that C g = C g . z x 2. Otherwise, we choose z such that (C g , C g ) ∈ / E(BF(n)G ). Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, x z x z BF(n)G − {C g , C g } is connected. Let T be any spanning tree of BF(n)G − {C g , C g }. By Lemma 20.7, CgT is a cycle spanning V (BF(n)) − V (Cgx ) − V (Cgz ) and it does y f ( y) not contain e. Let S2 = Xf (Cg , Cg ) | y = g2k−1 (z); 1 ≤ k ≤ (n − 1)/2 . Hence, " S1 ∩ S2 = ∅ and S1 ∪ S2 is fault-free. We observe that (u,v)∈S1 Xg (Cgu , Cgv ) ∪ S1 forms (n − 1)/2 disjoint 4-cycles and ∪(u,v)∈S2 Xg (Cgu , Cgv ) ∪ S2 forms (n − 1)/2 ; < disjoint 4-cycles. Let S3 = ( f ( y), g−1 ( f ( y))) | y = g2k−1 (x); 1 ≤ k ≤ (n − 1)/2 and ; < S4 = ( f ( y), g−1 ( f ( y))) | y = g2k−1 (z); 1 ≤ k ≤ (n − 1)/2 . Hence, S3 ∩ S4 = ∅ and S3 ∪ S4 ⊂ E(CgT ). Meanwhile, S3 ∪ S4 ⊂ ∪(u,v)∈(S1 ∪S2 ) Xg (Cgu , Cgv ). Therefore, # Xg Cgu , Cgv ∪ S1 ∪ S2 ∪ E CgT − S3 − S4 (u,v)∈(S1 ∪S2 )
forms a cycle in BF(n) − F and this cycle length is n2n − 2. Case 2.2.2. e ∈ S1 (see Figure 20.9). Since n ≥ 3, there exists y ∈ V (BF(n)) such y that f ( y) ∈ V (Cgx ). So both ( y, f ( y)) and (g( y), f −1 (g( y))) join vertices of Cg and a a a a 1 3 5 Cgx . Let W1 = V (Cga1 ) ∪ V (Cga3 ) ∪ V (Cga5 ) ∪ V (Cga7 ) and W 1 = {C g , C g , C g , C g7 }.
ch020.tex
30/6/2008
13: 47
Page 599
Topological Properties of Butterfly Graphs
599
f (u3) f f
1
(u2)
u1 e
f (u1)
u2
y
(u4) f 1(z2)
u3
u4 Cgy
1
x
f (z1) B1 z1
z2
T
Cg
FIGURE 20.9 An illustration for Case 2.2.2 with n = 3, S3 = {(u3 , f (u3 )), (u4 , f −1 (u4 ))}, and S4 = {(u1 , f (u1 )), (u2 , f −1 (u2 )). y
x
Hence, C g is not adjacent to any vertex in W 1 − {C g }. Since n ≥ 3 and BF(n)G is y isomorphic to an n-dimensional hypercube, BF(n)G − W 1 − {C g } is connected. Let T y be any spanning tree of BF(n)G − W 1 − {C g }. By Lemma 20.7, CgT is a cycle spanning y
f (w)
V (BF(n)) − W1 − V (Cg ). There exists w ∈ V (B1 ) such that Xf (Cgw , Cg and (w, f (w)) joins some vertex in both B1 and CgT . Then
) is fault-free
# # E CgT Xf Cgw , Cgf (w) − Xg Cgw , Cgf (w) Ce = E(B1 ) y
n forms a cycle of length n2 − 2n spanning (V (BF(n)) − W1 − V (Cg )) ∪ V (B1). f (s)
Let S3 = Xf (Cgs , Cg ) | s = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2 and S4 = Xf (Cgt , f (t) Cg ) |t = g2k−1 ( y); 1 ≤ k ≤ (n − 1)/2 . Hence, S3 ∩ S4 = ∅ and S3 ∪ S4 is faultfree. We observe that ∪(u,v)∈(S3 ∪S4 ) Xg (Cgu , Cgv )) ∪ S3 ∪ S4 forms n − 1 disjoint ; < 4-cycles. Let S5 = ( f (s), g−1 ( f (s))) | s = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2 and S6 = ; < ( f (t), g−1 ( f (t))) | t = g2k−1 ( y); 1 ≤ k ≤ (n − 1)/2 . Hence, S5 ∩ S6 = ∅, S5 ∪ S6 is a subset of both E(Ce ) and ∪(u,v)∈(S3 ∪S4 ) Xg (Cgu , Cgv )). Therefore, # (u,v)∈(S3 ∪S4 )
Xg Cgu , Cgv ∪ S3 ∪ S4 ∪ E(Ce ) − S5 − S6
forms a cycle of length n2n − 2 in BF(n) − F.
LEMMA 20.12 For any odd integer n ≥ 3, BF(n) − F is Hamiltonian if F consists of one vertex and one edge. Proof: Since BF(n) is vertex-transitive, we may assume that the faulty vertex is x = 0, 00 . . . 0 and the faulty edge is e. Let W1 = V (Cga1 ) ∪ V (Cga3 ) ∪ V (Cga5 ) ∪ V (Cga7 ) a a a a and W 1 = {C g1 , C g3 , C g5 , C g7 }.
ch020.tex
30/6/2008
13: 47
Page 600
600
Graph Theory and Interconnection Networks
f(z1) f
f (u1)
1
(z2) u2
z2
f
1
(u2)
u1
z1 x B1
T
Cg
FIGURE 20.10 An illustration for Case 1.1 with n = 3 and S = {(u1 , f (u1 )), (u2 , f −1 (u2 ))}.
Case 1.
e is an f -edge. Let e = (u, f (u)) for some u ∈ V (BF(n)).
Case 1.1. {u, f (u)} ∩ (V (Cga3 ) ∪ V (Cga7 )) = ∅ (see Figure 20.10). Since n ≥ 3 and u
f (u)
BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − W 1 − {(C g , C g )} u
f (u)
is connected. Let T be any spanning tree of BF(n)G − W 1 − {(C g , C g )}. By Lemma 20.7, CgT is a cycle spanning V (BF(n)) − W1 and it does not contain e. y f (y) Let S = Xf (Cg , Cg ) | y = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2 . Hence, ∪(u,v)∈S Xg (Cgu , ; Cgv ) ∪ S forms (n − 1)/2 disjoint 4-cycles. Let S1 = ( f ( y), g−1 ( f ( y))) | y = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2}. Consequently, S1 is a subset of both ∪(u,v) ∈ S Xg (Cgu , Cgv ) and E(CgT ). Therefore, #
Ce =
(u,v)∈S
Xg Cgu , Cgv ∪ S ∪ E CgT − S1
forms a cycle of length n2n − 3n − 1 spanning V (BF(n)) − V (B1 ) − {x} and it does not f (z) contain e. Since the length of B1 is 3n, there exists z ∈ V (B1 ) such that Xf (Cgz , Cg ) is fault-free and (z, f (z)) joins some vertex in both Ce and B1 . Therefore,
E(Ce )
#
E(B1 )
#
Xf Cgz , Cgf (z) − Xg Cgz , Cgf (z)
forms a Hamiltonian cycle of BF(n) − F. Case 1.2.
y f (y) {u, f (u)} ∩ (V (Cga3 ) ∪ V (Cga7 )) = ∅. Let S = Xf (Cg , Cg ) | y = g2k−1 (x);
1 ≤ k ≤ (n − 1)/2} (see Figure 20.11). Hence, e ∈ / S. Since n ≥ 3 and BF(n)G x is isomorphic to an n-dimensional hypercube, BF(n)G − {C g } is connected. Let T x be any spanning tree of BF(n)G − {C g }. By Lemma 20.7, CgT is a cycle spanning
ch020.tex
30/6/2008
13: 47
Page 601
Topological Properties of Butterfly Graphs
601
f (u1) f
u2
1
(u2)
C gx
x
u1
CgT
FIGURE 20.11 An illustration for Case 1.2 with n = 3 and S = {(u1 , f (u1 )), (u2 , f −1 (u2 ))}.
V (BF(n)) − V (Cgx ). Since S is fault-free, ∪(u,v) ∈ S Xg (Cgu , Cgv ) ∪ S forms (n − 1)/2 dis; < joint 4-cycles. Let S1 = ( f (y), g−1 ( f (y))) | y = g2k−1 (x); 1 ≤ k ≤ (n − 1)/2 . Hence, S1 is a subset of both ∪(u,v) ∈ S Xg (Cgu , Cgv ) and E(CgT ). Therefore, # (u,v)∈S
Xg Cgu , Cgv ∪ S ∪ E CgT − S1
forms a Hamiltonian cycle of BF(n) − F. Case 2. e is a g-edge. Let e = (u, g(u)) for some u ∈ V (BF(n)). u
x
u
x
Case 2.1. C g = C g . Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − W 1 is connected. Let T be any spanning tree of BF(n)G − W 1 . Constructing a Hamiltonian cycle for this case is very similar to Case 1.1, except that the chosen vertex z is vertex u when e ∈ E(B1 ). u
x
Case 2.2. C g = C g and C g is not connected with C g in BF(n)G. Since n ≥ 3 and x BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − {C g } is connected. x
u
f (u)
Let T be a spanning tree of BF(n)G − {C g } such that (C g , C g ) ∈ E(T ). Then the Hamiltonian cycle of BF(n) − F can be constructed by the same method used in Case 1.2. Case 2.3.
u
x
u
x
(C g , C g ) ∈ E(BF(n)G ) (that is, C g and C g are connected). u
a
u
a
Case 2.3.1. C g = C g3 and C g = C g7 (see Figure 20.12). Since n ≥ 3 and BF(n)G is u isomorphic to an n-dimensional hypercube, BF(n)G − W 1 − {C g } is connected. Let T u be any spanning tree of BF(n)G − W 1 − {C g }. By Lemma 20.7, CgT is a cycle spanning y f (y) V (BF(n)) − W1 − V (Cgu ). Let S = Xf (Cg , Cg ) | y = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2 . Hence, ∪(u,v)∈S Xg (Cgu , Cgv ) ∪ S forms (n − 1)/2 disjoint 4-cycles. Let S1 = {( f (y), < g−1 ( f (y))) | y = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2 . Accordingly, S1 is a subset of both
ch020.tex
30/6/2008
13: 47
Page 602
602
Graph Theory and Interconnection Networks
f (v1)
T
Cg u
f (z1)
z2
u Cg e
v3 x
v2
v4
f 1(v2) v1
B1
z1
f 1(z2)
FIGURE 20.12 An illustration for Case 2.3.1 with n = 3, S = {(v1 , f (v1 )), (v2 , f −1 (v2 ))}, f (u) f (z) f (u) Xf (Cgu , Cg ) = {(u, v3 ), (z1 , v4 )}, Xf (Cgz , Cg )) = {(z1 , f (z1 )), (z2 , f −1 (z2 ))}, Xg (Cgu , Cg ) = f (z)
{(u, z1 ), (v3 , v4 )}, and Xg (Cgz , Cg ) = {(z1 , z2 ), ( f (z1 ), f −1 (z2 ))}.
∪(u,v)∈S Xg (Cgu , Cgv ) and E(CgT ). Therefore, Ce =
# (u,v)∈S
Xg Cgu , Cgv ∪ S ∪ E CgT − S1
forms a cycle spanning V (BF(n)) − V (B1 ) − V (Cgu ) − {x}. Since the length of B1 is 3n, we can choose a vertex z ∈ V (Cgu ) such that f (z) ∈ V (Ce ) if f (u) ∈ V (B1 ) or f (z) ∈ / V (B1 ). Therefore, V (B1 ) if f (u) ∈
E(Ce ) ∪ E(B1 ) ∪ E Cgu ∪ Xf Cgu , Cgf (u) ∪ Xf Cgz , Cgf (z) − Xg Cgu , Cgf (u) − Xg Cgz , Cgf (z)
forms a Hamiltonian cycle of BF(n) − F.
u a y f (y) Case 2.3.2. C g = C g3 (see Figure 20.13). Let S = Xg (Cg , Cg )|y = g2k−1 (a3 ); 1 ≤ k ≤ (n − 1)/2}. Assume that e ∈ / S. Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − W 1 is connected. Let T be any spanning tree of BF(n)G − W 1 . Then the Hamiltonian cycle of BF(n) − F can be constructed by the same method used in Case 1.1. Assume that e ∈ S. Let W2 = V (Cgb1 ) ∪ V (Cgb3 ) ∪ V (Cgb5 ) ∪ V (Cgb7 ) and b
b
b
b
W 2 = {C g1 , C g3 , C g5 , C g7 }. Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − W 2 is connected. Let T be a spanning tree of BF(n)G − W 2 such u f (u) that (C g , C g ) ∈ E(T ). By Lemma 20.7, CgT is a cycle spanning V (BF(n)) − W2 . Let
ch020.tex
30/6/2008
13: 47
Page 603
Topological Properties of Butterfly Graphs
603
f 1(v2) u 2,001
f 1(w )
e f (u)
2
u
Cg
1
0
0 2 1 z 1 2
1
2 w 1,001
1 0
f (z1)
f (v1)
v1 v2
x B2 z2
f 1(z2)
FIGURE 20.13 An illustration for the Case 2.3.2 with n = 3, e = ( 2, 001, 1, 001), and S2 = ∅.
y f (y) S2 = Xf (Cg , Cg ) y = g2k−1 (b8 ); 1 ≤ k ≤ (n − 3)/2 . Then ⎛
# Ce = ⎝E CgT ∪ S2 ∪ Xg Cgu , Cgv ∪ Xf Cgg(b3 ) , Cgf (g(b3 )) (u,v)∈S2
⎞ & = n−3 g(b3 ) f (g(b3 )) ⎠ −1 2k−1 ∪ Xg Cg , Cg − f (y), g ( f (y)) y = g (b8 ); 1 ≤ k ≤ 2 − {( f (g(b3 )), f −1 (g2 (b3 )))} forms a cycle spanning V (BF(n)) − V (B2 ) − {x} and it does not contain e. Since the length of B2 is 3n, there exists w ∈ V (B2 ) such that (w, f (w)) joins some vertex in f (w) both Ce and B2 . Obviously, Xf (Cgw , Cg ) is fault-free. Then
E(Ce ) ∪ E(B2 ) ∪ Xf Cgw , Cgf (w) − Xg Cgw , Cgf (w)
forms a Hamiltonian cycle of BF(n) − F. u
a
Case 2.3.3. C g = C g7 . Suppose that e ∈ Xg (Cgx , Cga7 ). Hence, e = ( 0, 10 . . . 00, 1, 100 . . . 0). We observe / E(B2 ). Using the same method used in the situation e ∈ S of that e ∈ E(B1 ) and e ∈ Case 2.3.2, the Hamiltonian cycle of BF(n) − F can be constructed. Suppose that e ∈ / Xg (Cgx , Cga7 ). Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − W 1 is connected. Let T be any spanning tree
ch020.tex
30/6/2008
13: 47
Page 604
604
Graph Theory and Interconnection Networks
of BF(n)G − W 1 and e = (u, g(u)) for some u ∈ V (BF(n)). Constructing a Hamiltonian cycle for this case is very similar to Case 1.1, except that the chosen vertex z is vertex u when e ∈ E(B1 ). LEMMA 20.13 For any odd integer n ≥ 3, BF(n) − F is Hamiltonian if F consists of two vertices. Proof: Since BF(n) is vertex-transitive, we may assume that one faulty vertex is c c c c x = 0, 00 . . . 0 and the other is y. Let W 3 = {C g1 , C g3 , C g5 , C g7 }. x
y
Case 1. C g = C g (see Figure 20.14). Let y = j, 00 . . . 0 for some 1 ≤ j ≤ n − 1. n
Since n is an odd integer, without loss of generality, we may assume that j is an even integer. Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, BF(n)G − W 3 is connected. Let T be any spanning tree of BF(n)G − W 3 . By Lemma 20.7, CgT is a cycle spanning V (BF(n)) − W3 . Let &
= n−j−1 Xf Cgy , Cgf (y) y = g2k (c2 ); 1 ≤ k ≤ 2
&
= n−j−1 Xf Cgy , Cgf (y) y = g2k−1 (c3 ); 1 ≤ k ≤ 2
&
= j Xf Cgy , Cgf (y) y = g2k−1 (c5 ); 1 ≤ k ≤ − 1 2
&
= j Xf Cgy , Cgf (y) y = g2k−1 (c8 ); 1 ≤ k ≤ − 1 2
S1 =
S2 =
S3 =
S4 =
f (u7) f (u1)
0 1 x c 1
u2 6
f 1(u2)
f
1
(u4) f(u3)
u1 u3
4 y
6
u4
z2 c 8
1
z1
5
5
u8
0
3
c2 c3
c B3(4) c67
c4
c5 0
1
1
(u8)
2 u7
f (z1)
3
f 4
4
f
3 u6 2
u5
1
(z2)
f (u5) f 1(u6)
CgT
FIGURE 20.14 An illustration for Case 1 with j = 4, n = 7, S1 = {(u1 , f (u1 )), (u2 , f −1 (u2 ))}, S2 = {(u3 , f (u3 )), (u4 , f −1 (u4 ))}, S3 = {(u5 , f (u5 )), (u6 , f −1 (u6 ))}, and S4 = {(u7 , f (u7 )), (u8 , f −1 (u8 ))}.
ch020.tex
30/6/2008
13: 47
Page 605
Topological Properties of Butterfly Graphs
605
" One can observe that Si ∩ Sj = ∅ for 1 ≤ i = j ≤ 4 and (u,v) ∈ S1 ∪S2 ∪S3 ∪S4 Xg (Cgu , Cgv ) ∪ S1 ∪ S2 ∪ S3 ∪ S4 forms n − 3 disjoint 4-cycles. Let = & n−j−1 f (y), g−1 ( f (y)) y = g2k (c2 ); 1 ≤ k ≤ S5 = 2 & = n−j−1 −1 2k−1 S6 = f (y), g ( f (y)) y = g (c3 ); 1 ≤ k ≤ 2 = & j S7 = f (y), g−1 ( f (y)) y = g2k−1 (c5 ); 1 ≤ k ≤ − 1 2 & = j −1 2k−1 S8 = f (y), g ( f (y)) y = g (c8 ); 1 ≤ k ≤ − 1 2 Consequently, S5 ∩ S6 ∩ S7 ∩ S8 = ∅, and S5 ∪ S6 ∪ S7 ∪ S8 is a subset of both E(CgT ) and ∪(u,v)∈S1 ∪S2 ∪S3 ∪S4 Xg (Cgu , Cgv ). Therefore, #
Ce =
(u,v)∈S1 ∪S2 ∪S3 ∪S4
Xg Cgu , Cgv ∪ S1 ∪ S2 ∪ S3 ∪ S4 ∪ E CgT − S5 − S6 − S7 − S8
forms a cycle of length n2n − 2n − 6 spanning V (BF(n)) − V (B3 ( j)) − {x, y}. Since f (z) the length of B3 ( j) is 2n + 4, there exists z ∈ V (B3 ( j)) such that Xf (Cgz , Cg ) is fault-free and (z, f (z)) joins some vertex in both Ce and B3 ( j). Then E(Ce ) ∪ E(B3 ( j)) ∪ Xf Cgz , Cgf (z) − Xg Cgz , Cgf (z) forms a Hamiltonian cycle of BF(n) − F. x
y
x
y
Case 2. C g = C g and C g is not connected with C g in BF(n)G (see Figure 20.15). Since n ≥ 3 and BF(n)G is isomorphic to an n-dimensional hypercube, x y x y BF(n)G − {C g , C g } is connected. Let T be any spanning tree of BF(n)G − {C g , C g }. y By Lemma 20.7, CgT is a cycle spanning V (BF(n)) − V (Cgx ) − V (Cg ). Let S1 = f (s) f (t) Xf (Cgs , Cg ) | s = g2k−1 (x); 1 ≤ k ≤ (n − 1)/2 and S2 = {Xf (Cgt , Cg ) | t = g2k−1 (y); 1 ≤ k ≤ (n − 1)/2}. Since S1 ∩ S2 = ∅ and S1 ∪ S2 is fault-free, ∪(u,v)∈S1 ∪S2 Xg (Cgu , Cgv ) ; ∪ S1 ∪ S2 forms n − 1 disjoint 4-cycles. Let S3 = ( f (s), g−1 ( f (s))) | s = g2k−1 (x); 1 ; < ≤ k ≤ (n − 1)/2} and S4 = ( f (t), g−1 ( f (t))) | t = g2k−1 (y); 1 ≤ k ≤ (n − 1)/2 . Hence, S3 ∩ S4 = ∅ and S3 ∪ S4 ⊂ E(CgT ). At the same time, S3 ∪ S4 ⊂ ∪(u,v)∈(S1 ∪S2 ) Xg (Cgu , Cgv ). Therefore, # Xg Cgu , Cgv ∪ S1 ∪ S2 ∪ E CgT − S3 − S4 (u,v)∈(S1 ∪S2 )
forms a Hamiltonian cycle of BF(n) − F. Case 3.
x
y
x
y
(C g , C g ) ∈ E(BF(n)G ) (that is, C g and C g are connected).
ch020.tex
30/6/2008
13: 47
Page 606
606
Graph Theory and Interconnection Networks
f (u3) u4 f 1(u4)
Cgx u3
x y Cgy
u2
u1
CgT
f (u1)
f 1(u2)
FIGURE 20.15 An illustration for Case 2 with n = 3, S1 = {(u3 , f (u3 )), (u4 , f −1 (u4 ))}, and S2 = {(u1 , f (u1 )), (u2 , f −1 (u2 ))}.
y
a
y
a
Case 3.1. C g = C g3 and C g = C g7 (see Figure 20.9). Since BF(n)G is an n-dimensional hypercube with n ≥ 3, Cga3 , Cga5 , and Cga7 are fault-free. As a result, a y y C g3 is not adjacent to C g in BF(n)G . Since BF(n)G − W 1 − {C g } is connected, y let T be any spanning tree of BF(n)G − W 1 − {C g }. The Hamiltonian cycle of the graph BF(n) − F can be constructed by the same method used in Case 2.2.2 of Lemma 20.11. y a y a Case 3.2. C g = C g3 or C g = C g7 . Let S1 = 2k − 1, 00 . . . 0 1 | 1 ≤ k ≤ (n − 1)/2 n−1 and S2 = 2k, 1 00 . . . 0 | 1 ≤ k ≤ (n − 1)/2 . Therefore, there does not exist any n−1 f (u)
edge in Xf (Cgu , Cg
y
) that joins vertices of Cgx and Cg for all u ∈ S1 ∪ S2 .
Case 3.2.1. y ∈ / S1 ∪ S2 (see Figure 20.15). Since n ≥ 3 and BF(n)G is isomorphic to x y an n-dimensional hypercube, BF(n)G − {C g , C g } is connected. Let T be any spanning x y tree of BF(n)G − {C g , C g }. With the same method used in Case 2, the Hamiltonian cycle of the graph BF(n) − F can be constructed. Case 3.2.2. y ∈ S1 ∪ S2 . Given an integer k with 0 ≤ k < n, the mapping σk from V (BF(n)) into V (BF(n)) can be defined by σk ( l, a0 a1 . . . an−1 ) = (l − k) mod n, ak ak+1 . . . an−1 a0 a1 . . . ak−1 . Similarly, we can define the mapping ϕi from V (BF(n)) into V (BF(n)) as ϕi ( l, a0 a1 . . . , ai ai+1 , . . . , an−1 ) = l, a0 a1 . . . ai ai+1 . . . an−1 where 0 ≤ i < n. Hence, σk and ϕi are two automorphisms of BF(n).
ch020.tex
30/6/2008
13: 47
Page 607
Topological Properties of Butterfly Graphs
607
Suppose that y ∈ S1 . Then y = l, 00 . . . 0 1 for some odd l, 1 ≤ l ≤ n − 2. Accordn−1
ingly, ϕn−1−l ◦ σl is an automorphism of BF(n) such that ϕn−1−l ◦ σl (y) = x and ϕn−1−l ◦ σl (x) = n − l, 00 . . . 0 1 00 . . . 0 = z. Consequently, z ∈ / S1 ∪ S2 . Theren−1−l
l
fore, we can construct a Hamiltonian cycle C in BF(n) − {x, z} by using the same method as in Case 3.2.1. Finally, (ϕn−1−l ◦ σl )−1 (C) also forms a Hamiltonian cycle of BF(n) − {x, y}. Suppose that y ∈ S2 . Then y = l, 1 00 . . . 0 for some even l, 2 ≤ l ≤ n − 1. n−1
Hence, ϕn−l ◦ σl is an automorphism of BF(n) such that ϕn−l ◦ σl (y) = x and / S1 ∪ S2 . With the same ϕn−l ◦ σl (x) = n − l, 00 . . . 0 1 00 . . . 0 = z. Consequently, z ∈ n−l
l−1
method used in Case 3.2.1, we can construct a Hamiltonian cycle C in BF(n) − {x, z}. Hence, (ϕn−l ◦ σl )−1 (C) also forms a Hamiltonian cycle of BF(n) − {x, y}. With a similar but easier proof, we have the following two lemmas. LEMMA 20.14 [185] For any integer n ≥ 3, BF(n) − F is Hamiltonian if F consists of two edges. LEMMA 20.15 [321] For any integer n ≥ 3, BF(n) − F contains a cycle of length n2n − 2 if F consists of one vertex and a cycle of length n2n − 4 if F consists of two vertices. Combining Lemmas 20.11 through 20.15, we have the following theorem. THEOREM 20.1 For any integer n with n ≥ 3, let F ⊂ V (BF(n)) ∪ E(BF(n)), fv = |F ∩ V (BF(n))|, and |F| ≤ 2. BF(n) − F contains a cycle of length n × 2n − 2fv . In addition, BF(n) − F contains a Hamiltonian cycle if n is an odd integer.
20.3
SPANNING CONNECTIVITY FOR BUTTERFLY GRAPHS
Of course, we would like to know the spanning connectivity properties of a hypercube. Kueng et al. [207] proved that the wrapped butterfly graph BF(n) is super spanning laceable if n is even and BF(n) is super spanning connected if n is odd. We only prove that BF(n) is 1∗ -connected and 2∗ -connected if n is odd, and is 1∗ -laceable and 2∗ -laceable if n is even. Yet we need more properties about BF(n). Let G be a subgraph of BF(n) and let C be a cycle of G. Then C is an -scheduled cycle [343] with respect to G if every level- vertex of G is incident with a level( − 1)mod n edge and a level- edge in C. Furthermore, C is a totally scheduled cycle [343] of G if it is an -scheduled cycle of G for all ∈ Zn . Obviously, γi (C) with i ∈ {0, 1} is a totally scheduled cycle of γi (G) if C is a totally scheduled cycle of G. LEMMA 20.16 Assume that n ≥ 3 and k ≥ 1. Suppose that {P1 , . . . , Pk } is a k-container of BF(n) " between two " vertices x and y with the following conditions: (1) V (BF(n)) − ki=1 V (Pi ) = m i=1 {ui , g(ui )|ui ∈ V (BF(n))} with some m ≥ 1
ch020.tex
30/6/2008
13: 47
Page 608
608
Graph Theory and Interconnection Networks ij 0000 ij 0010
ij0001
ij 0011
ij 0000 ij 0010
1 ij 00 1
ij 10
ij01
ij 11
ij 00 1
2
3
2
i j0001
ij 0011
1 ij 10
ij01
ij 11 2
3
2
4
4 3
3 5
5
0
0 0
1
0
1
1
(a)
(b)
1
(c)
(d) i, j
FIGURE 20.16 (a) A weakly 2-scheduled Hamiltonian path P1 of BF0,1 (4) joins 1, ij00 i, j,0,0 i, j to 2, ij10; (b) γ30 ◦ γ20 (P1 ) in BF0,1,2,3 (6) = γ30 ◦ γ20 (BF0,1 (4)); (c) a weakly 2-scheduled i, j i, j,0,0 Hamiltonian path P2 of BF0,1 (4) joins 1, ij00 to 2, ij00; and (d) γ30 ◦ γ20 (P2 ) in BF0,1,2,3 (6). −1 ◦ f (u )) ⊆ such that {ui |1 ≤ i ≤ m} ∩ {g(ui )|1 ≤ i ≤ m} = ∅ and (2) ∪m i i=1 {( f (ui ), g k ∗ ∪i=1 E(Pi ). Then there exists a k -container of BF(n) between x and y. " " " −1 ◦ g(u ))} Proof: Let A = m {(ui , g(ui ))} ∪ m {(ui , f (ui ))} ∪ m i i=1 i=1 i=1 {(g(ui ), f "m " k −1 and B = i=1 {( f (ui ), g ◦ f (ui ))}. Obviously, A ∩ ( i=1 E(Pi )) = ∅. Then " (( ki=1 E(Pi )) ∪ A) − B forms a k ∗ -container of BF(n) between x and y.
A path P of BF(n) is -scheduled if every level- vertex of I(P) is incident to a level-( − 1)mod n edge and a level- edge on P. A path P of BF(n) is weakly -scheduled if at least one level- vertex of I(P) is incident to a level-( − 1)mod n edge and a level- edge on P. Figure 20.16 illustrates two weakly 2-scheduled Hamiltonian i, j i, j,0,0 paths P1 and P2 of BF0,1 (4) and their images γ30 ◦γ20 (P1 ) and γ30 ◦γ20 (P2 ) in BF0,1,2,3 (6), respectively. THEOREM 20.2 [343] Assume that n ≥ 3. Every BF(n) has a totally scheduled Hamiltonian cycle. Thus, BF(n) is 2∗ -connected. Proof: We prove this theorem by induction on n. Obviously, BF(3) contains a totally scheduled Hamiltonian cycle (See Figure 20.17). Assume that BF(n − 1) has a totally scheduled Hamiltonian cycle C for n ≥ 4. Accordingly, γ00 (C) and γ01 (C) are totally scheduled Hamiltonian cycles of γ00 (BF(n − 1)) = BF00 (n)
ch020.tex
30/6/2008
13: 47
Page 609
Topological Properties of Butterfly Graphs
609
000 100 010 110 001 101 011 111 0
1
2
0
FIGURE 20.17 A totally scheduled Hamiltonian cycle of BF(3).
and γ01 (BF(n − 1)) = BF01 (n), respectively. Since BF(n) can be partitioned into {BF00 (n), BF01 (n)}, then the cycle generated by (E(γ00 (C)) ∪ E(γ01 (C)) ∪ {( 0, 0n , 1, 10n−1 ), ( 1, 0n , 0, 10n−1 )}) − {( 0, 0n , 1, 0n ), ( 0, 10n−1 , 1, 10n−1 )} is a totally scheduled Hamiltonian cycle of BF(n). Thus, BF(n) is 2∗ -connected.
By stretching operation, we have the following lemma and corollary. LEMMA 20.17 Let n ≥ 3. Assume that 0 ≤ ≤ n − 2 and i, j ∈ Z2 . Then there exists i, j a totally scheduled Hamiltonian cycle of BF,+1 (n). COROLLARY 20.5 Assume that n ≥ 4 and i, j, p, q ∈ Z2 . Then there exists a totally i, j,p,q scheduled Hamiltonian cycle of BF0,1,2,3 (n), including all straight edges of level 0, i, j,p,q
level 1, level 2, and level 3 in BF0,1,2,3 (n).
To prove that BF(n) is 1∗ -connected (respectively 1∗ -laceable) for odd n (respectively even n), we need the following two lemmas. LEMMA 20.18 Let u = 0, 000 and let v be a level- vertex of BF(3) for any ∈ Z3 . Then there exists a weakly -scheduled Hamiltonian path of BF(3) joining u to v. Proof: With symmetry, we assume that ∈ {0, 2}. Let v = , x0 x1 x2 . ij
Case 1. Suppose that = 1. For convenience, let vh = h, x0 ij. In Figure 20.18a, 0,0 we show a path P from u to v00 2 in BF1,2 (3). By Lemma 20.17, there exists a totally i, j
scheduled Hamiltonian cycle C ij in BF1,2 (3).
ch020.tex
30/6/2008
13: 47
Page 610
610
Graph Theory and Interconnection Networks
000
100
000
100
000
100
000
0
0
0
0
1
1
1
1
2
2
2
2
0
0 BF
0,0 1,2
(3)
0,0 1,2
(3)
BF
(a) 000
100
010
010
0,0 0,1
001
101
001
101
011
111
(3)
(b) 110
110
0
0
BF
100
011
(c) 000
111
0
0
1
1
2
2
100
010
110
001
101
011
111
0
0 (d)
(e)
0,0 FIGURE 20.18 (a) Hamiltonian paths from u = 0, 000 to every level-2 vertex in BF1,2 (3); 0,0 (b) a path from u = 0, 000 to 0, 001 in BF0,1 (3); (c) a weakly 0-scheduled Hamiltonian path from u = 0, 000 to 0, 100; (d) a weakly 0-scheduled Hamiltonian path from u = 0, 000 to
0, 010; and (e) a weakly 0-scheduled Hamiltonian path from u = 0, 000 to 0, 110.
Case 1.1. Suppose that x1 = 0 and x2 = 0. Obviously, we have v = v00 2 . Since 0,0 1,0 0,1 1,1 (3), BF1,2 (3), BF1,2 (3), BF1,2 (3)}, the path P BF(3) can be partitioned into {BF1,2 generated by E(P) ∪ E(C 10 ) ∪ E(C 01 ) ∪ E(C 11 ) ∪
00 10 10 11 10 11 01 11 01 11