Maximal induced paths and minimal percolating sets in hypercubes

For a graph G, the r-bootstrap percolation process can be described as follows: Start with an initial set A of "infected” vertices. Infect any vertex with at least r infected neighbours, and continue this process until no new vertices can be infected. A is said to percolate in G if eventually all the vertices of G are infected. A is a minimal percolating set in G if A percolates in G and no proper subset of A percolates in G. An induced path, P , in a hypercube Qn is maximal if no induced path in Qn properly contains P . Induced paths in hypercubes are also called snakes. We study the relationship between maximal snakes and minimal percolating sets (under 2-bootstrap percolation) in hypercubes. In particular, we show that every maximal snake contains a minimal percolating set, and that every minimal percolating set is contained in a maximal snake. 2010 MSC: 05C38, 68R10


Introduction
The problem of finding longest induced paths (often called snakes in the literature) in hypercubes has been studied since 1958 [5].Definite values for the lengths of longest snakes in n-dimensional hypercubes are known only for dimensions n ≤ 7 [1].Several properties of maximal snakes have been found useful in establishing better bounds on the lengths of longest snakes in hypercubes [1,2].
The notion of r-bootstrap percolation in graphs has been studied since 1979 [3].Riedl considers the 2-bootstrap percolation process in hypercubes; in particular, he studies minimal percolating sets (under 2-bootstrap percolation) in hypercubes and provides an expression for the size of largest minimal percolating sets in hypercubes [4].
In this paper we show the relationship between maximal snakes and minimal percolating sets (under 2-bootstrap percolation) in hypercubes.In particular we show that every maximal snake contains a minimal percolating set, and that every minimal percolating set is contained in a maximal snake.
Minimal percolating sets in hypercubes

Notation
Most of the definitions and notation in this section are directly from [2] and [4].
We will label the vertices of an n-dimensional hypercube, Q n = (V n , E) by the 2 n distinct n-bit labels such that the labels on two vertices differ in exactly one bit position if and only if the two vertices are neighbours in Q n .The rightmost bit in a label will be called bit number 0 and the leftmost bit will be called bit number (n − 1).
[n] denotes the set {0, . . ., n − 1}.For any vertex v ∈ V n , for each i ∈ [n], (v) i will denote the bit in bit number i of the label for v.For each i ∈ [n], l n i denotes the label that has all zeroes except a 1 as bit number i. 0 n denotes the label with all zeroes.U n will denote the set , the set of all vertices at unit distance from 0 n .For a bit b in a label, b will denote the bit complement of b.We will use an asterisk to denote a wildcard in labels.A sequence of k asterisks in a label will be denoted by ( * ) k .Thus an n-bit label with one asterisk denotes two vertices; moreover, these two vertices are adjacent, i.e., they are a 1-subcube of Q n .In general, for each k, 0 ≤ k ≤ n, a label with k asterisks denotes a k-dimensional subcube.For example, the label ( * ) 2 01 is a 2-dimensional subcube of Q 4 such that all the vertices in the subcube have 1 for bit number 0 and 0 for bit number 1.For a subcube S of Q n , dim(S) will denote the dimension of S. When vertices u and v differ in bit position d, we will denote this as u d ←→ v.For any two vertices x, y ∈ Q n , Ham(u, v) denotes the Hamming distance between x and y.
For a path P = v 0 , v 1 , . . ., v l , P will denote the path v 1 , . . ., v l−1 , i.e., the path P without its endpoints.For a path P , we will use P to denote the sequence of vertices as well as the set of vertices.
An n-snake is an induced path in the n-dimensional, hypercubical, undirected graph.A maximal n-snake, P , is an n-snake such that no other n-snake properly contains P .
The r-bootstrap percolation process in G = (V, E) is described as follows: Let A ⊆ V be a set of "infected" vertices.Let A 0 = A.Then, let A t be the set of vertices in A t−1 union the set of vertices which have at least r neighbours in A t−1 .The set A = ∪ i A i is the set of vertices infected by A. A set A is said to percolate in G if A = V .A percolating set A is said to be minimal if for all v ∈ A, A\v does not percolate in G.
In the case r = 2 and G = Q n = (V n , E), the progress of the percolation process can be described as follows: Given a set A ⊆ V n , let A 0 = u∈A { {u} }, i.e., the set of all the 0-subcubes represented by the vertices in A. Then, choose a sequence of sets of subcubes A 1 , A 2 , . . ., A k so that A t is identical to A t−1 except that two subcubes B, C ∈ A t−1 that are within distance 2, in Q n , of each other are replaced by the subcube B ∪ C , and so that A k is a set of subcubes all of which are distance at least 3, in Q n , from each other.Clearly, then, A percolates in Q n if A k = {V n }.A 0 , . . ., A k is called an execution path of the percolation process.In the rest of the paper, unless specified otherwise, "distance" will refer to "distance in Q n ", and by "percolating" we will mean 2-percolating.

