<<

HYPERGRAPHS WITH A UNIQUE PERFECT

AARON SPINDEL

Under the direction of Dr. John S. Caughman

A Math 501 Project Submitted in partial fulfillment of the requirements for the degree of Master of Science in Mathematics at Portland State University

Abstract. Following the article “On the maximum number of edges in a k-uniform hypergraph with a unique perfect matching” by Deepak Bal, Andrzej Dudek, and Zelealem B. Yilma, this paper states and proves a tight upper bound for the number of edges in a hypergraph that has a unique perfect matching. The two main focuses of this paper are constructing a hypergraph realizing the given bound and proving that the bound applies to all possible hypergraphs with a unique perfect matching.

Contents 1. Introduction 2 2. Background 3 3. Construction 5 4. Nonuniqueness of Hypergraphs Attaining the Edge Bound 10 5. Coverings and Multiple Matchings 16 6. Example of the Upper Bound 19 7. Proof of Upper Bound 22 8. Miscellaneous Related Results 24 9. Application 25 10. Further Study 26 References 28

Date: February 26, 2012. 1 1. Introduction A reader possessing basic knowledge of may read this section to understand the general goals of this paper. Terms will be formally defined in Section2. Imagine a on six vertices as depicted below.

This graph has many perfect matchings, some of which are depicted by red dashed lines below.

Simply put, having many edges gives a large amount of choices. These choices create enough free- dom where perfect matchings can be constructed in many ways. In this paper, we focus on graphs that have exactly one perfect matching. These graphs cannot have too many edges. Otherwise, the abundance of edges would create more than one perfect matching. In fact, we will show that a graph with unique perfect matching possessing 2m vertices can have at most m2 edges. This bound applies to all possible graphs. We will also study particular examples of graphs that ∗ attain this bound. The graph depicted below will be referred to as H3. v E u

∗ Every perfect matching in H3 must contain edge E since it is the unique edge incident with vertex v. Because E is included in any perfect matching, no other edge incident with vertex u can be included in a perfect matching. Erasing these edges from the picture yields: v E u

x F y

Vertex y is now a pendant vertex and acts similarly to vertex v in the previous discussion. Edge F which is the only edge incident with vertex y must therefore be included in any perfect matching. No other edge in a perfect matching can be incident with vertex x. Erasing such edges yields: v E u

x F y Page 2 of 28 ∗ The three remaining edges form a perfect matching in H3. In fact, the above analysis implies that ∗ ∗ this is the only perfect matching in H3. Additionally, H3 has 6 vertices and 9 edges attaining our bound. While the primary ideas can be understood by focusing on graphs, this paper proves results in a more general fashion. The main result (Corollary 2.2) applies to all k-uniform hypergraphs. The formula presented in this corollary may seem messy at first. Rather than regarding this formula as many algebraic symbols, it is best to think of it conceptually as a mixture of combinatorial tools. The inclusion-exclusion principle plays a notably important role in this theorem.

2. Background A hypergraph G is a finite set of vertices V along with a set of edges E ⊆ PV \ {∅} (where PV denotes the power set of V) such that no two edges in E are equal as sets. Note that multiple edges (pairs of edges containing identical vertices) are prohibited by this definition. Loop edges (edges that contain exactly one vertex) are in general allowed. When convention requires, V(G) will denote the vertex set V, and E(G) will denote the edge set E.A k-uniform hypergraph (or k-graph) is a hypergraph in which every edge E ∈ E has cardinality k. A pendant vertex is an element v ∈ V that is contained in exactly one edge E ∈ E. A set of Sk edges {E1,...,Ek} are incident with a vertex v if v ∈ i=1 Ei. We abuse notation and assert that edge E (without set braces) is incident with v if v ∈ E. Two vertices v and u are adjacent denoted u ∼ v if there exists an edge containing both v and u. An isomorphism between hypergraphs G and H is a bijection from V(G) to V(H) such that for any two vertices u, v ∈ V(G), u is adjacent to v in G if and only if f(u) is adjacent to f(v) in H. If there exists an isomorphism from G to H we say G is isomorphic to H denoted G =∼ H without specific reference to the isomorphism. While hypergraphs are defined abstractly as sets, we often represent them graphically. Figure 1 below depicts a hypergraph G. Black and red dots represent vertices while finite closed regions of the plane represent edges. Vertices u and v are both pendant vertices because they are only contained in edge E. Moreover, u ∼ v since edge E is incident with both u and v. This hypergraph is not k-uniform for any value of k since it contains edges of varying cardinality.

u v E

Figure 1 A subgraph of a hypergraph G is a hypergraph H with V(H) ⊆ V(G) and E(H) ⊆ E(G). Given V0 ⊆ V, an induced subgraph of a hypergraph G = (V, E) denoted G[V0] is the hypergraph with vertex set V0 and edge set {E ∈ E : E ⊆ V0}. The induced subgraph G[V0] contains every edge 0 in G that is not incident with a vertex outside of V . If E1,...,Ek are sets of vertices (such as Sk edges in a hypergraph), G[E1,...,Ek] is defined to mean G[ i=1 Ei]. If v1, . . . , vk are vertices, G − {v1, . . . , vk} denotes G[V(G) \{v1, . . . , vk}]. If E1,...,Ek are edges, G − {E1,...,Ek} is the hypergraph with vertex set V(G) and edge set E(G) \{E1,...,Ek}. For a vertex v and edge E, we abuse notation and use G − v and G − E to denote G − {v} and G − {E} respectively. If G is the hypergraph in Figure 1 above and V0 is the set of vertices depicted in black, G[V0] is drawn below in Figure 2. Page 3 of 28 Figure 2

A matching in a hypergraph G = (V, E) is a set of pairwise disjoint edges {M1,...,Mm}. Any edge Mi in a matching is referred to as a matching edge.A perfect matching is a matching Sm {M1,...,Mm} such that V = i=1 Mi. In other words, a perfect matching is a collection of edges Sm that partition the vertex set. In a k-uniform hypergraph, i=1 Mi has cardinality km. Hence |V| must be a multiple of k in a k-uniform hypergraph that has a perfect matching. In a 2-uniform hypergraph (which is commonly referred to as a graph), a nearly perfect matching is a matching Sm {M1,...,Mm} such that i=1 Mi = V\{v0} for some vertex v0 ∈ V. In other words, a nearly perfect matching is a set of pairwise disjoint edges that are incident with every vertex in the graph except v0. Note that a graph must have an odd number of vertices in order to have a nearly perfect matching. Figure 3a below depicts a portion of a hypergraph. The entire vertex set is shown. However, some edges have been omitted. The displayed edges are pairwise disjoint and therefore form a matching. The displayed edges are not incident with every vertex. Therefore, this is not a perfect matching. Figure 3b below depicts a portion of a 2-uniform hypergraph. In the case of a 2- uniform hypergraph, dots represent vertices while edges are depicted as line segments. Similar to the previous hypergraph, the entire vertex set is shown, but some edges have been omitted. The edges displayed are pairwise disjoint and therefore form a matching. Since these edges are incident with every vertex except for v0, this is a nearly perfect matching.

v0

Figure 3b

Figure 3a The following language is used in the special case of a 2-uniform hypergraph. A path P is a graph with distinct vertices {v1, . . . , vk} such that E(P) = {{vi, vi+1} : 1 ≤ i ≤ k−1}. For vertices u and v in a graph G, a u, v-path is a subgraph of G that is a path with pendant vertices u and v.A cycle C is S a graph with distinct vertices {v1, . . . , vk} such that E(C) = {{vi, vi+1} : 1 ≤ i ≤ k −1} {{v1, vk}}. A graph is connected if given any two distinct vertices u and v, there is a u, v-path. A component of G is a maximal connected subgraph of G.A cut-edge is an edge whose deletion increases the number of components of G. An endpoint of an edge E is a vertex contained in E. The graph in Figure 4 below has two components. Edge E is a cut edge. Page 4 of 28 E

Figure 4 In a k-uniform hypergraph G = (V, E), any edge E ∈ E is defined to be a k-set (set with cardinality k) of elements of V. While the notions may coincide in set-theoretical terms, this paper carefully uses edge and k-set to imply different meanings. An edge is an actual element of the edge set of a specific hypergraph. A k-set is merely any set with k elements. For example, if F ⊆ V is a k-set, F might be an element of the edge set E (in which case it represents an edge present in the hypergraph) or might not be an element of E (in which case it does not represent an edge present in the hypergraph). It is best to think of k-sets as potential edges. This is contrary to the notation used in [1]. Let G = (V, E) be a k-uniform hypergraph with km vertices for some m > 1. If G is empty (with E = ∅), then G lacks perfect matchings. Suppose G is complete (E = {E ∈ PV \ {∅} : |E| = k}) with vertex set {1, . . . , km}. One example of a perfect matching is the family of edges Mi = {k(i − 1) + 1, k(i − 1) + 2, . . . , ki} for 1 ≤ i ≤ m. Applying any permutation of vertices to the matching {M1,...,Mm} (permuting the sets elementwise) yields another set of disjoint edges (which are in the hypergraph because it is complete) that covers all vertices. Because m > 1, switching vertices in between two edges of the matching potentially creates a new matching. This gives many perfect matchings. Adding edges to a hypergraph G never removes any perfect matchings that initially existed in G. In fact, adding edges to G makes G closer to a complete hypergraph with many possible perfect matchings. This suggests that any hypergraph having exactly one perfect matching can only have a limited number of edges. Above this threshold, a hypergraph is forced to have multiple perfect matchings. The following makes this intuitive notion precise:

Theorem 2.1. Let Hm = (Vm, Em) be a k-uniform hypergraph with km vertices and unique perfect matching M = {M1,...,Mm}. Let B` be the set of edges that intersect exactly ` matching edges T for 1 ≤ ` ≤ k. That is, B` = {E ∈ Em : |QE| = `} where QE = {Mi ∈ M : Mi E 6= ∅}. Then m |B1| = m and |B`| ≤ bk,` l for 2 ≤ ` ≤ k where `−1 ` − 1 X `k(` − i) b = (−1)i . k,` ` i k i=0 Corollary 2.2. Using the same notation as Theorem 2.1, let m m m f(k, m) = m + b + b + ··· + b k,2 2 k,3 3 k,k k for k ≥ 2 and m ≥ 1. Then |Em| ≤ f(k, m). (Remember that |Em| is the size of the edge set of the k-uniform hypergraph Hm that has a unique perfect matching as defined in Theorem 2.1.) Moreover, this bound is tight.

3. Construction ∗ This section presents an infinite family of k-uniform hypergraphs Hm with a unique perfect matching that attain the bound presented in Corollary 2.2. Demonstrating a perfect matching is Page 5 of 28 ∗ sufficient to show that Hm has at least one perfect matching. However, showing that no other perfect matchings exist poses a greater challenge. The key observation is that pendant vertices limit possible matchings. Suppose we are looking for possible perfect matchings in a hypergraph G = (V, E) that has pendant vertex v. Any perfect matching must contain an edge incident with every vertex of the hypergraph. Since there is only one edge Ev incident with v, Ev must be in every perfect matching. Because edges of a perfect matching are disjoint, no edge nontrivially intersecting Ev can be in the matching. This suggests an iterative approach to the problem of finding a perfect matching. Let G0 T be the hypergraph with vertex set V \ Ev and edge set {E ∈ E : E Ev = ∅}. The above reasoning implies that any perfect matching in G corresponds to a perfect matching in G0 along with edge Ev. Thus, we have reduced the problem to finding perfect matchings in a hypergraph with fewer vertices. If G0 also has a pendant vertex, we can repeat exactly the same argument to reduce the problem further. ∗ With this is mind, we define the hypergraphs Hm recursively in such a way that they predictably ∗ have pendant vertices. First, let H1 be the k-graph with vertices {1, . . . , k} and exactly one edge ∗ ∗ M1 = {1, . . . , k}. Every vertex in H1 is a pendant vertex. Next, suppose that Hm−1 is a known ∗ hypergraph with vertex set {1, . . . , k(m − 1)} and edge set Em−1. To create Hm we must add k vertices expanding the vertex set to {1, . . . , km}. We keep all of the edges in Em−1. In order to attain the bound in Corollary 2.2, we need to add as many edges as we can without destroying the uniqueness of the perfect matching. Adding an edge that only contains vertices in the set ∗ ∗ {1, . . . , k(m − 1)} would be like adding an edge to Hm−1. Since Hm−1 attains the bound in Corollary 2.2, adding an edge would create a hypergraph that exceeds the bound. Corollary 2.2 (which we have yet to prove) would then imply that the hypergraph would have at least two perfect matchings. Since this is undesirable, we must avoid adding this type of edge. So, every new edge ought to contain at least one of the new vertices. Moreover, because pendant vertices control possible perfect matchings, we should specify one of the new vertices (say km) to be a pendant. The two main constraints are: all new edges must contain at least one new vertex and exactly one edge should be incident with vertex km. Other than these constraints, we add every edge possible ∗ to maximize the number of edges in the hypergraph. We are now ready to precisely define Hm. ∗ Start with Hm−1 and add k − 1 new vertices. Include every possible edge that is incident with at least one of these new vertices. Finally, add another new vertex to act as the pendant vertex. We must add exactly one edge containing this new vertex. This edge must become part of the perfect ∗ ∗ matching in Hm. The idea is to use the unique perfect matching in Hm−1 along with this new edge ∗ to form a unique perfect matching in Hm. Because edges in a perfect matching are disjoint, the ∗ new edge should not intersect Hm−1. The only remaining possibility is to add the edge containing the k new vertices that were just added to the hypergraph. ∗ Formally for m ≥ 2 let Hm = (Vm, Em) be a k-graph with vertices

Vm = {1, . . . , km}

In order to specify the edge set, it is convenient to define a family of k-sets. Let

Mi = {k(i − 1) + 1, . . . , ki} for 1 ≤ i ≤ m.

