Enumeration of Polyhedral Graphs
Total Page:16
File Type:pdf, Size:1020Kb
Enumeration of Polyhedral Graphs Samuel George Kamperis Doctor of Philosophy Oxford Brookes University 2019 Declaration I declare that this thesis was composed by myself and that the work contained therein is my own, except where explicitly stated otherwise in the text. (Samuel George Kamperis) iii I owe so many, so much::: To my family and friends for their love and support throughout this process. I thank the staff at Oxford Brookes who have become such a big part of my life. Dr Rachel Long for her invaluable guidance and supervision, Professor Khaled Hayatleh and the rest of my supervisory team for their help over the years. To the PRS and the memory of Dr Alex (AJ) Boorman. My brother Ollie and the brotherhood of Josh and Louis Catlett. My sister Sophie and the \brotherhood" of Katy Stroud. My parents George and Michele, whose infinite patience and unconditional love have taught me the true meaning of infinity. My beloved grandmothers, the heads of my amazing family, Maureen Heathfield and the sorely missed Katrina Kamperis. The one who I met through this PhD and has been my dearest companion ever since, my darling, Aya ~. Kampo X iv Abstract This thesis is concerned with the design of a polyhedron enumeration algorithm. The approach taken focuses on specific classes of polyhedra and their graph theo- retic properties. This is then compared more broadly to other graph enumeration algorithms that are concerned with the same or a superset which includes these properties. An original and novel algorithm is contributed to this area. The approach taken divides the problem into prescribed vertex and face degree sequences for the graphs. Using a range of existence, ordered enumeration and isomorphism techniques, it finds all unique 4-regular, 3-connected planar graphs. The algo- rithm is a vertex addition algorithm which means that each result output at a given stage has a new vertex added. Other results from different stages are never required for further computation and comparison, hence the process is embarrass- ingly parallel. Therefore, the enumeration can be distributed optimally across a cluster of computers. This work has led to a successfully implemented algorithm which takes a different approach to its treatment of the class of 4-regular, 3-connected planar graphs. As such this has led to observations and theory about other classes of graphs and graph embeddings which relate to this research. v vi Samuel George Kamperis vi Contents Abstract v 1 Introduction 1 1.1 Motivation . 1 1.2 Thesis Outline . 1 2 Background 5 2.1 Introduction . 5 2.2 Polyhedra . 5 2.2.1 Definitions . 5 2.2.2 Euler's Formula . 6 2.3 Planar Graphs . 7 2.3.1 Definitions . 8 2.3.2 Kuratowski's Theorem . 12 2.3.3 Steinitz' Theorem . 13 2.3.4 Cauchy's Proof of Euler's Formula . 14 2.3.5 Tutte's Wheel Theorem . 14 2.3.6 Tutte Embedding . 16 2.4 Algorithms . 20 2.4.1 Havel-Hakimi and Erd}os-Gallai . 20 2.4.2 Duijvestijn and Federico . 24 2.4.3 Hopcroft and Tarjan . 25 2.4.4 Hopcroft and Wong . 26 2.4.5 Brinkmann and McKay . 26 2.5 Summary . 28 vii viii Samuel George Kamperis 3 4-regular 3-connected Planar Graphs 31 3.1 Introduction . 31 3.2 3-connected Graph Embeddings . 32 3.3 Exactly 2-vertex, 3-edge connected Graph Embeddings . 33 3.4 Decomposition . 34 3.5 3-vertex Connectivity Test . 39 3.6 Summary . 44 4 Algorithm Design 47 4.1 Introduction . 47 4.2 Definitions . 48 4.3 Outline . 53 4.4 Invariants . 56 4.5 Combinations and Banning . 57 4.5.1 Introduction . 57 4.5.2 Reverse Circular Permutations . 57 4.5.3 Cycles . 58 4.5.4 Vertex Degree Sets . 61 4.5.5 Bans from Vertex Labels . 63 4.6 Subgraph Mapping . 65 4.6.1 Subgraph Data Structure . 66 4.6.2 Subgraph Isomorphism Test . 67 4.7 Computational Complexity . 71 4.7.1 Reduction in Computation from Bans . 72 4.7.2 Reduction in Computation from Subgraph Mapping . 73 4.7.3 Overall Reduction in Computational Cost . 74 4.8 Results Generated by the Algorithm . 75 4.8.1 Introduction . 75 4.8.2 Comparison with Existing Algorithms . 76 4.8.3 Total Numbers of Duals of 4-Regular 3-Connected Planar Graphs . 77 4.8.4 Summary of Results . 81 viii Enumeration of Polyhedral Graphs ix 4.9 Summary . 81 5 Observations from the Data 83 5.1 Introduction . 83 5.2 Realisability of Prescribed Duals on a Vertex Degree Sequence . 84 5.2.1 Overview . 84 5.2.2 Definitions . 84 5.2.3 Theory . 87 5.2.4 2-vertex, 3-edge connectivity Counterexample . 88 5.2.5 Exclusions Found . 89 5.3 Realisability of Large Vertex Degrees with respect to Sequence Size 94 5.3.1 Overview . 94 5.3.2 Theory . 94 5.3.3 2-vertex, 3-edge connectivity Counterexample . 95 5.3.4 Exclusions Found . 95 5.4 Summary . 98 6 Future Work, Potential Applications and Conclusion 101 6.1 Future Work . 101 6.2 Potential Applications . 102 6.2.1 Existence Testing on Embedded Subgraphs . 102 6.2.2 Unfolding . 102 6.2.3 Truncating . 103 6.2.4 Fullerenes . 103 6.3 Conclusion . 104 References 107 A Enumeration Algorithm Results 111 ix x Samuel George Kamperis x List of Figures 1.1 Log plot of numbers of polyhedra p(n) with only quadrilateral faces and n vertices . 2 2.1 Square pyramids with vertices, edges & faces highlighted . 7 2.2 Non-convex polyhedra . 8 2.3 Graphs representing an octahedron . 10 2.4 Creating the dual of a planar embedding . 10 2.5 The non-planar graphs K5 and K3;3 . 13 2.6 Projections of a cube onto a plane . 15 2.7 Planar graph of a cube at different stages of Cauchy's proof of Euler's formula . 18 2.8 The different graphs resulting from vertex contraction and split- ting on a 5 spoke wheel, where an arrow represents the vertex contraction operation . 19 3.1 A wheel graph with 10 vertices and its polyhedral representation . 33 3.2 Two distinct embeddings of an exactly 2-vertex, 3-edge connected planar graph . 35 3.3 Bipartite graph with only quadrilateral faces . 36 3.4 Example graph with the face sharing vertices in V1 overlaid . 39 3.5 Decomposed graph embeddings . 39 3.6 Planar graph with one sided face . 40 3.7 Planar graphs with two sided faces . 41 3.8 2-edge connected planar graph . 41 3.9 Planar graph highlighting Case 1 . 42 xi xii Samuel George Kamperis 3.10 Planar graph highlighting Case 2 . 42 3.11 Planar graph highlighting Case 3 . 43 4.1 Range of permissible sizes for degree sequences by jV j . 52 4.2 Search tree of graph generation with degree sequences: f5; 4; 3; 3; 3; 3; 3g and f4; 4; 4; 3; 3; 3; 3g . 53 4.3 Search tree of graph generation with degree sequences: f5; 3; 3; 3; 3; 3g and f4; 4; 3; 3; 3; 3g . 54 4.4 Search tree of successful nodes in graph generation with degree sequences: f4; 4; 4; 4; 3; 3; 3; 3g and f4; 4; 4; 4; 3; 3; 3; 3g . 55 4.5 Graph example for optimised circular permutations . 63 4.6 Subgraph with adjacencies from Table 4.6 (node 27 on the search tree in Figure 4.2) . 64 4.7 Search tree for D1 = f4; 4; 4; 3; 3; 3; 3g and D2 = f4; 4; 4; 3; 3; 3; 3g 68 4.8 Subgraph at node 76 in D1 = f4; 4; 4; 3; 3; 3; 3g and D2 = f4; 4; 4; 3; 3; 3; 3g 69 4.9 Subgraph at node 78 in D1 = f4; 4; 4; 3; 3; 3; 3g and D2 = f4; 4; 4; 3; 3; 3; 3g 70 4.10 Subgraph at node 77 in D1 = f4; 4; 4; 3; 3; 3; 3g and D2 = f4; 4; 4; 3; 3; 3; 3g 71 4.11 A subgraph isomorphic to subgraph at node 77 in D1 = f4; 4; 4; 3; 3; 3; 3g and D2 = f4; 4; 4; 3; 3; 3; 3g ...................... 72 4.12 Example Graph A1 . 73 4.13 Example Graph B1 . 73 4.14 Example Graph A2 . 74 4.15 Example Graph B2 . 74 4.16 Graph Comparing CPU Time for Different Versions of the Code . 75 4.17 Graph of Number of Nodes Generated vs CPU Time Difference for Code Versions . 76 4.18 Graph Comparing Number of Nodes Generated for Different Ver- sions of the Code . 77 4.19 Graph Comparing Number of Nodes Generated with and without Optimisations of the Code . 78 4.20 Graph Comparing CPU Time with and without Optimisations of the Code . 79 xii Enumeration of Polyhedral Graphs xiii 5.1 Polygonal faces with complementary edges . 86 5.2 Counter example for 2-vertex 3-edge connected graphs . 88 5.3 Catchrate of degree sequence pairs for Test 1 . 91 5.4 Counter example for 2-vertex 3-edge connected graphs . 95 5.5 Catchrate of degree sequence pairs for Test 2 . ..