Maximal snakes percolate
Theorem 3.1.Every maximal n-snake is a percolating set.
Proof.The set of maximal n-snakes that have 0 n as one of the end points, and l n 0 as the next vertex is equal to the set of all maximal n-snakes up to isomorphism [2].Thus, without loss of generality, let P be a maximal n-snake v 0 , v 1 , . . ., v k where v 0 = 0 n and v 1 = l n 0 .Since the snake is maximal, none of the vertices l n i , 1 ≤ i < n are on the snake (since 0 n is an end point of the snake and l n 0 is on the snake), and each of these vertices has at least two neighbours on the snake.(If not, then the snake could have been extended from 0 n and thus would not be maximal.)Thus, if all the vertices of the snake are infected, then in one percolation step, each of the vertices, l n i , 1 ≤ i < n, gets infected.Thus, each vertex in the set U n = {l n i | 0 ≤ i < n} is infected.By Proposition 7 in [4], U n is a minimal percolating set in Q n for n ≥ 2. Thus, every maximal n-snake is a percolating set.

Minimal percolating sets and snakes
) be defined as: It suffices to show that for each vertex u at distance 1 from P , there is a path in G from v 0 to u, i.e., for each i ∈ [l], for each vertex u in N P (v i ), there is a path in G from v 0 to u. (To show that there is a path in G from v l to u, we can reverse the labeling of vertices on P and apply the argument below.)We will use mathematical induction on i.
Base Case : i = 0. Every vertex in N P (v 0 ) is a neighbour of v 0 , and thus the claim is trivially true.
To show that : For each vertex u in N P (v k+1 ), there is a path in G from v 0 to u.
Let u be the vertex such that u d k+1 ←→ u .Clearly, then, u is a neighbour of v k , and u ∈ P by the definition of N P .(If u ∈ P , then, since P is an induced path, u = v k−1 , a neighbour of u, contradicting u ∈ N P (v k+1 ).)Thus, for some k ≤ k, u ∈ N P (v k ).Then, by the induction hypothesis there is a path in G from v 0 to u and thus, there is a path in G from v 0 to u.