∗ Note that Mm represents the set of k new vertices that have been added to Hm−1. Then, the edges ∗ of Hm = (Vm, Em) are specified by [ n \ o [ Em = Em−1 E ∈ PVm \ {∅} : |E| = k and E Mm 6= ∅ and km 6∈ E {Mm}

Example 3.1. The following depicts the first three graphs described by this construction in the 2-uniform case (k = 2): Page 6 of 28 ∗ ∗ ∗ H1 H2 H3 ∗ Example 3.2. The following depicts H1 as described by this construction in the 3-uniform case (k = 3). Note that edges are represented as triangles in these hypergraphs. 3

2

1 ∗ ∗ The following sequence of images shows how H2 is constructed starting with H1. Step 1 Step 2 Step 3 Step 4 3 4 3 4 3 4 3 4

2 6 2 6 2 6 2 6

1 5 1 5 1 5 1 5 Add vertices 4, 5, and 6 Add edge {2, 3, 4} Add edge {1, 3, 4} Add edge {1, 2, 4} Step 5 Step 6 Step 7 Step 8 3 4 3 4 3 4 3 4

2 6 2 6 2 6 2 6

1 5 1 5 1 5 1 5 Add edge {1, 2, 5} Add edge {1, 3, 5} Add edge {2, 3, 5} Add edge {3, 4, 5} Step 9 Step 10 Step 11 3 4 3 4 3 4

2 6 2 6 2 6

1 5 1 5 1 5 Add edge {2, 4, 5} Add edge {1, 4, 5} Add edge {4, 5, 6}

∗ Claim 3.3. The k-graph Hm has a unique perfect matching {M1,...,Mm}. Proof. We proceed by induction on m. ∗ Base case: H1 has only one edge M1. This means, it has only one possible perfect matching. ∗ ∗ Moreover, this edge covers all vertices in H1. Therefore, M1 is the unique perfect matching in H1. ∗ Inductive step: By construction, Mm is added to the edge set of Hm. (This is needed to guarantee ∗ Mm is an edge in the hypergraph since it was defined as a k-set.) Any perfect matching in Hm must contain Mm which is the unique edge incident with the pendant vertex km. No other edge in the matching can intersect Mm = {k(m − 1) + 1, . . . , km}. Every other matching edge must only contains vertices in the set {1, . . . , k(m − 1)}. All of these edges are therefore present in the ∗ hypergraph Hm−1 and form a perfect matching for this hypergraph. By the induction hypothesis, ∗ Hm−1 has unique perfect matching {M1,...,Mm−1}. Combining this with Mm creates a perfect ∗ matching in Hm. Since we never had any choice of which edges to include in the perfect matching, it is unique.  Page 7 of 28 ∗ Claim 3.4. The k-graph Hm = (Vm, Em) attains the bound in Corollary 2.2. That is, |Em| = f(k, m).

Proof. Let M = {M1,...,Mm} be the unique perfect matching as above, and let B` be the set of edges in the hypergraph that intersect exactly ` matching edges for 1 ≤ ` ≤ k. That is, T B` = {E ∈ Em : |QE| = `} where QE = {Mi ∈ M : Mi E 6= ∅}. Since the edges of a perfect matching partition the vertex set of the hypergraph, every edge in the hypergraph nontrivially intersects at least one matching edge. Additionally, edges which contain k vertices can intersect at most k matching edges. So, every edge in the hypergraph is contained in some B` for 1 ≤ ` ≤ k. Since the B` are also disjoint, they partition the edge set of the hypergraph. We count the edges in each B` in order to count the total number of edges in the hypergraph. An edge E is in B1 if it intersects exactly one matching edge Mi. If E contained a vertex not present in Mi, E would intersect Mi and another distinct matching edge. Since this is disallowed, E ⊆ Mi. Also, |E| = |Mi| = k. Hence, E = Mi and B1 = {M1,...,Mm}. (Note that each Mi truly is an edge in the hypergraph by Claim 3.3.) Hence |B1| = m.

We wish to determine |B`| for 2 ≤ ` ≤ k. To do this, let L = {Mi1 ,...,Mi` } be a set of ` distinct S` edges from the matching with 1 ≤ i1 < i2 < ··· < i` ≤ m. Let VL = j=1 Mij be the set of vertices contained in some matching edge in L. Because edges in a matching are disjoint, |VL| = k`. Let G be the set of k-sets that only contain elements in VL and nontrivially intersect every edge in L. In T symbols, G = {F : |F | = k and F ⊆ VL and ∀Mi ∈ L,F Mi 6= ∅}. Caution: elements of G need not be edges in the hypergraph. We use the inclusion-exclusion principle to compute |G|.A k-element subset of VL can be formed k` by choosing k elements from k` possibilities. Naively, there are k ways to create such a k-set. However, some of these possibilities do not intersect every edge in L. We must exclude the k-sets that miss at least one edge. A k-set that doesn’t intersect Mij for some j draws k elements from ` `k(`−1) VL \ Mij which has cardinality k(` − 1). There are ` = 1 choices for j, giving 1 k k-sets that miss at least one edge. The inclusion-exclusion principle asserts that “all possible k-sets” minus “k-sets that miss at least one edge” double counts some k-sets, subtracting “k-sets that miss at least two edges” twice. We must compensate by adding the number of k-sets that miss at least two edges. Suppose a k-set is not incident with Miu and Miv for some u, v with u 6= v. Then the k-set draws k vertices S ` from VL \{Miu Miv } which has cardinality k(` − 2). There are 2 choices for u and v yielding `k(`−2) 2 k k-sets that miss at least two edges. Proceeding this way, we find

`−1 X `k(` − i) |G| = (−1)i i k i=0 k` `k(` − 1) `k(` − 2)  ` k = − + − · · · + (−1)`−1 k 1 k 2 k ` − 1 k | {z } | {z } | {z } | {z } Include all Exclude k-sets Include k-sets Include/Exclude possible that miss at that miss at k-sets that miss at k-sets least one edge least two edges least ` − 1 edges

Since no k-set in G misses all ` edges in M, the maximum possible index in the summation is ` − 1. The edges in H∗ that only contain vertices in V are exactly the same as the edges in H∗ that m L i` only contain vertices in V . When constructing the hypergraph H∗ , every edge that intersected L i` Mi` and did not contain ki` was added to the hypergraph. Every k-set in G intersects Mi` and is therefore an edge unless it contains vertex ki`. Conversely, consider a k-set E in G that does contain vertex ki`. Since E intersects ` edges in the matching for some ` ≥ 2, E 6= M . However, M is the only edge in H∗ that contains vertex i` i` i` Page 8 of 28 ki which was constructed to be a pendant in H∗ . So, E cannot be an edge in the hypergraph. In ` i` ∗ total, a k-set in G is an edge in Hm if and only if it does not contain ki`. Every vertex in VL appears symmetrically in the construction of k-sets in G. Therefore, every vertex belongs to the same number of k-sets of G. Suppose every vertex belongs to η k-sets. Using this, we count the number of ordered pairs (x, E) where x ∈ E ∈ G in two ways. Any element of VL may be chosen for x, giving k` choices. Once we pick x, there are η k-sets that contain it. Therefore, there are k`η ordered pairs. Alternately, we can choose a k-set first, giving |G| choices. Once a k-set is known, there are k vertices it contains. So, there are |G|k ordered pairs. Equating these yields η = |G|/`. The number of edges in G equals |G| minus the number of k-sets in G that contain vertex ki`. By definition, η k-sets contain ki` in G, giving a formula for the number of the edges in B` on vertex set VL: ` − 1 |{E ∈ E : E ∈ B and E ⊆ V }| = |G| − η = |G| − |G|/` = |G| = b M ` L ` k,` where bk,` was defined in Theorem 2.1. Every edge E in B` intersects exactly ` edges in the matching. First, choose which ` edges E m will intersect in ` possible ways. Once you have fixed these ` possible matching edges, the above m argument shows there are bk,` possible edges E. So, |B`| = bk,` ` for 2 ≤ ` ≤ k. Finally, k X |Em| = |B`| = f(k, m) `=1 where f(k, m) was defined in Corollary 2.2.  The formula given for f(k, m) in Corollary 2.2 uses a double summation. We now have a concrete ∗ interpretation of f(k, m) as the number of edges in Hm. Using this, we construct another formula for f(k, m) without the double summation. Corollary 3.5. For k ≥ 2 and m ≥ 1, m−1 X k(i + 1) − 1 ki f(k, m) = m + − k k i=1 ∗ Proof. The edges in Hm = (Vm, Em) are constructed by adding edges to Em−1, the edge set of ∗ ∗ Hm−1. This process can be described as follows: start with the vertices of Hm−1 and append k − 1 new vertices. To create Em, first include every single possible edge (of cardinality k) on this set of km − 1 vertices. (Essentially, we start by considering a complete hypergraph on km − 1 vertices.) km−1 This gives k edges. However, we have included too many edges in Em. We only want edges that contain at least one of the k − 1 new vertices. To remedy this, discard edges that only use ∗ ∗ k(m−1) vertices originally present in Hm−1. Since Hm−1 has k(m − 1) vertices, there are k edges that must be discarded. In symbols,

n \ o km − 1 k(m − 1) E ∈ PV \ {∅} : |E| = k and E M 6= 0 and km 6∈ E = − m m k k where Mm = {k(m − 1) + 1, . . . , km} as previously defined. Then, n o [ \ [ |Em| = Em−1 E ∈ PVm \ {∅} : |E| = k and E Mm 6= ∅ and km 6∈ E {Mm} km − 1 k(m − 1) = |E | + − + 1 m−1 k k Page 9 of 28 since the sets in the above union are disjoint. Remembering that |Em| = f(k, m), this equation becomes km − 1 k(m − 1) f(k, m) = f(k, m − 1) + − + 1 k k

This equation is only valid when m ≥ 2 since the index of Em−1 must be at least one. Summing both sides of this equation from i = 2 to m yields m m m m X X X ki − 1 k(i − 1) X f(k, i) = f(k, i − 1) + − + 1 k k i=2 i=2 i=2 i=2 m−1 m−1 X X k(i + 1) − 1 ki = f(k, i) + − + m − 1 k k i=1 i=1 Hence m−1 m−1 m−1 X X X k(i + 1) − 1 ki f(k, m) + f(k, i) = [f(k, i)] + f(k, 1) + − + m − 1 k k i=2 i=2 i=1 Using the fact that f(k, 1) = 1, this becomes m−1 X k(i + 1) − 1 ki f(k, m) = m + − k k i=1 

4. Nonuniqueness of Hypergraphs Attaining the Edge Bound While the construction in Section3 does provide a k-uniform hypergraph with unique perfect matching that attains the bound of Corollary 2.2 for every sensible number of vertices, it does not provide a comprehensive list of all k-uniform hypergraphs with a unique perfect matching that attain this bound. For example, consider the case k ≥ 3 and m = 2. As previously shown, ∗ H2 = (V2, E2) has a unique perfect matching {M1,M2} and attains the maximum number of a ∗ possible edges. Create another hypergraph H2 by modifying H2. Fix an edge E ∈ E2 \{M1,M2}. Note that E = {1, 2,..., 2k}\ E has cardinality k meaning that it could be allowed as an edge in ∗ a k-uniform hypergraph. If E ∈ E2, E and E would form a perfect matching in H2 distinct from ∗ {M1,M2}. This would violate the uniqueness of the perfect matching in H2. Therefore E 6∈ E2. ∗ Additionally, since 2k is a pendant in H2, 2k 6∈ E. Hence, 2k ∈ E. 0 S Define E = {E} (E2 \{E}). We have removed one edge that previously was in E2 and added 0 a one edge that previously was absent in E2. Thus, |E | = |E2|. Let H2 be the hypergraph with vertex 0 a ∗ a set V2 and edge set E . Since H2 and H2 have the same number of edges and vertices, H2 also attains the bound in Corollary 2.2. ∗ + + For vertices v ∈ {1, . . . , k} in H2, let v = v + 1 if v < k and v = 1 if v = k. (This + S + is similar to arithmetic mod k, but v never equals 0.) Then M1, {k + 1} (M1 \{v }), and S + ∗ {k + 2} (M1 \{v }) are three edges in H2 that contain vertex v. (Notice that k ≥ 3 implies that 2k = k + k > k + 2. Hence, k + 2 is not the pendant vertex and these k-sets truly are edges in ∗ H2.) For v ∈ {k + 1,..., 2k − 1}, {1, k + 1, k + 2,..., 2k − 1}, {2, k + 1, k + 2,..., 2k − 1}, and ∗ {3, k + 1, k + 2,..., 2k − 1} are three edges in H2 containing v. (Since k ≥ 3, k + 1 > 3 and each of these sets contains k distinct elements. These k-sets intersect edge M2 and do not contain vertex ∗ ∗ 2k. Thus, they are edges in H2.) Finally, vertex 2k is on edge M2 and no others in H2. ∗ a Any vertex in {1,..., 2k − 1} is contained in at least 3 edges in H2. When creating H2, we remove exactly one edge E. Hence any vertex in {1,..., 2k − 1} is contained in at least 2 edges in a a a H2. Vertex 2k is contained in edges E and M2 in H2. Since every vertex in H2 is contained in at Page 10 of 28 a a ∗ least two edges, H2 lacks pendant vertices. Therefore, H2 cannot be isomorphic to H2 which has pendant vertex 2k. a Any perfect matching in H2 would necessarily contain an edge incident with vertex 2k. The only a a edges in H2 incident with vertex 2k are E and M2. This means that any perfect matching in H2 a must use M2 or E as an edge. The edges M1 and M2 form a perfect matching in H2. The only 0 a edge that could possibly form a perfect matching with E is E. Since E 6∈ E , no edge in H2 pairs a with E to form a perfect matching. Thus, H2 has a unique perfect matching. ∗ The case k = 3 is depicted below. Figure 1 shows H2 as constructed in Example 3.2. Figure 2 ∗ shows the unique perfect matching {M1,M2} in H2. Figure 3 shows an edge E distinct from M1 a and M2 and its complement E. Swapping edge E for E creates a new hypergraph H2 depicted in a ∗ a Figure 4. The hypergraph H2 is not isomorphic to H2. However, H2 still contains a unique perfect matching and attains the edge bound in Corollary 2.2. 3 4 3 4 3 4 3 4 M1 M2 E 2 6 2 6 2 6 2 6 E 1 5 1 5 1 5 1 5 Figure 1 Figure 2 Figure 3 Figure 4

a Theorem 4.1. For k ≥ 3 and m ≥ 2, there exists a k-uniform hypergraph Hm with a unique perfect a a a matching M = {M1 ,...,Mm} that attains the edge bound of Corollary 2.2 and is not isomorphic ∗ to the hypergraph Hm which was constructed in Section3.

a a a Proof. Define the family of hypergraphs Hm recursively. H2 was defined above. Once Hm−1 a ∗ ∗ is known with m ≥ 3, create Hm by following the same steps used to create Hm from Hm−1. Formally, a V(Hm) = {1, . . . , km} and

a a [ n \ o [ E(Hm) = E(Hm−1) E ∈ PVm \ {∅} : |E| = k and E Mm 6= ∅ and km 6∈ E {Mm} where

Mm = {k(m − 1) + 1, . . . , km} a An induction argument shows that Hm has a unique perfect matching. The base case was checked a above when we verified that H2 has a unique perfect matching. The inductive step is identical to the inductive step in Claim 3.3. a Next we verify that Hm has the correct number of vertices and edges to attain the edge bound in a ∗ Corollary 2.2. Again, we proceed by induction. As a base case, we have verified |V(H2)| = |V(H2)| a ∗ a a ∗ and |E(H2)| = |E(H2)| when discussing H2 above. Next suppose |V(Hm−1)| = |V(Hm−1)| and a ∗ a a |E(Hm−1)| = |E(Hm−1)| and consider Hm. Because the recursive process used to construct Hm a ∗ ∗ from Hm−1 is identical to the process used to construct Hm from Hm−1, a a ∗ ∗ V(Hm) \ V(Hm−1) = V(Hm) \ V(Hm−1) = Mm and

a a ∗ ∗ E(Hm) \E(Hm−1) = E(Hm) \E(Hm−1) n \ o [ = E ∈ PVm \ {∅} : |E| = k and E Mm 6= ∅ and km 6∈ E {Mm} Page 11 of 28 Applying the induction hypothesis gives: a a a a |V(Hm)| = |V(Hm−1)| + |V(Hm) \ V(Hm−1)| ∗ ∗ ∗ = |V(Hm−1)| + |V(Hm) \ V(Hm−1)| ∗ = |V(Hm)| and a a a a |E(Hm)| = |E(Hm−1)| + |E(Hm) \E(Hm−1)| ∗ ∗ ∗ = |E(Hm−1)| + |E(Hm) \E(Hm−1)| ∗ = |E(Hm)| a ∼ ∗ Finally, it remains to show that Hm =6 Hm for m ≥ 2. As usual with a recursive construction, a a ∼ ∗ we proceed by induction. When constructing H2 we noted that H2 =6 H2 establishing the base a ∼ ∗ a ∼ ∗ case. Now suppose that Hm−1 =6 Hm−1. Also, suppose for a contradiction that Hm = Hm. a ∗ Let f : V(Hm) → V(Hm) be an isomorphism. We are allowed to assume m ≥ 3 since the base a case already establishes the result when m = 2. When m ≥ 3, Hm has a pendant vertex km ∗ by construction. Because isomorphisms preserve pendant vertices and Hm only has one pendant vertex, we must have f(km) = km. The vertices in Mm \{km} = {k(m − 1) + 1, . . . , km − 1} are a adjacent to km in Hm. Hence, all of the vertices in {f(k(m − 1) + 1), . . . , f(km − 1)} must be ∗ ∗ adjacent to km in Hm. Since km is a pendant vertex in Hm, the vertices adjacent to it are exactly the vertices in Mm \{km}. In total, {f(k(m−1)+1), . . . , f(km−1)} ⊆ {k(m−1)+1, . . . , km−1} ⇒ {f(k(m − 1) + 1), . . . , f(km − 1)} = {k(m − 1) + 1, . . . , km − 1} since f is a bijection. Let g be the restriction of f to domain {1, . . . , k(m − 1)} and codomain {1, . . . , k(m − 1)} which is a well-defined bijection by the above argument. Since g is the restriction of an isomorphism, g a ∗ is an isomorphism between Hm−1 and Hm−1. This contradicts our inductive hypothesis.  Contrasting this, uniqueness does hold for the case k = 2 as demonstrated by the following results. First, we start with a lemma proved in [4]: Lemma 4.2. In a 2-uniform hypergraph G, an edge is a cut-edge if and only if it is not contained in any cycle. Proof. Let E = {x, y} be an edge in G. Focus on the component H of G that contains E. Deleting edge E does not effect any component other than H. Hence, we prove that H − E is connected if and only if E is contained in a cycle. If H − E is connected, it contains an x, y-path. Adding edge E to this path completes a cycle. Conversely, suppose that E is contained in a cycle C. Let u and v be vertices in H. Since H is connected, it contains a u, v-path P. If P avoids edge E, it is still a u, v-path in H − E. Otherwise, E is contained in path P. In this case, suppose without loss of generality that vertex x is in between u and y in P. Then create a u, v-walk in H − E as follows: first, start at u and follow path P until you reach vertex x. Next, follow cycle C from x to y while avoiding edge E. Finally, follow path P from y to v. Since H − E contains a u, v-walk, it also contains a u, v-path and is connected.

C

u x E y v

P

 The remaining results in this section are due to Lov´aszin [2]. Page 12 of 28 Definition 4.3. Let G be a connected 2-uniform hypergraph that lacks cut-edges. Two edges E1 and E2 in G are equivalent if E1 = E2 or if removing edges E1 and E2 from G disconnects the graph. Lemma 4.4. Edge equivalence is an equivalence relation. Proof. By definition, equivalence of edges is reflexive and symmetric. To see it is also transitive, suppose E1 is equivalent to E2 and E2 is equivalent to E3. If E1 = E2 or E2 = E3, we trivially have E1 is equivalent to E3. Otherwise, E1,E2, and E3 are distinct. Since G lacks cut-edges, both G − E1 and G − E2 are connected. However, G − {E1,E2} is disconnected. Hence G−{E1,E2} consists of two components C1 and C2. Both E1 and E2 connect C1 to C2 as depicted below.

C1 C2 E1

E2

Edge Ei has an endpoint in C1 and an endpoint in C2 for i = 1, 2. Removing edge E3 from G − {E1,E2} cannot join distinct components. Hence, endpoints of Ei are in different components of G − {E1,E2,E3} for i = 1, 2. Similarly, the endpoints of E3 also appear in different components of G − {E1,E2,E3}. If G − {E1,E2,E3} only had two components C1 and C2, E1,E2, and E3 would all connect C1 to C2. In this case, G − {E1,E2} would consist of C1 connected to C2 by E3. Then, G − {E1,E2} would still be connected contrary to the equivalence of E1 and E2. Hence, G − {E1,E2,E3} must have at least three components. Since G lacks cut-edges, every component of G − {E1,E2,E3} must be incident with at least two of E1,E2, and E3. (A component is incident with an edge if there is some vertex in that component incident with the edge.) The only way this can happen is if G has exactly three components as depicted below:

C1

E1 E2

C2 E3 C3

Therefore, removing edges E1 and E3 disconnects the graph. That is, E1 is equivalent to E3.  We partition the edges of a graph G into equivalence classes under the above equivalence relation. Denote the equivalence classes by K1,...,Kr,L1,...,Lp where |Ki| = 1 for 1 ≤ i ≤ r and |Lj| > 1 for 1 ≤ j ≤ p. Note that any two distinct edges E1 and E2 in some common Li are equivalent. Hence G − {E1,E2} is disconnected.

Lemma 4.5. Let G be a connected 2-uniform hypergraph that lacks cut-edges and let K1,...,Kr, L1,...,Lp be equivalence classes of edges as above. Create a new graph by removing all the edges of Li from G for some fixed i. Then, the components of G − Li have no cut-edges and are incident with exactly two edges in Li. Page 13 of 28 Proof. As noted in Lemma 4.4, any edge in Li lies in between two components of G − Li. Create a 0 0 new graph G which has one vertex for every component of G − Li. Two vertices in G are adjacent if there is an edge E ∈ Li connecting the corresponding components in G − Li. Since removing a 0 single edge from Li cannot disconnect G, G lacks cut-edges. However, any two edges from Li are equivalent. Hence, removing any two edges in G0 disconnects the graph. 0 0 Since G lacks cut-edges, Lemma 4.2 implies every edge in G is part of a cycle. Fix some edge E1 0 in G , and let C1 be a cycle containing E1. Suppose there exists an edge E2 outside of C1. Because 0 E2 is contained in some cycle, removing E2 does not disconnect G . Moreover, C1 remains in the 0 graph even after removing edge E2. So, E1 is on a cycle in G − E2. This means that removing 0 E1 from G − E2 leaves a connected graph. In total, G − {E1,E2} is connected graph, contrary 0 to our assumptions. Hence, every edge in the graph must be contained in cycle C1. Because G is 0 0 connected, G itself is a cycle. Hence, every component of G − Li (represented by a vertex in G ) is incident with exactly two edges in Li. It remains to show that a component of G − Li lacks cut-edges. Suppose for a contradiction that component G0 of G − Li has a cut-edge E. The previous part of this proof implies that G0 is incident with exactly two edges in Li. Call them E1 and E2. If E1 and E2 are incident with the same component of G0 − E, E would be a cut edge in G as depicted below:

E

E1 E2

This contradicts the assumption that G lacks cut edges. Alternately, E1 and E2 may be incident with separate components of G0 − E:

E2

E

E1

In this case, G − {E1,E} is disconnected, so E1 is equivalent to E. Hence, E should be in Li. However, E is in G − Li by assumption. In all cases we reach a contradiction and no such cut-edge E can exist.  Definition 4.6. An edge E in a 2-uniform hypergraph G is an allowed edge if it is contained in some maximum matching. Otherwise, E is a forbidden edge. Theorem 4.7. Let G be a 2-uniform hypergraph. If G has a unique perfect matching M, then there is an edge E ∈ M that is a cut-edge of G. Proof. Suppose for a contradiction that there exists a graph with a unique perfect matching which lacks allowed cut-edges. Let G be such a counterexample with the smallest possible number of edges. If G is not connected, there would be a component G0 of G with fewer edges than G. Then {E ∈ M : E ∈ E(G0)} forms a perfect matching in G0. Moreover, any perfect matching in G0 can be extended to a perfect matching in G by including matchings in the other components. Hence, G0 must also have a unique perfect matching. Since G0 has fewer edges than the minimal counterexample, G0 would necessarily have a cut-edge as part of its unique perfect matching which Page 14 of 28 is a subset of M. However, this would also be a cut-edge in G which is disallowed. Hence, G must be connected. Suppose G contained a forbidden cut-edge E. Then, a component G0 of G − E would have a unique perfect matching and fewer edges than G. Hence G0 would contain a cut-edge that was also a matching edge. This edge would still be both a cut-edge and a matching edge in G. Hence, G lacks forbidden cut-edges. Since G also lacks allowed cut-edges, G does not contain any cut-edge at all. Let Ki and Li be equivalence classes of edges of G as previously defined prior to Lemma 4.5. We claim the Ki’s do not contain any forbidden edges. To see this, suppose E ∈ Ki is a forbidden edge for some i. Since |Ki| = 1, edge E does not pair with any other edge to disconnect the graph. Removing edge E from G does not create any new cut-edges. Moreover, removing edge E from G does not affect the unique perfect matching in G since E is a forbidden edge. However, by minimality, G − E has an allowed cut-edge F . Hence F must be a cut-edge in the original graph G which lacks cut-edges. Therefore every forbidden edge has to be contained in some Li. Next I show that Li for a fixed i contains at least as many allowed edges as forbidden edges. Let G0,...,Gs be the components of G − Li. Fix some j with 0 ≤ j ≤ s and consider component 0 Gj. Lemma 4.5 implies that Gj must be incident with exactly two edges E and E in Li. Suppose both E and E0 are forbidden edges so that the perfect matching in G avoids using them. Then, {E ∈ M : E ∈ E(Gj)} forms a unique perfect matching in the component Gj. By the minimality of G, Gj must contain a cut-edge belonging to its unique perfect matching contradicting Lemma 4.5. Thus any component Gj is incident with at least one allowed edge in Li. Accordingly, any component Gj is incident with at most one forbidden edge in Li. Since any edge in Li is incident with exactly two components of G − Li, s X 2|{E ∈ Li : E is forbidden}| = |{Edges E ∈ Li incident with Gj : E is forbidden}| j=0 s X ≤ |{Edges E ∈ Li incident with Gj : E is allowed}| j=0

= 2|{E ∈ Li : E is allowed}|

We can extend this result to all of G. The Ki’s and Li’s partition E(G), and the Ki’s lack forbidden edges. So, p X number of forbidden edges in G = number of forbidden edges in Li i=1 p X ≤ number of allowed edges in Li i=1 ≤ number of allowed edges in G This means that G itself has at least as many allowed edges as forbidden edges. Because G has a unique perfect matching, there are |V (G)|/2 allowed edges. There are at most |V (G)|/2 forbidden edges in G. Hence G has at most |V (G)| edges. Additionally, G lacks cut- edges so that every edge is contained in some cycle by Lemma 4.2. Since G is connected, the only remaining possibility is that G itself is a cycle. Because G has a perfect matching, it must be an even cycle. However, even cycles have two perfect matchings, contradicting our assumptions. Hence no such counterexample exists.  Theorem 4.8. Let G be a 2-uniform hypergraph with 2m vertices and m2 edges. If G has a unique ∼ ∗ perfect matching, G = Hm. Page 15 of 28 Proof. I proceed by induction on m. Base case: When m = 1, G contains 2 vertices and 1 edge connecting the two vertices. This is ∗ exactly the same as H1. Inductive step: Suppose that the statement holds for all graphs with fewer than 2m vertices, and let G be a graph with 2m vertices and unique perfect matching M. By Theorem 4.7, there is some edge E = {x, y} ∈ M that is a cut-edge in G. Form a new graph G0 = G − {x, y} by removing vertices x and y from G. Note that M\{E} is a perfect matching in G0. Moreover, any perfect matching in G0 can be extended to a perfect matching in G by appending edge E. By the uniqueness of the perfect matching in G, this means G0 also has a unique perfect matching. Then, 0 ∼ ∗ by the induction hypothesis, G = Hm−1. Reform G from G0 by adding in vertices x and y and edges incident with these vertices. We must ∗ 2 2 add |E(G)| − |E(Hm−1)| = m − (m − 1) = 2m − 1 edges incident with x or y. One of these edges ∗ is E connecting x to y. The 2m − 2 other edges connect x and y to vertices in Hm−1. We cannot ∗ simultaneously create edges {x, v} and {y, u} for some u, v ∈ V(Hm−1). Otherwise, E would no ∗ longer be a cut-edge since Hm−1 is connected as depicted below:

∗ Hm−1

x y E

∗ Hence, at most one of x and y is connected by an edge to a vertex in Hm−1. After renaming, ∗ suppose x is not on a common edge with any vertex of Hm−1. Then, all of the remaining 2m − 2 ∗ edges must be incident with y. Because Hm−1 only contains 2m − 2 vertices, an edge must join y ∗ ∗ to every previous vertex that exists in Hm−1. Since this exactly mirrors the construction of Hm, ∼ ∗ G = Hm. 

5. Coverings and Multiple Matchings In this section we create some tools that will be useful when proving Theorem 2.1. We start by considering situations which lead to multiple perfect matchings. Example 5.1. Consider a 2-uniform hypergraph G with unique perfect matching that has at least two matching edges. The image below depicts a portion of G. The solid lines depict two matching edges. The dotted lines represent 2-sets that might be edges in G.

One perfect matching in G exists using the solid edges. If the dashed 2-sets were included in G as well, we could construct a second perfect matching. Start with the original perfect matching and discard the solid edges. Instead, trade them for the dashed edges in the picture. This is a perfect matching in G distinct from the original one, violating the uniqueness of the matching. Since we are not allowed to have both of the dashed edges in G, the total number of edges in G becomes constrained. Example 5.2. Example 5.1 directly generalizes. Let G be a 6-uniform hypergraph with a unique S5 perfect matching {M1,...,Mm} where m ≥ 5. Let V = i=1 Mi be the vertices that appear in the Page 16 of 28 first five matching edges. These vertices along with M1,...,M5 are depicted on the left below. The edges M1,...,M5 partition the vertices in V.

E1

E2

E3

E4

E5

M1 M2 M3 M4 M5 Edges form a covering Edges from of the perfect matching a perfect matching The same vertex set V is depicted in the right above along with 6-sets E1,...,E5. Suppose E1,...,E5 are edges in the hypergraph G. These edges are distinct from the original matching edges and partition V. Informally, {E1,...,E5} is said to be a covering of {M1,...,M5} because they both partition the same vertex set. Using the same strategy as before, start with the perfect matching {M1,...,Mm} in G. Discard edges M1,...,M5 and include edges E1,...,E5. Both {E1,...,E5,M6,...,Mm} and {M1,...,Mm} are perfect matchings violating uniqueness. Thus, we cannot have all of E1,...,E5 as edges in G. Essentially, coverings are disallowed as they lead to multiple perfect matchings. In order to employ this strategy in the proof of our main results, it is helpful to establish better language. Throughout the remainder of this section let Hm = (Vm, Em) be an arbitrary k-uniform hypergraph on km vertices with unique perfect matching M = {M1,...,Mm}. We must formalize the intuitive notion of covering.

Definition 5.3. Suppose L = {E1,...,E`} with 1 ≤ ` ≤ k is a collection of disjoint edges in Hm. A collection of k-sets C = {C1,...,C`} is a covering of L if T • Ci Ej 6= ∅ for all 1 ≤ i, j ≤ ` and S` S` • i=1 Ci = i=1 Ei.

Since |C1| = k and the Ei are disjoint, C1 can intersect at most k possible Ei. Since C1 must

S` S` intersect every Ei, ` = |{E1,...,E`}| ≤ k. Additionally, note that i=1 Ci = i=1 Ei = `k. If the k-sets in C intersected, their union would contain fewer that `k elements. Therefore, the elements of C must be pairwise disjoint. Definition 5.4. Define L as in Definition 5.3 and let F ⊆ ∪L be a k-set that intersects every edge ~ T of L. The ordered type of F is b = (b1, . . . , b`) where bi = |F Ei| for 1 ≤ i ≤ `. Definition 5.5. Define L as in Definition 5.3 and let F ⊆ ∪L be a k-set that intersects every edge of L. The unordered type (abbreviated type) of F is ~a = (a1, . . . , a`) where (a1, . . . , a`) is the unique rearrangement of the ordered type (b1, . . . , b`) of F such that the entries appear in nonincreasing order. Formally, let ai = bσ(i) where σ is a permutation of {1, . . . , `} such that bσ(i) ≥ bσ(i+1) for 1 ≤ i ≤ ` − 1.

Example 5.6. Consider an 8-uniform hypergraph and let L = {E1,E2,E3,E4} be the edges depicted below. Additionally consider the 8-sets F1 and F2 also depicted below. Page 17 of 28 F1

F2

E1 E2 E3 E4 L

The ordered type of F1 is (1, 3, 2, 2), and the (unordered) type of F1 is (3, 2, 2, 1). The ordered type of F2 is (1, 4, 1, 2), and the (unordered) type of F2 is (4, 2, 1, 1). Note that the ordered type depends upon how we labeled the edges of L. For example, switching the labels E1 and E2 would make F1 have ordered type (3, 1, 2, 2).

Define L as in Definition 5.3 and let F ⊆ ∪L be a k-set that intersects every edge of L. Suppose F is of type (a1, . . . , a`). Note that ai > 0 for 1 ≤ i ≤ ` since F intersects every edge in L. Additionally, T T T since F ⊆ ∪L and the elements of L = {E1,...,E`} are disjoint, F E1,F E2,...,F E` is a P` partition of F . Hence i=1 ai = |F | = k. Let Ak,` = {(a1, . . . , a`): a1 ≥ a2 ≥ · · · ≥ a` ≥ 1 and a1 + a2 + ··· + a` = k}. That is, let Ak,` be the set of vectors that could potentially be the type of a k-set. Let C~a be the set of all coverings of L that only contain k-sets of type ~a. In symbols, C~a = {C : C is a covering of L and every C ∈ C is of type ~a}.

Example 5.7. In Example 5.2, C = {E1,...,E5} forms a covering of L = {M1,...,M5}. Since every 6-set in C is of type (2, 1, 1, 1, 1), C ∈ C(2,1,1,1,1).

Claim 5.8. For every ~a ∈ Ak,`, C~a 6= ∅.

Proof. Given a vector ~a = (a1, . . . , a`), we construct a cover of L = {E1,...,E`} that is of type ~a. Create a table that contains all ` cyclic permutations of (a1, . . . , a`): Page 18 of 28 a1 a2 a3 ... a`−1 a`

a` a1 a2 ... a`−2 a`−1

a`−1 a` a1 ... a`−3 a`−2

......

a2 a3 a4 ... a` a1

th th Notice that every row and column sums to k. Let wi,j be the entry in the i row and j column of this table. Form C1 by picking w1,j elements from Ej for 1 ≤ j ≤ `. The cardinality of C1 is the sum of the entries in the first row of the table which is k. Then, form C2 by picking w2,j elements from Ej \ C1 for 1 ≤ j ≤ `. Proceeding in this fashion, form Ci by picking wi,j S S S elements from Ej \ (C1 C2 ··· Ci−1) for 1 ≤ j ≤ `. Because the columns sum to k, |Ej \ S S S (C1 C2 ··· Ci−1)| > 0 and there are always a sufficient number of elements remaining to form Ci for 1 ≤ i ≤ `. S` S` The Ci’s are chosen to be disjoint subsets of i=1 Ei of type ~a. Moreover, | i=1 Ci| = k` = S` S` | i=1 Ei|. Thus the Ci’s must contain every vertex in i=1 Ei. Hence C = {C1,...,C`} ∈ C~a. 

6. Example of the Upper Bound We illustrate the tools of Section5 by proving Corollary 2.2 in the special case of a 3-uniform hypergraph on 9 vertices. Throughout the paper, we often use the notion of k-set to represent every possible edge. When discussing a concrete example, we change our language slightly. Instead of discussing k-sets, we consider complete hypergraphs which contain every possible edge. We do not lose any generality since every hypergraph is a subgraph of a complete hypergraph. Let G be the complete 3-uniform hypergraph (E(G) = {E ∈ PV(G) \ {∅} : |E| = 3}) on 9 vertices and let M = {M1,M2,M3} be a perfect matching in G as depicted below.

M1 M2 M3

There are currently many perfect matchings in G. We wish to create a hypergraph G0 that has unique perfect matching M by removing edges from G. In particular, we wish to remove all coverings of sets of matching edges from M. To do this in an organized fashion, we study edges based upon their type. We first focus on removing coverings of M = {M1,M2,M3}. The possible types of edges (relative to M) are (1, 1, 1), (2, 1, 0), and (3, 0, 0) as depicted below. Page 19 of 28 M1 M2 M3 M1 M2 M3 M1 M2 M3

Type (1, 1, 1) Type (2, 1, 0) Type (3, 0, 0)

Edges in a covering of {M1,M2,M3} must nontrivially intersect every edge in {M1,M2,M3}. Hence, the only possible type of an edge in such a covering is (1, 1, 1). We count the number of coverings of {M1,M2,M3} that only use edges of type (1, 1, 1). Let {A, B, C} be a covering of {M1,M2,M3}. Suppose we have three edges that form a covering of {M1,M2,M3}. There are multiple ways to assign the labels A, B, and C to these edges. However, we only wish to count this covering once. We must be careful not to double count a particular covering. To avoid this, we fix the labels A, B, and C in such a way that they cannot be permuted. In the following figure, we label each vertex by the covering edge that contains it. After possibly renaming the covering edges, we assume that the vertices in M1 are labeled as depicted. This prevents swapping labels. For example, A is no longer interchangeable with B.

M1 M2 M3 A

B

C

Every edge in {A, B, C} is of type (1, 1, 1). This means that one vertex in edge M2 must be labeled A, one vertex in edge M2 must be labeled B, and one vertex in M2 must be labeled C. (We cannot duplicate or omit any label.) There are 3! = 6 ways to assign labels to edge M2. Similarly, there are 6 ways to assign labels to edge M3. Every labeling corresponds to a distinct covering, giving 6 · 6 = 36 coverings of {M1,M2,M3}. Let C be a fixed edge of type (1, 1, 1) as depicted below.

M1 M2 M3

C

We count the number of coverings {A, B, C} that contain edge C and only use edges of type (1, 1, 1). Again, we do this by assigning labels to vertices. After possibly renaming the edges in the covering (to avoid double counting), we assume the vertices in M1 are labeled as depicted below.

M1 M2 M3 A

B

C

There are 2 ways to assign labels to M2 and two ways to assign labels to M3 yielding 2 · 2 = 4 coverings that contain edge C. By symmetry, every edge of type (1, 1, 1) is contained in exactly 4 coverings. Removing 1 edge removes 4 coverings from the hypergraph. Removing 2 edges removes at most 8 coverings from the hypergraph. Note that removing 2 edges can possible remove fewer than 8 coverings if the coverings Page 20 of 28 removed by the first edge overlap with the coverings removed by the second edge. Removing 8 edges from the hypergraph removes at most 32 coverings. This is not enough to vanquish all 36 coverings. Hence, we must remove at least 9 edges of type (1, 1, 1) to remove all coverings from the hypergraph. We must also consider coverings of subsets of matching edges. For example, a covering of {M1,M2} is also forbidden as it can be used to create multiple perfect matchings. We follow the same procedure as before: we organize our search by type, count the total number of coverings, and count how many coverings contain a fixed edge. As depicted below, every edge in a covering of {M1,M2} is of type (2, 1). Note that type (3, 0) is disallowed since edges in a covering must intersect every edge in {M1,M2}.

M1 M2

Before we proceed counting coverings, it’s worth observing how useful the notions of covering and type are in this discussion. Previously when discussing covers of {M1,M2,M3}, we ruled out the type (2, 1, 0). Now we are rectifying this by considering the type (2, 1). Every type does get considered at the proper time. However, no type gets counted twice. Essentially, we have organized edges into disjoint sets based upon type. This helps explain the condition in Definition 5.3 requiring k-sets in a covering of L to nontrivially intersect every edge in L where L was described in the definition. We now count the number of coverings of {M1,M2} that only use edges of type (2, 1). Let E be T T an edge with |E M1| = 1 and |E M2| = 2. In order to specify such an edge E, we pick one vertex 3 3 from M in = 3 ways and two vertices from M in = 3 ways giving 9 possible edges. 1 1 2 2 T T Define a function f with domain {E ∈ E(G): |E M1| = 1 and |E M2| = 2} and codomain coverings of {M1,M2} in which every edge is of type (2, 1) by E 7→ {E, E}. Conversely, consider a covering of {M1,M2} in which every edge is of type (2, 1). Exactly one T T edge E in a given covering has the property |E M1| = 1 and |E M2| = 2. Hence, we can define a function g with domain coverings of {M1,M2} in which every edge is of type (2, 1) and codomain T T {E ∈ E(G): |E M1| = 1 and |E M2| = 2} by selecting the edge in the covering that has the proper intersection sizes. Since f and g are inverses of each other, we see that f is a bijection. T T Hence, the number of coverings equals the number of edges E with |E M1| = 1 and |E M2| = 2. As previously counted, this means there are 9 total coverings. Any edge E of type (2, 1) is contained in exactly one covering {E, E}. Hence, removing n edges of type (2, 1) removes at most n coverings from the hypergraph. In order to remove all 9 coverings, we must remove at least 9 edges. While this discussion focused on coverings of {M1,M2}, a similar 3 statement holds for any set of two edges from the matching M. There are ways to pick a set 2 3 of two edges from M. Hence we must remove · 9 = 27 edges of type (2, 1) from G. 2 9 The complete 3-uniform hypergraph on 9 vertices has = 84 edges. We must remove 9 edges 3 of type (1, 1, 1) and 27 edges of type (2, 1). There are at most 84 − 9 − 27 = 48 edges remaining in the hypergraph. This exactly agrees with the bound in Corollary 2.2 since 3 3 f(3, 3) = 3 + 9 + 18 = 48 2 3 where f(k, m) was defined in the corollary. Page 21 of 28 The above discussion also justifies the edge bound in the case of a 3-uniform hypergraph on 6 vertices with unique perfect matching {M1,M2}. As before, every covering of this perfect matching is of type (2, 1). There are 9 such coverings in a complete hypergraph. Because every edge of type (2, 1) is present in exactly 1 covering, removing n edges of type (2, 1) removes at most n coverings. Hence, we must remove at least 9 edges of type (2, 1) from the complete hypergraph in order 6 to remove all coverings. There are = 20 edges in the complete 3-uniform hypergraph on 6 3 vertices. After removing at least 9 edges, at most 11 edges remain. This agrees with the bound in Corollary 2.2 since 2 2 f(3, 2) = 2 + 9 + 18 = 11 2 3 2 where f(k, m) was defined in the corollary. Note that = 0. 3

7. Proof of Upper Bound The construction in Section3 establishes part of Corollary 2.2 by showing the bound is attainable by a hypergraph that has a unique perfect matching. In this section, we prove Theorem 2.1 and complete the proof of Corollary 2.2. Throughout the entirety of this section, let Hm = (Vm, Em) be an arbitrary k-uniform hypergraph on km vertices with unique perfect matching M = {M1,...,Mm}.

Proof of Theorem 2.1. As in the statement of the theorem, let B` be the set of edges that intersect exactly ` matching edges for 1 ≤ ` ≤ k. That is, B` = {E ∈ Em : |QE| = `} where QE = {Mi ∈ T M : Mi E 6= ∅}. As in the proof of Claim 3.4, B1 = {M1,...,Mm} and |B1| = m. m Suppose for the purpose of a contradiction that |B | > b for some 2 ≤ ` ≤ k where b ` k,` ` k,` m was defined in the statement of Theorem 2.1. There are m edges in the matching M giving ` ways to pick ` matching edges. Let L1,..., L m be all the possible sets of ` matching edges. For ( ` ) every E ∈ B`, E intersects exactly ` matching edges. In symbols, |QE| = `. So, QE = Li for some m 1 ≤ i ≤ . We partition the edges E ∈ B based upon which matching edges E intersects: ` `  \  [  \  [ [  \   B` = B` E (Hm[L1]) B` E (Hm[L2]) ··· B` E Hm[L m ] ( ` ) | {z } | {z } | {z } Edges E ∈ B` Edges E ∈ B` Edges E ∈ B` where where QE = L1 where QE = L2 QE = Lm ` m If |B T E (H [L ])| ≤ b for every 1 ≤ i ≤ , we would have ` m i k,` ` \ \ \   |B`| = B` E (Hm[L1]) + B` E (Hm[L2]) + ··· + B` E Hm[L m ] ( ` ) ≤ bk,` + bk,` + ··· + bk,` m = b ` k,` contrary to our assumptions. Thus (by the pigeonhole principle) there exists at least one i with m 1 ≤ i ≤ and `

\ B` E (Hm[Li]) ≥ bk,` + 1 (1) Page 22 of 28 Using similar counting techniques as Claim 3.4, let G be the collection of k-sets of vertices in Hm[Li] that intersect all matching edges in Li. That is \ G = {A : |A| = k, A ⊆ V(Hm[Li]), and ∀M ∈ Li,A M 6= ∅}

Let G~a be the set of k-sets in G of type ~a and note that {G~a : ~a ∈ Ak,`} partitions G. Using the formula in Claim 3.4 ` − 1 ` − 1 X b = |G| = |G | k,` ` ` ~a ~a∈Ak,` where bk,` was defined in Theorem 2.1. Substituting into Equation1 yields \ ` − 1 X B E (H [L ]) ≥ |G | + 1 (2) ` m i ` ~a ~a∈Ak,` T `−1 T T T Suppose |B` G~a| ≤ ` |G~a| for all a ∈ Ak,`. Note that B` E (Hm[Li]) G~a ⊆ B` G~a. Then

\ X \ \ B` E (Hm[Li]) = B` E (Hm[Li]) G~a a∈Ak,`

X \ ≤ B` G~a a∈Ak,` X ` − 1 ≤ |G | ` ~a a∈Ak,` ` − 1 = |G| ` contradicting Equation2. So (by the pigeonhole principle) there is at least one vector ~a ∈ Ak,` with \ ` − 1 |B G | ≥ |G | + 1 (3) ` ~a ` ~a As before, let C~a be the nonempty set of coverings of Li such that every A ∈ C ∈ C~a is of type ~a. Recall that |C| = ` for every C ∈ C~a. By symmetry, every k-set A ∈ G~a belongs to λ coverings C ∈ C~a where λ is some constant. We count the number of ordered pairs (A, C) where A ∈ C ∈ C~a in two ways. There are |G~a| ways to pick a k-set A. Once A is fixed, there are λ coverings that could pair with A. Thus, there are |G~a|λ ordered pairs. Alternately, there are |C~a| ways to pick a covering C ∈ C~a. Once a covering is known, there are ` ways to pick a k-set contained in the covering. This yields |C~a|` possible ordered pairs. Together, this implies every k-set in G~a belongs to exactly |C |` λ = ~a |G~a| coverings C ∈ C~a. S No covering C ∈ C~a can be contained in Em. Otherwise (M\Li) C would form a perfect matching in Hm contradicting the uniqueness of M. So there must be at least one k-set in every covering C ∈ C~a that is not an edge in Hm. One k-set is contained in λ coverings C ∈ C~a. Two k-sets are contained in at most 2λ coverings C ∈ C~a. (Each k-set is individually contained in λ coverings, but there may be a covering containing both of the k-sets that gets double counted.) In general, n k-sets are contained in at most nλ coverings. |C | |G | In order to have a k-set from every covering, we must have nλ ≥ |C |. Hence n ≥ ~a = ~a . ~a λ ` Page 23 of 28 |G | Since H lacks coverings, there must be at least ~a k-sets of type ~a that are not edges in the m ` hypergraph. Hence

\ |G~a| |B` G~a| ≤ |G~a| − |{z} ` | {z } All k-sets F with |{z} Edges E ∈ E(Hm) Remove at least F ⊆ ∪Li and with QE = Li one k-set from ∀M ∈ L ,F T M 6= ∅ and type ~a i each covering of L that have type ~a i ` − 1 = |G | ` ~a contradicting Equation3. 

Proof of Corollary 2.2. Define B` for 1 ≤ ` ≤ k as in Theorem 2.1. As noted in the proof of Claim 3.4, {B1,..., Bk} forms a partition of the edges of Hm. Then k X |Em| = |Bi| i=1 By Theorem 2.1 k X m |E | ≤ m + b m k,` ` i=2  8. Miscellaneous Related Results This section presents some related results that extend Corollary 2.2 to other situations. Theorem 8.1. Let G = (V, E) be a 2-uniform hypergraph with 2m + 1 vertices and a nearly perfect matching M = {M1,...,Mm}. If G lacks isolated vertices, then G has at least two nearly perfect matchings. Sm Proof. Suppose i=1 Mi = V \{v} for some v ∈ V. Then there is a matching edge incident with every vertex in the graph other than v (as depicted below with solid lines). Since v is not isolated, there is an edge E connecting v to some other vertex u (depicted by a dotted line below). Let F = {u, w} be the matching edge incident with u. w v F E u

Create a new nearly perfect matching by trading edge F for E. That is, M0 = {E} S(M\{F }) is a distinct nearly perfect matching which contains an edge incident with every vertex except w.  Corollary 8.2. Let G be a k-uniform hypergraph with km vertices and exactly two perfect matchings M1 and M2. Then |E(G)| ≤ f(k, m) + 1 where f(k, m) was defined in Corollary 2.2.

Proof. Since M1 and M2 both contain m edges and M1 6= M2, there exists some edge E ∈ 0 M2 \M1. Create a new hypergraph G be removing edge E from G. The matching M2 is no 0 0 longer present in G . Hence, G has a unique perfect matching M1. Then, by Corollary 2.2, 0 0 |E(G )| ≤ f(k, m). Since G has one more edge than G , |E(G)| ≤ f(k, m) + 1.  Theorem 8.3. Let G be a k-uniform hypergraph with 2k vertices that lacks a perfect matching. 2k − 1 Then |E(G)| ≤ . Furthermore, this bound is tight. k Page 24 of 28 Proof. Let G be a k-uniform hypergraph with 2k vertices that lacks a perfect matching. Fix a vertex v ∈ V(G) and enumerate the edges incident with v as {E1,E2,...,Em}. For each Ei with 1 ≤ i ≤ m, Ei cannot be an edge in the hypergraph. Otherwise, {Ei, Ei} would form a perfect matching in G. Let G0 be the hypergraph with vertex set V(G) and edge set S (E(G) \{E1,E2,...,Em}) {E1, E2,..., Em}. That is, trade edge Ei for edge Ei for 1 ≤ i ≤ m. Removing one edge Ei and adding another edge Ei to the edge set does not change the total num- ber of edges in a hypergraph. Hence, |E(G)| = |E(G0)|. Note that v is an isolated vertex in G0. Therefore, every edge in G0 only contains elements from V(G0) \{v} which has cardinality 2k − 1. 2k − 1 There are at most such edges. k We construct a hypergraph to demonstrate that the bound is attainable. Let H be the complete k-uniform hypergraph on 2k − 1 vertices. That is |V(H)| = 2k − 1 and E(H) = {E ∈ PV(H) \ {∅} : 2k − 1 |E| = k}. Appending an isolated vertex to H creates a hypergraph with 2k vertices and k edges. This hypergraph cannot have a perfect matching because it contains an isolated vertex. 

9. Application As discussed in [3], enumerating perfect matchings arises naturally when studying properties of molecules. To illustrate this, we consider the molecule benzene (C6H6). Carbon molecules tend to bond to four other molecules while hydrogen molecules only bond to one other molecule. If we think of the physical structure of this molecule as a graph, this means we must have 6 vertices of degree 4 and 6 vertices of degree 1. This alone is not sufficient to determine the structure of the molecule. Experimental data has suggested that the molecule is roughly a planar ring. It also seems that all of the carbons are in equivalent positions in the molecule. Similarly the hydrogens seem to be in equivalent positions as well. One potential model is to place the carbons in a cycle of length 6 and attach one hydrogen to each carbon as depicted below. H H

C C H C C H C C

H H This symmetric planar ring configuration is further supported by experimental evidence. Hy- drogen atoms in this molecule can be replaced by OH groups in order to form new molecules. As depicted below, there are three distinct ways to exchange two hydrogens for two OH groups. OH OH OH H H H

C C C C C C H C C H H C C OH OH C C OH C C C C C C

H H H H H H Type I Type II Type III In Type I, the two OH groups are bonded to adjancent carbons. In Type II, the two carbon atoms that are bonded with the OH groups are distance 2 apart. In Type III, the two carbon atoms bonded with the OH groups are distance 3 apart. These three configurations lead to three distinct isomers of this molecule, each of which exhibits slightly different properties. Unfortunately, this model as currently stated has an obvious flaw. The carbon molecules which bond 4 times must be represented by degree 4 vertices in the graph. As previously depicted, Page 25 of 28 the carbon vertices only have degree 3. We are missing some bonds. Specifically, there must be additional bonds between the carbon atoms. To rectify this, we introduce double bonds into the cycle of carbons. There are two ways to do this: H H H H

C C C C H C C H H C C H C C C C

H H H H Note that the double bonds between the carbon atoms correspond to a perfect matching in the 6-cycle. The different possibilities for the structure arise because the 6-cycle does not have a unique perfect matching. While these new bonds do rectify the degree constraints of the graph, they unfortunately remove some of the symmetry previously present in the graph. In particular, there are now four distinct ways to remove two hydrogen atoms and replace them with two OH groups: OH OH OH H OH H H H

C C C C C C C C H C C H OH C C H H C C OH OH C C OH C C C C C C C C

H H H H H H H H Type I Type II Type III Type IV

Let C1 and C2 be the two carbons adjacent with the OH group. In Type I, C1 and C2 are adjacent and double bonded. In Type II, C1 and C2 are adjacent and single bonded. In Type III, the distance between C1 and C2 is 2. In Type IV, the distance between C1 and C2 is 3. Because of the double bonding, there are now two types of adjacent carbon atoms. Unfortunately, fixing the degrees of the carbon vertices has created a nonphysical result. In nature, replacing two hydrogens by two OH groups only creates three types of molecules, not four. The above model must also be flawed. To rectify this, the carbons in the benzene molecule are believed to resonate between the two possible states. Suppose carbon atom C1 is adjacent to carbon atoms C2 and C3. Sometimes, C1 is double bonded with C2. Other times, C1 is double bonded with C3. This means that any pair of adjacent carbon atoms are sometimes double bonded and sometimes single bonded. This merges Types I and II above, reducing the number of possibilities to three. This once again agrees with physical observations. In graph theoretical terms, the bonds in the carbon cycle in benzene resonate in such a way that corresponds to oscillating between the two perfect matchings in the 6-cycle. This configuration seems to correspond to physical properties of the molecule. Benzene is incredibly stable. It seems that alternating between perfect matchings increases the stability of a molecule. In fact, the reso- nance conjecture states that the stability of molecules resembling benzene is directly proportional to the number of perfect matchings present in the molecular structure. Such molecules with a unique perfect matching tend to be less stable.

10. Further Study Many interesting related questions remain. One natural extension is to ask for a formula bound- ing the maximum number of edges allowed in a hypergraph with exactly k perfect matchings for some natural number k. This paper addresses the cases k = 1 in Corollary 2.2 and k = 2 in Corollary 8.2. Page 26 of 28 In the 2-uniform case, the idea of a k-factor provides an alternate way to generalize the problem. The degree of a vertex v in a 2-uniform hypergraph G is the number of vertices adjacent to v.A k-regular graph is a graph where every vertex has degree k.A k-factor of a graph G is a k-regular subgraph of G that has vertex set V(G). A 1-factor is a decomposition of a graph into paths of length 1. That is, a 1-factor is essentially the same as a perfect matching. A 2-factor decomposes a graph into disjoint cycles. We may also consider an upper bound on the number of edges present in a graph with a unique k-factor.

Page 27 of 28 References [1] Bal, Deepak, Andrzej Dudek, Zelealem B. Yilma, On the maximum number of edges in a hypergraph with a unique perfect matching, Discrete Mathematics 311 (2011) 2577-2580.5 [2] Lov´asz,L., On the structure of factorizable graphs. I, Acta Mathematica Academiae Scientiarum Hungaricae 23 (1972) 179-195. 12 [3] Merris, Russell, Graph Theory, Wiley-Interscience, New York, 2001. 25 [4] West, Douglas B., Introduction to Graph Theory (Second Edition), Prentice Hall, Upper Saddle River, NJ, 2001. 12

Page 28 of 28