Hamilton cycles in highly symmetric graphs Torsten Mütze (based on joint work with Petr Gregor, Jerri Nummenpalo, Christoph Standke, Pascal Su, Veit Wiechert)
Hamilton cycles Problem: Given a graph, does it have a Hamilton cycle? fundamental problem with many applications (special case of travelling salesman problem) computational point of view: no efficient algorithm known (NP-complete [Karp 72]), i.e. brute-force approach essentially best possible what about particular families of graphs?
The hypercube Hypercube vertices = all {0,1}-sequences (“bitstrings”) of length n edges = connect bitstrings that differ in exactly one bit 111 101 011 110 001 100 010 000
The hypercube Hypercube vertices = all {0,1}-sequences (“bitstrings”) of length n edges = connect bitstrings that differ in exactly one bit 111 101 011 110 001 100 010 000
The hypercube Hypercube vertices = all {0,1}-sequences (“bitstrings”) of length n edges = connect bitstrings that differ in exactly one bit 111 101 011 110 001 100 010 000
The hypercube Hypercube vertices = all {0,1}-sequences (“bitstrings”) of length n edges = connect bitstrings that differ in exactly one bit 111 101 011 110 001 100 010 000
The hypercube Hypercube vertices = all {0,1}-sequences (“bitstrings”) of length n edges = connect bitstrings that differ in exactly one bit 111 101 011 110 001 100 010 000
The middle layer graph Consider the cube level 3 level 2 level 1 11...1 00...0 111 level 0 level 1 level 2 level 3 110 101 011 100 010 001 000 Middle layer graph
The middle layer graph Consider the cube level 3 level 2 level 1 11...1 00...0 111 level 0 level 1 level 2 level 3 110 101 011 100 010 001 000 Middle layer graph
The middle layer graph Middle layer of Question: 11100 11010 11001 10110 10101 10011 01110 01101 01011 00111 11000 10100 10010 10001 01100 01010 01001 00110 00101 00011 Question: Does the middle layer of have a Hamilton cycle for every ?
The middle layer graph Middle layer of bipartite, connected 11100 11010 11001 10110 10101 10011 01110 01101 01011 00111 11000 10100 10010 10001 01100 01010 01001 00110 00101 00011 bipartite, connected number of vertices: degree:
The middle layer graph Middle layer of bipartite, connected 11100 11010 11001 10110 10101 10011 01110 01101 01011 00111 11000 10100 10010 10001 01100 01010 01001 00110 00101 00011 bipartite, connected number of vertices: degree: automorphisms: bit permutation + inversion,
The middle layer graph Middle layer of bipartite, connected 11100 11010 11001 10110 10101 10011 01110 01101 01011 00111 11000 10100 10010 10001 01100 01010 01001 00110 00101 00011 bipartite, connected number of vertices: degree: automorphisms: bit permutation + inversion,
The middle layer graph Middle layer of bipartite, connected 11100 11010 11001 10110 10101 10011 01110 01101 01011 00111 11000 10100 10010 10001 01100 01010 01001 00110 00101 00011 bipartite, connected number of vertices: degree: automorphisms: bit permutation + inversion, vertex-transitive
The middle levels conjecture The middle layer graph has a Hamilton cycle for every . probably first mentioned in [Havel 83], [Buck, Wiedemann 84] also (mis)attributed to Dejter, Erdős, Trotter [Kierstead, Trotter 88] and various others exercise (!!!) in [Knuth 05]
The middle levels conjecture The middle layer graph has a Hamilton cycle for every . Motivation: Gray codes (applications e.g. in digital communication) 001 100 010 011 110 000 101 111 001 100 010 011 110 000 101 111 000 010 110 111 011 001 101 100
The middle levels conjecture The middle layer graph has a Hamilton cycle for every . Motivation: Conjecture [Lovász 70]: Every connected vertex-transitive graph has a Hamilton cycle (apart from five exceptions).
History of the conjecture Numerical evidence: The conjecture holds for all [Moews, Reid 99], [Shields, Savage 99], [Shields, Shields, Savage 09], [Shimada, Amano 11] Asymptotic results: The middle layer graph has a cycle of length [Savage 93] [Felsner, Trotter 95] [Savage, Winkler 95] [Johnson 04]
Our results Theorem 1 [M. 16 Proc. LMS]: The middle layer graph has a Hamilton cycle for every . Theorem 2 [M. 16 Proc. LMS]: The middle layer graph has different Hamilton cycles. Remarks: number of automorphisms is only , so Theorem 2 is not an immediate consequence of Theorem 1
Our results Theorem 1 [M. 16 Proc. LMS]: The middle layer graph has a Hamilton cycle for every . Theorem 2 [M. 16 Proc. LMS]: The middle layer graph has different Hamilton cycles. Remarks: number of Hamilton cycles is at most , so Theorem 2 is best possible
Structure of the middle layer graph
Structure of the middle layer graph
Structure of the middle layer graph Any inductive proof has to stick together exponentially many small building blocks to a single cycle! A Hamilton cycle Catalan numbers
Proof ideas Step 1: Build a 2-factor in the graph 2-factor
Proof ideas Step 1: Build a 2-factor in the graph Step 2: Connect the cycles in the 2-factor to a single cycle 2-factor flippable pair
Proof ideas Step 1: Build a 2-factor in the graph Step 2: Connect the cycles in the 2-factor to a single cycle 2-factor flippable pair
Proof ideas Step 1: Build a 2-factor in the graph Step 2: Connect the cycles in the 2-factor to a single cycle 2-factor Auxiliary graph 1 2 4 3 5 7 8 6 1 2 3 4 8 5 6 7 flippable pairs (disjoint)
Proof ideas Lemma 1: If is connected, then has a Hamilton cycle. Lemma 2: If has different spanning trees, then has different Hamilton cycles. 2-factor Auxiliary graph 1 1 4 4 3 3 2 2 8 6 8 5 5 6 7 7 flippable pairs (disjoint)
The crucial reduction Prove that Prove that middle layer graph has a Hamilton cycle (many Hamilton cycles) Prove that is connected (has many spanning trees)
Algorithmic results Theorem 3 [M., Nummenpalo 17 SODA]: There is an algorithm which for a given vertex of the middle layer graph computes the next one on a Hamilton cycle in time . Remarks Initialization time is and required space is What are the constants in the bounds? C++ code available on our website benchmark for , where : 164 days for brute-force search [Shimada, Amano 11] 24 hours reported in [M., Nummenpalo 15 ESA] now: 31 minutes (≈8 instructions per generated vertex)
Bipartite Kneser graphs Integer parameters and Vertices = all -element and -element subsets of iff Edges = Examples 1 {1} {2} {3} {4} {2,3,4} {1,3,4} {1,2,4} {1,2,3} {1} {2} {3} {1,2} {1,3} {2,3}
Relation to the cube 3 2 1 is the middle layer graph 100 010 001 101 011 000 110 111 1 2 3 {1} {2} {3} {1,2} {1,3} {2,3} is the middle layer graph
Relation to the cube 100 010 001 101 011 000 110 111 1 2 3 11...1 00...0
Bipartite Kneser graphs Integer parameters and Vertices = all -element and -element subsets of Edges = Properties iff bipartite, connected number of vertices: degree: automorphisms = renaming elements + taking complement vertex-transitive
Is hamiltonian? Conjecture: For all and the graph has Hamilton cycle. raised by [Simpson 91], and Roth (see [Gould 91], [Hurlbert 94]) middle levels conjecture (‚revolving door conjecture‘) 15 x 14 13 12 11 10 9 8 7 6 5 4 3 1 2
Is hamiltonian? ??? Known results: has a Hamilton cycle if [Shields, Savage 94] [Chen 03] (following earlier work by [Simpson 94], [Hurlbert 94], [Chen 00]) ??? 15 x 14 13 12 11 10 9 8 7 6 5 4 3 1 2
Our results Theorem 4 [M., Su 16+ Combinatorica]: For all and the graph has Hamilton cycle. Remark: simple induction proof, assuming the validity of the middle levels conjecture
Key lemma Lemma: For all and there is a cycle and a set of vertex-disjoint monotone paths in such that: the cycle visits all vertices in level from each cycle vertex on level , one path starts
Lemma Theorem Lemma: For all and there is a cycle and a set of vertex-disjoint monotone paths in such that: z6 z1 z2 z3 z5 z4 the cycle visits all vertices in level y6 y1 y2 y3 y4 y5 from each cycle vertex on level , one path starts x1 x2 x3 x4 x5 x6
A sweeping generalization Problem: For a given interval , does the subgraph of between levels and have a Hamilton cycle? Special cases: and : entire cube : two consecutive levels 0000 1000 0100 0010 1010 0110 1100 1110 1001 0101 0011 1011 0111 0001 1101 1111 The cube level
A sweeping generalization Problem: For a given interval , does the subgraph of between levels and have a Hamilton cycle? Partition classes have same size only if is odd and Two more general notions: Saturating cycle := all vertices in the smaller partition class are visited Tight enumeration := only distance-2 steps in the bigger partition class total length/distance = total length = total distance =
A sweeping generalization Problem: For a given interval , does the subgraph of between levels and have a Hamilton cycle? Q1: For which does have a saturating cycle? Q2: For which does have a tight enumeration? Two weaker notions: Saturating cycle := all vertices in the smaller partition class are visited Tight enumeration := only distance-2 steps in the bigger partition class total length/distance = total length = total distance =
Hard special cases `middle levels conjecture‘ 11...1 `middle levels conjecture‘ Conjecture [Gregor, Škrekovski 10]: For any and , the graph has a Hamilton cycle. 00...0 Known cases of the `generalized middle levels conjecture (GMLC)‘ [M. 16] [Gray 53] [El-Hashash, Hassan 01], [Locke, Stong 03] [Gregor, Škrekovski 10] ?
Our results in a nutshell [Gregor, M. 17 STACS] Q1: For which does have a saturating cycle? Q2: For which does have a tight enumeration? We answer these questions positively for a large range of parameters . We provide corresponding constant-time generation algorithms. All remaining open cases are reduced to the GMLC. Focus only on saturating cycles in the following (very similar results for tight enumerations)
Our results - saturating cycles Theorem 5: , , has a saturating cycle in the following cases: [Gray 53] [El-Hashash, Hassan 01], [Locke, Stong 03] [Gregor, Škrekovski 10] [M. 16] open [M., Su 16] 5 5 5 5
Our results – efficient algorithms Theorem 6: For cases (i), (ii) and (iii) in Theorem 5, there is an algorithm with running time in the worst case per generated vertex (i.e., a loopless algorithm). Remarks The algorithm for cases (i) and (ii) is considerably simpler (1 page) than the one for case (iii) (here we use the rather complex MLC algorithm presented in [M., Nummenpalo SODA 17]) Initialization time is and required space is C++ code available on our website
Open problems Conjecture [Gregor, Škrekovski 10]: For any and , the graph has a Hamilton cycle.
Open problems Kneser graphs Integer parameters and Vertices = all -element subsets of Edges = iff {1,2} {3,5} {3,4} {4,5} {2,3} {1,5} {1,4} {2,5} {1,3} {2,4} {1} {4} {2} {3} Complete graph Petersen graph
Open problems Conjecture: For all and the graph has Hamilton cycle, except . most difficult case: `odd graph‘ harder than bipartite Kneser graphs Theorem 7 [M., Su 16+] For all and the graph has a cycle that visits at least a -fraction of all vertices. In particular, has a cycle that visits at least a -fraction of all vertices. Theorem 8 [M., Standke, Wiechert 16+]: For all the graph has a 2-factor consisting of cycles of length .
Thank you!