As a corollary of the above result we have
Corollary 1. Suppose P = v 0 , v 1 , . . ., v l is an n-snake.Then for each vertex w ∈ V n \P , there exist n-snakes, P 1 and P 2 , in Q n \ P such that P 1 has end points v 0 and w, and P 2 has end points v l and w.Lemma 4.2.Every set A ⊆ V n that is isomorphic to U n is contained in an n-snake, and both the end points of the snake are in A.
Proof.For each i = j ∈ [n], let l n ij denote the n-bit label that has ones in bit positions i and j and zeroes everywhere else.Then, consider the path defined by the sequence of vertices It can easily be verified that this path is an n-snake.Moreover, U n is contained in this path and both the end points of the path are in U n .
Suppose P is a snake in B such that P contains each vertex in B, and both the end points of P are in B. Then, there is a snake P in Q n that contains each vertex in A, and both the end points of P are in A.
Proof.Suppose P = v 0 , v 1 , . . ., v k .We consider the two cases: u is at distance 1 in Q n from P , and u is at distance greater than 1 in Q n from P .
Case 1 Suppose u is at distance 1 in Q n from P .Since u ∈ B , u is a neighbour of at most one vertex in P .
If u is a neighbour of one of the two end points, say v 0 , of P , then P is simply P extended by the edge (v 0 , u).Clearly, P is a snake in Q n that contains each vertex of A, and both the end points of P are in A.
Suppose u is a neighbour of an internal vertex v i in P , and v i d ←→ u.There are two cases to consider: ←→ u 2 .(Note that v i−2 exists since v i−1 is not an end point of P .)u 1 and u 2 are not in B , u 1 is a neighbour of u and u 2 is a neighbour of u 1 .Let P be the path P with the edges Then, P is a snake in Q n that contains each vertex of A, and both the end points of P are in A.
u 1 and u 2 are not in B , u 1 is a neighbour of u and u 2 is a neighbour of u, and u 1 and u 2 are not neighbours (since they are neighbours, along the same direction d, of two vertices at distance 2 in P , and P is a snake).Let P be the path P with the path v i−1 , v i , v i+1 replaced by the path v i−1 , u 1 , u, u 2 , v i+1 .Then, P is a snake in Q n that contains each vertex of A, and both the end points of P are in A.
Case 2 Suppose u is at distance greater than 1 in Q n from P .Since B = Q n−1 , there is one bit position that has the same value for the labels on all the vertices in B .Without loss of generality, let bit position 0 for the labels on each vertex in B be 0. Let u be the vertex such that u 0 ←→ u .Since u ∈ B , u ∈ B , and u ∈ P .Then, by Corollary 1 there is a snake (v l =)w 0 , w 1 , . . .w m (= u ) in B \ P .For each i, 0 ≤ i ≤ m, let w i be the vertex such that w i 0 ←→ w i .Then, P = v 0 , . . ., v l , w 0 , w 1 , . . ., w m (= u) is a snake in Q n that contains each vertex of A, and both the end points of P are in A. Clearly, u 1 is in the subcube * * • • • * * 01, and u 2 is in the subcube * * • • • * * 11.Moreover, since P is a snake, u 1 is at distance at least 2 from all the vertices in P , except v l , and u 2 is at distance at least 2 in Q n from each vertex in P .Let P u be a snake in the subcube * * • • • * * 11 from u 2 to u.Clearly, each vertex of P u is at distance at least 2 from P .Now let P be the path P extended by the edge (v l , u 1 ), followed by the edge (u 1 , u 2 ) and then followed by P u .It can be easily verified that P is a snake in Q n , and both the end points of P are in A.
In what follows, we will use some additional notation: For a set C ⊆   Then, F = {s + t + 2, . . ., n − 1}.Let P = v 0 , . . ., v l be a snake in the subcube given by and let u be a vertex in the subcube given by

Now consider the following
where H 1 is a shortest path between v l and w, and H 2 is a shortest path between w and u.Since P is a snake in the subcube S, each vertex v i , i < l differs from v l in at least one bit position a i where a i ∈ {0, . . ., (s + 1)}.Each vertex of H 1 , except the vertex v l , differs from v l in at least one bit position j ∈ {0, . . ., (s + 1)}.Since s ≥ 2, the length of H 1 is at least 2, and so each vertex of H 2 , differs from each vertex of P in at least two bit positions.Moreover, each vertex h of H 1 , except w, differs from w in at least one bit position j h ∈ {(s + 2), . . ., (s + t + 1)}, and each vertex g of H 2 differs from w in at least one bit position j g ∈ {(s + 2), . . ., (s + t + 1)}.Thus, P concatenated with H 1 concatenated with H 2 is a snake that has end points v 0 and u, and is contained in the (n − 2)-dimensional subcube given by The following lemma follows from the proof of Proposition 9 in [4].Our proof is essentially the proof from [4]; for completeness we provide the relevant parts of the proof here.Lemma 4.6.Let A ⊆ V n be a minimal percolating set in Q n .Then, there exists an execution path u∈A {{u}} = A 0 , . . ., A k = {V n }, where A k−1 consists of exactly two subcubes S 1 and S 2 such that dim(S 1 ) ≥ dim(S 2 ) and exactly one of the following is true: Proof.Since A percolates in Q n , for any execution path of the percolation process A k = V n , and so A k−1 must consist of exactly two subcubes, say S 1 and S 2 , which together infect Q n .Amongst all execution paths with dim(S 1 ) ≥ dim(S 2 ), choose one where dim(S 1 ) is the largest.By minimality of A, dim(S 1 ) ≤ n − 1.We consider the cases depending on dim(S 1 ).By the induction hypothesis, there is an (m + 1) − (s + 2)-snake, P 1 in S 1 that contains each vertex in S 1 ∩ A, and both the end points, say v 0 and v a , of P 1 are in S 1 ∩ A, and there is an (m + 1) − (t + 2)-snake, P 2 in S 2 that contains each vertex in S 2 ∩ A, and both the end points, say w 0 and w b , of P 2 are in S 2 ∩ A. By Lemma 4.5 P 1 can be extended to a snake P * 1 with end points v 0 and the vertex u 1 given by Similarly, by Lemma 4.5 P 2 can be extended to a snake P * 2 with end points w 0 and the vertex u 2 given by where P 3 is a shortest path in the subcube Each vertex of this subcube differs from P 1 in at least s ≥ 2 bit positions, and differs from P 2 in at least t ≥ 2 bit positions.By the reasoning of Lemma 4.5, P 3 differs from P * 1 and P * 2 in at least two bit positions.Thus, the concatenation of P * 1 with the edge (u 1 , u x ) followed by P 3 is a snake.Similarly, the concatenation of P * 2 with the edge (u 2 , u y ) is a snake.Moreover, these two snakes concatenated together is a snake with end points v 0 and w 0 , both of which are in A.

