Polynomial-time perfect matchings in dense hypergraphs
aa r X i v : . [ m a t h . C O ] O c t POLYNOMIAL-TIME PERFECT MATCHINGS IN DENSEHYPERGRAPHS
PETER KEEVASH, FIACHRA KNOX AND RICHARD MYCROFT
Abstract.
Let H be a k -graph on n vertices, with minimum codegreeat least n/k + cn for some fixed c >
0. In this paper we constructa polynomial-time algorithm which finds either a perfect matching in H or a certificate that none exists. This essentially solves a problemof Karpi´nski, Ruci´nski and Szyma´nska; Szyma´nska previously showedthat this problem is NP-hard for a minimum codegree of n/k − cn . Ouralgorithm relies on a theoretical result of independent interest, in whichwe characterise any such hypergraph with no perfect matching using afamily of lattice-based constructions. Introduction
The question of whether a given k -uniform hypergraph (or k -graph) H contains a perfect matching (i.e. a partition of the vertex set into edges),while simple to state, is one of the key questions of combinatorics. In thegraph case k = 2, Tutte’s Theorem [33] gives necessary and sufficient condi-tions for H to contain a perfect matching, and Edmonds’ Algorithm [9] findssuch a matching in polynomial time. However, for k ≥ = NP, it is natural to seek conditions on H which render the problemtractable or even guarantee that a perfect matching exists. In recent yearsa substantial amount of progress has been made in this direction. One well-studied class of such conditions are minimum degree conditions. This paperprovides an algorithm that essentially eliminates the hardness gap betweenthe sparse and dense cases for the most-studied of these conditions.1.1. Minimum degree conditions.
Suppose that H has n vertices andthat k divides n (we assume this throughout, since it is a necessary conditionfor H to contain a perfect matching). In the graph case, a simple argumentshows that a minimum degree of n/ H contains a Hamilton cycle. For k ≥
3, there are several natural definitionsof the minimum degree of H . Indeed, for any set A ⊆ V ( H ), the degree d ( A ) = d H ( A ) of A is the number of edges of H containing A . Then for any1 ≤ ℓ ≤ k −
1, the minimum ℓ -degree δ ℓ ( H ) of H is the minimum of d ( A )over all subsets A ⊆ V ( H ) of size ℓ . Two cases have received particularattention: the minimum 1-degree δ ( H ) is also known as the minimum ver-tex degree of H , and the minimum ( k − δ k − ( H ) as the minimumcodegree of H .For sufficiently large n , R¨odl, Ruci´nski and Szemer´edi [28] determined theminimum codegree which guarantees a perfect matching in H to be exactly Date : October 23, 2014.Research supported in part by ERC grant 239696 and EPSRC grant EP/G056730/1. n/ − k + c , where c ∈ { . , , . , } is an explicitly given function of n and k .They also showed that the condition δ k − ( H ) ≥ n/k + O (log n ) is sufficientto guarantee a matching covering all but k vertices of H , i.e. one edge awayfrom a perfect matching; their conjecture that δ k − ( H ) ≥ n/k suffices forthis was recently proved by Han [11]. This provides a sharp contrast to thegraph case, where a minimum degree of δ ( G ) ≥ n/ − εn only guaranteesthe existence of a matching covering at least n − εn vertices. There isa large literature on minimum degree conditions for perfect matchings inhypergraphs, see e.g. [1, 2, 6, 7, 10, 15, 17, 18, 19, 20, 22, 23, 24, 25, 26, 28,30, 31, 32] and the survey by R¨odl and Ruci´nski [27] for details.Let PM ( k, δ ) be the decision problem of determining whether a k -graph H with δ k − ( H ) ≥ δn contains a perfect matching. Given the result of [28], anatural question to ask is the following: For which values of δ can PM ( k, δ )be decided in polynomial time? This holds for PM ( k, /
2) by the mainresult of [28]. On the other hand, PM ( k,
0) includes no degree restrictionon H at all, so is NP-complete by the result of Karp [14]. Szyma´nska [29,30] proved that for δ < /k the problem PM ( k,
0) admits a polynomial-time reduction to PM ( k, δ ) and hence PM ( k, δ ) is also NP-complete, whileKarpi´nski, Ruci´nski and Szyma´nska [15] showed that there exists ε > PM ( k, / − ε ) is in P. This left a hardness gap for PM ( k, δ ) when δ ∈ [1 /k, / − ε ).In this paper we provide an algorithm which eliminates this hardness gapalmost entirely. Moreover, it not only solves the decision problem, but alsoprovides a perfect matching or a certificate that none exists. Theorem 1.1.
Fix k ≥ and γ > . Then there is an algorithm withrunning time O ( n k − k +1 ) , which given any k -graph H on n vertices with δ k − ( H ) ≥ (1 /k + γ ) n , finds either a perfect matching or a certificate thatno perfect matching exists. A preliminary version of this algorithm (with a slower running time) ap-peared as an extended abstract [16].1.2.
Lattices and divisibility barriers.
Theorem 1.1 relies on a result ofKeevash and Mycroft [17] giving fairly general sufficient conditions which en-sure a perfect matching in a k -graph. In this context, their result essentiallystates that if H is a k -graph on n vertices, and δ k − ( H ) ≥ n/k + o ( n ), then H either contains a perfect matching or is close to one of a family of lattice-based constructions termed ‘divisibility barriers’. These constructions playa key role in this paper, so we now describe them in some detail.The simplest example of a divisibility barrier is the following construction,given as one of the two extremal examples in [28]. Construction 1.2.
Let A and B be disjoint sets such that | A | is odd and | A ∪ B | = n , and let H be the k -graph on A ∪ B whose edges are all k -setswhich intersect A in an even number of vertices.We consider a partition to include an implicit order on its parts. Todescribe divisibility barriers in general, we make the following definition. Definition 1.3.
Let H be a k -graph and let P be a partition of V ( H ) into d parts. Then the index vector i P ( S ) ∈ Z d of a subset S ⊆ V ( H ) with respect OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 3 to P is the vector whose coordinates are the sizes of the intersections of S with each part of P , i.e. i P ( S ) X = | S ∩ X | for X ∈ P . Further,(i) I P ( H ) denotes the set of index vectors i P ( e ) of edges e ∈ H , and(ii) L P ( H ) denotes the lattice (i.e. additive subgroup) in Z d generated by I P ( H ).A divisibility barrier is a k -graph H which admits a partition P of itsvertex set V such that i P ( V ) / ∈ L P ( H ); the next proposition shows thatsuch an H contains no perfect matching. To see that this generalises Con-struction 1.2, let P be the partition into parts A and B ; then L P ( H ) is thelattice of vectors ( x, y ) in Z for which x is even, and | A | being odd impliesthat i P ( V ) / ∈ L P ( H ). Proposition 1.4.
Let H be a k -graph with vertex set V . If there is apartition P of V with i P ( V ) / ∈ L P ( H ) then H does not contain a perfectmatching.Proof. Suppose M is a matching in H . Then i P ( V ( M )) = P e ∈ M i P ( e ) ∈ L P ( H ). But i P ( V ) / ∈ L P ( H ), so V ( M ) = V , i.e. M is not perfect. (cid:3) A special case of the main theoretical result of this paper is the followingtheorem, which states that the converse of Proposition 1.4 holds for suf-ficiently large 3-graphs as in Theorem 1.1. Thus we obtain an essentiallybest-possible strong stability ‘Andrasfai-Erd˝os-Sos analogue’ for the resultof R¨odl, Ruci´nski and Szemer´edi [28] in the case k = 3. Theorem 1.5.
For any γ > there exists n = n ( γ ) such that the followingstatement holds. Let H be a -graph on n ≥ n vertices, such that divides n and δ ( H ) ≥ (1 / γ ) n , and suppose that H does not contain a perfectmatching. Then there is a subset A ⊆ V ( H ) such that | A | is odd but everyedge of H intersects A in an even number of vertices. Theorem 1.5 can be used to decide PM (3 , / γ ), as the existence ofa subset A as in the theorem can be checked using (simpler versions of)the algorithms in Section 2. However, the case k = 3 is particularly simplebecause there is only one maximal divisibility barrier; for k ≥
4, the nextconstruction shows that the converse of Proposition 1.4 does not hold forgeneral k -graphs as in Theorem 1.1. Construction 1.6.
Let A , B and C be disjoint sets of vertices with | A ∪ B ∪ C | = n , | A | , | B | , | C | = n/ ± | A | = | B | + 2. Fix some vertex x ∈ A ,and let H be the k -graph with vertex set A ∪ B ∪ C whose edges are(1) any k -set e with | e ∩ A | = | e ∩ B | modulo 3, and(2) any k -set ( x, z , . . . , z k − ) with z , . . . , z k − in C .Construction 1.6 satisfies δ k − ( H ) ≥ n/ − k −
1, so if k ≥ H meetsthe degree condition of Theorem 1.1. Moreover, for any partition P of V ( H )we have i P ( V ( H )) ∈ L P ( H ). To see this, suppose on the contrary that itis false, and fix a counterexample P with as few parts as possible. Then L P ( H ) cannot contain any transferral (see Definition 1.8), as otherwise wecould merge the corresponding parts of P to obtain a counterexample withfewer parts. It follows that A , B and C must each be contained within PETER KEEVASH, FIACHRA KNOX AND RICHARD MYCROFT some part of P . We consider the case P = ( A, B, C ) and omit the easycases where P has two parts (clearly the partition with one part is not acounterexample, as k | n ). Write i P ( V ( H )) = ( x, y, z ), where x + y + z = n .Note that (0 , , k ), (1 , , k −
2) and (1 , , k −
1) are all in I P ( H ). Then( x, y, z ) = y (1 , , k −
2) + ( x − y )(1 , , k −
1) + ( n/k − x )(0 , , k ) ∈ L P ( H ),so P is not a counterexample.However, H does not contain a perfect matching. To see this, let M be amatching in H , and note that any edge e ∈ M has | e ∩ A | = | e ∩ B | modulo3, except for at most one edge of M which has | e ∩ A | = | e ∩ B | + 1 modulo3. Then i P ( V ( M )) − i P ( V ( M )) ∈ { , } modulo 3, whereas i P ( V ( H )) − i P ( V ( H )) = | A | − | B | = 2, so V ( M ) = V ( H ), that is, M is not perfect.1.3. Approximate divisibility barriers.
Our starting point will be (aspecial case of) a result of Keevash and Mycroft [17] on approximate di-visibility barriers. First we introduce a less restrictive degree assumption,which follows from the assumption in Theorem 1.1 when γ >
Setup 1.7.
Suppose that k ≥
3, that 1 /n ≪ ε ≪ γ ≪ /k and that n ≥ n satisfies k | n .Let H be a k -graph on n vertices such that(deg) δ ( H ) ≥ γn k − , and(codeg) at most εn k − ( k − A ⊆ V ( H ) have d H ( A ) < (1 /k + γ ) n .A result from [17] (stated here as Theorem 4.6), combined with Lemma 7.3,implies that under Setup 1.7, if H does not contain a perfect matching thenwe can delete o ( n k ) edges from H to obtain a subgraph H ′ for which thereexists a partition P of V ( H ′ ) such that i P ( V ( H ′ )) / ∈ L P ( H ′ ). Thus if H isfar from a divisibility barrier then it has a perfect matching. On the otherhand, if H is itself a divisibility barrier then Proposition 1.4 implies that H does not have a perfect matching. However, our algorithm cannot searchdirectly for such partitions P , since the number of edges to be deleted, whilesmall compared to n k , is still large from a computational perspective.The main theoretical contribution of this paper is to fill the gap betweenthese cases, by giving a condition for the existence of a perfect matching un-der Setup 1.7 that is necessary and sufficient, and also efficiently checkable.1.4. Definitions.
Before giving the statement we require several defini-tions. Firstly, it will be sufficient to consider the following special classesof lattices. To motivate this definition, we remark that all of our latticeswill be edge-lattices, any incomplete lattice can be simplified to one that istransferral-free, and our assumptions on H will imply that if its edge-latticewith respect to some partition is transferral-free then it is full. Note alsothat our definitions depend on k , but we consider this to be fixed throughoutthe paper. We write |P| for the number of parts of a partition P . Definition 1.8.
Suppose L is a lattice in Z d .(i) We say that i ∈ Z d is an r -vector if it has non-negative co-ordinatesthat sum to r . We write u j for the ‘unit’ 1-vector that is 1 in co-ordinate j and 0 in all other co-ordinates. OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 5 (ii) We say that L is an edge-lattice if it is generated by a set of k -vectors.(iii) We write L d max for the lattice generated by all k -vectors.(iv) We say that L is complete if L = L d max , otherwise it is incomplete .(v) A transferral is a non-zero difference u i − u j of 1-vectors.(vi) We say that L is transferral-free if it does not contain any transferral.(vii) We say that a set I of k -vectors is full if for every ( k − v there is some i ∈ [ d ] such that v + u i ∈ I .(viii) We say that L is full if it contains a full set of k -vectors and istransferral-free.Note that L d max can be equivalently defined as the lattice of all vectors in Z d whose coordinates sum to a multiple of k . Often the dimensions of Z d will correspond to parts of a partition P of a set; in this case we refer to Z P and L P max instead of Z d and L d max .Now we come to the structures that appear in our characterisation. Tomotivate this definition, we remark that the first step in our strategy forfinding a perfect matching will be to identify a ‘canonical’ partition andlattice, then delete the vertices covered by a small matching so that theindex of the remaining set is on the lattice. Definition 1.9.
Let H be a k -graph.(i) A full pair ( P , L ) for H consists of a partition P of V ( H ) into d ≤ k − L ⊆ Z d (possibly distinct from L P ( H )).(ii) A (possibly empty) matching M of size at most |P| − solution for ( P , L ) (in H ) if i P ( V ( H ) \ V ( M )) ∈ L ; we say that ( P , L ) is soluble if it has a solution, otherwise insoluble .(iii) A full pair ( P , L ) is C -far for H if some set of C vertices intersectsevery edge e ∈ H with i P ( e ) / ∈ L .(iv) A C -certificate for H is an insoluble C -far full pair for H .We will see later that there is no loss of generality in considering partitionsinto at most k − |P|−
1, as if there is any matching M such that i P ( V ( H ) \ V ( M )) ∈ L then there is one with | M | ≤ |P| −
1. In particular,if H has a perfect matching then any full pair is soluble, so there is no C -certificate for H for any C ≥ Main structural result.
Now we can state our structural character-isation for the perfect matching problem under Setup 1.7.
Theorem 1.10.
Under Setup 1.7, H has a perfect matching if and only ifthere is no k ( k − -certificate for H . We remark that most of the work in proving Theorem 1.10 lies in estab-lishing the “if” part of the statement; the “only if” part follows easily fromthe results in Section 6. Our algorithm for the decision problem is essen-tially an exhaustive search for a 2 k ( k − P that may arise inDefinition 1.9. Thus Theorem 1.10 is required to prove correctness of thealgorithm. We remark that the constant 2 k ( k −
3) is within a factor 2 ofbeing best-possible (see Conjecture 10.3). Furthermore, the constant 1 /k in PETER KEEVASH, FIACHRA KNOX AND RICHARD MYCROFT
Setup 1.7 is best-possible, as shown by the ‘space barrier’ construction (seethe concluding remarks for the definition and further discussion).1.6.
Contents.
In the next section we present the algorithmic details of theresults in this introduction. That is, we assume Theorem 1.10 and deduceTheorem 1.1. The rest of the paper is devoted to the proof of Theorem 1.10,beginning with Section 3 in which we briefly sketch the ideas of the proofand its key lemmas (Lemmas 7.1 and 7.6). In Section 4 we introduce anumber of necessary preliminaries, including results from [17], some convexgeometry and well-known probabilistic tools. Section 5 focuses on an im-portant definition, that of ‘robust maximality’, and some of its properties;this turns out to be the correct notion for the key lemmas. In Section 6 weestablish various properties of full lattices, including a characterisation interms of finite abelian groups. After these preparations, we prove the keylemmas in Section 7. In Section 8 we deduce Theorem 1.10 from Lemma 7.1and some additional lemmas on subsequence sums in finite abelian groups.Section 9 contains some technical proofs which were deferred from earliersections. Finally, in Section 10 we state the multipartite versions of ourresults (omitting the similar proofs) and make some concluding remarks.1.7.
Notation and terminology. A hypergraph H consists of a vertexset V ( H ) and a set E ( H ) of edges e ⊆ V ( H ). We frequently identify ahypergraph H with its edge set, for example, writing e ∈ H for e ∈ E ( H )and | H | for | E ( H ) | . A k -uniform hypergraph, or k -graph , is a hypergraphin which every edge is a k -set , that is, a set of size k . Given a hypergraph H and A ⊆ V ( H ), the neighbourhood of A in H is H ( A ) = { B ⊆ V ( H ) \ A : A ∪ B ∈ H } . Note that | H ( A ) | = d H ( A ) is the degree of A in H .The hypergraph H [ A ] (as distinct from H ( A )) is the hypergraph withvertex set A whose edges are the edges of H which are contained in A . Weuse H − A and H \ A interchangeably to denote the hypergraph obtainedfrom H by deleting A and all edges which intersect A (this is identical to H [ V ( H ) \ A ]). If H is a hypergraph and H ′ ⊆ H we say that H ′ is a subgraph of H (we prefer to avoid the terms ‘subhypergraph’ and ‘sub- k -graph’).We use bold font for vectors and normal font for their co-ordinates, e.g. v = ( v , . . . , v d ). We write and for the vectors whose co-ordinates are allzero and one respectively (the dimension of the vector will be clear from thecontext). B d ( v , r ) denotes the ball of radius r around v ∈ Z d ; we sometimesomit the dimension d . We will often work with vectors v in Z d , for some d ,in which the coordinates are indexed by some ordered partition P of a set V with d parts. If X is the j th part of P for some j ∈ [ d ] we write v X = v j .We say that an event E holds with high probability if P ( E ) = 1 − e − Ω( n c ) for some c > n → ∞ ; note that when n is sufficiently large, by unionbounds we can assume that any specified polynomial number of such eventsall occur. We write [ r ] to denote the set of integers from 1 to r , and x ≪ y to mean for any y ≥ x ≥ x ≤ x the following statement holds. Similar statements with more constants aredefined similarly. Also, we write a = b ± c to mean b − c ≤ a ≤ b + c .Throughout the paper we omit floor and ceiling symbols where they do notaffect the argument. OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 7 Algorithms and analysis
We start with the following theorem, which can be used to solve thedecision problem of determining whether or not H has a perfect matching.Note that the running time for k = 3 is O ( n ), which we cannot reasonablyexpect to improve, as a faster algorithm would not be able to query all edgesof H . Theorem 2.1.
Under Setup 1.7, Procedure DeterminePM determines whether H contains a perfect matching in time O ( n k − k ) . Procedure
DeterminePM
Data : A k -graph H as in Setup 1.7. Result : Determines whether H has a perfect matching. if n < n then Examine every set of n/k edges in H , and halt with appropriateoutput. foreach set S ⊆ V ( H ) of size at most k ( k − , integer d ∈ [ k − ,full edge-lattice L ⊆ Z d and partition P of V ( H ) into d parts so thatany edge e ∈ H which does not intersect S has i P ( e ) ∈ L doif there is no matching M ⊆ H of size at most d − such that i P ( V ( H ) \ V ( M )) ∈ L then Output “no perfect matching” and halt.Output “perfect matching” and halt.Procedure DeterminePM is essentially an exhaustive search for a 2 k ( k − S , d , L and M in the procedure canbe listed by brute force in polynomial time. However, brute force cannotbe used for P , as there are potentially exponentially many possibilities toconsider, so first we provide an algorithm to construct all possibilities for P .We imagine each vertex class V j to be a ‘bin’ to which vertices may beassigned, and keep track of a set U of vertices yet to be assigned to a vertexclass. So initially we take each V j to be empty and U = V ( H ). The proce-dure operates as a search tree ; at certain points the instruction is to branchover a range of possibilities. This means to select one of these possibilitiesand continue with this choice, then, when the algorithm halts, to return tothe branch point, select the next possibility, and so forth. Each branch mayproduce an output partition; the output of the procedure consists of all out-put partitions. An informal statement of our procedure is that we generatepartitions by repeatedly branching over all possible assignments of a vertexto a partition class, exploring all consequences of each assignment beforebranching again. Furthermore, we only branch over assignments of verticeswhich satisfy the following condition. Given a set of assigned vertices, wecall an unassigned vertex x reliable if there exists a set B of k − d ( x ∪ B ) ≥ (1 /k + γ ) n . Lemma 2.2.
Under Setup 1.7, for any d ∈ [ k − and full edge-lattice L ⊆ Z d , there are at most d k − partitions P of V ( H ) such that i P ( e ) ∈ L for every e ∈ H , and Procedure ListPartitions lists them in time O ( n k +1 ) . PETER KEEVASH, FIACHRA KNOX AND RICHARD MYCROFT
Procedure
ListPartitions
Data : A k -graph H and a full edge-lattice L ⊆ Z d . Result : Outputs all partitions P of V ( H ) with i P ( e ) ∈ L for every e ∈ H .Set U = V ( H ) and let P = ( V , . . . , V d ) be a partition of V \ U (soinitially V i = ∅ ).Choose arbitrarily A ⊆ V ( H ) of size k − d ( A ) ≥ (1 /k + γ ) n .Branch over all possible assignments of vertices in A to V , . . . , V d . while U = ∅ doif xy . . . y k − ∈ H for some vertices x ∈ U and y , . . . , y k − / ∈ U then Fix j ∈ [ k ] such that i P ( y . . . y k − ) + u j ∈ L .Assign x to V j and remove x from U . else Choose x ∈ U which is reliable.Branch over all possible assignments of x . if i P ( e ) ∈ L for every e ∈ H then halt with output P . Proof.
First we note that since L is full, the instruction “Fix j ∈ [ k ] such that i P ( y . . . y k − ) + u j ∈ L ” in Procedure ListPartitions is well-defined, sincefor any ( k − v there is precisely one j ∈ [ k ] such that v + u j ∈ L .Next we show that if the number of assigned vertices is at least (1 /k + γ ) n and at most (1 − γ ) n then there is always a reliable unassigned vertex. Tosee this, note that the number of sets x ∪ B , where x is unassigned and B is a set of k − γn (cid:0) n/k + γnk − (cid:1) > εn k − (recallfrom Setup 1.7 that ε ≪ γ ). Hence some such x ∪ B has degree at least(1 /k + γ ) n , and so x is reliable.Observe that after branching initially over all possible assignments of A , at least (1 /k + γ ) n vertices will be assigned (all the neighbours of A )before the procedure branches again. Further, the procedure will no longerbranch once there are fewer than γn unassigned vertices remaining. Indeed,in this case for any unassigned vertex x there are fewer than γn k − edgescontaining x and another unassigned vertex. Thus condition (deg) impliesthat every unassigned vertex x is contained in some edge xy . . . y k − of H where y , . . . , y k − are assigned. Hence when branching, we may alwayschoose a reliable vertex as stated in the procedure.The final line of the procedure ensures that any partition P of V ( H ) whichis output has that property that i P ( e ) ∈ L for every e ∈ H . The converseis also true: any partition P of V ( H ) such that i P ( e ) ∈ L for every e ∈ H will be output by some branch of the procedure. To see this, consider thebranch of the procedure in which, at each branch point, the vertex x underconsideration is assigned to the vertex class in which it lies in P . By ourinitial remark, every other vertex of H must also be assigned to the vertexclass in which it lies in P . We conclude that Procedure ListPartitions indeedruns correctly, returning all partitions P of V ( H ) such that i P ( e ) ∈ L forevery e ∈ H . OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 9
It remains to bound the number of such partitions. Consider some x overwhich the procedure branches. Then there can be no edge xy . . . y k − of H where y , . . . , y k − are assigned. Suppose that this is the case, and let B = y y . . . y k − be a set of assigned vertices such that d ( { x } ∪ B ) ≥ (1 /k + γ ) n .(Such a B must exist since we chose x to be reliable.) None of the (1 /k + γ ) n vertices v such that xvy . . . y k − is an edge of H can have been assigned, andeach will be assigned before the next branch of the procedure. We concludethat after any branch in the procedure and before the next branch, at least(1 /k + γ ) n vertices are assigned.Hence the search tree has depth at most k . Since the degree of the rootis at most d k − and every other vertex has d children, the search tree has atmost d k − leaves. At most one partition is output at each leaf, so at most d k − partitions P will be output by the algorithm, as required. Further-more, over all branches there will be at most d k − n iterations of the while loop, and the condition of the first if statement takes O ( n k ) operations tocheck, and so the overall running time is O ( n k +1 ). (cid:3) Remark 2.3.
In fact, the step in which the algorithm finds xy . . . y k − ∈ H for some vertices x ∈ U and y , . . . , y k − / ∈ U can be made more efficientby maintaining a queue of ‘new’ vertices and only considering k -tuples forwhich y is the vertex at the front of the queue. Initially the queue consistsof the vertices of A . Whenever a vertex is assigned it is added to the backof the queue, and the front vertex y is removed from the queue (i.e. ceasesto be new) once we have considered all k -tuples xy . . . y k − with x ∈ U and y , . . . , y k − / ∈ U in which y is the only new vertex. With this modification,the running time of the algorithm can be reduced to O ( n k ). Also, for thepurpose of Lemma 2.2 we could replace the constant 1 /k + γ in Setup 1.7by any positive constant independent of n and still deduce that the numberof possible partitions is independent of n . Proof of Theorem 2.1.
Let H be a k -graph as in Setup 1.7. We begin bynoting that Procedure DeterminePM determines whether H has a perfectmatching. Indeed, this is trivial if n < n , and if n ≥ n it follows fromTheorem 1.10, as Procedure DeterminePM determines whether there is a2 k ( k − P , L ) for H . We estimate the running time as follows.There are at most n k ( k − choices of sets S , and these can be generated intime O ( n k ( k − ). Also, there are only a constant number of choices for d and L , and these can be generated in constant time. Indeed, since L is anedge-lattice, it is generated by a set of k -vectors, and the number of suchgenerating sets is bounded by a function of k .For each choice of S, d and L , generating the list of choices for P takestime O ( n k +1 ) by Lemma 2.2 applied to H \ S . Further the number ofchoices for P is constant, and for each one it takes time O ( n k ( k − ) to checkfor the existence of the matching M . When k > k ( k − > k + 1 and sowe conclude that the running time is O ( n k − k ), as required. In the case k = 3, we use an improved algorithm with running time O ( n ) (which existsas noted in Remark 2.3) to generate the list of choices for P , thus obtainingthe result. (cid:3) Now we will motivate the proof of our main result, Theorem 1.1. We startby using Procedure DeterminePM to check whether H contains a perfectmatching. If H has no perfect matching then this is certified by the 2 k ( k − P , L ) found by Procedure DeterminePM. So suppose that H doescontain a perfect matching. How can we find it? A naive attempt at a proofis the following well-known idea. We examine each edge e of H in turn anduse the same procedure to test whether deleting the vertices of e would stillleave a perfect matching in the remainder of H , in which case we say that e is safe . There must be some safe edge e , which we add to our matching,then repeat this process, until the number of vertices falls below n , at whichpoint we can find a perfect matching by a constant-time brute force search.The problem with this naive attempt is that as we remove edges, the min-imum codegree may become too low to apply Procedure DeterminePM, andthen the process cannot continue. To motivate the solution to this problem,suppose that we have oracle access to a uniformly random edge from someperfect matching. Such an edge is safe, and if we repeatedly remove suchrandom edges, standard large deviation estimates show that with high prob-ability the minimum codegree condition is preserved (replacing γ by γ/ p e ) on the safe edges suchthat P e : x ∈ e p e = k/n for every vertex x ; using this distribution instead ofthe oracle provides a randomised algorithm for finding a perfect matching.Our actual algorithm is obtained by derandomising the oracle algorithm.Instead of a minimum codegree condition, we bound the sum of squares ofcodegree ‘deficiencies’, which is essentially the condition (codeg) of Setup 1.7.We also need to introduce the vertex degree condition (deg), otherwise wedo not have an effective bound on the number of partitions P in Lemma 2.2.Conditions (i) and (ii) in the following lemma effectively serve as proxies for(codeg) and (deg) respectively. Note that by H − e we mean the k -graphobtained from H by deleting all vertices of e and all edges incident to them. Lemma 2.4.
Suppose that /n ≪ ε ≪ γ ≪ /k , that k ≥ and that H is a k -graph on n vertices. For each set A of k − vertices of H let t A = max(0 , (1 /k + γ ) n − d H ( A )) . Suppose that(i) P A ∈ ( V ( H ) k − ) t A < εγ n k +1 / kn k ,(ii) n k − / k ! − δ ( H ) + P A ∈ ( V ( H ) k − ) t A √ εγ n < √ εn k − ,(iii) H contains a perfect matching.Then we can find, in time at most O ( n k − k ) , an edge e ∈ H such that (i),(ii) and (iii) also hold for H − e with n − k in place of n . The proof of Lemma 2.4 involves messy calculations, so we defer thefull proof until Section 9 and for now just describe the idea. While δ ( H ) >n k − / k ! we only need to maintain condition (i); then an averaging argumentshows that the required edge exists. On the other hand, if there is a vertex ofsmall degree we can remove any edge containing it: this so greatly decreases P A ∈ ( V ( H ) k − ) t A as to compensate for any further decrease in δ ( H ). OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 11
Proof of Theorem 1.1.
We begin by running Procedure DeterminePM toconfirm that H contains a perfect matching; if it does not, then we ob-tain a 2 k ( k − H , which by Theorem 1.10 is a certificatethat no perfect matching exists. If H does contain a perfect matching,then we repeatedly apply Lemma 2.4 to delete edges of H (along with theirvertices). Initially, condition (iii) of Lemma 2.4 holds by assumption, andconditions (i) and (ii) hold as the codegree assumption implies t A = 0 forany ( k − A and δ ( H ) ≥ k − (cid:0) nk − (cid:1) . Since Lemma 2.4 ensures that itsconditions are preserved after an edge is deleted, we may repeat until n istoo small for further application of Lemma 2.4. At this point the numberof vertices remaining in H is bounded by a constant depending only on ε, γ and k (this follows from the definition of ≪ ), so we can use the brute-forcealgorithm to find a perfect matching in the remainder of H in constant time.Together with the deleted edges this forms a perfect matching in H . Since k vertices are deleted from H with each application of Lemma 2.4, at most n/k applications are required in total. Thus the total running time of thealgorithm is O ( n k − k +1 ). (cid:3) Outlines of the proofs
In this section we briefly sketch the proof of Theorem 1.10. The easierdirection is that if there is a perfect matching then there is no 2 k ( k − H be a k -graph as in Setup 1.7 that contains a perfectmatching M ∗ . To show that there is no 2 k ( k − H , it suf-fices to show that every 2 k ( k − P , L ) for H is soluble. Toaccomplish this, we first show that L is a subgroup of L P max with index atmost |P| . Then by a simple application of the pigeonhole principle, we canfind a matching M in H of size at most |P| − i P ( M ) lies in thesame coset of L in L P max as i P ( M ∗ ). Since i P ( V ( H ) \ V ( M ∗ )) = ∈ L wededuce that i P ( V ( H ) \ V ( M )) ∈ L , and so M solves ( P , L ).Let us now turn our attention to the remaining implication of the theorem,i.e. that if every 2 k ( k − k ( k − P of V ( H ): we choose P to be ‘robustly maximal’with respect to H , which roughly speaking means that it is an approximatedivisibility barrier with no other approximate divisibility barrier ‘hidden’inside. By reassigning a small number of vertices to different parts we canfurther ensure that every vertex lies in many edges e ∈ H with i P ( e ) ∈ L .We will see that ( P , L ) is a full pair, so by our assumption it has a solution M . Our key lemma will show that under these conditions H \ V ( M ) has aperfect matching, which together with M forms a perfect matching in H .We prove the key lemma by reducing it to a partite version, using arandom k -partition of H . Thus for much of the paper we work with a k -partite k -graph H whose vertex classes each have size n . Our codegreeconditions will apply only to ( k − from any vertex class. We will work with the ‘ µ -robust’ edge-lattice L µ P ( H ),which is defined similarly to L P ( H ), except that we require many ( µ | V ( H ) | k )edges of a given index vector for it to be included in the generating set (seeDefinition 4.1).A key idea in the proof of is that of splitting H into a number of k -partite k -graphs, each of which satisfies a stronger version of the properties of H .More precisely, if almost all partite ( k − H have degreeat least n/ℓ + γn and L µ P ( H ) is transferral-free, then we can find a set of k -partite subgraphs whose vertex sets partition V ( H ), such that each satisfiesa stronger codegree condition: almost all partite ( k − / ( ℓ −
1) proportion of the size of each vertex class. By induction on ℓ we will obtain a perfect matching in each subgraph, which together give aperfect matching in H .3.1. An analogue for tripartite 3-graphs.
To illustrate this idea better,we now outline the proof of an analogous result to Theorem 1.5 for 3-partite3-graphs. Indeed, let H be a 3-partite 3-graph with vertex classes V , V and V each of size n . Suppose that any partite pair in H has codegree at least(1 / γ ) n . We shall prove that either H contains a perfect matching, or V ( H ) can be partitioned into two parts A and B such that every edge of H has an even number of vertices in A , but | A | is odd (i.e. there is a divisibilitybarrier).We begin by applying Theorem 4.6 to H . This implies that either H contains a perfect matching (in which case we are done) or that there is apartition P of V ( H ) into parts of size at least (1 / γ/ n which refines the3-partition of V ( H ) and is such that L µ P ( H ) is incomplete and transferral-free. Note that this means that P refines each vertex class V i into at mosttwo parts; in fact, it is not hard to see that P must partition each vertexclass V i into precisely two parts, W i and W i .We now decompose H into eight 3-partite subgraphs ( H ijk ) i,j,k ∈ [2] , where H ijk consists of all edges of H which contain one vertex from each of W i , W j and W k . So every edge of H lies in precisely one subgraph H ijk . Since L µ P ( H ) is transferral-free, we may assume without loss of generality thatalmost all of the edges of H lie in one of H , H , H or H (theremaining subgraphs have very low density). As described earlier, we nowobserve that almost all partite pairs in each subgraph have codegree atleast 1 / γ/ H tells us that any pair of vertices xy with x ∈ W and y ∈ W has at least (1 / γ ) n neighbours in V (i.e.vertices z ∈ V such that xyz ∈ H ). But since H has very low density,very few such pairs xy can have many neighbours in W . So almost allof these pairs must have (1 / γ/ n ≥ (1 / γ/ | W | neighbours in W . So H satisfies a significantly stronger codegree condition than thatsatisfied by H , ignoring the fact that a small number of pairs, which we willcall bad pairs, fail this codegree condition. A similar argument applies to H , H and H .At this point we delete a (small) matching M in H to achieve two aims.Firstly, M will cover all vertices which lie in many bad pairs. Since there are OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 13 few bad pairs there will only be a small number of such vertices. Secondly,after deleting the vertices covered by M there will be an even number ofvertices remaining in W := W ∪ W ∪ W . This can be done unless | W | is odd and every edge of H intersects W in an even number of vertices; inthis case we are done, and H contains no perfect matching.Now we delete the vertices covered by M from H ; this only slightly weak-ens the codegree condition on H , H , H and H since M does notcontain many edges. Then we choose a random partition of the remainingvertices of H into subsets S , S , S and S under the constraints that(i) each subset contains equally many vertices from each vertex class V j , and(ii) S ijk ⊆ W i ∪ W j ∪ W k . Such partitions exist since each part W ij has sizegreater than n/ | W | is even (this is a special case of Proposition 6.13).Let H ′ be the 3-partite subgraph of H induced by S , and define H ′ , H ′ , and H ′ similarly. The fact that the partition was chosen randomlyimplies that, in each subgraph, almost every partite pair has codegree atleast (1 / γ/ n ′ , where n ′ is the number of vertices in each part, and novertex lies in many bad pairs. It follows by [1, Theorem 2] (or by Theo-rem 4.6) that each subgraph contains a perfect matching; together with thedeleted matching this yields a perfect matching in H .3.2. The general case.
The case k = 3 is particularly simple becausethere is only one maximal divisibility barrier; recall that for k ≥
4, Con-struction 1.6 shows that a naive generalisation of Theorem 1.5 does nothold. For the general case of Theorem 1.10, we use the ideas outlined inSection 3.1, but there are additional complications. Firstly, there are nowmany possibilities for the partition P returned by applications of Theo-rem 4.6. Secondly, multiple applications of the above technique are requiredto successively improve the codegree condition on the k -graphs into which H is decomposed.These complications will be handled by our partite key lemma (Lemma 7.6),which can be seen as a variation on Theorem 4.6 specialised to k -partite k -graphs with vertex classes of size n in which almost all partite ( k − /ℓ + γ ) n , with two key differences. One is that,instead of the condition of Theorem 4.6 that L = L µ P ( H ) must be complete,we now only require that i P ( V ( H )) ∈ L . The other is that, whereas thecondition of Theorem 4.6 must hold for any partition P of V ( H ) into suf-ficiently large parts, we now only require that i P ( V ( H )) ∈ L for a single‘canonical’ partition P which meets two additional requirements.Firstly, we require that every vertex must lie in many edges e ∈ H with i P ( e ) ∈ L . This condition can be seen as ensuring that each vertex of H lies in the ‘correct part’ of P . For example, consider the extremal exampledescribed in Construction 1.2. If we fix some small µ > v from part A to part B (but do not change the edge set of H ), thenthe only edges whose index changes are the fewer than n k − edges whichcontain v . So L µ P ( H ) is unchanged, and H doesn’t have a perfect matching(since H itself is unchanged), but we now have i P ( V ( H )) ∈ L µ P ( H ), dueto v being in the ‘wrong part’ of P . Secondly, we must assume that L istransferral-free. However this requirement, while necessary, is not sufficient,as the following example will show. Construction 3.1.
Fix k ≥ P = { W , W } be a partition of V .Let Q be a refinement of P which divides W into V and V and W into V and V . Suppose that | W | is even, but that | V ∪ V | is odd. Let H be the k -graph on V whose edges are precisely the k -subsets of V whichcontain an even number of vertices in W and an even number of vertices in V ∪ V .In Construction 3.1, L µ P ( H ) is transferral-free, δ k − ( H ) ≥ (1 /k + γ ) n and i P ( V ( H )) ∈ L µ P ( H ). Thus the conditions relating to P do not preclude theexistence of a perfect matching, but the conditions relating to Q do. Indeed, H cannot contain a perfect matching, since it is a subgraph of the k -graphdescribed in Construction 1.2, where A = V ∪ V and B = V ∪ V . Toavoid this kind of situation, we insist that there is no strict refinement Q of P into not-too-small parts such that L µ Q ( H ) is transferral-free. Note that thetrivial partition into a single part satisfies this requirement if and only if H is not close to a divisibility barrier. In fact, we require the stronger propertythat for some µ ′ ≫ µ (i.e. even at a much weaker ‘detection threshold’)the lattice L µ ′ Q ( H ) is not transferral-free for any strict refinement Q of P into not-too-small parts. This property is ‘robust’ in the sense that whenwe delete a small number of vertices from H (as we will need to do), theproperty is preserved, albeit with weaker constants. (Section 5 is devotedto the study of robust maximality.) If P satisfies both of these conditions,then Lemma 7.6 states that H must contain a perfect matching.We prove Lemma 7.6 by induction on ℓ by a similar argument to thatin Section 3.1 (roughly speaking, there we reduced the ℓ = 3 case to the ℓ = 2 case, for k = 3). That is, we apply Theorem 4.6 to yield a perfectmatching (in which case we are done), or a partition P of V ( H ) into partsof size at least (1 /ℓ + γ ) n such that L µ P ( H ) is incomplete and transferral-free. For the base case of the induction we observe that the latter outcomeis impossible for ℓ = 2. Next, for each i ∈ I µ P ( H ), we define H i to be the‘canonical’ induced subgraph of H on the union of the parts W ∈ P suchthat i W = 1, and P i to be the restriction of P to V ( H i ). By a similarargument to the previous section (formalised in Proposition 7.5), we findthat each H i satisfies a codegree condition similar to that on H , but with ℓ − ℓ . Our aim is then to find vertex-disjoint subgraphs ˆ H i ⊆ H i whose vertex sets partition V ( H ), each of which satisfies the conditions ofLemma 7.6 with the stronger codegree condition ( ℓ − ℓ ). Wecan then apply the inductive hypothesis to find a perfect matching in eachˆ H i ; together these form a perfect matching in H .To do this, we first take a robustly maximal refinement Q i of P i foreach i , and delete a small matching that covers all ‘bad’ vertices. We thenneed to ensure that our partition into subgraphs H i satisfies i Q i ( V ( ˆ H i )) ∈ L µ Q i ( H i ) for each i ; accomplishing this is the most technical part of theproof. Observe that whether this condition is satisfied depends only on thevalues of | V ( ˆ H i ) ∩ Y | for parts Y ∈ Q i . Thus we need to choose the sizesof the intersections V ( ˆ H i ) ∩ Z for parts Z ∈ Q ∩ , where Q ∩ is the ‘meet’of the partitions {Q i | i ∈ I } . We achieve this in three stages. Firstly, inClaim 7.8, we choose rough targets for the size of each V ( ˆ H i ); here we use a OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 15 geometric method which relies on Farkas’ Lemma (Theorem 4.7). Secondly,in Claim 7.9, we choose how many vertices each ˆ H i will take from each part ofthe ‘join’ Q ∪ of the partitions Q i (this step deals with the problem illustratedby Construction 3.1). Thirdly, in Claim 7.10, we use Baranyai’s MatrixRounding Theorem to refine this choice to obtain the intersection sizes werequire. Finally, we choose the vertex set of each ˆ H i at random with thegiven number of vertices from each part of Q ∩ . In Claim 7.11 we demonstratethat with high probability this random selection does indeed give subgraphsˆ H i to which we can apply the inductive hypothesis, completing the proof.4. Preliminaries
This section contains theoretical background needed for the rest of thepaper, organised into the following subsections: 4.1 Partitions, index vectorsand lattices, 4.2 Hypergraph matching theory, 4.3 Convex geometry, 4.4Baranyai’s Matrix Rounding Theorem, 4.5 Concentration of probability.4.1.
Partitions, index vectors and lattices.
We will frequently speak ofa partition Q of a vertex set V . We use this term in a slightly non-standardway to mean a family of pairwise-disjoint subsets of V whose union is V (soit is possible for a part to be empty, though this will rarely be the case).Furthermore, we implicitly fix an order on the parts of the partition, so wemay consistently speak of, for example, the i th part of Q . Given V ′ ⊆ V ,the restriction of Q to V ′ , denoted Q [ V ′ ], is the partition of V ′ with parts X ∩ V ′ for X ∈ Q .Many of our results will apply specifically to partite k -graphs. Let P partition a set V . Then we say that a set S ⊆ V is P -partite if S has atmost one vertex in any part of P . We say that a hypergraph H on V is P -partite if every edge of H is P -partite. In this case we refer to the partsof P as the vertex classes of H . Usually, we will consider k -graphs H whichare k -partite , i.e. P -partite for some partition P of V ( H ) into k parts.Given a k -graph H and a partition P of V ( H ), the lattice L P ( H ) inDefinition 1.3 can be seen as ‘detecting’ where edges of H lie with respectto P . However, the information conveyed by L P ( H ) is by itself insuffi-cient, as shown by the k -graph formed in Construction 1.6. Indeed, in thatinstance L P ( H ) was complete, but some index vectors did not representenough edges: specifically, H did not contain two disjoint edges with dif-ferent numbers of vertices in A and B modulo 3. Thus in the proof ofTheorem 1.10 we will frequently want to know which index vectors are rep-resented by many edges; this is achieved by the following definition. Definition 4.1 (Robust edge-lattices) . Let H be a k -graph and P be apartition of V ( H ) into d parts. Then for any µ > I µ P ( H ) denotes the set of all i ∈ Z d such that at least µ | V ( H ) | k edges e ∈ H have i P ( e ) = i .(ii) L µ P ( H ) denotes the lattice in Z d generated by I µ P ( H ).The constant µ can be viewed as the ‘detection threshold’: it specifiesthe number of edges of a given index which are required for this index tocontribute to L µ P ( H ). For any µ < µ ′ it is clear that L µ ′ P ( H ) ⊆ L µ P ( H ) ⊆ L P ( H ). Next we show that robust edge-lattices are insensitive to smallperturbations. Definition 4.2.
Let P be a partition of a set V of size n and H be a k -graphon V .(i) We say that a k -graph H ′ on a set V ′ ⊆ V is α -close to H if we have | V ′ | ≥ (1 − α ) n and | H △ H ′ | ≤ αn k .(ii) We say that a partition P ′ of a set V ′ ⊆ V is α -close to P if forsome d we have |P ′ | = |P| = d and P i ∈ [ d ] | V i △ V ′ i | ≤ αn , where P =( V , . . . , V d ) and P ′ = ( V ′ , . . . , V ′ d ).Note that Definition 4.2(i) is asymmetric; that is, it does not imply that H is α -close to H ′ . Proposition 4.3.
Under the setup of Definition 4.2, we have I µ P ( H ) ⊆ I µ − α P ′ ( H ′ ) , so L µ P ( H ) ⊆ L µ − α P ′ ( H ′ ) . Also, if µ ≤ /k then I µ P ′ ( H ′ ) ⊆ I µ − α P ( H ) , so L µ P ′ ( H ′ ) ⊆ L µ − α P ( H ) .Proof. Consider i ∈ I µ P ( H ). By definition, at least µn k edges e ∈ H have i P ( e ) = i . Of these edges, at most αn k are not in H ′ , and at most αn k ofthose in H ′ have i P ′ ( e ) = i . Therefore i ∈ I µ − α P ′ ( H ′ ). Similarly, consider i ∈ I µ P ′ ( H ′ ). At least µ ( n − αn ) k > ( µ − α ) n k edges e ∈ H ′ have i P ′ ( e ) = i ,at most αn k are not in H , and at most αn k have i P ( e ) = i . Therefore i ∈ I µ − α P ( H ). (cid:3) Let P and P ′ be partitions of a set V . We say that P ′ refines P if everypart of P ′ is a subset of a part of P . Definition 4.4.
Let P and P ′ be partitions of a set V such that P refines P ′ . Let i be an index vector with respect to P . Then the projection ( i | P ′ )of i on P ′ is defined by ( i | P ′ ) W = X X ∈P ,X ⊆ W i X for each W ∈ P ′ . We also write ( I | P ′ ) = { ( i | P ′ ) : i ∈ I } when I is a setof index vectors with respect to P .As an example under the setup of Definition 4.4, note that if S ⊆ V then( i P ( S ) | P ′ ) = i P ′ ( S ).Our next result concerns the behaviour of edge-lattices with respect toprojection. An informal statement is that if Q refines P , then the projectionof a robust edge-lattice in Z Q is contained in a robust edge-lattice in Z P ,and a ‘weak converse’ holds, namely that any vector in a robust edge-latticein Z P is the projection of some vector in a robust edge-lattice in Z Q . Proposition 4.5.
Let P and Q be partitions of a set V of n vertices suchthat Q refines P , and let H be a k -graph on V .(i) If i ∈ L µ Q ( H ) then ( i | P ) ∈ L µ P ( H ) .(ii) For any i ∈ L µ P ( H ) there exists i ′ ∈ L µ/m Q ( H ) such that ( i ′ | P ) = i ,where m := ( k + 1) |Q|−|P| . OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 17
Proof.
For (i), consider i ∈ I µ Q ( H ). At least µn k edges e ∈ H have i Q ( e ) = i .Each such edge has i P ( e ) = ( i | P ), so ( i | P ) ∈ I µ P ( H ). Since projection islinear the result follows.For (ii), consider i ∈ I µ P ( H ). At least µn k edges e ∈ H have i P ( e ) = i .Note that there are at most m index vectors i ′ with respect to Q whichsatisfy ( i ′ | P ) = i , since for every part X ∈ P which contains r parts Y , . . . , Y r of Q there are at most ( k + 1) r − ways of partitioning i X into i ′ Y , . . . , i ′ Y r . So by the pigeonhole principle there is some i ′ with ( i ′ | P ) = i for which at least µn k /m edges e ∈ H have i Q ( e ) = i ′ , that is, i ′ ∈ I µ/m Q ( H ).Again the result follows by linearity of projection. (cid:3) Hypergraph matching theory.
In this subsection we describe a cen-tral theorem from [17] that plays a key role in this paper. First we need thefollowing definitions. A k -complex J is a hypergraph such that ∅ ∈ J , everyedge of J has size at most k , and J is closed downwards, that is, if e ∈ J and e ′ ⊆ e then e ′ ∈ J . We write J r to denote the r -graph on V ( J ) formedby edges of size r in J . Also, we use the following notion of partite degreein a multipartite k -complex from [17]. Let P partition a set V into k parts V , . . . , V k , and let J be a P -partite k -complex on V . For each 0 ≤ j ≤ k − partite minimum j -degree δ ∗ j ( J ) is defined to be the largest m such thatany j -edge e has at least m extensions to a ( j + 1)-edge in any part not usedby e , i.e. δ ∗ j ( J ) := min e ∈ J j min i : e ∩ V i = ∅ |{ v ∈ V i : e ∪ { v } ∈ J }| . The partite degree sequence is then δ ∗ ( J ) = ( δ ∗ ( J ) , . . . , δ ∗ k − ( J )). Note thatwe suppress the dependence on P in our notation: this will always be clearfrom the context. Minimum degree sequence conditions on a k -complex takethe form δ ∗ ( J ) ≥ ( a , . . . , a k − ), where the inequality is to be interpretedpointwise. Finally, observe that if J is a P -partite k -complex on V , and Q is a partition of V which refines P into d parts, then every edge e ∈ J k has( i Q ( e ) | P ) = i P ( e ) = . So we say that a lattice L ⊆ Z d is complete withrespect to Q if i ∈ L for every i ∈ Z d with ( i | P ) = , and incomplete withrespect to Q otherwise. The following is a simplified form of [17, Theorem2.13]. Theorem 4.6. [17]
Suppose that /n ≪ µ ≪ γ, /k . Let P ′ partition aset V into parts V , . . . , V k each of size n . Suppose that J is a P ′ -partite k -complex on V with δ ∗ ( J ) ≥ (cid:18) n, (cid:18) k − k + γ (cid:19) n, (cid:18) k − k + γ (cid:19) n, . . . , (cid:18) k + γ (cid:19) n (cid:19) . Then either J k contains a perfect matching, or J k is close to a divisibilitybarrier, in that there is some partition P of V ( J ) into d ≤ k parts of sizeat least δ ∗ k − ( J ) − µn such that P refines P ′ and L µ P ( J k ) is incomplete withrespect to P ′ and transferral-free. Convex geometry.
Given points v , . . . , v r ∈ R d , we define their positive cone as P C ( { v , . . . , v r } ) := X j ∈ [ r ] λ j v j : λ , . . . , λ r ≥ . A classical result, commonly known as Farkas’ Lemma, shows that any point v outside of the positive cone of these points can be separated from themby a separating hyperplane. Theorem 4.7 (Farkas’ Lemma) . Suppose v ∈ R d \ P C ( Y ) for some finiteset Y ⊆ R d . Then there is some a ∈ R d such that a · y ≥ for every y ∈ Y and a · v < . We also need the following (slightly rephrased) simple proposition from [17].
Proposition 4.8 ([17], Proposition 4.8) . Suppose that /s ≪ /r, /d . Let X ⊆ Z d ∩ B d ( , r ) , and let L X be the sublattice of Z d generated by X . Thenfor any vector x ∈ L X ∩ B d ( , r ) we may choose integers a i with | a i | ≤ s foreach i ∈ X such that x = P i ∈ X a i i . Baranyai’s Matrix Rounding Theorem.
The proof of Lemma 7.6(on which the key lemma, Lemma 7.1, relies) will use Baranyai’s MatrixRounding Theorem [4] (see also [34, Theorem 7.5]).
Theorem 4.9. (Baranyai’s Matrix Rounding Theorem) Let A be a realmatrix. Then there exists an integer matrix B whose entries, row sums,column sums and the sum of all the entries are the entries, row sums, columnsums and the sum of all the entries respectively of A , each rounded eitherup or down. Concentration of probability.
We will need the following inequal-ities, known as Chernoff bounds, as applied to sums of Bernoulli randomvariables (i.e. random variables which take values in { , } ) and hyperge-ometric random variables. The hypergeometric random variable X withparameters ( N, m, n ) is defined as X = | T ∩ S | , where S ⊆ [ N ] is a fixed setof size m , and T ⊆ [ N ] is a uniformly random set of size n . If m = pN then X has mean pn . The following is [13, Theorem 2.8]. Lemma 4.10.
Let X be a sum of independent Bernoulli random variablesand < a < / . Then P ( | X − E X | ≥ a E X ) ≤ − a E X ) . Corollary 4.11.
Let X be a sum of independent hypergeometric randomvariables and < a < / . Then P ( | X − E X | ≥ a E X ) ≤ − a E X ) .Proof. We follow Remark 2.11 of [13]. By Lemma 1 of [35], each of thehypergeometric random variables may be expressed as a sum of indepen-dent (but not identically distributed) Bernoulli random variables. HenceLemma 4.10 implies the result. (cid:3)
We will also need a form of the well-known Azuma-Hoeffding inequality.A sequence ( X , . . . , X n ) of random variables is a martingale if E ( | X j | ) isfinite and E ( X j | X , . . . , X j − ) = X j − for any j ∈ [ n ]. The following is (aweaker form of) [13, Theorem 2.25]. OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 19
Theorem 4.12.
Let A , A , . . . , A n be a martingale such that | A i − A i − | ≤ C for every i ∈ [ n ] . Then P ( | A n − A | > tC ) ≤ (cid:0) − t / n (cid:1) for any t > . We will apply Theorem 4.12 via the following corollary.
Corollary 4.13.
Let c > and H be a k -graph on n vertices with | H | ≥ cn k .Let Q be a partition of V ( H ) and let ( n Z ) Z ∈Q be integers such that c | Z | ≤ n Z ≤ | Z | for each Z ∈ Q . Suppose that S ⊆ V ( H ) is chosen uniformly atrandom subject to the condition that | S ∩ Z | = n Z for each Z ∈ Q . Thenwith high probability | H [ S ] | = (1 ± c ) E | H [ S ] | .Proof. We consider each S ∩ Z to be chosen as the first n Z elements of arandom permutation π Z of Z . We apply Theorem 4.12 with A i = E ( | H [ S ] | |F i ), where F i is the algebra of events generated by revealing the values ofthe permutations on the first i elements of V ( H ). Note that A = E | H [ S ] | and A n = | H [ S ] | . Also, | H [ S ] | is ‘2 n k − -Lipschitz’, in that its value canchange by at most 2 n k − when any transposition is applied to any of thepermutations. It is not hard to deduce that | A i − A i − | ≤ n k − for all i ∈ [ n ]. Finally, we claim that E | H [ S ] | ≥ ( c/ k +1 n k . Indeed, at least cn k / H have at most one vertex within any part of size less than cn/ e , we have P ( e ⊆ S ) ≥ ( c/ k . So by Theorem 4.12,applied with C = 2 n k − and t = ( c/ k +2 n , with high probability | H [ S ] | and E | H [ S ] | do not differ by more than c E | H [ S ] | . (cid:3) Robust Maximality
Given a k -graph H , there may be many approximate divisibility barriers,i.e. partitions P of V ( H ) such that L µ P ( H ) is incomplete for some constant µ >
0; for example, any refinement of such a partition has this property.In this section we will identify a canonical such partition, which is ‘robustlymaximal’. The definition at which we will arrive has a number of advantages.Firstly, any approximate divisibility barrier in H will imply the existence ofat least one robustly maximal partition P . Secondly, we can give a conditionwhich implies the existence of a perfect matching in H and refers to indexvectors with respect to P alone. Thirdly, as the term ‘robustly’ suggests,the property is insensitive to small modifications. All of these propertieswill be stated precisely and proved later in the section.To build up to the definition, we first discuss one way to avoid taking apartition that is too fine. Recall that a lattice L ⊆ Z d is transferral-free if L does not contain any difference of unit vectors u i − u j with i, j ∈ [ d ] and i = j . Given any approximate divisibility barrier, we can repeatedly mergeparts to obtain one with a transferral-free robust edge-lattice, which we mayconsider to be its ‘simplest’ version. Indeed, let H be a k -graph and considera partition P of V ( H ) such that L µ P ( H ) is incomplete and contains u X − u Y ,for some distinct parts X , Y of P . Let P ′ be the partition formed from P bymerging the parts X and Y . Then L ( k +1) µ P ′ ( H ) is also incomplete. Indeed,if this is not the case, then for any i ∈ L P max we have ( i | P ′ ) ∈ L ( k +1) µ P ′ ( H ),so by Proposition 4.5(ii) there is i ′ ∈ L µ P ( H ) with ( i ′ | P ′ ) = ( i | P ′ ). Since u X − u Y ∈ L µ P ( H ) we deduce that i ∈ L µ P ( H ). However, this implies that L µ P ( H ) is complete, which is a contradiction. Next we recall from Construction 3.1 that a transferral-free approximatedivisibility barrier may have another one ‘hidden’ inside it, so we will requirea maximality property to rule this out. A first attempt might be to say that P should be maximal such that L µ P ( H ) is transferral-free, but then we wouldobtain a rather fragile property that is sensitive to small modifications of P , µ and H . Indeed, in the course of our proof we will need to remove smallmatchings from H in order to cover vertices which are exceptional in variousways. We also want the property to be preserved with high probability bytaking an induced subgraph on a randomly chosen set of vertices. Theserequirements lead naturally to the following key definition. Definition 5.1.
Let H be a k -graph. We say that a partition P of V ( H )is ( c, c ′ , µ, µ ′ ) -robustly maximal with respect to H if(i) L µ P ( H ) is transferral-free and all parts of P have size at least c | V ( H ) | ,(ii) L µ ′ P ′ ( H ) is not transferral-free for any partition P ′ of V ( H ) with partsof size at least c ′ | V ( H ) | that strictly refines P .We will see in the key lemma that robustly maximal partitions are ‘canon-ical’, in that they capture all necessary information on approximate divis-ibility barriers. The next proposition allows us to refine any transferral-free approximate divisibility barrier to obtain a robustly maximal partition.(Note that if P is trivial and P ′ = P then H does not have any approximatedivisibility barrier). Proposition 5.2.
Let k ≥ be an integer and c > be a constant. Let s = ⌊ /c ⌋ and fix constants < µ < · · · < µ s +1 and c , . . . , c s +1 ≥ c . Supposethat H is a k -graph on n vertices, and P is a partition of V ( H ) with parts ofsize at least c n such that L µ P ( H ) is transferral-free. Then there exists t ∈ [ s ] and a partition P ′ of V ( H ) that refines P and is ( c t , c t +1 , µ t , µ t +1 ) -robustlymaximal with respect to H .Proof. We start by setting P (1) = P , then we proceed iteratively. At step t , if there is a partition P + which strictly refines P ( t ) into parts of size atleast c t +1 n such that the lattice L µ t +1 P + ( H ) is transferral-free, then we let P ( t +1) = P + . Otherwise we terminate with output P ( t ) . By definition each P ( t ) refines P and has parts of size at least c t n . Furthermore, if the algorithmterminates at time t , then L µ t P ( t ) ( H ) is transferral-free by choice of P ( t ) , butfor any P + which strictly refines P ( t ) into parts of size at least c t +1 n thelattice L µ t +1 P + ( H ) is not transferral-free. That is, P ( t ) is ( c t , c t +1 , µ t , µ t +1 )-robustly maximal with respect to H . It remains to show that this algorithmmust terminate with t ≤ /c . Indeed, |P ( i ) | > |P ( i − | for i ≥
2, but P ( t ) can have at most 1 /c parts, since each part has size at least c t n ≥ cn . (cid:3) Next we show that robust maximality is insensitive to small modifications.
Lemma 5.3.
Suppose that /n ≪ µ, µ ′ , α ≪ c ′ , c, /k . Let P be a partitionof a set V of size n and H be a k -graph on V . Let V ′ ⊆ V , let P ′ be apartition of V ′ that is α -close to P , and let H ′ be a k -graph on V ′ that is α -close to H . If P is ( c, c ′ , µ, µ ′ ) -robustly maximal with respect to H then P ′ is ( c − α, c ′ + 3 α, µ + 3 α, µ ′ − α ) -robustly maximal with respect to H ′ . OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 21
Proof.
Since P has parts of size at least cn , and P ′ is α -close to P , eachpart of P ′ has size at least ( c − α ) n . Also, Proposition 4.3 implies that L µ +3 α P ′ ( H ′ ) ⊆ L µ P ( H ). Since L µ P ( H ) is transferral-free, so is L µ +3 α P ′ ( H ′ ). Allthat remains is to show that there is no partition P + of V ′ which strictly re-fines P ′ into parts of size at least ( c ′ +3 α ) | V ′ | such that the lattice L µ ′ − α P + ( H ′ )is transferral-free.Suppose for a contradiction that some such P + exists, with d parts P +1 , . . . , P + d . We use P + to form a partition P ∗ of V whose parts P ∗ , . . . , P ∗ d correspond to those of P + . Note that all but at most αn vertices u ∈ V ( H )are members of V ( H ′ ) which lie in the same part of P ′ as P . We includeeach such vertex u in the part P ∗ j corresponding to the part P + j of P + which contains u . Next, we assign each of the at most αn remaining ver-tices v ∈ V ( H ) to an arbitrary part of P ∗ which is a subset of the part of P containing v . Observe that P ∗ is then a refinement of P . Furthermore, P + is α -close to P ∗ , so L µ ′ P ∗ ( H ) ⊆ L µ ′ − α P + ( H ′ ) by Proposition 4.3, and thisimplies that L µ ′ P ∗ ( H ) is transferral-free. However, P ∗ has parts of size atleast ( c ′ + 3 α ) | V ′ | − αn ≥ c ′ n , so the existence of P ∗ contradicts the robustmaximality of P with respect to H , completing the proof. (cid:3) Our next result shows that with robust maximality we can improve the‘weak converse’ of projection from Proposition 4.5 to a (genuine) converse(with weaker parameters).
Proposition 5.4.
Suppose that /n ≪ µ ≪ µ ′ ≪ c ′ , c, /k . Let H be a k -graph on n vertices, P be a partition of V ( H ) that is ( c, c ′ , µ, µ ′ ) -robustlymaximal with respect to H , and Q be a partition of V ( H ) which refines P into parts of size at least c ′ n . Suppose that i ∈ L µ ′ P ( H ) . Then i ′ ∈ L µ Q ( H ) for any index vector i ′ with respect to Q such that ( i ′ | P ) = i .Proof. Let p be the number of parts of P . We prove the following statementby induction on q : if Q is a refinement of P into q parts of size at least c ′ n and i ′ is an index vector with respect to Q such that ( i ′ | P ) = i then i ′ ∈ L µ ′ / ( k +1) q − p Q ( H ). The base case q = p is trivial, since then we must have Q = P , so i ′ = i ∈ L µ ′ Q ( H ) by assumption. Assume therefore that we have provedthe statement for any refinement Q ′ of P into q − c ′ n ,and that Q refines P into q parts of size at least c ′ n . Since P is ( c, c ′ , µ, µ ′ )-robustly maximal we know that L µ ′ Q ( H ) is not transferral-free, and so thereare distinct parts X, X ′ ∈ Q such that u X − u X ′ ∈ L µ ′ Q ( H ). Note that( u X − u X ′ | P ) ∈ L µ ′ P ( H ) by Proposition 4.5(i); since L µ ′ P ( H ) is transferral-free, this implies that ( u X − u X ′ | P ) = and hence that X and X ′ arecontained in the same part of P . Let Q ′ be formed from Q by merging X and X ′ into a single part. Then Q ′ is a refinement of P into q − c ′ n , so ( i ′ | Q ′ ) ∈ L µ ′ / ( k +1) q − − p Q ′ ( H ) by our inductive hypothesis. ByProposition 4.5(ii) there exists i ∗ ∈ L µ ′ / ( k +1) q − p Q ( H ) with ( i ∗ | Q ′ ) = ( i ′ | Q ′ ).Now i ∗ differs from i ′ only in the co-ordinates corresponding to X and X ′ ; as u X − u X ′ ∈ L µ ′ Q ( H ) ⊆ L µ ′ / ( k +1) q − p Q ( H ) it follows that i ′ ∈ L µ ′ / ( k +1) q − p Q ( H ), completing the induction. Since Q as in the statement can have at most1 /c ′ parts, we conclude that i ′ ∈ L µ ′ / ( k +1) /c ′ Q ( H ) ⊆ L µ Q ( H ). (cid:3) Another important property of robust maximality is that it is preservedby random selection.
Lemma 5.5.
Suppose that /n ≪ µ ≪ µ ′ ≪ c ′ , c ≪ η, /k . Let H bea k -graph on n vertices and P be a partition of V ( H ) that is ( c, c ′ , µ, µ ′ ) -robustly maximal with respect to H . Let P ′ be a partition of V ( H ) thatrefines P and let ( n Z ) Z ∈P ′ be integers such that η | Z | ≤ n Z ≤ | Z | for each Z ∈ P ′ . Suppose that S ⊆ V ( H ) is chosen uniformly at random subject tothe condition that | S ∩ Z | = n Z for each Z ∈ P ′ . Then with high probability P [ S ] is ( ηc, c ′ /η, µ/c, ( µ ′ ) ) -robustly maximal with respect to H [ S ] . The proof of this lemma requires the weak hypergraph regularity lemma,so we defer the details to Section 9.6.
Fullness
This section develops the theory of full lattices. In the first subsectionwe give a characterisation in terms of finite abelian groups. In the secondsubsection we give an equivalent definition of solubility, via an applicationof the pigeonhole principle that will also be useful in later sections. In thelast subsection we consider a partite form of fullness that will be needed forthe partite form of our key lemma.6.1.
The structure of full lattices.
In this subsection we characterise fulllattices in terms of finite abelian groups. Recall that a set I of k -vectors ofdimension d is full if for every ( k − v there is some i ∈ [ d ] suchthat v + u i ∈ I . Recall also that a lattice L is full if it contains a full set I of k -vectors and is transferral-free. We start by showing that L is generatedby I , so is an edge-lattice. Lemma 6.1.
Suppose k ≥ and L is a full lattice in Z P , where P is apartition of a set V . Let I ⊆ L be a full set of k -vectors and let L ′ be thelattice generated by I . Then(i) for any X , X ′ , X ∈ P , there exists X ′ ∈ P such that u X + u X − u X ′ − u X ′ ∈ L ′ ,(ii) for any i ∈ L P max and X ∈ P there is X ′ ∈ P such that i − u X + u X ′ ∈ L ′ ,and(iii) L = L ′ is an edge-lattice.Proof. To prove (i), we start by fixing any ( k − i ′ . Since I is full,we can find Y ∈ P such that i ′ + u X + u X + u Y ∈ I . Similarly, we can find X ′ ∈ P such that i ′ + u X ′ + u Y + u X ′ ∈ I . Then u X + u X − u X ′ − u X ′ is the difference of these two index vectors and hence lies in L ′ .For (ii), consider i ′ ∈ L ′ that minimises P Z ∈P | i ′ Z − i Z | subject to P Z ∈P i ′ Z = P Z ∈P i Z . We claim that P Z ∈P | i ′ Z − i Z | ≤
2. Indeed, if not we may choose X , X ′ , X such that either(a) X = X , i X − i ′ X > i X − i ′ X > i X ′ − i ′ X ′ <
0, or(b) X = X , i X − i ′ X > i X ′ − i ′ X ′ < OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 23
In either case, we may apply (i) to choose X ′ ∈ P such that i ∗ = u X + u X − u X ′ − u X ′ ∈ L ′ . Then i ′ + i ∗ contradicts our choice of i ′ . Thusthe claim holds, so i ′ = i − u Y + u ′ Y for some Y, Y ′ ∈ P . By (i) again,we can choose X ′ such that i ∗∗ = u X + u Y − u X ′ − u Y ′ ∈ L ′ . Therefore i + u X − u X ′ = i ′ + i ∗∗ ∈ L ′ , as claimed.To see (iii), consider any i ∈ L . By (ii) we have i ′ = i − u X + u X ′ ∈ L ′ forsome parts X and X ′ . Then u X − u X ′ = i − i ′ ∈ L . Since L is transferral-freewe have X = X ′ . Therefore i = i ′ ∈ L ′ . (cid:3) Full lattices have the following maximality property.
Proposition 6.2.
Suppose L and L ′ are edge-lattices in Z d such that L isfull, L ′ is transferral-free and L ⊆ L ′ . Then L = L ′ .Proof. Let I and I ′ be full generating sets for L and L ′ . Suppose that L = L ′ , so I = I ′ . Choose i ∈ I ′ \ I and write i = i ′ + u i , where i ′ is a( k − i ∈ [ d ]. Since I is full, we have i ′ + u j ∈ I for some j ∈ [ d ]. Note that j = i , as i / ∈ I . But I ⊆ L ′ , so L ′ contains the transferral u i − u j = i − ( i ′ + u j ). This contradiction shows that L = L ′ . (cid:3) Next we define a group of cosets that is naturally associated with anylattice.
Definition 6.3.
Suppose L is an edge-lattice in Z P , where P is a partitionof a set V .(i) The coset group of ( P , L ) is G = G ( P , L ) = L P max /L .(ii) For any i ∈ L P max , the residue of i in G is R G ( i ) = i + L . For any A ⊆ V of size divisible by k , the residue of A in G is R G ( A ) = R G ( i P ( A )).Next we show that | G ( P , L ) | = |P| when L is full and k ≥
3. Note thatthis may not hold if k = 2, as shown by the example where |P| = 2 and L is generated by (1 , Lemma 6.4.
Suppose k ≥ and L is a full lattice in Z P , where P is apartition of a set V . Then | G ( P , L ) | = |P| .Proof. Fix any ( k − i ′ . We claim that every coset L + v of L in L P max contains an index vector i ′ + u Y for some Y ∈ P . To see this, notethat since L is full there exists X ∈ P such that i ′ + u X ∈ L . Also, byLemma 6.1(ii) we can choose Y ∈ P such that − v − u X + u Y ∈ L . But now i ′ + u Y = ( i ′ + u X ) + ( − v − u X + u Y ) + v ∈ L + v , as claimed. Furthermore, L + v cannot contain i ′ + u Y and i ′ + u Y ′ for distinct parts Y , Y ′ of P , as then u Y − u Y ′ ∈ L , contradicting the fact that L is transferral-free. Therefore | G ( P , L ) | = |P| . (cid:3) Now we describe the structure of L in terms of its coset group. If G isan abelian group, g ∈ G and r is a non-negative integer then we write rg for the sum of r copies of g . We show that any full lattice arises from thefollowing construction. Construction 6.5.
Let G be an abelian group. Let P be a partition of aset V into | G | parts, identified with G . Fix g ∈ G . Let I ( G, g ) be the set of k -vectors i ∈ L P max with X g ∈ G i g g = g . Let L ( G, g ) be the lattice generated by I ( G, g ). Lemma 6.6. I ( G, g ) and L ( G, g ) are full, and L ( G, g ) is the set of indexvectors i ∈ L P max with X g ∈ G i g g = ( k − X g ∈ G i g ) g . Proof.
First we show that I ( G, g ) is full, i.e. that for every ( k − v there is h ∈ G such that v + u h ∈ I ( G, g ). Indeed, we can take h = g − P g ∈ G v g g . Next let L ′ be the lattice consisting of all i ∈ L P max with P g ∈ G i g g = ( k − P g ∈ G i g ) g . Note that L ( G, g ) is contained in L ′ .Furthermore, L ′ is transferral-free, as for any distinct g , g ∈ G we have P g ∈ G ( u g − u g ) g g = g − g = 0 G = 0 g , so u g − u g / ∈ L ′ . Thus L ( G, g ) istransferral-free, and so is full. Finally, L ( G, g ) = L ′ by Proposition 6.2. (cid:3) Theorem 6.7.
Let k ≥ and suppose L is a full edge-lattice in Z P , where P is a partition of a set V . Then there is an identification of P with G = G ( P , L ) and some g ∈ G such that L = L ( G, g ) and R G ( i ) = P g ∈ G i g g − ( k − P g ∈ G i g ) g for any i ∈ L P max .Proof. We fix an arbitrary part X ∈ P and identify X with the identity0 G ∈ G . Next we identify each X ∈ P with R G ( u X − u X ). Note thatfor distinct parts X, X ′ of P we have R G ( u X − u X ) = R G ( u X ′ − u X ),otherwise we would have u X − u X ′ ∈ L , contradicting the fact that L istransferral-free. Furthermore, the identification is bijective by Lemma 6.4.Let g = − k u X + L ∈ G . Consider any i ∈ L P max and write r = k − P g ∈ G i g ∈ Z . Then i − rk u X = P X ∈P i X ( u X − u X ) ∈ P g ∈ G i g g .Now if P g ∈ G i g g = rg then i ∈ L . This shows that L ( G, g ) ⊆ L . Further-more, L ( G, g ) is full by Lemma 6.6 and L is transferral-free, so L = L ( G, g )by Proposition 6.2. Finally, we saw above that R G ( i − rk u X ) = P g ∈ G i g g .Since R G ( − k u X ) = g , we have R G ( i ) = P g ∈ G i g g − rg . (cid:3) Remark 6.8.
The identification of P with G = G ( P , L ) in the proof ofTheorem 6.7 is determined up to translation by G , and the element g isdetermined up to translation by kG . To see this, consider two identificationsas in Theorem 6.7, say π i : P → G defined by π i ( X ) = R G ( u X − u X i ) forsome X i ∈ P for i = 0 ,
1. Then for any X ∈ P we have π ( X ) − π ( X ) = g ′ ,where g ′ = R G ( u X − u X ) − R G ( u X − u X ) = R G ( u X − u X ) ∈ G isindependent of X . Now set g = − k u X + L ∈ G and g = − k u X + L ∈ G ;then g − g = kR G ( u X − u X ) = kg ′ , as claimed.6.2. Solubility.
Recall that a full pair ( P , L ) for a k -graph H is soluble ifthere exists a matching M in H of size at most |P| − i P ( V ( H ) \ V ( M )) ∈ L . Here we show that omitting the size condition on M gives anequivalent condition. OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 25
Lemma 6.9.
Let ( P , L ) be a full pair for a k -graph H , where k ≥ . Then ( P , L ) is soluble if and only if there exists a matching M in H such that i P ( V ( H ) \ V ( M )) ∈ L . The proof uses the following application of the pigeonhole principle.
Proposition 6.10.
Let G = ( X, +) be an abelian group of order m , andsuppose that elements x i ∈ X for i ∈ [ r ] are such that P i ∈ [ r ] x i = x ′ . Then P i ∈ I x i = x ′ for some I ⊆ [ r ] with | I | ≤ m − .Proof. It suffices to show that if r > m − P i ∈ [ r ] x i = P i ∈ I x i forsome I ⊆ [ r ] with | I | < r . To see this, note that there are r + 1 > m partialsums P i ∈ [ j ] x i for 0 ≤ j ≤ r , so by the pigeonhole principle some two mustbe equal, that is, there exist j < j so that P i ∈ [ j ] x i = P i ∈ [ j ] x i . Then X i ∈ [ r ] x i = X i ∈ [ r ] \{ j +1 ,...,j } x i + X i ∈ [ j ] x i − X i ∈ [ j ] x i = X i ∈ [ r ] \{ j +1 ,...,j } x i , as required. (cid:3) Proof of Lemma 6.9.
If ( P , L ) is soluble then such a matching M existsby definition. Conversely, suppose such a matching M exists. Write G = G ( P , L ) and note that | G | = |P| by Lemma 6.4. Since i P ( V ( H ) \ V ( M )) ∈ L we have P e ∈ M R G ( e ) = R G ( V ( H )). By Proposition 6.10 there exists a sub-matching M ′ of M of size at most | G |− |P|− P e ∈ M ′ R G ( e ) = R G ( V ( H )). Hence R G ( V ( H ) \ V ( M ′ )) = 0, i.e. i P ( V ( H ) \ V ( M ′ )) ∈ L . (cid:3) Partite fullness.
In the partite form of the key lemma we need thefollowing partite form of fullness, in which we consider index vectors of setsthat are partite with respect to some fixed partition.
Definition 6.11.
Let P ′ be a partition of a set V into k parts and P be arefinement of P ′ .(i) We say that a set I of k -vectors with respect to P is full with respectto P ′ if ( i | P ′ ) = for every i ∈ I , and for every X ∈ P ′ and ( k − v with respect to P such that ( v | P ′ ) = − u X , there is some Y ∈ P with Y ⊆ X such that v + u Y ∈ I .(ii) We write L PP ′ max for the lattice of vectors i ∈ Z P such that ( i | P ′ ) is amultiple of .(iii) We say that a lattice L ⊆ L PP ′ max is full with respect to P ′ if it istransferral-free and contains a set of k -vectors that is full with respectto P ′ .The next proposition records some properties of partite fullness. We justgive the proofs of (i) and (ii), as the proofs of (iii-v) are very similar to thoseof Lemmas 6.1 and 6.4. Proposition 6.12.
Let k ≥ , let P ′ be a partition of a set V into k parts, P be a refinement of P ′ , and L ⊆ L PP ′ max be a full lattice with respect to P ′ .Let I ⊆ L be a set of k -vectors that is full with respect to P ′ and let L ′ be thelattice generated by I . Then the following properties hold for some integer r .(i) Each part of P ′ is refined into exactly r parts by P . (ii) For every part X of P , there are exactly r k − vectors i ∈ I such that i X = 1 . In particular, | I | = r k − .(iii) For any i ∈ L PP ′ max and X ∈ P , there is X ′ ∈ P such that i − u X + u X ′ ∈ L ′ .(iv) | L PP ′ max /L | = r .(v) L = L ′ is an edge-lattice.Proof of (i) and (ii). Fix X ∈ P ′ and let r be the number of parts into which P refines X . For any other X ′ ∈ P ′ , we will construct a bijection betweenthe parts of P contained in X and those contained in X ′ . Let v be a non-negative index vector with respect to P such that ( v | P ′ ) = − u X − u X ′ .For each Y ∈ P which is contained in X , we apply the property that I isfull to the vector v + u Y to obtain a part Y ′ ∈ P which is contained in X ′ ,such that v + u Y + u Y ′ ∈ I . Now observe that since L is transferral-free, Y ′ must be unique. Thus Y Y ′ is a bijection, so (i) holds. For (ii), weobserve that the number of such ( k − v is r k − and there is a one-to-one correspondence between them and vectors i ∈ I such that i Y = 1.By considering the r parts of P contained in X we obtain | I | = r k − . (cid:3) Finally, we require the following consequence of Farkas’ Lemma.
Proposition 6.13.
Let P ′ partition a set V into parts V , . . . , V k each ofsize n , and let P be a partition refining P ′ into parts of size at least n/k .Suppose I is a set of k -vectors with respect to P which is full with respect to P ′ . Then i P ( V ) ∈ P C ( I ) .Proof. Suppose for a contradiction that i P ( V ) / ∈ P C ( I ). Then by The-orem 4.7 we may fix a ∈ R |P| such that a · i ≥ i ∈ I and a · i P ( V ) <
0. For each i ∈ [ k ], let X i , . . . , X b i i be the parts of P which aresubsets of V i , and let a i , . . . , a b i i be the corresponding coordinates of a , withthe labels chosen so that a i ≤ · · · ≤ a b i i . Fix i ∈ [ k ] for which a b i i − a i isminimised, so in particular a b i i − a i ≤ k P j ∈ [ k ] a b j j − a j . By assumption wemay choose i ∈ I such that i = u X si + P j = i u X j for some s ∈ [ b i ]. Then0 > a · i P ( V ) ≥ X j ∈ [ k ] na j + nk ( a b j j − a j ) ≥ n X j ∈ [ k ] a j + ( a b i i − a i ) ≥ n a · i ≥ , a contradiction. So i P ( V ) ∈ P C ( I ). (cid:3) The key lemmas
The following key lemma will be used in the proof of Theorem 1.10. Itprovides a simple condition for finding a perfect matching under Setup 1.7when we have a robustly maximal partition: it suffices that the index of thevertex set is in the robust edge-lattice and every vertex is in many edgeswith index in the robust edge-lattice.
OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 27
Lemma 7.1.
Suppose that k ≥ and /n ≪ ε ≪ µ ≪ µ ′ ≪ c, d ≪ γ, /k .Let H be a k -graph on a set V of size kn and P be a partition of V . Supposethat(i) at most εn k − ( k − -sets S ⊆ V have d H ( S ) < (1 + γ ) n ,(ii) P is ( c, c, µ, µ ′ ) -robustly maximal with respect to H ,(iii) any vertex is in at least dn k − edges e ∈ H with i P ( e ) ∈ L µ P ( H ) , and(iv) i P ( V ) ∈ L µ P ( H ) .Then H contains a perfect matching. We will prove Lemma 7.1 by taking a random k -partition of H and deduc-ing it from the partite key lemma that we prove in this section. However,showing that the conditions on H transfer to the k -partite subgraph in-duced by the random partition is technical and non-trivial, and so we deferthe proof of Lemma 7.1 to Section 9. In this section, after some preparatoryresults in the first subsection, we prove the partite key lemma (Lemma 7.6)in the second subsection.7.1. Preliminaries.
The following result forms the base case of the partitekey lemma (Lemma 7.6). This is the case where our k -graph H is far fromany divisibility barrier. Note that here any edge e ∈ H must have i P ( e ) = .So condition (iv) is trivial, and condition (iii) simply states that every vertexlies in at least dn k − edges. However, we state the lemma in this form forease of comparison to the full version of Lemma 7.6. Lemma 7.2.
Suppose that k ≥ and /n ≪ ε ≪ µ ≪ µ ′ ≪ c, d ≪ γ, /k .Let P partition a set V into vertex classes V , . . . , V k of size n and let H bea P -partite k -graph on V . Suppose that(i) at most εn k − P -partite ( k − -sets S ⊆ V have d H ( S ) < (1 /k + γ ) n ,(ii) P is ( c, c, µ, µ ′ ) -robustly maximal with respect to H ,(iii) any vertex is in at least dn k − edges e ∈ H with i P ( e ) ∈ L µ P ( H ) , and(iv) i P ( V ) ∈ L µ P ( H ) .Then H contains a perfect matching. The proof requires the following lemma that will enable us to apply The-orem 4.6.
Lemma 7.3.
Suppose that /n ≪ ε ≪ α ≪ /k . Let P partition a vertexset V into parts V , . . . , V k each of size n . Suppose H is a P -partite k -graph on V such that at most εn k − P -partite ( k − -sets S ⊆ V have d H ( S ) < D . Then there exists a k -complex J on V such that J k ⊆ H and δ ∗ ( J ) ≥ ((1 − √ ε ) n, (1 − α ) n, . . . , (1 − α ) n, D − αn ) .Proof. Let β = α/k k . Call a P -partite ( k − A ⊆ V bad if d H ( A ) < D ,and good otherwise. We define bad P -partite sets A of size i recursively for i = k − , k − , . . . , A is bad if it there are more than βn vertices x in some part of P such that A ∪ { x } is bad. If a P -partite set A is not bad we say it is good . We claim that for any 0 ≤ i ≤ k − i -sets is at most √ ε (cid:0) ni (cid:1) . To see this, we show by inductionon i that the number of bad ( k − i )-sets is at most ε ( k/β ) i (cid:0) nk − i (cid:1) . The basecase i = 1 holds by assumption on H , since β ≪ /k . The induction step follows since there are at least βn/k times as many bad ( k − i )-sets as bad( k − i − k -complex J as follows. We take J = {∅} , which is goodby the above claim, and define J i recursively for 1 ≤ i < k as the family ofgood i -sets A such that every ( i − A is an element of J i − . Sincethe number of bad singletons (i.e. bad 1-sets) is at most √ εn , we then have δ ∗ ( J ) ≥ (1 − √ ε ) n . For the remaining inequalities on δ ∗ ( J ) we now proveby induction that δ ∗ i ( J ) ≥ (1 − k i β ) n ≥ (1 − α ) n for each 0 ≤ i ≤ k − i = 0 is already done. For the induction step, suppose that δ ∗ i ( J ) ≥ (1 − k i β ) n for some 0 ≤ i ≤ k −
3. Suppose for a contradiction thatthere exists e ∈ J i +1 such that | J i +2 ( e ) ∩ V j | < (1 − k i +1 β ) n for some j ∈ [ k ]such that e is disjoint from V j .Let F be the set of good sets e + = e ∪{ w } such that w ∈ V j and e + / ∈ J i +2 .Then | F | ≥ ( k i +1 − βn , as by choice of e there are at least k i +1 βn choices of w such that e + / ∈ J i +2 , and at most βn choices make e + bad, since e ∈ J i +1 is good. Next note that any e + ∈ F contains some ( i + 1)-set e ∗ / ∈ J i +1 ,otherwise we would have added e + to J i +2 . Let F ′ be the set of such ( i + 1)-sets e ∗ for all e + ∈ F (choosing arbitrarily if there is more than one choicefor some e + ). Then | F ′ | = | F | , as each e + is determined by its choice of e ∗ (we have e + = e ∪ e ∗ ).Note that each e ∗ ∈ F ′ intersects e in i vertices, so there is some i -set e − ⊆ e which is contained in at least | F ′ | / ( i + 1) > k i βn sets of F ′ . Then | J i +1 ( e − ) ∩ V j | < (1 − k i β ) n , as F ′ is disjoint from J i +1 . But since e ∈ J i +1 we have e − ∈ J i , and so δ ∗ i ( J ) < (1 − k i β ) n . This contradiction establishesthe induction step.Now we define J k to be the set of all edges e ∈ H such that e − ∈ J k − for every e − ⊆ e of size k −
1. It remains to show that δ ∗ k − ( J ) ≥ D − αn ,which we do similarly to the induction step. Suppose there exists e ∈ J k − such that | J k ( e ) | < D − αn and let F be the set of edges e + ∈ H \ J k suchthat e ⊆ e + . Since e is good, we must have | F | ≥ αn . Next note that any e + ∈ F contains some ( k − e ∗ / ∈ J k − , otherwise we would have added e + to J k . Again let F ′ be the set of such ( k − e ∗ for all e + ∈ F . Then | F ′ | = | F | (as before, each e + is determined by its choice of e ∗ ).Note that each e ∗ ∈ F ′ intersects e in k − k − e − ⊆ e which is contained in at least | F ′ | / ( k − > k k − βn setsof F ′ . Then | J k − ( e − ) | < (1 − k k − β ) n , as F ′ is disjoint from J k − . Butsince e ∈ J k − we have e − ∈ J k − , and so δ ∗ k − ( J ) < (1 − k k − β ) n . Thiscontradiction completes the proof. (cid:3) Proof of Lemma 7.2.
Introduce a new constant α with ε ≪ α ≪ µ . Weapply Lemma 7.3 with D = (1 /k + γ ) n to obtain a P -partite k -complex J on V with J k ⊆ H and δ ∗ ( J ) ≥ (cid:0) (1 − √ ε ) n, (1 − α ) n, . . . , (1 − α ) n, (1 /k + γ − α ) n (cid:1) . Next we choose a matching M in H of size at most k √ εn which includesall of the at most k √ εn vertices x ∈ V for which { x } is not an edge of J ;we can construct M greedily by the vertex degree assumption. We write V ′ = V \ V ( M ), n ′ = n − | M | , and J ′ = J [ V ′ ] and verify that J ′ satisfies OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 29 the conditions of Theorem 4.6 with n ′ , 2 µ and γ/ n , µ and γ respectively.The degree sequence condition holds as δ ∗ ( J ′ ) ≥ (cid:0) n ′ , (1 − α ) n ′ , . . . , (1 − α ) n ′ , (1 /k + γ − α ) n ′ (cid:1) . (Note that only the first and last co-ordinates are close to being tight).Furthermore, P [ V ′ ] is ( c/ , c, µ, µ ′ / J ′ k by Lemma 5.3. Now suppose that P ′ is a partition of V ′ into parts ofsize at least δ ∗ k − ( J ′ ) − µn ′ ≥ n ′ /k ≥ c | V ′ | which refines P [ V ′ ]. Since J ′ k is P -partite every edge e ∈ J ′ k has i P ( e ) = ; in particular we have ∈ L µ ′ / P [ V ′ ] ( J ′ k ). So by Proposition 5.4 we have i ∈ L µ P ′ ( J ′ k ) for any indexvector i with respect to P ′ such that ( i | P ) = , i.e. L µ P ′ ( J ′ k ) is completewith respect to P [ V ′ ].Now J ′ k has a perfect matching by Theorem 4.6. Together with M , wehave a perfect matching in H . (cid:3) Next we recall from the proof outline the form of our inductive approach,which uses the following ‘canonical’ induced subgraphs.
Definition 7.4. (Canonical subgraphs) Suppose that H is a k -graph on V , P is a partition of V , and µ >
0. For each i ∈ I µ P ( H ), we define H i to be theinduced subgraph of H on the union of the parts W ∈ P such that i W > P i to be the restriction of P to V ( H i ).Note that H i contains all the edges of H of index i and is P i -partitewhenever H is P -partite. In the following proposition we establish variousproperties of H and these subgraphs H i . In (i), we show that the robustedge-lattice of H is full, so the properties of Proposition 6.12 also hold. In(ii), we show that H i inherits a similar codegree condition to that of H (withslightly weaker constants), which is essential for the induction. Note that aminimum codegree condition would not be inherited, so this is one reasonwhy for much of this paper we work with a condition on the codegree ofmost ( k − d = 1 /k and c ≪ /k , so (iii) showsthat the part sizes of P are in fact much larger than our original assumption,and (iv) shows that the robust edge-lattice is unchanged for a wide range of µ . Finally, recall from our proof outline that we choose matching edges tocover bad vertices; (v) will show that there are few bad vertices. Proposition 7.5.
Suppose that /n ≪ µ, ε ≪ ψ, d, c, /k . Let P ′ partitiona set V into k parts V , . . . , V k , where cn ≤ | V i | ≤ n for each i ∈ [ k ] . Let H be a P ′ -partite k -graph on V and P be a partition of V which refines P ′ .Suppose that( α
1) at most εn k − P ′ -partite ( k − -sets S ⊆ V have d H ( S ) < dn , and( α P has parts each of size at least cn and L µ P ( H ) is transferral-free.Then we have the following properties.(i) I µ P ( H ) is full with respect to P ′ .(ii) For any i ∈ I µ P ( H ) at most ψn k − P i -partite ( k − -sets S ⊆ V ( H i ) have | H i ( S ) | < ( d − ψ ) n . (iii) Each part of P has size at least ( d − ψ ) n .(iv) I dc k − / k k P ( H ) = I µ P ( H ) .(v) For any i ∈ I µ P ( H ) at most ψn vertices of V ( H i ) lie in fewer than c k − dn k − / edges of H i .Proof. Let θ satisfy µ, ε ≪ θ ≪ ψ, d, c, /k . For (i), let v be a non-negativeindex vector with respect to P such that ( v | P ′ ) = − u V k . Then it sufficesto show that there is some part X k of P with X k ⊆ V k such that H containsat least µ | V | k edges of index v + u X k . To see this, write v = P j ∈ [ k − u X j for parts X j ⊆ V j of P and note that the number of ( k − S = { x , . . . , x k − } with x j ∈ X j for each j ∈ [ k −
1] is at least Q j ∈ [ k − | X j | ≥ ( cn ) k − . Hence at least ( c k − − ε ) n k − such ( k − d H ( S ) ≥ dn ,and so at least ( c k − − ε ) dn k edges of H contain one vertex from each of X , . . . , X k − . Since P refines V k into at most 1 /c parts, some part X k ⊆ V k of P must be as required.For (ii), fix i ∈ I µ P ( H ), and for j ∈ [ k ] let W j ⊆ V j be the part of P for which i W j = 1 (so V ( H i ) = S j ∈ [ k ] W j ). Let S be the family of sets S = { x , . . . , x k − } with x i ∈ W i for each i ∈ [ k − S to consist of those S ∈ S with d H ( S ) ≥ dn but d H i ( S ) < ( d − θ ) n , and S to consist of those S ∈ S with d H ( S ) < dn . Then as above we have |S| ≥ ( cn ) k − , whilst |S | < εn k − by ( α |S | , note that each S ∈ S is contained in at least θn edges e ∈ H with i P ( e ) equal to some i ′ = i , and since i ′ − i is a transferral for any such i ′ we have i ′ / ∈ I µ P ( H ). Nowthere are at most c − k µ ( kn ) k such edges of H , as each part V j of P ′ is refinedinto at most 1 /c parts of P , so there are at most c − k possible values of i P ( e )for an edge e of H . We conclude that |S | ≤ c − k µ ( kn ) k /θn ≤ θn k − / ( k + 1),so T = S ∪ S has size |T | ≤ θn k − /k < |S| . Since any S ∈ S \ T has d H i ( S ) ≥ ( d − θ ) n , by symmetry this proves a stronger form of (ii), with θ in place of ψ .For (iii), consider any Y ∈ P and fix i ∈ I µ P ( H ) such that i Y = 1; this ex-ists by (i) and Proposition 6.12(ii). Without loss of generality Y ⊆ V k . Thenwith notation as in (ii), for any S ∈ S \ T we have | Y | ≥ d H i ( S ) ≥ ( d − θ ) n .The same argument implies that | H i | ≥ |S \T | ( d − θ ) n ≥ c k − d | V ( H ) | k / k k ,and so we have (iv).Finally, note that the number of vertices in W that belong to at least( cn ) k − / S ∈ T is at most |T | · / ( cn ) k − ≤ ψn/k . Since P has partseach of size at least cn , any other vertex of W lies in at least 2( cn ) k − / · ( d − θ ) n ≥ dc k − n k − / H i . The same argument applies to anypart W j with j ∈ [ k ], so this proves (v). (cid:3) The partite key lemma.
In the remainder of this section we provethe following partite form of the key lemma.
Lemma 7.6.
Let k and ℓ be integers with k ≥ ℓ ≥ and k ≥ , and supposethat /n ≪ ε ≪ µ ≪ µ ′ ≪ c, d ≪ γ, /k . Let P ′ partition a set V intovertex classes V , . . . , V k of size n , let H be a P ′ -partite k -graph on V andlet P be a refinement of P ′ . Suppose that( β
1) at most εn k − P ′ -partite ( k − -sets S ⊆ V have d ( S ) < (1 /ℓ + γ ) n ,( β P is ( c, c, µ, µ ′ ) -robustly maximal with respect to H , OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 31 ( β
3) any vertex is in at least dn k − edges e ∈ H with i P ( e ) ∈ L µ P ( H ) , and( β i P ( V ) ∈ L µ P ( H ) .Then H contains a perfect matching. We remark that the case ℓ = k implies the cases ℓ = 2 , . . . , k −
1, andhence we set ℓ = k in all later applications of the lemma. The other casesare only required for the proof of the lemma itself. Proof.
We fix k and proceed by induction on ℓ . Let s = ⌊ /c ⌋ ; then we usethe following hierarchy of constants.1 /n ≪ /D ≪ ε ≪ µ ≪ µ ′ ≪ µ ′ ≪ · · · ≪ µ ′ s kk ≪ µ ′ ≪ c, d ≪ η, /K ≪ γ, /k. In several places during the proof we will delete small matchings from H ;for convenient notation we let P ′ and P also denote the restrictions of P ′ and P to the undeleted vertices. Step 1: The case P = P ′ . In this case we have a perfect matching byLemma 7.2. In particular, this gives the base case ℓ = 2 of the induction, asby Proposition 7.5(iii) each part of P has size at least n/ℓ + γn/ > n/
2, sowe must have P = P ′ . Step 2: The canonical subgraphs.
For the rest of the proof we assumethat
P 6 = P ′ , that 3 ≤ ℓ ≤ k and that the lemma holds with ℓ − ℓ . We write I = I µ P ( H ) and L = L µ P ( H ) . Our strategy will be to split H up randomly into a number of vertex-disjoint k -partite subgraphs, each of which satisfies the conditions of the lemma (withweaker constants) when ℓ is replaced by ℓ −
1. The inductive hypothesis willthen imply the existence of a perfect matching in each subhypergraph, andtaking the union of these matchings gives a perfect matching in H . In thisstep we lay the groundwork by analysing the canonical subgraphs from whichthe random subgraphs will be chosen; the analogues of properties ( β β β
3) for these subgraphs will follow from this analysis.We first observe that H , P ′ and P meet the conditions of Proposition 7.5with 1 /ℓ + γ in place of d . Therefore I is full with respect to P ′ . We cantherefore apply Proposition 6.12 to obtain an integer r such that | I | = r k − ,each part of P ′ is partitioned into exactly r parts by P , and for any part X of P there are exactly r k − vectors i ∈ I such that i X = 1. Also, byProposition 7.5(iii), every part of P has size at least (1 /ℓ + γ/ n . Since P 6 = P ′ this implies 2 ≤ r < ℓ .Next we recall Definition 7.4: for each i ∈ I , the canonical subgraph H i isthe induced k -graph on the vertex set S X ∈P : i X =1 X whose edge set consistsof all edges of H with index i , and P i is the restriction of P to V ( H i ) (so H i is P i -partite). The canonical subgraphs H i will act as prototypes for the k -graphs on which we use the inductive hypothesis, which will be inducedsubgraphs of the canonical subgraphs on randomly chosen sets of vertices.Note that by Proposition 7.5(ii), at most µ ′ n k − P i -partite ( k − S ⊆ V ( H i ) have | H i ( S ) | < n/ℓ + 3 γn/
4: this inheritance of the codegreecondition of H is fundamental to our inductive approach. It also provides the analogue of condition ( α
1) when we apply Proposition 7.5 again to each H i , which we will do to ‘boost’ the part sizes and edge-detection parameter.Since P i may not be robustly maximal with respect to H i , we now needto identify robustly maximal partitions for each canonical subgraph. Let S = s k k . We claim that there exist i ∈ [ S ], and partitions Q i of V ( H i ) foreach i ∈ I such that Q i refines P i and is ( c, c, µ ′ i − , µ ′ i )-robustly maximalwith respect to H i . To see this, we repeatedly apply Proposition 5.2 toeach i ∈ I . First, we choose some i ∈ I and apply Proposition 5.2 withparameters µ ′ λS/s for 0 ≤ λ ≤ s to obtain some b ∈ [ s ] and a partition Q i of V ( H i ) such that Q i refines P i and is ( c, c, µ ′ ( b − S/s , µ ′ bS/s )-robustly maximalwith respect to H i . We then repeat the following step. After j steps, wewill have chosen j of these partitions to be ( c, c, µ ′ ( b − S/s j , µ ′ bS/s j )-robustlymaximal for some b ∈ [ s j ]. We then choose some i we have not yet consideredand apply Proposition 5.2 with parameters µ ′ λS/s j +1 for ( b − s ≤ λ ≤ bs to obtain some b ′ ∈ [ s j +1 ] and a partition Q i of V ( H i ) such that Q i refines P i and is ( c, c, µ ′ ( b ′ − S/s j +1 , µ ′ b ′ S/s j +1 )-robustly maximal with respect to H i .Since | I | ≤ k k we can repeat this process for every i , which proves that theclaim holds.For simplicity of notation we now relabel µ ′ i − as µ and µ ′ i as µ , andintroduce new constants µ , . . . , µ and µ ′′ such that µ ≪ µ ≪ µ ≪ · · · ≪ µ ≪ µ ≪ µ ′′ ≪ µ ′ . For each i ∈ I , we write I i := I µ Q i ( H i ) and L i := L µ Q i ( H i ) . We will apply Proposition 7.5 to H i with P i in place of P ′ , Q i in place of P , µ in place of both µ and ε , and 1 /ℓ + 3 γ/ γ/
12 in place of d and ψ respectively ( n, c and k are unchanged). Indeed, condition ( α
1) ofProposition 7.5 holds by our earlier observation that at most µ ′ n k − P i -partite ( k − S ⊆ V ( H i ) have | H i ( S ) | < n/ℓ + 3 γn/
4, whilst condition( α
2) holds since Q i is ( c, c, µ , µ )-robustly maximal with respect to H i . Soby Proposition 7.5(i) and (iii) we deduce that I i is full with respect to P i ,and every part of Q i has size at least n/ℓ + 2 γn/
3. The latter conclusionimplies that Q i is in fact (1 /ℓ + 2 γ/ , c, µ , µ )-robustly maximal, and alsothat we can apply Proposition 7.5 again with 1 /ℓ in place of c (and all othervariables as before); Proposition 7.5(iv) then implies that I / kℓ ) k Q i ( H i ) = I i . Indeed, we have the boosting property that I µ Q i ( H i ) and L µ Q i ( H i ) are es-sentially independent of the edge-detection parameter, in that they remainunchanged when µ is replaced by any constant between µ and 1 / kℓ ) k .Finally, say that a vertex of H i is bad for i if it lies in fewer than dn k − edges e ∈ H i with i Q i ( e ) ∈ I i . We say that a vertex is bad if it is badfor some i ∈ I . Since | I | = r k − , by Proposition 7.5(v) (with µ /r k − inplace of ψ ), the number of bad vertices is at most µ n . Using assumption( β dn k − edges e ∈ H with i P ( e ) ∈ L , we may greedily choose a matching M of such edges with size at OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 33 most µ n which covers all of the bad vertices. We now restrict attention to V ′ := V \ V ( M ). Step 3: The meet and join.
The principal difficulty we must overcomein order to apply the inductive hypothesis is to ensure that an analogue of( β
4) holds, that is, we require subgraphs in which the index vector of theentire vertex set lies in the appropriate robust edge-lattice. In this step weintroduce two additional partitions of V that will be used to achieve this.We begin by noting that for the subgraph chosen in H i , the index vectorof the vertex set with respect to Q i simply lists the number of verticeschosen from each part of Q i . Hence if two vertices x and y are containedin the same part of Q i for every Q i such that x, y ∈ V ( H i ), then they areinterchangeable for the current purpose. With this in mind, we first let Q ∩ be the ‘meet’ of the partitions Q i for i ∈ I : we say that two vertices in thesame part W of P are in the same part of Q ∩ if and only if they lie in thesame part of Q i for every i ∈ I with i W = 1. This is not our final definition,as we will also require that every part of Q ∩ has size at least D .To achieve this, note that P has at most k parts, and each part X of P is partitioned into at most k parts by each Q i such that i X = 1, so thenumber of parts of Q ∩ is at most k · k | I | = k r k − < K . Thus there issome z ∈ [ K + 1] such that no part of Q ∩ has size between ( z − kK ) z − D and z ( kK ) z D . Let B be the union of all parts of size at most z ( kK ) z D .Then | B | ≤ K · ( z − kK ) z − D . Similarly to the end of step 2, we greedilychoose a matching M ′ in H of size at most | B | that covers every vertex of B so that every edge e ∈ M ′ has i P ( e ) ∈ L . We will now restrict attentionto V ′ \ V ( M ′ ).Next we introduce the ‘join’ Q ∪ of the partitions Q i , which will allowus to avoid the problem of ‘hidden’ approximate divisibility barriers (recallConstruction 3.1). Let G be the graph whose vertices are the parts of Q ∩ not contained in B , where Z, Z ′ ∈ Q ∩ are adjacent in G if they are containedin the same part of some Q i . Then the parts of Q ∪ are formed by takingthe union of the parts of Q ∩ in each component of G .As an aid to memory, in the remainder of the proof we tend to use theconsistent notation W , X , Y , Z for general parts of P , Q ∪ , Q i (for i ∈ I ), Q ∩ respectively, i.e. earlier letters in the alphabet denote (potentially) largerparts. Step 4: Restricting to good vertices.
We now delete all of the at most2 kµ n vertices covered by M ∪ M ′ . To avoid introducing more complicatednotation, all of our notation is to be now understood as referring to theundeleted vertices, e.g. V now refers to V \ ( M ∪ M ′ ). However, all variables(including n ) remain unchanged in value. Note that any part Z of Q ∩ hadsize at least z ( kK ) z D before deleting the vertices covered by M ′ (otherwisewe would have deleted it). Since | M ′ | ≤ | B | ≤ K · ( z − kK ) z − D , we nowhave | Z | ≥ z ( kK ) z D − k | M ′ | ≥ D. (1)Since we have deleted a number of vertices from H , we now show thatthe properties of H from the statement of the lemma and from step 2 arepreserved (albeit with weaker constants) after these vertex deletions. Note that (A1–A3) in the following claim are the respective analogues of ( β β H i with respect to P i and Q i . Claim 7.7.
The following hold for every i ∈ I .(A1) At most µ n k − P i -partite ( k − -sets S ⊆ V ( H i ) have | H i ( S ) | < (1 /ℓ + γ/ n .(A2) Q i is (1 /ℓ, c, µ , µ ) -robustly maximal with respect to H i for each i ∈ I .(A3) Every vertex of H i lies in at least dn k − edges e ∈ H i with i Q i ( e ) ∈ I i .(A4) i P ( V ) ∈ L .(A5) Every part of P , Q ∪ and each Q i has size at least (1 /ℓ + γ/ n .(A6) I µ ′ Q i ( H i ) = I µ Q i ( H i ) = I i .(A7) P is (1 /ℓ, c, µ , µ ′′ ) -robustly maximal with respect to H , and I = I µ ′ P ( H ) . For (A1), recall from step 2 that it was true with 3 γ/ γ/ Q i was (1 /ℓ + 2 γ/ , c, µ , µ )-robustly max-imal with respect to H i before any vertices were deleted. The first part of(A7) follows by the same argument. For (A3), recall that M covered allvertices which were in fewer than dn k − edges of H i with i ∈ I i and at most2 kµ n ≤ dn/ β i P ( V ( M ∪ M ′ )) ∈ L since i P ( e ) ∈ L for every e ∈ M ∪ M ′ .For (A5), recall that each part of any Q i had size at least (1 /ℓ + 2 γ/ n before the deletions, and at most 2 kµ n ≤ γn/ Q ∪ and P follow, since every part of Q ∪ contains a part of Q i forsome i ∈ I , and Q ∪ refines P . For (A6), we observed before any deletionsthat I / kℓ ) k Q i ( H i ) = I µ Q i ( H i ) = I i , and | V ( H i ) | had size at least n both beforeand after the deletions. So if v ∈ I i then there were at least n k / kℓ ) k edgesof H i of index v , at most 2 kµ n k of which were deleted, so v ∈ I µ ′ Q i ( H i ). Onthe other hand, if v / ∈ I i then there were at most µ ( kn ) k < µ n k edges of H i of index v , so v / ∈ I µ Q i ( H i ). Since I µ ′ Q i ( H i ) ⊆ I µ Q i ( H i ), this proves (A6).The same argument proves the second part of (A7), completing the proof ofthe claim. Step 5: Choosing sizes.
In this step we determine how many verticeseach of our final random subgraphs should choose from each part of Q ∩ toensure that the analogue of ( β
4) holds. We accomplish this in three stages.Firstly, we choose rough targets for the number of vertices to be contained ineach subgraph. Secondly, we determine how many vertices are to be chosenfrom each part of Q ∪ . Thirdly, we determine how many vertices are to bechosen from each part of Q ∩ . Claim 7.8.
There exist integers ρ i for each i ∈ I which satisfy(B1) P i ∈ I ρ i i = i P ( V ) ,(B2) ρ i ≥ ηn for each i ∈ I . To prove Claim 7.8, for each X ∈ P we start by reserving N := ⌈ ηn ⌉ vertices of X for each i ∈ I with i X = 1. Recall that for any part X of P there OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 35 are exactly r k − vectors i ∈ I such that i X = 1, so exactly r k − N verticesare reserved from each part of P . Let V ′ be the set of unreserved verticesand write V ′ j = V ′ ∩ V j ; recalling that each V j now has size n − | M ∪ M ′ | after the deletions, each V ′ j has size n ′ := n − | M ∪ M ′ | − r k − N . Also, by(A5) at least n ′ /k vertices remain unreserved in each part of P . Since I isfull with respect to P ′ , by Proposition 6.13 we deduce that i P ( V ′ ) ∈ P C ( I ).That is, we may fix reals λ i ≥ i ∈ I so that P i ∈ I λ i i = i P ( V ′ ).Let a i = ⌊ λ i ⌋ for each i ∈ I . Then v = i P ( V ′ ) − P i ∈ I a i i is a sumof | I | ≤ r k − vectors of length at most k , so v ∈ B ( , kr k − ). We alsohave v ∈ L , since i P ( V ′ ) was obtained by subtracting some vectors in I from i P ( V ), and i P ( V ) ∈ L by (A4). So by Proposition 4.8 we may chooseintegers b i with | b i | ≤ K for each i ∈ I so that P i ∈ I b i i = v .Let ρ i = a i + b i + N for each i ∈ I . Then (B2) holds as a i ≥ | b i | ≤ K for each i ∈ I , and (B1) holds as X i ∈ I ρ i i = X i ∈ I a i i + X i ∈ I b i i + X i ∈ I N i = i P ( V ′ ) + X i ∈ I N i = i P ( V ) . This completes the proof of Claim 7.8.The vector n ∪ i with respect to Q ∪ obtained in the next claim determineshow many vertices the random subgraph for i will take from each part of Q ∪ . Note that (C1) ensures that the sizes are correct to be a partition of V , (C2) that there is no divisibility obstruction to our later choice of Q ∩ ,and (C3) that the sizes are in roughly equal proportion from each part of Q ∪ which is a subset of a part of P i , and zero for any other part of Q ∪ .The proof of the claim proceeds through three stages. In the first stage,we use the constants ρ i and the part sizes of each Q i to determine provisionalvalues for each n ∪ i which satisfy (C1) and (C3). In the second stage we ‘snap’each n ∪ i onto a nearby lattice point so that (C2) is satisfied, preserving (C3)(although (C1) may no longer hold). In the final stage we make furtheradjustments to restore (C1) while preserving (C2) and (C3). Claim 7.9.
There exist vectors n ∪ i with respect to Q ∪ for i ∈ I which satisfy(C1) P i ∈ I n ∪ i = i Q ∪ ( V ) ,(C2) n ∪ i ∈ L µ Q ∪ ( H i ) for every i ∈ I , and(C3) For any i ∈ I , any part W of P and any part X ⊆ W of Q ∪ we have ( n ∪ i ) X = ( ρ i | X || W | ± K if i W = 1 , otherwise. To prove the claim, for each i ∈ I we choose a vector n i with respect to Q i by taking ( n i ) Y to be either ⌊ ρ i | Y | / | W |⌋ or ⌈ ρ i | Y | / | W |⌉ for each W ∈ P i and Y ∈ Q i with Y ⊆ W . We make these choices so that P Y ⊆ W ( n i ) Y = ρ i for each W ∈ P with i W = 1; this is possible since X Y ∈Q i : Y ⊆ W ρ i | Y || W | = ρ i | W || W | = ρ i . Now, for any i ∈ I , observe that this requirement implies that n i ∈ L Q i P i max . Soby Proposition 6.12(iii) (with Q i and P i in place of P and P ′ respectively) wemay choose parts Y, Y ′ of Q i so that n i := n i − u Y + u Y ′ ∈ L i = L µ ′ Q i ( H i ), where the final equality follows from (A6). Let Q i be the partition of V whose parts are those of Q i and those of Q ∪ that are disjoint from V ( H i ).Similarly, let n i be the vector with respect to Q i corresponding to n i , thatis, with additional zero co-ordinates corresponding to the parts of Q ∪ thatare disjoint from V ( H i ). Then n i ∈ L µ Q i ( H i ). Finally, let n ′ i := ( n i | Q ∪ ),so n ′ i ∈ L µ Q ∪ ( H i ) by Proposition 4.5(i).For any part W of P and any part X ⊆ W of Q ∪ , since by (A5) there areat most k parts Y ⊆ X of Q i we have(2) ( n ′ i ) X = X Y ∈Q i : Y ⊆ X (cid:16) ρ i | Y || W | ± (cid:17) = ( ρ i | X || W | ± k if i W = 1 , i Q ∪ ( V ) ∈ L µ Q ∪ ( H ). Indeed, P is (1 /ℓ, c, µ , µ ′′ )-robustly maximal with respect to H by (A7), Q ∪ is a refinement of P withparts of size at least n/ℓ ≥ c | V ( H ) | by (A5), and ( i Q ∪ ( V ) | P ) = i P ( V ) ∈ L = L µ ′′ P ( H ) by (A4) and (A7). So Proposition 5.4 implies that i Q ∪ ( V ) ∈ L µ Q ∪ ( H ), as desired. Since n ′ i ∈ L µ Q ∪ ( H i ) ⊆ L µ Q ∪ ( H ) for each i ∈ I , wededuce that v := i Q ∪ ( V ) − X i ∈ I n ′ i ∈ L µ Q ∪ ( H ) . Furthermore, for any W ∈ P by (B1) we have P i ∈ I : i W =1 ρ i = | W | , so forany X ∈ Q ∪ with X ⊆ W by (2) we have v X = | X | − X i ∈ I : i W =1 (cid:16) ρ i | X || W | ± k (cid:17) = 0 ± k | I | . Since |Q ∪ | ≤ k and | I | ≤ r k − we have v ∈ B ( , k r k − ), so we may applyProposition 4.8 to obtain integers a i ′ with | a i ′ | ≤ k − k K for each i ′ ∈ I µ Q ∪ ( H )such that P i ′ ∈ I µ Q∪ ( H ) a i ′ i ′ = v .For each i ∈ I , we define n ∪ i := n ′ i + P a i ′ i ′ , where the sum is taken overall i ′ ∈ I µ Q ∪ ( H ) with ( i ′ | P ) = i . Then n ∪ i is a linear combination of vectorsin L µ Q ∪ ( H i ), so (C2) holds. Also, (C1) holds as i Q ∪ ( V ) − X i ∈ I n ∪ i = i Q ∪ ( V ) − X i ∈ I n ′ i − v = . Finally, consider any i ∈ I , any part W of P with i W = 1 and any part X ⊆ W of Q ∪ . Since there are at most ( k − k vectors i ′ ∈ I µ Q ∪ ( H ) with i ′ X = 1, by definition of n ∪ i we have | ( n ∪ i ) X − ( n ′ i ) X | ≤ ( k − k max i ′ | a i ′ | ≤ (1 − /k ) k K ;together with (2) we have (C3). This completes the proof of Claim 7.9.In the final claim of this step we determine the required part sizes forthe random subgraphs of the next step. For proof, we start by choosingprovisional values for n ∩ i to satisfy (D1) and (D3). If (D2) fails then (C2)will imply that it can be remedied by transferrals between pairs of partsof Q that lie in the same part of Q ∪ . By definition of Q ∪ there is a pathin the auxiliary graph G between these parts. By repeated ‘swaps’ we caneffectively move the required adjustment along the edges of the path, all the OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 37 while preserving (D1) and (D3), until (D2) holds. Throughout the proof, weidentify the vectors n ∩ i and n ∪ i with their restrictions to the parts of Q ∩ and Q ∪ that are contained within parts of P i (they are zero on all other parts). Claim 7.10.
There exist vectors n ∩ i with respect to Q ∩ for i ∈ I whichsatisfy(D1) P i ∈ I n ∩ i = i Q ∩ ( V ) ,(D2) ( n ∩ i | Q i ) ∈ L i for every i ∈ I , and(D3) For any part W of P and any part Z ⊆ W of Q ∩ we have ( n ∩ i ) Z = ( ρ i | Z || W | ± K if i W = 10 otherwise. To prove the claim, we start by choosing provisional values for n ∩ i , wherefor each i ∈ I , each part X of Q ∪ contained within a part of P i , and each part Z ⊆ X of Q ∩ , we take ( n ∩ i ) Z to be either ⌊ ( n ∪ i ) X | Z | / | X |⌋ or ⌈ ( n ∪ i ) X | Z | / | X |⌉ ,with choices made so that X i ∈ I ( n ∩ i ) Z = | Z | for each Z ∈ Q ∩ , and(3) X Z ⊆ X ( n ∩ i ) Z = ( n ∪ i ) X for each X ∈ Q ∪ . (4)To see that we can make such choices, fix X ∈ Q ∪ and let A be the matrixwith rows indexed by the index vectors i ∈ I such that X is contained withina part of P i , and columns indexed by the parts Z ⊆ X of Q ∩ , where the( i , Z ) entry of A is ( n ∪ i ) X | Z | / | X | . Then the sum of column Z is | Z | by(C1), and the sum of row i is ( n ∪ i ) X . Thus Theorem 4.9 implies that we canchoose such values for n ∩ i . Note that Equation (4) can be reformulated as( n ∩ i | Q ∪ ) = n ∪ i . Also, for any part W of P and any part Z ⊆ W of Q ∩ , it follows from (C3)that ( n ∩ i ) Z is equal to ρ i | Z | / | W | ± ( K + 1) if i W = 1 and is zero otherwise.Equation (3) implies that the current values for n ∩ i satisfy (D1) and (D3);we now modify them to satisfy (D2). Consider i , i ∈ I , and suppose that Z and Z ′ are parts of Q ∩ which are subsets of distinct parts Y and Y ′ respectively of Q i , but that Z and Z ′ are subsets of the same part Y of Q i . We define an ( i , i , Z, Z ′ ) -swap as the operation of increasing ( n ∩ i ) Z and ( n ∩ i ) Z ′ each by one, and decreasing ( n ∩ i ) Z and ( n ∩ i ) Z ′ by one (all otherco-ordinates of n ∩ i and n ∩ i remain unchanged, as do all other vectors n ∩ i ).Clearly P i ∈ I n ∩ i is unchanged by any ( i , i , Z, Z ′ )-swap, as is ( n ∩ i | Q i ) forany i = i , i . Further, the operation has no effect on ( n ∩ i | Q i ), since Z and Z ′ are contained in the same part of Q i . However, ( n ∩ i | Q i ) is affected; specifically, an ( i , i , Z, Z ′ )-swap adds u Y − u Y ′ to ( n ∩ i | Q i ). Byperforming several sequences of swaps, we shall ensure that (D2) is satisfiedfor each i ∈ I in turn.Fix some i ∈ I . Recall from (C2) that n ∪ i ∈ L µ Q ∪ ( H i ). Since µ ≪ µ ,Proposition 4.5(ii) applied with Q i and Q ∪ in place of Q and P respectivelyimplies that there exists n ∗ i ∈ L i such that ( n ∗ i | Q ∪ ) = n ∪ i , where weidentify Q ∪ with its restriction to V ( H i ) and n ∪ i with its restriction to parts of Q ∪ [ V ( H i )]. We let d i = n ∗ i − ( n ∩ i | Q i ) and note that ( d i | Q ∪ ) = ,since ( n ∩ i | Q ∪ ) = n ∪ i . Hence we may write d i = P v ∈D i v for some sequence D i of transferrals, such that Y and Y ′ are parts of Q i which are containedin the same part of Q ∪ for each transferral u Y − u Y ′ ∈ D i . Then ( n ∩ i |Q i ) + P v ∈D i v = n ∗ i ∈ L i . We now reduce D i to a sequence of at most k − n ∩ i | Q i ) + P v ∈D i v ∈ L i .To see that this is possible, recall that I i is full with respect to P i , and by(A5) every part of Q i has size at least (1 /ℓ + γ/ n , so | L Q i P i max /L i | ≤ k − D i followsfrom Proposition 6.10.For each u Y − u Y ′ ∈ D i , we carry out the following procedure. Chooseparts Z and Z ′ of Q ∩ with Z ⊆ Y and Z ′ ⊆ Y ′ . Since Y and Y ′ arecontained in the same part of Q ∪ , by definition of Q ∪ there is a path inthe auxiliary graph G from Z to Z ′ , i.e. we have Z = Z , . . . , Z p = Z ′ and Y , . . . , Y p for some p ≤ |Q ∩ | ≤ k k k , such that Z j ∈ Q ∩ for 0 ≤ j ≤ p , andfor each j ∈ [ p ] there exists i j ∈ I such that Y j ∈ Q i j and Z j − , Z j ⊆ Y j .Note that each Z j is contained in the same W ∈ P as Y and Y ′ , and thatby the definition of D i we have i W = 1. Hence for each 0 ≤ j ≤ p thereexists a part Y ∗ j ∈ Q i which contains Z j . Thus Y ∗ = Y and Y ∗ p = Y ′ .For each j ∈ [ p ] in turn we apply swaps as follows. If Y ∗ j − = Y ∗ j thenthere is no swap. Otherwise, we perform an ( i , i j , Z j − , Z j )-swap; as notedabove, the only effect of this is to add u Y ∗ j − − u Y ∗ j to ( n ∩ i | Q i ). So the neteffect of performing these swaps for every member of D i is to add u Y − u Y ′ to ( n ∩ i | Q i ). By choice of Y and Y ′ , after these modifications we have( n ∩ i | Q i ) ∈ L i , and crucially, ( n ∩ i ′ | Q i ′ ) is unchanged for any i ′ = i and P i ∈ I n ∩ i is unchanged.We proceed in this manner for every i ∈ I ; then the vectors n ∩ i obtainedat the end of this process must satisfy (D2). Since (D1) held before wemade any modifications, and P i ∈ I n ∩ i is preserved by each modification,we conclude that (D1) still holds. Finally recall that for any i ∈ I , anypart W of P i and any part Z ⊆ W of Q ∩ our provisional values satisfied( n ∩ i ) Z = ρ i | Z | / | W | ± ( K + 1). Recall that | I | = r k − ; now (D3) follows,as we performed at most p ≤ k k k swaps for each v ∈ S i ∈ I D i , so therewere at most p ( k − r k − < K swaps in total, and no swap changed anyco-ordinate of n ∩ i by more than one. This completes the proof of Claim 7.10. Step 6: The random selection.
In this final step, we now partition V into disjoint sets T i for i ∈ I , where for each Z ∈ Q ∩ the number of verticesof T i taken from Z is ( n ∩ i ) Z . To ensure that this is possible, we require that P i ∈ I n ∩ i = i Q ∩ ( V ) and that each co-ordinate of each n ∩ i is non-negative.The first of these conditions holds by (D1). For the second, observe that forany i ∈ I , any part W of P i and any part Z ⊆ W of Q ∩ we have ρ i ≥ ηn by(B2), | Z | ≥ D by (1) and | W | ≤ n . So (D3) implies that(5) ( n ∩ i ) Z ≥ ρ i | Z | / | W | − K ≥ η | Z | / ≥ . We choose such a partition uniformly at random. That is, for each part Z of Q ∩ , we choose uniformly at random a partition of Z into sets Z i for OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 39 i ∈ I so that | Z i | = ( n ∩ i ) Z for each i ∈ I . Then for each i ∈ I we let T i := [ Z ∈Q ∩ Z i , ˆ H i = H [ T i ] , ˆ P i = P i [ T i ] and ˆ Q i = Q i [ T i ] . Note that T i ⊆ V ( H i ), as by (D3) n ∩ i is zero on parts of Q ∩ not containedin V ( H i ), so ˆ H i is a ˆ P i -partite k -graph on the vertex set T i . Also, since ( n ∩ i |Q i ) ∈ L i by (D2), and every i ′ ∈ I i has ( i ′ | P ) = i , we have ( n ∩ i | P ) = t i i for some integers t i . For any W ∈ P i with i W = 1 we have(6) t i = ( n ∩ i | P ) W = X Z ( n ∩ i ) Z (D3) = X Z (cid:18) ρ i | Z || W | ± K (cid:19) = ρ i ± K , where both sums are taken over all parts Z of Q ∩ with Z ⊆ W , and werecall that Q ∩ has at most K parts. So in particular we have ηn/ ≤ t i ≤ n for any i ∈ I by (B2).Let ε ∗ = µ , µ ∗ = µ , µ ′∗ = µ , c ∗ = 6 c/η , d ∗ = d/
4, and γ ∗ = γ/ Claim 7.11.
For any i ∈ I the following properties each hold with highprobability.(E1) All but at most ε ∗ t k − i P i -partite ( k − -sets S ⊆ T i have | ˆ H i ( S ) | ≥ (1 / ( ℓ −
1) + γ ∗ ) t i .(E2) ˆ Q i is ( c ∗ , c ∗ , µ ∗ , µ ′∗ ) -robustly maximal with respect to ˆ H i .(E3) L µ ∗ ˆ Q i ( ˆ H i ) = L i , and any vertex of T i is in at least d ∗ t k − i edges e ∈ ˆ H i with i ˆ Q i ( e ) ∈ L µ ∗ ˆ Q i ( ˆ H i ) . We first recall from (A2) that Q i is (1 /ℓ, c, µ , µ )-robustly maximal withrespect to H i , and from (5) that ( n ∩ i ) Z ≥ η | Z | / Z ∈ Q ∩ containedin a part of P i , so Lemma 5.5 implies that (E2) holds with high probability.For (E1), recall from (A1) that all but at most µ n k − P i -partite ( k − S ⊆ V ( H i ) have | H i ( S ) | ≥ (1 /ℓ + γ/ n . So it suffices to show that for anysuch S we have | H i ( S ) ∩ T i | ≥ (1 / ( ℓ −
1) + γ ∗ ) t i with high probability. Let W be the part of P such that H i ( S ) ⊆ W . Note that | W | ≤ (1 − /ℓ − γ/ n as each part of P ′ is partitioned into r ≥ P , and each part of P has size at least (1 /ℓ + γ/ n by (A5). Now E [ | H i ( S ) ∩ T i | ] = X Z ⊆ W E [ | H i ( S ) ∩ Z i | ] = X Z ⊆ W ( n ∩ i ) Z | H i ( S ) ∩ Z || Z | (D3) ≥ ρ i | H i ( S ) || W | − K ) ≥ t i (1 /ℓ + γ/ − /ℓ − γ/ − K ≥ (1 + ε ) (cid:18) ℓ − γ ∗ (cid:19) t i . Since | H i ( S ) ∩ T i | is a sum of independent hypergeometric random variables,with high probability | H i ( S ) ∩ T i | ≥ (1 / ( ℓ −
1) + γ ∗ ) t i by Corollary 4.11.For (E3), recall from (A6) that L i = L µ Q i ( H i ) = L µ ′ Q i ( H i ). For any i ′ ∈ L µ ∗ ˆ Q i ( ˆ H i ) there are at least µ ∗ ( kt i ) k > µ | V ( H i ) | k edges e ∈ ˆ H i ⊆ H i with i Q i ( e ) = i ′ , so we have L µ ∗ ˆ Q i ( ˆ H i ) ⊆ L µ Q i ( H i ). Now suppose that i ′ ∈ L µ ′ Q i ( H i ),so there are at least µ ′ | V ( H i ) | k ≥ µ ′ n k edges e ∈ H i with i Q i ( e ) = i ′ . Recallthat Q ∩ has at most K parts, so at most Kε ( kn ) k of these edges containa vertex from a part of Q ∩ of size at most εn . Fix one of the remainingedges e = { x , . . . , x k } and for each j ∈ [ k ] let Z j and W j be the parts of Q ∩ and P respectively which contain x j . Since | Z j | ≥ εn for each j ∈ [ k ],the probability that e ∈ ˆ H i equals Y j ∈ [ k ] ( n ∩ i ) Z j | Z j | (D3) = Y j ∈ [ k ] (cid:18) ρ i | W j | ± Kεn (cid:19) ( ) > t k i n k − kKεn . Therefore the expected number of edges e ∈ ˆ H i with i Q i ( e ) = i ′ is at least( µ ′ n k − Kε ( kn ) k )(( t i /n ) k − kK/εn ) > µ ′ t k i /
2. By Corollary 4.13, with highprobability there are at least µ ′ t k i / ≥ µ ∗ | V ( ˆ H i ) | k such edges, so we have i ′ ∈ L µ ∗ ˆ Q i ( ˆ H i ), proving that L µ ∗ ˆ Q i ( ˆ H i ) = L i as claimed.Now consider any vertex x ∈ T i and let E ( x ) denote the number of edges e ∈ ˆ H i with i Q i ( e ) ∈ L i which contain x . To estimate E ( x ), recall from (A3)that x is in at least dn k − edges e ∈ H i with i Q i ( e ) ∈ L i . The same argu-ment as above shows that E ( E ( x )) ≥ dt k − i and so with high probability E ( x ) ≥ dt k − i . This implies (E3), as L µ ∗ ˆ Q i ( ˆ H i ) = L i , so completes the proofof the claim.To summarise, for each i ∈ I we have the following: • ˆ H i is a ˆ P i -partite k -graph on T i with parts of size t i . • At most ε ∗ t k − i ˆ P i -partite ( k − S ⊆ T i have | ˆ H i ( S ) | < (1 / ( ℓ −
1) + γ ∗ ) t i . • ˆ Q i is a partition of T i which refines ˆ P i and is ( c ∗ , c ∗ , µ ∗ , µ ′∗ )-robustlymaximal with respect to ˆ H i . • Any vertex of T i is in at least d ∗ t k − i edges e ∈ ˆ H i with i ˆ Q i ( e ) ∈ L i = L µ ∗ ˆ Q i ( ˆ H i ). • i ˆ Q i ( T i ) = ( n ∩ i | Q i ) ∈ L i = L µ ∗ ˆ Q i ( ˆ H i ) by (D2).Since 1 /t i ≪ ε ∗ ≪ µ ∗ ≪ µ ′∗ ≪ c ∗ , d ∗ ≪ γ ∗ , /k, we conclude that ˆ H i contains a perfect matching M i by our inductive hy-pothesis. Therefore M ∪ M ′ ∪ S i ∈ I M i is a perfect matching in (the original) H . This completes the proof of Lemma 7.6. (cid:3) Proof of the structure theorem
In this section we use Lemma 7.1 to prove Theorem 1.10. We start byproving an easier version in the first subsection, which is not algorithmic,but has a cleaner statement, and will be used in the proof of the full theo-rem. In the second subsection we prove a weaker version of the algorithmicresult, which provides some details omitted from the extended abstract ofthis paper [16]. The third and fourth subsections contain some technicalpreliminaries for the main result: some analysis of how full lattices behave
OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 41 under merging of parts, and some results on subsequence sums in abeliangroups. The final subsection contains the proof of Theorem 1.10.8.1.
An easier version.
In this subsection we prove the following easierversion of Theorem 1.10.
Theorem 8.1.
Under Setup 1.7, H has a perfect matching if and only ifevery full pair ( P , L ) for H is soluble. While the statement of this version is more appealing than that of The-orem 1.10, it is impractical to use directly for our algorithm, as the num-ber of full pairs for H may be exponentially large. The forward implica-tion of Theorem 8.1 is easy to prove: if H has a perfect matching M then i P ( V ( H ) \ V ( M )) = ∈ L , and Lemma 6.9 implies that ( P , L ) is soluble.In fact the forward implication of Theorem 1.10 now follows immediately;we simply observe from the definition that there is no C -certificate for H for any C ≥
0. We now consider the backward implication of Theorem 8.1.We need the following non-partite analogue of Proposition 7.5 (we omit thesimilar proof).
Proposition 8.2.
Suppose that /n ≪ µ, ε ≪ ψ, d, c, /k , and let V be aset of size n . Let H be a k -graph on V in which at most εn k − ( k − -sets S ⊆ V have d H ( S ) < dn , and let P be a partition of V with parts of size atleast cn such that L µ P ( H ) is transferral-free. Then the following propertieshold.(i) I µ P ( H ) is full.(ii) For any i ∈ I µ P ( H ) at most ψn k − ( k − -sets S ⊆ V with i P ( S ) = i − u X for some X ∈ P have | H i ( S ) | < ( d − ψ ) n .(iii) Each part of P has size at least ( d − ψ ) n .(iv) I dc k − / k ! P ( H ) = I µ P ( H ) .(v) For any i ∈ I µ P ( H ) at most ψn vertices of V ( H i ) lie in fewer than c k − dn k − / k − edges of H i . Next we show that we can modify a robustly maximal partition to ar-range that every vertex belongs to many edges with index on the robustedge-lattice. Note that it would not help to use the technique employed inprevious sections of removing a small matching covering the bad vertices, aswe will require the full vertex set to remain intact in order to use the factthat every full pair is soluble.
Lemma 8.3.
Suppose that k ≥ and /n ≪ ε, µ ≪ µ ′ ≪ c ≪ γ ≪ /k .Let H be a k -graph on n vertices such that at most εn k − ( k − -sets A ⊆ V ( H ) have d H ( A ) < (1 + γ ) n/k and every vertex is in at least γn k − edgesof H . Also let P be a partition of V ( H ) that is ( c, c, µ, µ ′ ) -robustly maximalwith respect to H . Then there exists a partition P ′ of V ( H ) with at most k − parts such that(i) P ′ is (4 c, c, √ µ, µ ′ / -robustly maximal with respect to H ,(ii) L √ µ P ′ ( H ) = L √ µ P ′ ( H ) = L µ P ( H ) , and(iii) every vertex is in at least γn k − / k edges e ∈ H with i P ′ ( e ) ∈ L √ µ P ′ ( H ) . Proof.
First we note by Proposition 8.2(iii) that every part of P has sizeat least n/k + γn − cn > n/k . So |P| ≤ k −
1, and P is (1 /k, c, µ, µ ′ )-robustly maximal with respect to H . Next let B be the set of vertices thatbelong to fewer than γn k − / e ∈ H with i P ( e ) ∈ L µ P ( H ). We claimthat | B | < √ µn/
2. For otherwise, by the inclusion-exclusion principle thenumber of edges e that intersect B and have i P ( e ) / ∈ L µ P ( H ) is at least( √ µn/ · γn k − / − (cid:0) √ µn/ (cid:1)(cid:0) nk − (cid:1) ≥ √ µγn k /
5. But this is a contradiction,as there are fewer than k k µn k such edges in total, so we must have | B | < √ µn/ v ∈ B and let X be the part of P contain-ing v . For each edge e ∈ H we let g X ( e ) be the unique part X ′ suchthat i P ( e ) − u X + u X ′ ∈ L µ P ( H ); this is well-defined as I µ P ( H ) is fullby Proposition 8.2(i), so we can apply Lemma 6.1(ii). By the pigeon-hole principle there exists X ( v ) ∈ P such that g X ( e ) = X ( v ) for at least γn k − / k edges e ∈ H containing v . Let P ′ be the partition obtainedfrom P by moving v into X ( v ) for each v ∈ B . Then P ′ is √ µ -close to P , so by Lemma 5.3, P ′ is (4 c, c, √ µ, µ ′ / H . Also, by Proposition 4.3 we have L µ / P ( H ) ⊆ L √ µ P ′ ( H ) ⊆ L √ µ P ′ ( H ) ⊆ L µ P ( H ); since L µ / P ( H ) = L µ P ( H ) by Proposition 8.2(iv) wehave L µ P ( H ) = L √ µ P ′ ( H ) = L √ µ P ′ ( H ). Finally, for any vertex v ∈ V ( H )the number of edges e ∈ H containing v with i P ′ ( e ) ∈ L √ µ P ′ ( H ) is at least γn k − / k − √ µn k − ≥ γn k − / k . (cid:3) Proof of Theorem 8.1.
We have already proved the forward implication, soit remains to prove the backward implication. Consider H as in Setup 1.7and suppose that every full pair ( P , L ) is soluble. Introduce a new constant c with ε ≪ c ≪ γ , fix s = ⌊ /c ⌋ and introduce further new constants µ , . . . , µ s +1 such that ε ≪ µ ≪ · · · ≪ µ s +1 ≪ c . By Proposition 5.2there exists t ∈ [ s ] and a partition P of V ( H ) that is ( c, c, µ t , µ t +1 )-robustlymaximal with respect to H ; we write µ = µ t and µ ′ = µ t +1 . ApplyingLemma 8.3 we obtain a partition P ′ of V ( H ) with at most k − c, c, √ µ, µ ′ / H , such that L := L √ µ P ′ ( H ) = L √ µ P ′ ( H ) = L µ P ( H ) and every vertex v ∈ V ( H ) is in atleast γn k − / k edges e ∈ H with i P ′ ( e ) ∈ L . Note that ( P ′ , L ) is a full pairfor H by Proposition 8.2(i), so by assumption it has a solution M . Taking V ′ := V \ V ( M ) we then have i P ′ ( V ′ ) ∈ L . Also, by Proposition 4.3 we have L = L √ µ P ′ ( H ) ⊆ L √ µ P ′ [ V ′ ] ( H [ V ′ ]) ⊆ L √ µ P ′ ( H ) = L , so L = L √ µ P ′ [ V ′ ] ( H [ V ′ ]), andby Lemma 5.3 P ′ [ V ′ ] is (3 c, c, √ µ, µ ′ / H ′ . We may therefore apply Lemma 7.1 to H \ V ( M ) with γ/
2, 3 c , 5 √ µ , µ ′ / γ/ k and 2 k k − ε in place of γ , c , µ , µ ′ , d and ε respectively to obtaina perfect matching in H [ V ′ ]. Together with M this gives a perfect matchingin H . (cid:3) A slower algorithm.
As a warmup for Theorem 1.10, and to providethe details for the result given in the extended abstract of this paper [16],we first prove a weaker result in which 2 k ( k −
3) is replaced by 2 k k +3 ; thisis sufficient for our algorithmic result, but the running time is of course OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 43 significantly worse. (Actually, in the extended abstract we assumed insteadthat any full pair ( P ∗ , L ∗ ) for which any matching of edges e ∈ H with i P ∗ ( e ) / ∈ L ∗ has size less than 2 k k +2 is soluble, but the proof shows that thisgives the desired conclusion). This weaker result follows from Theorem 8.1and the following result. Lemma 8.4.
Suppose that k ≥ and H is a k -graph such that every k k +3 -far full pair for H is soluble. Then every full pair for H is soluble.Proof. Consider any full pair ( P , L ) for H . Let I be a full set in L , andlet S be the set of k -vectors i such that H contains at least 2 k disjointedges e ∈ H with i P ( e ) = i . Let L ′ be the lattice generated by I ∪ S (so L ⊆ L ′ ). Consider the relation ∼ on P defined by X ∼ Y if and only if u X − u Y ∈ L ′ ; it is clear that ∼ is an equivalence relation. Let P ∗ be thepartition of V formed by taking unions of equivalence classes under ∼ andlet L ∗ = ( L ′ | P ∗ ).We claim that ( P ∗ , L ∗ ) is a 2 k k +3 -far full pair for H . To see this, we firstshow that L ∗ is transferral-free. Suppose for a contradiction that u W − u Z ∈ L ∗ for some distinct parts W, Z ∈ P ∗ . By definition there exists v ∈ L ′ suchthat ( v | P ∗ ) = u W − u Z . Consider such v that minimises P X ∈P | v X | .Then we cannot have v X > v Y < X, Y ∈ P thatare contained in the same part of P ∗ . This implies that v = u X − u Y forsome X, Y ∈ P with X ⊆ W and Y ⊆ Z , so X ∼ Y , which contradicts thedefinition of P ∗ , so L ∗ is transferral-free. Next, the projections of vectorsin I show that L ∗ is full. Now, since there are at most k k possible values of i P ( e ) for an edge e ∈ H , by choice of S , any matching of edges e ∈ H suchthat i P ∗ ( e ) / ∈ L ∗ has size less than 2 k k +2 . Therefore ( P ∗ , L ∗ ) is a 2 k k +3 -farfull pair for H , as claimed.By assumption ( P ∗ , L ∗ ) is soluble, so H has a matching M of size atmost k − i P ∗ ( V ( H ) \ V ( M )) ∈ L ∗ . We claim that in fact i := i P ( V ( H ) \ V ( M )) ∈ L ′ . To see this, we apply Lemma 6.1(ii) to get i − u X + u X ′ ∈ L for some parts X, X ′ of P . It follows that i P ∗ ( V ( H ) \ V ( M )) − ( u X − u X ′ | P ∗ ) ∈ L ∗ , so ( u X − u X ′ | P ∗ ) ∈ L ∗ . Since L ∗ istransferral-free, ( u X − u X ′ | P ∗ ) = , so X and X ′ are contained in thesame part of P ∗ . This implies u X − u X ′ ∈ L ′ , so i ∈ L ′ , as claimed.Next let G = L ′ /L and note that | G | ≤ | G ( P , L ) | ≤ k − r ∈ N such that we can write i = v + P j ∈ [ r ] i j for some v ∈ L ,where either i j ∈ S or − i j ∈ S for j ∈ [ r ]. Then i + L = P j ∈ [ r ] ( i j + L ) ∈ G ,where without loss of generality i j ∈ S for each j ∈ [ r ], as for any i ′ ∈ − S wecan replace i ′ + L by | G | − − i ′ + L . By Proposition 6.10, withoutloss of generality r ≤ k −
2. Now by definition of S , we can greedily extend M to a matching M ′ where for each j ∈ [ r ] we add an edge e with i P ( e ) = i j .Then i P ( V ( H ) \ V ( M ′ )) ∈ L , so ( P , L ) is soluble by Lemma 6.9. (cid:3) Merging.
In Lemma 8.16 we will improve Lemma 8.4 by replacing2 k k +3 by 2 k ( k − Definition 8.5.
Suppose ( P , L ) is a full pair for a k -graph H and write G = G ( P , L ). Fix an identification of P with G and an element g ∈ G so that L = L ( G, g ) (using Theorem 6.7). For any subgroup K of G , let P K be the partition obtained from P by merging any two parts identified withelements in the same coset of K . Let L K = ( L | P K ).For example P = P , L = L , P G = { V ( H ) } and L G = k Z . Lemma 8.6.
Under the setup of Definition 8.5, P K is well-defined, ( P K , L K ) is a full pair, and L K = L ( G/K, g + K ) . Furthermore, for i ∈ L P max we have ( i | P K ) ∈ L K if and only if R G ( i ) ∈ K .Proof. To see that P K is well-defined, recall from Remark 6.8 that the iden-tification π : P → G is determined up to translation by G ; we merge X and Y if and only if π ( X ) − π ( Y ) ∈ K , and this property is invariant under anytranslation of π . Note that there is an induced identification of P K with G/K . Now we show that L K = L ( G/K, g + K ); then ( P K , L K ) is a fullpair by Lemma 6.6.Recall from Lemma 6.6 that L ( G, g ) is the set of index vectors i ∈ L P max with P g ∈ G i g g = ( k − P g ∈ G i g ) g . For any such i we have X h ∈ G/K ( i | P K ) h h = X h ∈ G/K X g ∈ h i g h = X g ∈ G i g ( g + K )= k − X g ∈ G i g ( g + K )= k − X h ∈ G/K ( i | P K ) h ( g + K ) . Thus ( i | P K ) ∈ L ( G/K, g + K ). Since R G ( i ) = P g ∈ G i g g − ( k − P g ∈ G i g ) g for any i ∈ L P max , this calculation also establishes the ‘Furthermore’ state-ment.Conversely, consider any j ∈ L ( G/K, g + K ), so that P h ∈ G/K j h h =( k − P h ∈ G/K j h )( g + K ). For each h ∈ G/K fix a representative ˆ h ∈ h and consider the index vector i = P h ∈ G/K j h u ˆ h with respect to P . Then( i | P K ) = j and X g ∈ G i g g = X h ∈ G/K j h ˆ h ∈ k − X h ∈ G/K j h ( g + K )= k − X g ∈ G i g ( g + K ) . Let g ′ = P g ∈ G i g g − ( k − P g ∈ G i g ) g , so g ′ ∈ K , and let i ′ = i − u g ′ + u G .Then X g ∈ G i ′ g g = − g ′ + X g ∈ G i g g = ( k − X g ∈ G i g ) g = ( k − X g ∈ G i ′ g ) g , so i ′ ∈ L ( G, g ), and ( i ′ | P K ) = ( i | P K ) = j . (cid:3) OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 45
Subsequence sums in finite abelian groups.
Under the setup ofDefinition 8.5, given a matching M in H , we define S G ( M ) to be the set ofresidues of submatchings of M ; that is, S G ( M ) = { R G ( V ( M ′ )) | M ′ ⊆ M } . Note that i P ( V ( H ) \ V ( M ′ )) ∈ L if and only if R G ( V ( H )) = R G ( V ( M ′ )),and if R G ( V ( H )) ∈ S G ( M ) then ( P , L ) is soluble by Lemma 6.9. Thus wehave the following result. Proposition 8.7.
Under the setup of Definition 8.5, if there is some match-ing M such that S G ( M ) = G then ( P , L ) is soluble. To analyse S G ( M ) we require some lemmas on subsequence sums inabelian groups. Roughly speaking, we can obtain sufficient lower boundsprovided that |S G ( M ) | increases by at least 1 when we add an edge to M .Our first lemma gives structural information when this is not the case. Firstwe introduce some notation for sequences. For the remainder of this subsection we fix any finite abelian group G . Definition 8.8.
Let a be a sequence in G .(i) We write S ( a ) for the set of sums of all subsequences of a .(ii) For any subgroup K of G we write a + K for the sequence of K -cosetsof terms in a .(iii) For j ≥ a j for the j th term of a (when it exists).(iv) For j ≥ a j = ( a , . . . , a j ).(v) We write a ◦ b for the concatenation of two sequences a and b . Lemma 8.9.
Suppose a is a sequence in G , and x ∈ G is such that S ( a ◦ ( x )) = S ( a ) . Then S ( a ) is a union of cosets of h x i .Proof. Consider y ∈ S ( a ). It suffices to show that y + rx ∈ S ( a ) for every r ∈ N . We prove this by induction on r . The base case r = 0 is given. Forthe induction step, if y + rx ∈ S ( a ) then y + ( r + 1) x = ( y + rx ) + x ∈S ( a ◦ ( x )) = S ( a ). (cid:3) Remark 8.10.
Lemma 8.16 follows directly from Lemma 8.9 for full pairs( P , L ) such that | G ( P , L ) | = p is prime. Indeed, consider a greedy con-struction of a matching M , where at each step we add an edge that in-creases the size of S G ( M ), if possible. The construction terminates in atmost | G | − S G ( M ) = G or no edge increases thesize of S G ( M ). If S G ( M ) = G then ( P , L ) is soluble by Proposition 8.7.On the other hand, if S G ( M ) = G we claim that for any edge e disjointfrom M we have R G ( e ) = 0 G , i.e. i P ( e ) ∈ L . For otherwise, since p isprime we have h R G ( e ) i = G , so by Lemma 8.9 S G ( M ) is a union of cosetsof G , i.e. S G ( M ) = G , which contradicts our assumption. Note also that | M | ≤ | G | − ≤ k −
3, so | V ( M ) | ≤ k ( k − P , L ) is a k ( k − Lemma 8.11.
Suppose a is a sequence in G and S ( a ) is a union of cosets ofsome subgroup K . Then S ( a ◦ b ) is a union of cosets of K for any sequence b in G . Proof.
Consider y ∈ S ( a ◦ b ), and write y = y + y , such that y ∈ S ( a )and y ∈ S ( b ). Let z ∈ y + K , and write z = y + h for h ∈ K . Then y + h ∈ S ( a ), and hence z = ( y + h ) + y ∈ S ( a ◦ b ). (cid:3) We deduce a property of sequences with the following minimality property.
Definition 8.12.
Suppose a is a sequence in G . We say that a is minimal if S ( a ′ ) = S ( a ) for any proper subsequence a ′ of a . Lemma 8.13.
Suppose a is a minimal sequence in G and K is a subgroupof G . Then a has at most | K | − elements in K .Proof. Let b and c be the subsequences of a consisting of its elements that arein K and not in K respectively. It suffices to prove that |S ( b j +1 ) | > |S ( b j ) | for j ≥
0, as then b has length at most |S ( b ) | − ≤ | K | −
1. Supposefor a contradiction that |S ( b j +1 ) | = |S ( b j ) | for some j ≥
0. Let a ′ and b ′ be obtained from a and b by deleting b j +1 . We will show that S ( a ) = S ( a ′ ), contradicting minimality of a . Consider any y ∈ S ( a ). We claimthat y ∈ S ( a ′ ). We can assume y is a subsequence sum using b j +1 . Then y = b j +1 + y + y with y ∈ S ( b ′ ) and y ∈ S ( c ). Note that S ( b j ) is aunion of cosets of h b j +1 i by Lemma 8.9, and the same is true of S ( b ′ ) byLemma 8.11. Thus b j +1 + y ∈ S ( b ′ ), so y ∈ S ( a ′ ), as required. (cid:3) Now we associate the following key subgroup with a sequence (Lemma 8.15will show that it is well-defined).
Definition 8.14.
Suppose a is a sequence in G . The key subgroup K ( a ) for a is the unique subgroup K such that S ( a ) is a union of cosets of K and K is maximal with this property.Note that the key subgroup always exists since every subset of G is aunion of cosets of { } . The following lemma shows that it is unique, andderives some of its properties. Lemma 8.15.
Suppose a is a sequence in G . Then the key subgroup K ( a ) is well-defined, and(i) if | G | > and a has at least | G | − nonzero entries then | K ( a ) | > ,(ii) K ( a + K ( a )) is the trivial subgroup of G/K ( a ) ,(iii) if | G/K ( a ) | > then a has at most | G/K ( a ) |− elements not in K ( a ) .Proof. To show that K ( a ) is well-defined, it suffices to show that if S ( a ) is aunion of cosets of K and of K ′ , then S ( a ) is also a union of cosets of K + K ′ .To see this, let y be any element of S ( a ) and consider z ∈ y + K + K ′ . Write z = y + h + h ′ , where h ∈ K and h ′ ∈ K ′ . Now y + h ∈ S ( a ) as S ( a ) is aunion of cosets of K , so z = ( y + h ) + h ′ ∈ S ( a ) as S ( a ) is a union of cosetsof K ′ .To prove (i), we argue similarly to Remark 8.10. Either |S ( a ) | = | G | (so K ( a ) = G ), or there exists j ≥ a j +1 = 0 and S ( a j ) = S ( a j +1 ).In the latter case Lemma 8.9 implies that S ( a j ) is a union of cosets of h a j +1 i ,and by Lemma 8.11 the same holds for S ( a ).For (ii), suppose for a contradiction that K ′ = K ( a + K ( a )) is a non-trivial subgroup of G/K ( a ). Then { x + K ( a ) | x ∈ S ( a ) } = S t ∈ T ( t + K ′ ) forsome T ⊆ G/K ( a ). Let K ∗ be the set of g ∈ G such that g is contained in OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 47 some coset z + K ( a ) with z ∈ K ′ . Then K ∗ is a subgroup of G that strictlycontains K ( a ). Now fix representatives ˆ t ∈ t + K ( a ) for t ∈ T and note that S ( a ) = S t ∈ T (ˆ t + K ∗ ), which contradicts the definition of K ( a ).To show (iii), suppose for a contradiction that a has at least | G/K ( a ) | − K ( a ). Applying (i) in G/K ( a ) we have | K ( a + K ( a )) | > (cid:3) The full result.
Theorem 1.10 follows from Theorem 8.1 and the fol-lowing result.
Lemma 8.16.
Suppose that k ≥ and H is a k -graph such that every k ( k − -far full pair for H is soluble. Then every full pair for H is soluble. First we require the following calculation.
Lemma 8.17.
Suppose t ≥ and x ∈ Z t +1 with x i ≥ for i ∈ [ t + 1] . Let f ( x ) = X j ∈ [ t ] x . . . x j + X j ∈ [ t +1] x j + X j ∈ [ t ] x j +1 . . . x t +1 − t − . Then f ( x ) ≤ x . . . x t +1 − .Proof. First we consider the case t = 1. Then f ( x ) = 2 x + 2 x −
6, sothe required inequality is equivalent to x + x − ≤ x x ; this holds as( x − x − ≥
0. Now suppose t >
1. Note that the inequality holds if x i = 2 for all i ∈ [ t +1], as then f ( x ) = (2 t +1 − t +1)+(2 t +1 − − t − < t +1 − t = 2 and x = (2 , s,
2) forsome s >
2, as then f ( x ) = 5 s + 8 − < s − r ∈ [ t + 1] write x r → for the vector obtained from x by setting x r equal to 2. We will showthat f ( x ) f ( x r → ) ≤ x r ≤ x . . . x t +1 − x . . . x r − x r +1 . . . x t +1 − , except in the case where t = r = 2 and x = (2 , s,
2) for some s >
2. Thissuffices to prove the lemma, since we can replace each x r by 2 in turn until wereach one of the cases considered above. The second inequality is immediatefrom x r ≥
2. For the first, we rewrite it as0 ≤ x r f ( x r → ) − f ( x )= ( x r − X j ∈ [ r − x . . . x j + X j ∈ [ t +1] ,j = r x j + X r ≤ j ≤ t x j +1 . . . x t +1 − t − . If t ≥
3, or if t = 2 and r = 2, this holds since there are 2 t positive termsin the last bracket, each of which is at least 2 and at least one of which isat least 4. Alternatively, if t = r = 2 and either x ≥ x ≥ (cid:3) Proof of Lemma 8.16.
We proceed by induction on |P| . Let ( P , L ) be a fullpair and assume that every full pair ( P ′ , L ′ ) with |P ′ | < |P| is soluble. Wewill show that ( P , L ) is soluble. Write G = G ( P , L ). We will construct asequence G = K ⊇ K ⊇ K ⊇ . . . ⊇ K t ⊇ G ,together with a sequence of vertex sets ∅ = S ⊆ S ⊆ S ⊆ . . . ⊆ S t , suchthat the following conditions hold: (i) | S t | /k ≤ P j ∈ [ t ] | G/K j | + P j ∈ [ t ] | K j − /K j | + P j ∈ [ t ] | K j | − t .(ii) Every edge e ∈ H such that R G ( e ) / ∈ K t intersects S t .(iii) There exists a solution for ( P K t , L K t ) using only vertices from S t .Recalling that P G is the trivial partition of V ( H ) into a single part, it isclear that S = ∅ satisfies these conditions. Given K t and S t , we construct K t +1 and S t +1 as follows.For any matching M , let K ( M ) be the key subgroup of the sequence ofresidues of edges in M (in any order). Consider the set of all matchings M in H − S t such that S G ( M ∪ { e } ) = S G ( M ) for every edge e ∈ H − S t which does not intersect V ( M ). This is a non-empty set, as it containsall maximal matchings in H − S t . We choose such an M so that S G ( M )is maximal, and subject to this M is minimal. Having chosen M , we set K t +1 := K ( M ). Note that the choice of M implies that S G ( M ′ ) = S G ( M )for any strict subset M ′ ⊂ M . Indeed, if S G ( M ′ ) = S G ( M ) then minimalityof M implies that some edge e ∈ H − S t which does not intersect V ( M ′ )has S G ( M ′ ∪ { e } ) = S G ( M ′ ) = S G ( M ), but then a maximal matchingcontaining M ′ ∪{ e } contradicts the maximality of S G ( M ). Also observe thatany edge e with R G ( e ) / ∈ K t +1 intersects S t ∪ V ( M ); otherwise S G ( M ) is aunion of cosets of h R G ( e ) i by Lemma 8.9, which contradicts the definition of K ( M ) = K t +1 as being the unique maximal subgroup of G such that S G ( M )is a union of cosets of K ( M ). Thus ( P K t +1 , L K t +1 ) is a | S t ∪ V ( M ) | -far fullpair for H by Lemma 8.6.First we consider the case that K t +1 = K t . By (iii) there is a solution M sol for ( P K t , L K t ) using only vertices from S t . Then R G ( V ( H ) \ V ( M sol )) ∈ K t by Lemma 8.6. Since K ( M ) = K t +1 = K t there is M ′ ⊆ M with R G ( V ( M ′ )) = R G ( V ( H ) \ V ( M sol )). Now M ′ ∪ M sol is a matching, as M isdisjoint from S t , and R G ( V ( H ) \ V ( M ′ ∪ M sol )) = 0 G , so ( P , L ) is solubleby Lemma 6.9.Now we can assume that K t +1 is a strict subgroup of K t . We will showthat | S t ∪ V ( M ) | ≤ k ( k − x ∈ Z t +1 by x j = | K j − /K j | for j ∈ [ t ] and x t +1 = | K t | .Then x j ≥ j ∈ [ t + 1] and x . . . x t +1 = | G | ≤ k − M has at most | K t +1 | − e with R G ( e ) ∈ K t +1 byLemma 8.13. Also, since R G ( e ) ∈ K t for all e ∈ M by (ii), M has at most | K t /K t +1 | − e with R G ( e ) / ∈ K t +1 by Lemma 8.15(iii). Therefore | M | ≤ | K t +1 | + | K t /K t +1 | − | S t ∪ V ( M ) | /k ≤ X j ∈ [ t ] | G/K j | + X j ∈ [ t +1] | K j − /K j | + X j ∈ [ t +1] | K j | − t − f ( x ) − ( | K t /K t +1 | − | K t +1 | − ≤ | G | − ≤ k − . Thus ( P K t +1 , L K t +1 ) is a 2 k ( k − H , so by assumption hasa solution M sol , which by definition has size at most | G/K t +1 | − | K t +1 | = 1 then M sol is a solution for ( P , L ). Otherwise, we define S t +1 = S t ∪ V ( M ) ∪ V ( M sol ) and proceed to the next step. The required OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 49 conditions on S t +1 hold as | S t +1 | /k ≤ | S t | /k + | M | + | M sol | ≤ | S t | /k + | G/K t +1 | + | K t /K t +1 | + | K t +1 |− , every edge with R G ( e ) / ∈ K t +1 intersects S t ∪ V ( M ), and there is a solutionfor ( P K t +1 , L K t +1 ) using only vertices from S t +1 (namely M sol ). (cid:3) Deferred proofs
In this section we present the proofs of Lemmas 2.4, 5.5 and 7.1.9.1.
Proof of Lemma 2.4.
Recall that we are given a k -graph H on n vertices that has a perfect matching, and for each set A of k − H we let t A = max(0 , (1 /k + γ ) n − d H ( A )). Write V = V ( H ), χ = X A ∈ ( Vk − ) t A and χ = max (cid:18) , n k − k ! − δ ( H ) (cid:19) . We are given(i) χ < εγ n k +1 / kn k , and(ii) χ + χ √ εγ n < √ εn k − .(We have slightly rephrased (ii) from the hypothesis of the lemma by includ-ing the maximum in the definition of χ ; to see that it is equivalent, notethat if χ = 0 then by (i) we have χ √ εγ n < √ εn k − .)Let e be any edge of H . By (i) there are at most 2 εn k − ( k − A ⊆ V \ e such that d ( A ) < (1 /k + γ/ n , and by (ii) we have χ < √ εn k − ,so δ ( H − e ) ≥ n k − / k !. Thus we can apply Theorem 2.1 to H − e forevery e ∈ H , with γ/ ε in place of γ and ε , to construct the set E ′ of edges e such that H − e contains a perfect matching; in total this takestime O ( n k − k ).We will show that we can find an edge e ∈ E ′ in time O ( n k ) such that H − e satisfies the analogues of (i) and (ii). More precisely, for any ( k − A ⊆ V we define t eA by t eA = ( max(0 , (1 /k + γ )( n − k ) − d H − e ( A )) if A ⊆ V \ e, . We also define χ e = X A ∈ ( V \ ek − )( t eA ) and χ e = max (cid:18) , ( n − k ) k − k ! − δ ( H − e ) (cid:19) . Then we need to find e ∈ E ′ so that(i) e χ e < εγ ( n − k ) k +1 / k ( n − k ) k , and(ii) e χ e + χ e √ εγ ( n − k ) < √ ε ( n − k ) k − .First we claim that for each A ∈ (cid:0) Vk − (cid:1) ,(7) ( t eA ) ≤ t A + 2 t A ( | H ( A ) ∩ e | − − kγ ) + k . Note that if t A = 0 then (7) follows from t eA ≤ k . On the other hand, if t A >
0, then( t eA ) ≤ ( t A + | H ( A ) ∩ e | − − kγ ) = t A + 2 t A ( | H ( A ) ∩ e | − − kγ ) + ( | H ( A ) ∩ e | − − kγ ) ≤ t A + 2 t A ( | H ( A ) ∩ e | − − kγ ) + k , so (7) holds. Now to find the desired edge e , we split into two cases. Case 1: χ > . In this case, by definition there must exist a vertex x of degree at most n k − / k !, and we can find such a vertex in time O ( n k ).Since H contains a perfect matching, there is some e ∈ E ′ containing x . Wenow delete e and show that conditions (i) e and (ii) e hold. First we define A = { A ∈ (cid:0) Vk − (cid:1) : x ∈ A } and note that P A ∈A d H ( A ) = ( k − d H ( x ) ≤ n k − / k − |A| = (cid:0) n − k − (cid:1) we have X A ∈A t A ≥ (cid:18) k + γ (cid:19) n (cid:18) n − k − (cid:19) − n k − k − ≥ n k (cid:18) n − k − (cid:19) . Now by the Cauchy-Schwartz inequality, we obtain P A ∈A t A ≥ n k (cid:0) n − k − (cid:1) .Moreover, by (7) and then Cauchy-Schwartz we have X A ∈ ( V \ ek − ) (cid:0) ( t eA ) − t A (cid:1) ≤ X A ∈ ( V \ ek − ) (cid:0) t A ( k −
1) + k (cid:1) ≤ k − s(cid:18) nk − (cid:19) χ + k (cid:18) n − kk − (cid:19) ≤ √ εn k , where the final inequality holds by (i). Since A ⊆ (cid:0) Vk − (cid:1) \ (cid:0) V \ ek − (cid:1) , we have(8) χ e ≤ χ − n k (cid:18) n − k − (cid:19) + √ εn k ≤ χ − n k k ! , so χ e < εγ n k +1 / kn k − n k / k ! ≤ εγ ( n − k ) k +1 / k ( n − k ) k , whichproves (i) e .Note also that χ e ≤ χ + k (cid:0) nk − (cid:1) , so by (8) we have (cid:18) χ e √ εγ ( n − k ) + χ e (cid:19) − (cid:18) χ √ εγ n + χ (cid:19) ≤ χ √ εγ n · kn − k ( n − k ) − n k k ! √ εγ ( n − k ) + k (cid:18) nk − (cid:19) ≤ k √ εn k − − n k − γ + k (cid:18) nk − (cid:19) < − n k − . Now by (ii) we deduce that χ e √ εγ ( n − k ) + χ e < √ εn k − − n k − < √ ε ( n − k ) k − , which proves (ii) e . OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 51
Case 2: χ = 0 . We claim that we can find in time O ( n k ) an edge e ∈ E ′ such that(9) X A ∈ ( Vk − ) (cid:16) t A ( | H ( A ) ∩ e | − − kγ ) − | A ∩ e | t A (cid:17) ≤ − k ( k + 1) χ n . To see this, consider a perfect matching M in H (this exists by hypothesisof the lemma, although the algorithm does not have access to it). Note that X e ∈ M X A ∈ ( Vk − ) 2 t A ( | H ( A ) ∩ e | − − kγ )= X A ∈ ( Vk − ) 2 t A X e ∈ M ( | H ( A ) ∩ e | − − kγ )= X A ∈ ( Vk − ) 2 t A (cid:18)(cid:18) k + γ (cid:19) n − t A − (1 + kγ ) nk (cid:19) = X A ∈ ( Vk − ) − t A = − χ . (For the second equality, note that terms with t A = 0 contribute zero toeach side of the equation, whilst terms with t A > t A and the fact that M has size n/k ). Note also that X e ∈ M X A ∈ ( Vk − ) | A ∩ e | t A = X A ∈ ( Vk − )( k − t A = ( k − χ . We deduce that X e ∈ M X A ∈ ( Vk − ) (cid:16) t A ( | H ( A ) ∩ e | − − kγ ) − | A ∩ e | t A (cid:17) = − ( k + 1) χ , so by averaging there is some e ∈ M that satisfies (9). Note further that e ∈ E ′ , so we can find such an edge e in time O ( n k ) simply by checking (9)for every edge of E ′ .We will show that (i) e and (ii) e hold for this choice of e . Let D ( e ) be thefamily of ( k − A ⊆ V which intersect e . Applying (7), we obtain χ e − χ = X A ∈ ( Vk − )(( t eA ) − t A ) = X A ∈ ( V \ ek − )(( t eA ) − t A ) − X A ∈ D ( e ) t A ≤ X A ∈ ( V \ ek − ) 2 t A ( | H ( A ) ∩ e | − − kγ ) − X A ∈ D ( e ) t A + k (cid:18) nk − (cid:19) . (10) We will show that the first and second terms of (10) are close to those of(9). For the first, note that | D ( e ) | = (cid:0) nk − (cid:1) − (cid:0) n − kk − (cid:1) ≤ k n (cid:0) nk − (cid:1) , so X A ∈ ( V \ ek − ) 2 t A ( | H ( A ) ∩ e | − − kγ ) − X A ∈ ( Vk − ) 2 t A ( | H ( A ) ∩ e | − − kγ ) ≤ X A ∈ D ( e ) n ≤ k (cid:18) nk − (cid:19) . (11)For the second, observe that if A ∈ (cid:0) Vk − (cid:1) is chosen uniformly at randomthen | A ∩ e | is hypergeometric with mean k ( k − /n , so X A ∈ D ( e ) | A ∩ e | = X A ∈ ( Vk − ) | A ∩ e | = k ( k − n (cid:18) nk − (cid:19) . We also have | D ( e ) | = (cid:18) nk − (cid:19) − (cid:18) n − kk − (cid:19) ≥ (cid:18) k ( k − n − k n (cid:19) (cid:18) nk − (cid:19) , so P A ∈ D ( e ) ( | A ∩ e |− ≤ k n (cid:0) nk − (cid:1) and so P A ∈ D ( e ) ( | A ∩ e |− t A ≤ k (cid:0) nk − (cid:1) .It follows that(12) X A ∈ D ( e ) t A ≥ X A ∈ ( Vk − ) | A ∩ e | t A − k (cid:18) nk − (cid:19) . Substituting (11) and (12) into (10) and then applying (9), we obtain χ e ≤ χ − k ( k + 1) χ n + k (cid:18) nk − (cid:19) + k (cid:18) nk − (cid:19) + k (cid:18) nk − (cid:19) ≤ (cid:18) − k ( k + 1) n (cid:19) (cid:18) εγ n k +1 kn k (cid:19) + 3 k (cid:18) nk − (cid:19) ≤ εγ ( n − k ) k +1 / k ( n − k ) k , using (i) for the second inequality, and n k +1 − ( n − k ) k +1 ≤ k ( k + 1) n k and n k − ( n − k ) k ≤ k n k − for the third. This proves (i) e . Further, since χ = 0we have χ e ≤ k (cid:0) n − k − (cid:1) , so χ e √ εγ ( n − k ) + χ e < √ ε ( n − k ) k − k (cid:18) n − k − (cid:19) < √ ε ( n − k ) k − , which proves (ii) e . (cid:3) Weak hypergraph regularity.
The proofs of Lemma 5.5 and 7.1 usethe weak hypergraph regularity lemma. We state this after the followingdefinitions.
Definition 9.1.
Suppose that P partitions a set V into r parts V , . . . , V r and G is a P -partite k -graph on V . For A ∈ (cid:0) [ r ] k (cid:1) we write G A for theinduced k -partite subgraph of G with parts V i for i ∈ A .(i) The density of G A is d ( G A ) = | G A | Q i ∈ A | V i | . OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 53 (ii) For ε > A ∈ (cid:0) [ r ] k (cid:1) , we say that the k -partite subgraph G A is ε -vertex-regular if for any sets V ′ i ⊆ V i with | V ′ i | ≥ ε | V i | for i ∈ A ,writing V ′ = S i ∈ A V ′ i , we have d ( G A [ V ′ ]) = d ( G A ) ± ε .(iii) We say that a partition P of V ( G ) is ε -regular if all but at most ε | V | k edges of G belong to ε -vertex-regular k -partite subgraphs.(iv) The reduced k -graph R d P is the k -graph whose vertices are the parts of P and whose edges are all k -sets of parts of P that induce an ε -vertex-regular k -partite subgraph of G of density at least d .Note that we use the same notation d ( · ) for density as for degree, butthere should be no confusion. We shall use the following formulation of theweak hypergraph regularity lemma to obtain regular partitions. Theorem 9.2. (Weak hypergraph regularity lemma) Suppose that /n ≪ /m ≪ ε, /r ≪ /k . Suppose that G is a k -graph on n vertices and that P is a partition of V = V ( G ) into at most r parts of size at least εn . Thenthere is an ε -regular partition Q of V into m ≤ m parts such that(i) each part of Q has size ⌊ n/m ⌋ or ⌈ n/m ⌉ , and(ii) Q is ε -close to a refinement P ′ of P .Proof. Taking 1 /m ≪ ε ′ ≪ ε , the most commonly-used form of the weakhypergraph regularity lemma (see [5]) states that there exist an integer m ≤ m , an exceptional set V ⊆ V of size | V | ≤ ε ′ n and a partition P ′ of V \ V into parts V , . . . , V m of equal size which is ε ′ -regular (with respectto H [ V \ V ]) and has the property that V j is a subset of some part of P forany j ∈ [ m ]. By distributing the vertices of V as equally as possible amongthe parts of P ′ we obtain the desired partition Q . (cid:3) Proof of Lemma 5.5.
Before giving the proof of Lemma 5.5, we givea brief sketch of the idea. A rough statement of the lemma is that robustmaximality is preserved by random selection, i.e. if some partition P of V ( H ) is robustly maximal with respect to H and S is a suitable randomsubset of V ( H ) then with high probability P [ S ] is also robustly maximal(with slightly weaker parameters) with respect to H [ S ]. It is not hard tosee that H [ S ] has a transferral-free robust edge-lattice with respect to P [ S ].The main difficulty is to show that with high probability there is no strictrefinement P ◦ of P [ S ] (with large parts) that has a transferral-free robustedge-lattice. Since there are many possible refinements P ◦ to consider, astraightforward union bound on the probability will not suffice. Instead,we use the weak hypergraph regularity lemma. We show that any suchrefinement P ◦ gives rise to a partition of the reduced k -graph, which in turngives rise a refinement P ∗ of P with a transferral-free robust edge-lattice.However, this contradicts the robust maximality of P , so no such refinement P ◦ can exist. Proof of Lemma 5.5.
Recall that we are given a k -graph H on n vertices anda partition P of V ( H ) that is ( c, c ′ , µ, µ ′ )-robustly maximal with respect to H . We are also given a partition P ′ of V ( H ) that refines P and integers( n Z ) Z ∈P ′ such that η | Z | ≤ n Z ≤ | Z | . We choose S ⊆ V ( H ) uniformly atrandom subject to the condition that | S ∩ Z | = n Z for each Z ∈ P ′ . Firstwe note that | S | ≥ ηn , and for each part X ∈ P that | S ∩ X | ≥ η | X | ≥ ηcn . Next we show that L µ/c P [ S ] ( H [ S ]) is transferral-free. It suffices to prove that I µ/c P [ S ] ( H [ S ]) ⊆ I µ P ( H ). To see this, note that if i ∈ I µ/c P [ S ] ( H [ S ]) then thereare at least ( µ/c )( ηn ) k ≥ µn k edges e ∈ H [ S ] ⊆ H with i P [ S ] ( e ) = i , so i ∈ I µ P ( H ).It remains to show that with high probability there is no refinement P ◦ of P [ S ] with parts of size at least (3 c ′ /η ) | S | , such that L ( µ ′ ) P ◦ ( H [ S ])is transferral-free. Suppose that we have such a partition P ◦ ; then we willobtain a contradiction using events that hold with high probability. Intro-duce new constants ε, N , N such that 1 /n ≪ /N ≪ /N ≪ ε ≪ µ . Weapply Theorem 9.2 to H to obtain an ε -regular partition Q of V ( H ) whichhas n R parts of almost equal size, for some N ≤ n R ≤ N , and which is ε -close to a refinement of P . Let n = n/n R , so every cluster has size ⌊ n ⌋ or ⌈ n ⌉ . We henceforth omit the floor and ceiling signs as these do not affectthe argument. Let R = R µ ′ / Q be the µ ′ / k -graph on Q .For any Y ∈ Q , note that | Y ∩ S | is a sum of independent hypergeometricrandom variables, with E [ | Y ∩ S | ] = X Z ∈P ′ n Z | Y ∩ Z || Z | ≥ X Z ∈P ′ η | Y ∩ Z | = ηn . Hence by Corollary 4.11 with high probability | Y ∩ S | ≥ ηn / Y ∈ Q . Next we choose a partition of V ( R ) that is ‘representative’ of P ◦ . Claim 9.3.
There exists a partition S of V ( R ) , whose parts ( X S ) X ∈P ◦ correspond to those of P ◦ , such that(i) Each part X S ∈ S has size at least c ′ n R / , and(ii) | X ∩ Y | ≥ ( c ′ ) n whenever Y ∈ X S . To prove the claim, we choose S randomly as follows. Let P be the setof pairs ( X, Y ) such that X ∈ P ◦ , Y ∈ V ( R ) = Q and | X ∩ Y | ≥ c ′ | S ∩ Y | .We independently assign each Y ∈ V ( R ) to a part X S such that ( X, Y ) ∈ P with probability proportional to | X ∩ Y | , so with probability | X ∩ Y | P X :( X,Y ) ∈ P | X ∩ Y | ≥ | X ∩ Y || S ∩ Y | . Note that whenever Y ∈ X S we have | X ∩ Y | ≥ c ′ ( ηn / ≥ ( c ′ ) n , so (ii)is satisfied. For (i), consider any X ∈ P ◦ , and note that P Y ∈ V ( R ) | X ∩ Y | = | X | ≥ (3 c ′ /η ) | S | ≥ c ′ n . Then X Y ∈ V ( R ) | X ∩ Y || S ∩ Y | ≥ X Y ∈ V ( R ) | X ∩ Y | n ≥ c ′ nn = 3 c ′ n R , and E [ | X S | ] ≥ X Y :( X,Y ) ∈ P | X ∩ Y || S ∩ Y | = X Y ∈ V ( R ) | X ∩ Y || S ∩ Y | − X Y :( X,Y ) / ∈ P | X ∩ Y || S ∩ Y |≥ c ′ n R − c ′ n R = 2 c ′ n R . OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 55
Thus (i) holds with high probability by Lemma 4.10, which proves the claim.(Note that here we used the phrase ‘with high probability’ to mean withprobability 1 − e − Ω( n cR ) for some c > n R → ∞ , that is, with n R largeinstead of our usual definition with n large.)We now define a partition Q ∗ of V by Q ∗ = { [ Y ∈ X Y | X ∈ S} . So Q refines Q ∗ , and by Claim 9.3(i) each part of Q ∗ has size at least3 c ′ n R n / c ′ n/
2. Recall that we chose Q to be ε -close to a refinementof P , so we can obtain a refinement of P from Q by changing the part of aset B of at most εn vertices of V . Furthermore, any cluster Y was assignedto X S for some X ∈ P ◦ such that | X ∩ Y | ≥ ( c ′ ) n by Claim 9.3(ii). Since P ◦ is a refinement of P , we deduce that we may obtain a refinement of P from Q ∗ by possibly changing the part of(i) the at most εn vertices in B , and(ii) the at most n · ( εn/ ( c ′ ) n ) < µ ′ n/ Y with | Y ∩ B | ≥ ( c ′ ) n .We conclude that Q ∗ is ( µ ′ / P ∗ of P ; in particular, P ∗ then has parts of size at least c ′ n .To finish the proof of the lemma, it suffices to prove the following claim.Indeed, since L ( µ ′ ) P ◦ ( H [ S ]) is transferral-free, it will imply that the same istrue of L µ ′ P ∗ ( H ), contradicting the robust maximality of P . Claim 9.4. I µ ′ P ∗ ( H ) ⊆ I µ ′ / Q ∗ ( H ) ⊆ I µ ′ / S ( R ) ⊆ I ( µ ′ ) P ◦ ( H [ S ]) . The first inequality holds by Proposition 4.3 since Q ∗ is ( µ ′ / P ∗ .For the second inequality, consider i ∈ I µ ′ / Q ∗ ( H ). By definition of R , thereare at most εn k + n kR · ( µ ′ / n k ≤ µ ′ n k / e ∈ H with i P ∗ ( e ) = i whichdo not lie in k -graphs corresponding to edges of R . There are at least µ ′ n k / e ∈ H with i Q ∗ ( e ) = i , so at least µ ′ n k /
10 of these lie in k -graphscorresponding to edges of R . Thus there are at least µ ′ n k / n k = µ ′ n kR / e ∈ R such that i S ( e ) = i , i.e. i ∈ I µ ′ / S ( R ).For the final inequality consider i ∈ I µ ′ / S ( R ). Then there are at least µ ′ n kR /
10 edges e ∈ R with i S ( e ) = i . Consider such an edge e = { Y , . . . , Y k } ,let ( X j ) S be the part of S containing Y j for each j ∈ [ k ], and let F be the k -partite subgraph of H with vertex classes ( X j ∩ Y j ) j ∈ [ k ] . By definitionof R , since each part of F has size ( c ′ ) n by Claim 9.3(ii), we have | F | ≥ ( µ ′ / − ε )(( c ′ ) n ) k ≥ µ ′ ) ( | S | /n R ) k . Summing over all choices of e , thereare at least ( µ ′ ) | S | k edges e ′ ∈ H [ S ] with i P ◦ ( e ′ ) = i , i.e. i ∈ I ( µ ′ ) P ◦ ( H [ S ]).This completes the proof of the claim, and so of the lemma. (cid:3) Proof of Lemma 7.1.
Recall that we are given a k -graph H on a set V = V ( H ) of size kn and a partition P of V ( H ) such that (i) at most εn k − ( k − S ⊆ V have d H ( S ) < (1 + γ ) n , (ii) P is ( c, c, µ, µ ′ )-robustlymaximal with respect to H , (iii) any vertex is in at least dn k − edges e with i P ( e ) ∈ L µ P ( H ), and (iv) i P ( V ) ∈ L µ P ( H ). We choose uniformly at random a partition P ′ = ( V , . . . , V k ) of V into k parts each of size n . Let H ′ be the induced P ′ -partite subgraph of H and letˆ P be the common refinement of P and P ′ . We also set c ∗ = c/ k , d ∗ = d/ k k and γ ∗ = γ/ k , and introduce a new constant µ ∗ with µ ≪ µ ∗ ≪ µ ′ . Notethat µ ≪ µ ∗ ≪ c ∗ , d ∗ ≪ γ ∗ , /k . We will show that the following conditionshold with high probability.(F1) At most εn k − P ′ -partite ( k − S ⊆ V have | H ′ ( S ) | < (1 /k + γ ∗ ) n ,(F2) ˆ P is ( c ∗ , c ∗ , µ, µ ∗ )-robustly maximal with respect to H ′ ,(F3) any vertex is in at least d ∗ n k − edges e ∈ H ′ with i ˆ P ( e ) ∈ L µ ˆ P ( H ′ ), and(F4) i ˆ P ( V ) ∈ L µ ˆ P ( H ′ ).We then apply Lemma 7.6 to H ′ with ˆ P in place of P and c ∗ , µ ∗ , d ∗ , γ ∗ inplace of c, µ ′ , d, γ to obtain a perfect matching in H ′ , which is also a perfectmatching in H .First we note that (F1) is immediate from (i) and Corollary 4.11, and(F3) follows from (iii) and Corollary 4.13, similarly to the proof of (E3)in Claim 7.11. Next, since each part of P has size at least c | V | = ckn ,by Corollary 4.11 with high probability each part of ˆ P has size at least cn/ c ∗ | V | and by Proposition 4.5(i), for every i ∈ L µ ˆ P ( H ′ ) ⊆ L µ ˆ P ( H ) wehave ( i | P ) ∈ L µ P ( H ), so L µ ˆ P ( H ′ ) is transferral-free. This gives part of (F2);it also allows us to apply Proposition 7.5 and deduce that L µ ˆ P ( H ′ ) is fullwith respect to P ′ .Now we claim that i ∈ L µ ˆ P ( H ′ ) for every index vector i with respect toˆ P such that ( i | P ′ ) is a multiple of and ( i | P ) ∈ L µ P ( H ). Note that thiswill imply (F4), as ( i ˆ P ( V ) | P ′ ) = n · and ( i ˆ P ( V ) | P ) = i P ( V ) ∈ L µ P ( H )by (iv). To prove the claim, we apply Proposition 6.12(iii) to find parts X and X ′ of ˆ P such that i − u X + u X ′ ∈ L µ ˆ P ( H ′ ). Now ( u X − u X ′ | P ) = ( i |P ) − ( i − u X + u X ′ | P ) ∈ L µ P ( H ), so X and X ′ must be contained in thesame part of P , as L µ P ( H ) is transferral-free. Also, since H ′ is P ′ -partite, X ′ is contained in the same part of P ′ as X , so X ′ = X and i ∈ L µ ˆ P ( H ′ ), asclaimed.To finish the proof of (F2), we need to show that with high probabilitythere is no strict refinement ˆ P ∗ of ˆ P with parts of size at least c ∗ | V | suchthat L µ ∗ ˆ P ∗ ( H ′ ) is transferral-free; this will occupy the remainder of the proof.Suppose that we have such a partition ˆ P ∗ ; then we will obtain a contra-diction using events that hold with high probability. By (F1) we can applyProposition 7.5 to deduce that L µ ∗ ˆ P ∗ ( H ′ ) is full and every part of ˆ P ∗ has sizeat least (1 /k + γ ∗ / n . Also, by Proposition 6.12(i) there is some integer ℓ such that every part of P ′ is refined into ℓ parts by ˆ P ∗ ; note that ℓ < k .Now we use an argument which is similar in spirit to that of Lemma 5.5(but more complicated). Let N , N satisfy 1 /n ≪ /N ≪ /N ≪ ε .We apply Theorem 9.2 to obtain an ε -regular partition Q of V which is ε -close to a refinement of P and has n R parts of almost equal size, for some N ≤ n R ≤ N . Let n = kn/n R , so every cluster has size ⌈ n ⌉ or ⌊ n ⌋ ; weomit the floor and ceiling signs since they do not affect the argument. Alsolet R = R µ ′ / Q be the µ ′ / k -graph of H on Q . For any e ∈ R we OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 57 write H e = { e ′ ∈ H : e ′ ∩ X = ∅ ∀ X ∈ e } for the k -partite subgraph of H corresponding to e . We note for future ref-erence the following claim, which shows that R inherits a codegree conditionfrom H . Claim 9.5.
At most γ − εn k − R ( k − -sets A ⊆ V ( R ) have | R ( A ) | < n R /k . To see this, recall that at most ε | V | k edges of H do not lie in ε -vertex-regular k -partite subgraphs of H formed by parts of Q ; call these irregular edges. So there are at most k √ εn k − R ( k − A ⊆ V ( R ) for which morethan √ εn k − n irregular edges intersect each member of A . Fix any other A for which | R ( A ) | < n R /k . Then we have P B ∈ V A | H ( B ) | < n k n R /k +( µ ′ / n k − n + √ εn k − n , where V A denotes the set of ( k − A . Let m A be the number of ( k − B ∈ V A such that | H ( B ) | < (1 + γ ) n . Then P B ∈ V A | H ( B ) | ≥ ( n k − − m A )(1 + γ ) n ,and so m A ≥ n k − − n k n R /k + ( µ ′ / n k − n + √ εn k − n (1 + γ ) n = n k − γ − µ ′ / − √ ε γ ≥ γn k − . Since by (i) there are at most εn k − ( k − B ⊆ V with | H ( B ) | < (1 + γ ) n , there can be at most εn k − R / γ such sets A . Together with the atmost k √ εn k − R sets A considered earlier we have a total of at most γ − εn k − R ( k − A ⊆ V ( R ) with | R ( A ) | < n R /k , proving the claim.In the next claim we choose for each cluster of R a representative partof ˆ P ∗ within each part of P ′ . We encode these choices by k -vectors withrespect to ˆ P ∗ which are P ′ -partite, by which we mean that they correspondto P ′ -partite k -sets. Claim 9.6.
There are P ′ -partite k -vectors i ∗ ( Y ) ∈ Z ˆ P ∗ for each Y ∈ V ( R ) such that(G1) | Y ∩ Z | ≥ c ∗ n whenever i ∗ ( Y ) Z = 1 , and(G2) R Z := |{ Y : i ∗ ( Y ) Z = 1 }| ≥ n R /k for every Z ∈ ˆ P ∗ . The proof of the claim is similar to that of Claim 9.3. For each i ∈ [ k ]we let P i be the set of pairs ( Y, Z ) such that Y ∈ V ( R ) = Q , Z ∈ ˆ P ∗ , Z ⊆ V i and | Y ∩ Z | ≥ c ∗ n . For each Y ∈ V ( R ) and i ∈ [ k ] we let i ∗ ( Y ) Z =1 for a part Z with ( Y, Z ) ∈ P i chosen with probability proportional to | Y ∩ Z | , and let i ∗ ( Y ) Z = 0 otherwise, where all random choices are madeindependently. Thus (G1) is satisfied by choice of P i . For (G2), first notethat P [ i ∗ ( Y ) Z = 1] ≥ | Y ∩ Z || Y ∩ V i | for every Y and Z ⊆ V i such that | Y ∩ Z | ≥ c ∗ n .Also, since | Y ∩ V i | is distributed hypergeometrically, with high probability | Y ∩ V i | = (1 ± ε ) n /k for every Y ∈ Q and V i ∈ P ′ by Corollary 4.11. Nowfor any V i ∈ P ′ and any Z ∈ ˆ P ∗ with Z ⊆ V i we have X Y ∈ V ( R ) | Y ∩ Z || Y ∩ V i | ≥ X Y ∈ V ( R ) | Y ∩ Z | (1 + ε ) n /k = | Z | (1 + ε ) n /k , and X Y :( Y,Z ) / ∈ P i | Y ∩ Z || Y ∩ V i | ≤ n R · c ∗ n (1 − ε ) n /k < kc ∗ n R . Since every part Z of ˆ P ∗ has size at least (1 /k + γ ∗ / n , we obtain E [ R Z ] ≥ X Y :( Y,Z ) ∈ P i | Y ∩ Z || Y ∩ V i | ≥ (1 + γ ∗ / n R /k. Thus (G2) holds with high probability by Lemma 4.10, which completes theproof of the claim.In the next claim we show that certain ‘bad’ occurrences are rare. Wewill consider a cluster to be bad if it is not well-represented by its choice ofvector in Claim 9.6. We will consider a vertex to be bad if it belongs to agood cluster but not to the part assigned to this cluster in Claim 9.6. Wewill consider an edge of the reduced k -graph to be bad if it either contains abad cluster or contains two clusters whose vectors are ‘incompatible’. Moreprecisely, we make the following definitions. Definition 9.7. (i) We call a cluster Y ∈ V ( R ) bad if there exists Z ∈ ˆ P ∗ such that i ∗ ( Y ) Z = 0, but | Y ∩ Z | ≥ µ / ∗ n ; otherwise we call Y good .(ii) We call a vertex bad if it is contained in Y ∩ Z for some good cluster Y and some Z ∈ ˆ P ∗ such that i ∗ ( Y ) Z = 0.(iii) We call an edge e of R bad if either e contains a bad cluster, or e contains two clusters Y , Y such that i ∗ ( Y ) and i ∗ ( Y ) are neitheridentical nor orthogonal to each other. Claim 9.8. H has at most k µ / ∗ n bad vertices and R has at most √ µ ∗ n kR bad edges. The first part of the claim is immediate from the definitions, using | ˆ P ∗ | ≤ k and n n R = kn . For the second, we will show that if e is bad then thenumber of edges e ′ ∈ H e with i ˆ P ∗ ( e ′ ) / ∈ L µ ∗ ˆ P ∗ ( H ′ ) is at least µ / ∗ n k . Theclaim then follows from the fact that H ′ has at most ℓ k µ ∗ ( kn ) k such edgesin total.First we consider e ∈ R that is bad because it contains a bad cluster Y . Then there is Z ∈ ˆ P ∗ such that i ∗ ( Y ) Z = 0 but | Y ∩ Z | ≥ µ / ∗ n .Without loss of generality Z ⊆ V . Let Y , . . . , Y k be the remaining clustersof e , and let Z j be the parts of ˆ P ∗ such that Z j ⊆ V j and i ∗ ( Y j ) Z j = 1for each j ∈ [ k ]. Now we consider two induced subgraphs of H e : let F have parts ( Y j ∩ Z j ) j ∈ [ k ] and F have parts Y ∩ Z and ( Y j ∩ Z j ) ≤ j ≤ k . Let i and i be the index vectors with respect to ˆ P ∗ of edges in F and F respectively. Note that i and i are P ′ -partite k -vectors, so the edges of F and F are P ′ -partite. Also observe that i − i = u Z − u Z , and hence atleast one of i and i does not lie in L µ ∗ ˆ P ∗ ( H ′ ), since Z and Z are distinct and L µ ∗ ˆ P ∗ ( H ′ ) is transferral-free by our choice of ˆ P . Thus it suffices to show thateach of F and F contains at least µ / ∗ n k edges. To see this, note that by(G1) and the choice of Z , each of F and F contains at least c ∗ n verticesfrom k − µ / ∗ n vertices from the remaining OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 59 vertex class. Furthermore H e is ε -regular with density at least µ ′ / k -graph R . Thus each of F and F contains atleast ( µ ′ / − ε )( c ∗ ) k − µ / ∗ n k > µ / ∗ n k edges, as required.The other case is that e ∈ R is bad because it contains two clusters Y , Y such that i ∗ ( Y ) , i ∗ ( Y ) are neither identical nor orthogonal to each other.Then without loss of generality there exist Z , Z ′ , Z ∈ ˆ P ∗ with Z , Z ′ ⊆ V and Z ⊆ V , such that i ∗ ( Y ) Z = i ∗ ( Y ) Z ′ = i ∗ ( Y ) Z = i ∗ ( Y ) Z = 1.Let Y , . . . , Y k be the remaining clusters of e and select Z j ∈ ˆ P ∗ such that Z j ⊆ V j and i ∗ ( Y j ) Z j = 1 for each 3 ≤ j ≤ k . Now we consider twoinduced subgraphs of H e : let F have parts ( Y j ∩ Z j ) j ∈ [ k ] and F have parts Y ∩ Z ′ , Y ∩ Z and ( Y j ∩ Z j ) ≤ j ≤ k . Similarly to the previous case, each of F and F contains at least µ / ∗ n k edges, each of which is ˆ P -partite, and forone of them the index vector is not in L µ ∗ ˆ P ∗ ( H ′ ). This completes the proofof the claim.In the next claim we use the index vectors from Claim 9.6 that are well-represented to define a partition of V . More precisely, we let R i = { Y ∈ V ( R ) | i ∗ ( Y ) = i } and T = { i ∈ Z ˆ P ∗ | | R i | ≥ µ / ∗ n R } . Then we define P ∗ = { X ∗ i } i ∈ T , where X ∗ i = S Z ∈ ˆ P ∗ ,i Z =1 Z for each i ∈ T . Claim 9.9. P ∗ is a partition of V which strictly refines P into parts of sizeat least c | V | . To see this, we start by showing that any distinct vectors i , i of T areorthogonal. For suppose otherwise, and note that the number of ( k − R i and R i is at least k ! − ( n R ) k − | R i || R i | ≥ k ! − µ / ∗ ( n R ) k − . By Claim 9.5 all but at most γ − εn k − R of these ( k − A satisfy | R ( A ) | ≥ n R /k . But then we obtain at least ( k ! − µ / ∗ − γ − ε ) n k − R ( n R /k ) > √ µ ∗ n kR bad edges, which contradicts Claim 9.8.Thus for every Z ∈ ˆ P ∗ there is at most one i ∈ T such that i Z = 1, sothe parts of P ∗ are pairwise disjoint. Furthermore, for each Z ∈ ˆ P ∗ theremust be some i ∈ T such that i Z = 1. Indeed, if i Z = 0 for every i ∈ T then the number of Y ∈ V ( R ) with i ∗ ( Y ) Z = 1 is at most ℓ k µ / ∗ n R , whichcontradicts (G2). Thus P ∗ is a partition of V . Clearly each part of P ∗ hassize at least c | V | , since this is true of ˆ P ∗ .Finally, to see that P ∗ refines P , recall that Q was chosen to be ε -closeto a refinement of P . So there are at most ε | V | /c ∗ n < µ / ∗ n R clusters Y of Q which intersect more than one part of P in at least c ∗ n vertices.Now, consider any i ∈ T . By definition of T we have | R i | ≥ µ / ∗ n R , sowe may choose Y ∈ R i for which there is a unique part X ∈ P such that | X ∩ Y | ≥ c ∗ n . We claim that Z ⊆ X for any Z ∈ ˆ P ∗ with Z ⊆ X ∗ i . Indeed,since ˆ P ∗ is a refinement of P we have Z ⊆ X ′ for some X ′ ∈ P . But i Z = 1by definition of X ∗ i , so | Y ∩ Z | ≥ c ∗ n by (G1). By choice of Y this impliesthat X = X ′ , as claimed. This completes the proof of Claim 9.9.Our final claim will complete the proof of the lemma. Indeed, it impliesthat i ∈ L µ ∗ ˆ P ∗ ( H ′ ) for any index vector i with respect to ˆ P ∗ such that i ′ = ( i | P ∗ ) ∈ L µ ′ P ∗ ( H ) and ( i | P ′ ) is a multiple of . We can apply this with i ′ ∈ L µ ′ P ∗ ( H ) equal to a transferral u X ∗ − u X ∗ , which must exist since P is ( c, c, µ, µ ′ )-robustly maximal with respect to H and P ∗ strictly refines P into parts of size at least c | V | . Letting Z , Z be the intersections of X ∗ and X ∗ respectively with V we deduce that u Z − u Z ∈ L µ ∗ ˆ P ∗ ( H ), contradictingour assumption that L µ ∗ ˆ P ∗ ( H ) was transferral-free. Thus it remains to provethe following claim. Claim 9.10.
For any P ′ -partite k -vector i with respect to ˆ P ∗ such that ( i | P ∗ ) ∈ I µ ′ P ∗ ( H ) we have i ∈ I µ ∗ ˆ P ∗ ( H ′ ) . To see this, let J i be the set of good edges e ∈ R such that e ⊆ S i ′ ∈ T R i ′ for which H e contains some edge e ′ with no bad vertex and i P ∗ ( e ′ ) = ( i | P ∗ ).We claim that | J i | ≥ µ ′ n kR /
2. To see this, note that since ( i | P ∗ ) ∈ I µ ′ P ∗ ( H ),there are at least µ ′ ( kn ) k edges e ′ ∈ H such that i P ∗ ( e ′ ) = ( i | P ∗ ). Ofthese, at most ε ( kn ) k + µ ′ ( kn ) k / S e ∈ R H e , and at most k µ / ∗ ( kn ) k contain a bad vertex. Thus there are at least 2 µ ′ n kR / R that contain at least one of the remaining edges e ′ . Of these edges of R , at most √ µ ∗ n kR are bad, and at most k k µ / ∗ n kR intersect S i / ∈ T R i . Weconclude that | J i | ≥ µ ′ n kR /
2, as claimed.Next we claim that for any e ∈ J i there are at least ( µ ′ ) n k edges e ∗ ∈ H e with i ˆ P ∗ ( e ∗ ) = i . To see this, fix some e ′ ∈ H e with no bad vertex, andconsider any v ∈ e ′ . Since v is not bad we have i ∗ ( Y v ) Z v = 1 for the Y v ∈ e and Z v ∈ ˆ P ∗ with v ∈ Y ∩ Z , and since each cluster Y ∈ e lies in R i ′ for some i ′ ∈ T , we have i ∗ ( Y v ) ∈ T . Recall that the vectors in T are orthogonal, sofor each Z ∈ ˆ P ∗ there is a unique i Z ∈ T such that i ZZ = 1. So we musthave i ∗ ( Y v ) = i Z v , that is, Y v ∈ R i Zv . Since i P ∗ ( e ′ ) = ( i | P ∗ ), there must beexactly ( i | P ∗ ) X ∗ i ′ clusters of e in R i ′ for each i ′ ∈ T . Thus we can order theclusters of e as ( Y , . . . , Y k ) such that i ∗ ( Y j ) Z j = 1 for each j ∈ [ k ], where Z j ⊆ V j is such that i Z j = 1 for j ∈ [ k ]. Now the sets Y j ∩ Z j for j ∈ [ k ]each have size at least c ∗ n by (G1), and so by definition of R they induce asubgraph of H e with at least ( µ ′ / − ε )( c ∗ n ) k > ( µ ′ ) n k edges, as claimed.Summing over e ∈ J i , we obtain at least ( µ ′ ) n k · µ ′ n kR / ≥ µ ∗ ( kn ) k edges e ∗ ∈ H with i ˆ P ∗ ( e ∗ ) = i , and each such edge lies in H ′ since i is ˆ P -partite.Thus i ∈ I µ ∗ ˆ P ∗ ( H ′ ), which completes the proof of Claim 9.10, and so of thelemma. (cid:3) Concluding Remarks
The only case where we did not resolve the complexity status of PM ( k, δ )is when δ = 1 /k ; this has been solved while this paper was under review byHan [12]: he showed that there is a polynomial time algorithm, using sometheory developed in our paper and a lattice-based absorbing method.We will conclude our paper with some remarks on multipartite versionsof our results, tightness of the parameters, and other degree conditions.10.1. Multipartite analogues.
The following multipartite versions of ourmain results may be proved similarly to the non-partite versions.
OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 61
Theorem 10.1.
Fix k ≥ and γ > . Then there is an algorithm withrunning time O ( n k − k +1 ) , which given any k -partite k -graph with parts ofsize n such that every partite ( k − -set has degree at least (1 /k + γ ) n , findseither a perfect matching or a certificate that no perfect matching exists. Theorem 10.2.
Suppose that k ≥ and /n ≪ ε ≪ γ ≪ /k . Let P ′ partition a vertex set V into k parts each of size n . Suppose that H is a P ′ -partite k -graph H on V such that δ ( H ) ≥ γn k − , and at most εn k − P ′ -partite ( k − -sets A ⊆ V ( H ) have d H ( A ) < (1 /k + γ ) n . Then H has aperfect matching if and only if there is no k ( k − -certificate for H . Let
PPM ( k, δ ) denote the problem of deciding whether there is a per-fect matching in a given k -partite k -graph with parts of size n such thatevery partite ( k − δn . Theorem 10.1 implies that PPM ( k, δ ) can be decided in polynomial time when δ > /k . On the otherhand, a similar argument to that of Szyma´nska [29] shows that PPM ( k, δ )is NP-complete for δ < /k .10.2. Tightness of parameters.
We believe that a stronger version ofLemma 8.16 is true, in which 2 k ( k −
3) is replaced by k ( k − P , L ) where | G ( P , L ) | is prime (see Remark 8.10). Thiswould immediately imply the following improved version of Theorem 1.10. Conjecture 10.3.
Under Setup 1.7, H has a perfect matching if and onlyif there is no k ( k − -certificate for H . A proof of this conjecture would allow us to improve the running timein Theorem 1.1. We also conjecture that a similar strengthening of Theo-rem 10.2 holds. Conjecture 10.3, if true, would be best-possible. To see this,consider the following construction, which is similar to Construction 1.6.
Construction 10.4.
Let P = ( A , . . . , A k − ) be a partition of a set of n vertices with | A j | = n/ ( k − ± P j ∈ [ k − j | A j | = k − k − B be a subset of A of size k ( k − −
1. Let H be the k -graph withvertex set S j ∈ [ k − A j whose edges are(1) any k -set e with P j ∈ [ k − j | e ∩ A j | = 0 modulo k −
1, and(2) any k -set of vertices in B .Consider the full pair ( P , L ) for H , where L is the lattice of index vectors i such that P j ∈ [ k − i j j = 0 modulo k −
1, and note that ( P , L ) is a k ( k − H . Since any matching M contains at most k − B , we have P j ∈ [ k − j | V ( M ) ∩ A j | 6 = k − M in H and so H cannot contain a perfect matching. On the other hand, ( P , L )is not a ( k ( k − − H since removing k ( k − − B still leaves k vertices which form a single edge e with i P ( e ) / ∈ L . Itis not hard to show that indeed no ( k ( k − − H exists.We also remark that the following construction shows that the constant1 /k in Setup 1.7 is best-possible. A C -certificate for a k -partite k -graph is defined in an analogous way as for a general k -graph. Construction 10.5. (Space Barrier) Let V be a set of size n and fix S ⊆ V with | S | < n/k . Let H be the k -graph whose edges are all k -sets thatintersect S .Note that any matching in Construction 10.5 has at most | S | edges, so isnot perfect.10.3. Other degree conditions.
It is natural to ask whether similar re-sults could be obtained for the decision problem for perfect matching in k -graphs under the weaker complex degree sequence assumption used in [17].However, our inductive argument in the key lemma depends crucially onthe inheritance of the codegree condition by subgraphs, and this inheritanceneed not hold for a complex degree sequence condition. Thus an alternativeproof strategy would be needed for such a result.It is also natural to consider the decision problem of determining theexistence of a perfect matching in k -graphs satisfying a minimum ℓ -degreecondition for any ℓ ∈ [ k − ℓ -degreethreshold for the existence of a perfect matching is open in general. One canread [10] as suggesting that either a space barrier or a divisibility barrier isalways extremal for such a problem, and this was formalised as Conjecture3.6 in [27]. Let PM ( k, ℓ, δ ) denote the problem of deciding whether there isa perfect matching in a given k -graph on n vertices with minimum ℓ -degreeat least δ (cid:0) nk − ℓ (cid:1) . Szyma´nska [30] showed that PM ( k, ℓ, δ ) is NP-completewhen δ is less than the space barrier threshold, i.e. δ < − (1 − /k ) k − ℓ . Itis then natural to make the following conjecture. Conjecture 10.6. PM ( k, ℓ, δ ) is in P for δ > − (1 − /k ) k − ℓ . Theorem 1.1 establishes the case ℓ = k − − /k ) k − ℓ ≤ / k = 3 , ℓ = 1 by aresult of H`an, Person and Schacht [10], in the case k = 4 , ℓ = 1 by a resultof Lo and Markstr¨om [24], and in the cases k = 5 , ℓ = 1 and k = 6 , ℓ = 2by results of Alon, Frankl, Huang, R¨odl, Ruci´nski and Sudakov [2]. To ourknowledge all other cases remain open. Acknowledgements
We thank the anonymous referees for many helpful comments.
References [1] R. Aharoni, A. Georgakopoulos and P. Spr¨ussel, Perfect matchings in r -partite r -graphs, European Journal of Combinatorics (2009), 39–42.[2] N. Alon, P. Frankl, H. Huang, V. R¨odl, A. Ruci´nski and B. Sudakov, Large matchingsin uniform hypergraphs and the conjectures of Erd˝os and Samuels, J. Combin. The-ory A (2012), 1200–1215.[3] A. Asadpour, U. Feige and A. Saberi, Santa Claus meets hypergraph matchings,
Proc. APPROX-RANDOM (2008), 10–20.
OLYNOMIAL-TIME PERFECT MATCHINGS IN DENSE HYPERGRAPHS 63 [4] Zs. Baranyai, On the factorization of the complete uniform hypergraph, in:
Infiniteand finite sets , Colloq. Math. Soc. J´anos Bolyai, Vol. 10, North-Holland, Amsterdam,(1975), 91–108.[5] F. R. K. Chung, Regularity lemmas for hypergraphs and quasi-randomness,
RandomStructures & Algorithms (1991), 241–252.[6] A. Czygrinow, V. Kamat, Tight co-degree condition for perfect matchings in 4-graphs, Electron. J. Combin. (2012), P20.[7] D. E. Daykin and R. H¨aggkvist, Degrees giving independent edges in a hypergraph, Bull. Austral. Math. Soc. (1981), 103–109.[8] G. A. Dirac, Some theorems on abstract graphs, Proc. London Math. Soc. (1952),69–81.[9] J. Edmonds, Paths, trees, and flowers, Canad. J. Math. (1965), 449–467.[10] H. H`an, Y. Person, M. Schacht, On Perfect Matchings in Uniform Hypergraphs withLarge Minimum Vertex Degree, SIAM J. Disc. Math. (2009), 732–748.[11] J. Han, Near perfect matchings in k -uniform hypergraphs, to appear in Combin.Probab. Comput. [12] J. Han, Decision problem for perfect matchings in dense k -uniform hypergraphs,arXiv:1409.5931.[13] S. Janson, T. Luczak and A. Ruci´nski, Random graphs, Wiley-Interscience, 2000.[14] R. M. Karp, Reducibility among combinatorial problems, Complexity of ComputerComputations (1972), 85–103.[15] M. Karpi´nski, A. Ruci´nski and E. Szyma´nska, Computational complexity of the per-fect matching problem in hypergraphs with subcritical density,
International Journalof Foundations of Computer Science (2010), 905–924.[16] P. Keevash, F. Knox and R. Mycroft, Polynomial-time perfect matchings in densehypergraphs (extended abstract), Proc. 45th ACM STOC (2013), 311–320.[17] P. Keevash and R. Mycroft, A geometric theory for hypergraph matchings,
Mem.Amer. Math. Soc. (2014), number 1098.[18] I. Khan, Perfect matchings in 3-uniform hypergraphs with large vertex degree,
SIAM J. Disc. Math. (2013), 1021–1039.[19] I. Khan, Perfect matchings in 4-uniform hypergraphs, arXiv:1101.5675.[20] D. K¨uhn and D. Osthus, Matchings in hypergraphs of large minimum degree, J. GraphTheory (2006), 269–280.[21] D. K¨uhn and D. Osthus, The minimum degree threshold for perfect graph packings, Combinatorica (2009), 65–107.[22] D. K¨uhn, D. Osthus and A. Treglown, Matchings in 3-uniform hypergraphs, J. Com-bin. Theory B (2013), 291–305.[23] A. Lo and K. Markstr¨om, Perfect matchings in 3-partite 3-uniform hypergraphs,
J. Combin. Theory A (2014), 22–57.[24] A. Lo and K. Markstr¨om, F -factors in hypergraphs via absorption, Graphs Combin. (2014), doi:10.1007/s00373-014-1410-8.[25] K. Markstr¨om and A. Ruci´nski, Perfect matchings (and Hamilton cycles) in hyper-graphs with large degrees,
European J. Combin. (2011), 677–687.[26] O. Pikhurko, Perfect matchings and K -tilings in hypergraphs of large codegree, Graphs Combin. (2008), 391–404.[27] V. R¨odl and A. Ruci´nski, Dirac-type questions for hypergraphs — a survey (or moreproblems for Endre to solve), An Irregular Mind (Szemer´edi is 70) (2010), 1–30.[28] V. R¨odl, A. Ruci´nski and E. Szemer´edi, Perfect matchings in large uniform hyper-graphs with large minimum collective degree, J. Combin. Theory A (2009), 613–636.[29] E. Szyma´nska, The complexity of almost perfect matchings in uniform hypergraphswith high codegree, 20th International Workshop on Combinatorial Algorithms(IWOCA 2009),
Lecture Notes in Computer Science
Springer-Verlag (2009),438–449.[30] E. Szyma´nska, The complexity of almost perfect matchings and other packing prob-lems in uniform hypergraphs with high codegree,
European J. Combin. (2013),632–646. [31] A. Treglown and Y. Zhao, Exact minimum degree thresholds for perfect matchingsin uniform hypergraphs, J. Combin. Theory A (2012), 1500–1522.[32] A. Treglown and Y. Zhao, Exact minimum degree thresholds for perfect matchingsin uniform hypergraphs II,
J. Combin. Theory A (2013), 1463–1482.[33] W. T. Tutte, The factorisation of linear graphs,
J. London Math. Soc. (1947),107–111.[34] J. H. van Lint and R. M. Wilson, A course in combinatorics, Cambridge UniversityPress, 2001.[35] V. A. Vatutin and V. G. Mikhailov, Limit theorems for the number of empty cellsin an equiprobable scheme for group allocation of particles, Theory Probab. Appl.27