key: cord-0046593-l0x0dthn authors: Brakensiek, Joshua; Heule, Marijn; Mackey, John; Narváez, David title: The Resolution of Keller’s Conjecture date: 2020-05-30 journal: Automated Reasoning DOI: 10.1007/978-3-030-51074-9_4 sha: 80605483c0bc18a0864dc3a7490886b47cde50de doc_id: 46593 cord_uid: l0x0dthn We consider three graphs, [Formula: see text], [Formula: see text], and [Formula: see text], related to Keller’s conjecture in dimension 7. The conjecture is false for this dimension if and only if at least one of the graphs contains a clique of size [Formula: see text]. We present an automated method to solve this conjecture by encoding the existence of such a clique as a propositional formula. We apply satisfiability solving combined with symmetry-breaking techniques to determine that no such clique exists. This result implies that every unit cube tiling of [Formula: see text] contains a facesharing pair of cubes. Since a faceshare-free unit cube tiling of [Formula: see text] exists (which we also verify), this completely resolves Keller’s conjecture. In 1930, Keller conjectured that any tiling of n-dimensional space by translates of the unit cube must contain a pair of cubes that share a complete (n − 1)dimensional face [13] . Figure 1 illustrates this for the plane and the 3-dimensional space. The conjecture generalized a 1907 conjecture of Minkowski [24] in which the centers of the cubes were assumed to form a lattice. Keller's conjecture was proven to be true for n ≤ 6 by Perron in 1940 [25, 26] , and in 1942 Hajós [6] showed Minkowski's conjecture to be true in all dimensions. In 1986 Szabó [28] reduced Keller's conjecture to the study of periodic tilings. Using this reduction Corrádi and Szabó [3] introduced the Keller graphs: the graph G n,s has vertices {0, 1, . . . , 2s − 1} n such that a pair are adjacent if and only if they differ by exactly s in at least one coordinate and they differ in at least two coordinates. The size of cliques in G n,s is at most 2 n [5] and the size of the largest clique in G n,s is at most the size of the largest clique in G n,s+1 . A clique in G n,s of size 2 n demonstrates that Keller's conjecture is false for dimensions greater than or equal to n. Lagarias and Shor [19] showed that Keller's conjecture is false for n ≥ 10 in 1992 by exhibiting clique of size 2 10 in G 10, 2 . In 2002, Mackey [22] found a clique of size 2 8 in G 8, 2 to show that Keller's conjecture is false for n ≥ 8. In 2011, Debroni, Eblen, Langston, Myrvold, Shor, and Weerapurage [5] showed that the largest clique in G 7,2 has size 124. In 2015, Kisielewicz and Lysakowska [14, 16] made substantial progress on reducing the conjecture in dimension 7. More recently, in 2017, Kisielewicz [15] reduced the conjecture in dimension 7 as follows: Keller's conjecture is true in dimension 7 if and only if there does not exist a clique in G 7,3 of size 2 7 [21] . The main result of this paper is the following theorem. Theorem 1. Neither G 7,3 nor G 7,4 nor G 7,6 contains a clique of size 2 7 = 128. Although proving this property for G 7,3 suffices to prove Keller's conjecture true in dimension 7, we also show this for G 7,4 and G 7,6 to demonstrate that our methods need only depend on prior work of Kisielewicz and Lysakowska [14, 16] . In particular, the argument for G 7,6 [14] predates and is much simpler than the one for G 7,4 [16] (although the publication dates indicate otherwise). It is not explicitly stated in either that it suffices to prove that G 7,4 or G 7,6 lacks a clique of size 128 to prove Keller's conjecture. We show this in the Appendix of the extended version, available at https://arxiv.org/abs/1910.03740. We present an approach based on satisfiability (SAT) solving to show the absence of a clique of size 128. SAT solving has become a powerful tool in computeraided mathematics in recent years. For example, it was used to prove the Erdős discrepancy conjecture with discrepancy 2 [17] , the Pythagorean triples problem [10] , and Schur number five [7] . Modern SAT solvers can also emit proofs of unsatisfiability. There exist formally verified checkers for such proofs as developed in the ACL2, Coq, and Isabelle theorem-proving systems [4, 20] . The outline of this paper is as follows. After describing some background concepts in Sect. 2, we present a compact encoding whether G n,s contains a clique of size 2 n as a propositional formula in Sect. 3. Without symmetry breaking, these formulas with n > 5 are challenging for state-of-the-art tools. However, the Keller graphs contain many symmetries. We perform some initial symmetry breaking that is hard to express on the propositional level in Sect. 4. This allows us to partially fix three vertices. On top of that we add symmetry-breaking clauses in Sect. 5. The soundness of their addition has been mechanically verified. We prove in Sect. 6 the absence of a clique of size 128 in G 7,3 , G 7,4 and G 7,6 . We optimize the proofs of unsatisfiability obtained by the SAT solver and certify them using a formally verified checker. Finally we draw some conclusions in Sect. 7 and present directions for future research. We present the most important background concepts related to this paper and introduce some properties of G n,s . First, for positive integers k, we define two sets: [k] := {1, 2, . . . , k} and k := {0, 1, . . . , k − 1}. Keller Graphs. The Keller graph G n,s consists of the vertices 2s n . Two vertices are adjacent if and only if they differ by exactly s in at least one coordinate and they differ in at least two coordinates. Figure 2 shows a visualization of G 2,2 . As noted in [5] , {sw + s n : w ∈ {0, 1} n } is a partition of the vertices of G n,s into 2 n independent sets. Consequently, any clique in G n,s has at most 2 n vertices. For example, V (G 2,2 ) is partitioned as follows: We use the above observation for encoding whether G n,s has a clique of size 2 n . Instead of searching for such a clique on the graph representation of G n,s , which consists of (2s) n vertices, we search for 2 n vertices, one from each sw + s n , such that every pair is adjacent. For every i ∈ 2 n , we let w(i) = (w 1 , w 2 , . . . , w n ) ∈ {0, 1} n be defined by i = n k=1 2 k−1 · w k . Given a clique of size 2 n , we let c i be its unique element in sw(i) + s n and we let c i,j be the jth coordinate of c i . Useful Automorphisms of Keller Graphs. Let S n be the set of permutations of [n] and let H s be the set of permutations of 2s generated by the swaps (i i + s) composed with any permutation of s which is identically applied to s + s . The maps where σ ∈ S n and τ 1 , τ 2 , . . . , τ n ∈ H s are automorphisms of G n,s . Note that applying an automorphism to every vertex of a clique yields another clique of the same size. Propositional Formulas. We consider formulas in conjunctive normal form (CNF), which are defined as follows. A literal is either a variable x (a positive literal ) or the negation x of a variable x (a negative literal ). The complement l of a literal l is defined as l = x if l = x and l = x if l = x. For a literal l, var (l) denotes the variable of l. A clause is a disjunction of literals and a formula is a conjunction of clauses. An assignment is a function from a set of variables to the truth values 1 (true) and 0 (false). A literal l is satisfied by an assignment α if l is positive and α(var (l)) = 1 or if it is negative and α(var (l)) = 0. A literal is falsified by an assignment if its complement is satisfied by the assignment. A clause is satisfied by an assignment α if it contains a literal that is satisfied by α. A formula is satisfied by an assignment α if all its clauses are satisfied by α. A formula is satisfiable if there exists an assignment that satisfies it and unsatisfiable otherwise. Clausal Proofs. Our proof that Keller's conjecture is true for dimension 7 is predominantly a clausal proof, including a large part of the symmetry breaking. Informally, a clausal proof system allows us to show the unsatisfiability of a CNF formula by continuously deriving more and more clauses until we obtain the empty clause. Thereby, the addition of a derived clause to the formula and all previously derived clauses must preserve satisfiability. As the empty clause is trivially unsatisfiable, a clausal proof shows the unsatisfiability of the original formula. Moreover, it must be checkable in polynomial time that each derivation step does preserve satisfiability. This requirement ensures that the correctness of proofs can be efficiently verified. In practice, this is achieved by allowing only the derivation of specific clauses that fulfill some efficiently checkable criterion. Formally, clausal proof systems are based on the notion of clause redundancy. A clause C is redundant with respect to a formula F if adding C to F preserves satisfiability. Given a formula F = C 1 ∧ · · · ∧ C m , a clausal proof of F is a sequence (C m+1 , ω m+1 ), . . . , (C n , ω n ) of pairs where each C i is a clause, each ω i (called the witness) is a string, and C n is the empty clause [9] . Such a sequence gives rise to formulas F m , F m+1 , . . . , F n , where and if this redundancy can be checked in polynomial time (with respect to the size of the proof) using the witness ω i . An example for a clausal proof system is the resolution proof system, which only allows the derivation of resolvents (with no or empty witnesses). However, the resolution proof system does not allow to compactly express symmetry breaking. Instead we will construct a proof in the resolution asymmetric tautology (RAT) proof system. This proof system is also used to validate the results of the SAT competitions [11] . For the details of RAT, we refer to the original paper [9] . Here, we just note that (1) for RAT clauses, it can be checked efficiently that their addition preserves satisfiability, and (2) every resolvent is a RAT clause but not vice versa. Recall that G n,s has a clique of size 2 n if and only if there exist vertices c i ∈ sw(i)+ s n for all i ∈ 2 n such that for all i = i there exists at least two j ∈ [n] such that c i,j = c i ,j and there exists at least one j ∈ [n] such that c i,j = c i ,j ± s. Our CNF will encode the coordinates of the c i . For each i ∈ 2 n , j ∈ [n], k ∈ s , we define Boolean variables x i,j,k which are true if and only if c i,j = sw(i) j + k. We therefore need to encode that exactly one of (1) Next we enforce that every pair of vertices c i and c i in the clique differ in at least two coordinates. For most pairs of vertices, no clauses are required because w(i) and w(i ) differ in at least two positions. Hence, a constraint is only required for two vertices if w(i) and w(i ) differ in exactly one coordinate. Let ⊕ be the binary XOR operator and e j be the indicator vector of the jth coordinate. If w(i) ⊕ w(i ) = e j , then in order to ensure that c i and c i differ in at least two coordinates we need to make sure that there is some coordinate We use the Plaisted-Greenbaum [27] encoding to convert the above constraint into CNF. We refer to the auxiliary variables introduced by the encoding as y i,i ,j ,k , which if true imply x i,j ,k = x i ,j ,k , or written as an implication The following two clauses express this implication Notice that the implication is only in one direction as Plaisted-Greenbaum takes the polarity of constraints into account. The clauses that represent the other direction, i.e., ( are redundant (and more specifically, they are blocked [18] ). Using the auxiliary variables, we can express the constraint (2) using clauses of length s · (n − 1) The last part of the encoding consists of clauses to ensure that each pair of vertices in the clique have at least one coordinate in which they differ by exactly We use auxiliary variables z i,i ,j , whose truth implies c i,j = c i ,j ± s, or written as an implication Notice that the implication is again in one direction only. Below we enforce that some z i,i ,j variables must be true, but there are no constraints that enforce z i,i ,j variables to be false. This can be written as a CNF using the following clauses: Finally, to make sure that c i,j = c i ,j ± s for some j ∈ [n], we specify The variables and clauses, including precise formulas for their counts, are summarized in Table 1 . The sizes of the CNF encodings (before the addition of symmetry breaking clauses) of G 7,3 , G 7,4 , and G 7,6 are listed in Table 2 . Notice that for fixed n, the dependence on s is quadratic, which is better than the s 2n dependence one would get in the naive encoding of G n,s as a graph. This compact encoding, when combined with symmetry breaking, is a core reason that we were able to prove Theorem 1. The instances with n = 7 are too hard for state-of-the-art SAT solvers if no symmetry breaking is applied. We experimented with general-purpose symmetry-breaking techniques, similar to the symmetry-breaking predicates produced by shatter [1] . This allows solving the formula for G 7,3 , but the computation takes a few CPU years. The formulas for G 7,4 and G 7,6 with these symmetry-breaking predicates are significantly harder. Instead we employ problem-specific symmetry breaking by making use of the observations in Sects. 4 and 5. This allows solving the clique of size 2 n existence problem for all three graphs in reasonable time. Our goal is to prove that there exists no clique of size 128 in G 7,s for s ∈ {3, 4, 6}. In this section, and the subsequent, we assume that such a clique exists and adapt some of the arguments of Perron [25, 26] to show that it may be assumed to have a canonical form. We will use i to denote an element in i . Every pair of vertices in K