Conclusions and open questions
As noted earlier, our interest in maximal snakes derives from properties of maximal snakes in lower dimensions that are useful heuristics in generating long maximal snakes in higher dimensions.The heuristics essentially seed the exhaustive search with an initial segment of the snake.Our hope is that minimal percolating sets can prove to be better seeds and will speed up the exhaustive search somewhat.Our intuition comes from the observation that 1) minimal pecolating set vertices are sprinkled throughout the hypercube, and 2) at each step of the proofs above where we use a shortest path or any snake between two vertices, we could use a suitable longest path instead.
We would also like to explore the possibility of stronger results that may characterize longest maximal snakes in terms of minimal percolating sets.For example, we would like to consider questions such as 1.Is there a difference in the set of minimal percolating sets contained in a maximal, but not longest, snake, and the set of minimal percolating sets contained in a longest snake?
2. In some dimensions, notably 4 and 6 of the known ones, there is a unique (up to isomorphism) longest snake.Is there a stronger relationship between the longest snake and minimal percolating sets in these dimensions?

1 d←→ u 1
is not an end point of P .Then, consider the vertices u 1 and u 2 such that v i−and v i−2 d

Lemma 4 . 4 .←→ u 1 and u 1 1 ←→ u 2 .
Let A ⊆ V n be a minimal percolating set in Q n such that A = B ∪ C where B = Q n−2 and C = {u} such that u ∈ B , and u is at distance 2 in Q n from B .Suppose P is a snake in B such that P contains each vertex in B, and both the end points of P are in B. Then, there is a snake P in Q n that contains each vertex in A, and both the end points of P are in A.Proof.Without loss of generality, let B = * * • • • * * 00.Then, u is in the subcube * * • • • * * 11.Let v 0 and v l be the end points of P .Consider the vertices u 1 and u 2 such that v l 0 the subcube b n−1 . . .b 0 of Q n where for each i ∈ C, b i is an asterisk, and for each i ∈ C, b i ∈ {0, 1}.

Lemma 4 . 5 .
For n ≥ 6, suppose C, D, E ⊆ [n] such that |C| = 2, |D| = s ≥ 2, |E| = t ≥ 2, and C, D and E are mutually exclusive.LetF = [n]\(C ∪ D ∪ E).Let P = v 0 , . . ., v l be a snake in the (n − (s + 2))-dimensional subcube Q n | C∪D ,characterised by the bits c i and d i for i ∈ C and i ∈ D, respectively.Then, for any vertex u in the subcube Q n | C∪D∪F , characterised by the bits c i , d i , and (v l ) i , for i ∈ C, i ∈ D and i ∈ F , respectively, P can be extended to an (n − 2)-dimensional snake in the subcube Q n | C , characterised by the bits c i for i ∈ C, with end points v 0 and u.