1 Introduction
Prescribing the probability that each edge belongs to a random perfect matching does not prescribe the distribution of the whole matching. The largest possible entropy of such a distribution measures how many matching choices can coexist with those edge probabilities. We bound this entropy by explicit sums of one-coordinate functions, at every feasible mean. The result yields lower counts from uniform marginals and additive estimates for weighted partition functions.
Throughout, a graph is finite, undirected and loopless. Parallel edges are distinguished both as coordinates and as choices in a matching. A perfect matching covers each vertex by exactly one edge. Write \mathcal M(G) for the set of perfect matchings, N(G)=|\mathcal M(G)|, and
for their polytope. Thus a point x\in P(G) is exactly a feasible vector of edge probabilities. For a probability law p on the matching family, put \Ent(p)=-\sum_M p_M\log p_M, and define
All unqualified logarithms are natural, and 0\log0=0. The maximum in Equation (1) is attained by compactness of the feasible set of laws. No connectedness or bipartiteness is assumed.
Theorem 1.1 (Pointwise entropy bounds). Let G be a loopless multigraph on 2m\ge2 vertices with at least one perfect matching. For every x\in P(G),
In particular, H\ge F-2B throughout the polytope, including its boundary. When m=1, each matching is one of the distinguished edges between two vertices, and the bounds give the exact identity H=F. For the empty vertex set the unique empty matching gives F=B=H=0; the formula involving 1/m is not used.
The upper bound H\le F is a direct instance of Shearer’s entropy inequality [5]: each edge occurs in two vertex stars, and a matching chooses exactly one edge at each vertex. Our contribution to Equation (3) is its lower comparison. The coefficient there is obtained from a geometric rank estimate followed by a covariance calculation, with no assumption that the mean is interior to the full polytope.
Edmonds’ matching-polytope theorem [9] describes feasible matching means by degree equations, nonnegativity and odd-cut inequalities. The odd cuts distinguish general graphs from bipartite graphs and are also central to the entropy bound here. Bipartite graphs admit an order-independent coefficient-one comparison: Schrijver’s inequality [22] and the weighted Bethe inequality of Gurvits [13, expanded version, Theorem 2.2], together with entropy duality, imply H(x)\ge F(x)-B(x). Their permanent setting is essential to this comparison. In Section 5 we give a simple eight-vertex nonbipartite graph with a feasible mean for which H<F-B.
1.1 Entropy and structural consequences
Anari, Oveis Gharan and Vinzant [2, FOCS version, Conjecture 6] proposed a convex-optimization framework for approximate counting and asked whether the maximum binary-coordinate entropy of a perfect matching mean exceeds \log N(G) by only a linear function of the number of vertices. In our notation their objective is F+B. Theorem 1.1 gives the explicit positive answer
The pointwise statement also controls arbitrary finite edge weights, through the Gibbs variational formula. The proposed linear-error estimate is therefore an optimized consequence of the prescribed-mean inequality, rather than its definition. Corollary 4.2 proves the optimized bounds, and Section 6 derives the weighted form.
If G contains k\ge2 edge-disjoint perfect matchings, their uniform mixture has marginal 1/k on their union. Substituting that mean into Theorem 1.1 gives
The same estimate holds for a k-regular graph whose every odd cut has at least k edges, because its uniform vector belongs to P(G). These consequences and their endpoint cases are proved in Section 4.
For structural counts, the scale of the degree matters. Esperet, Kardoš, King, Kráľ and Norine [11] proved an exponential lower bound for every bridgeless cubic graph. Abdi, Cornuéjols, Dadush and Dalirrooyfard [1, Corollary 6.6] proved exponential lower bounds for all regular graphs of degree at least four satisfying the corresponding odd-cut condition, including matchings crossing every minimum odd cut exactly once. Ebrahimnejad, Nagda and Oveis Gharan [8] gave quantitative lower counts for regular nonbipartite graphs under an additional spectral-expansion hypothesis. The estimate (k/e^2)^m obtained here has a base growing with the degree k. At small fixed degree these earlier exponential results can be stronger: our displayed homogeneous base is greater than one only when k\ge8. On the bipartite subclass Schrijver’s bound has the stronger asymptotic base k/e per matched pair. Our structural statements concern the explicit odd-cut condition; merely requiring every edge to belong to a perfect matching is a different hypothesis. Esperet et al. formulate the growing-degree question on the broader matching-covered class [11, corrected full version, Conjecture 24]. Our regular odd-cut corollary also establishes the even-order connectivity formulation of Ebrahimnejad et al. [8, arXiv version, Conjecture 1.1].1
1.2 Face dimension and the entropy argument
For a graph on 2m\ge2 vertices and x\in P(G), let F_x be its minimal face, the smallest face of P(G) containing x, and let \supp x=\{e:x_e>0\}. The geometric input is the sharp estimate
Edmonds’ theorem identifies the left side with the rank of the tight odd-cut equations on the supported coordinates; singleton cuts supply the degree equations. Abdi et al. [1, Lemmas 6.4–6.5] bound this rank by 3m-1 using odd laminar families. Their cubic staircase examples already have minimum-odd-cut rank |E|-2, attaining 3m-2 [1, discussion after Corollary 6.6 and Figure 2].
The dimension of the whole perfect-matching polytope was characterized by Naddef [18] and by Edmonds, Pulleyblank and Lovász [10], whose brick decomposition uses cuts crossed once by every perfect matching. Here a cut need only be tight at the prescribed mean: it is crossed once by every matching in that minimal face, but possibly not by every matching of the graph. Section 2 proves the supported bound by contracting such a cut. A direction in the parent face can be assembled from directions in the two contracted faces when their crossing-edge coordinates agree. Each crossing-coordinate sum is zero, by the degree equation at the contracted vertex. Agreement therefore imposes at most |C|-1 independent conditions for a cut C, rather than |C|. This saved condition closes an induction with bound 3m-2. Appendix A also gives the laminar proof. It uses the standard face-restricted uncrossing argument [24, full version, Lemma 2.2 and Appendix A] and retains the dependence between complementary root children in the laminar tree.
The analytic step uses the classical exponential form of a maximum-entropy law under mean constraints [14, 23]. Its log-partition Hessian is the covariance matrix, as in standard exponential-family theory [26]. We restrict the law to the atoms of F_x. Its covariance then has image equal to the direction space of that face, even when it is singular in the ambient edge space.
Suppose that F-cB-H has a positive maximum. Removing coordinates fixed at zero or one leaves strictly fractional means and preserves this entropy deficit. Exponential tilts within the resulting minimal face supply smooth curves through the maximum. First-order stationarity cancels the acceleration term in their second derivatives. Summing the second-derivative inequalities over positive covariance eigenvalues bounds the face dimension above, contradicting the geometric lower bound whenever c>2-2/m for the original graph. Passing to the endpoint proves Theorem 1.1. Section 3 carries this out within the face, without inverting an ambient covariance kernel or differentiating across faces.
Section 5 explains both geometric sharpness and the obstruction to coefficient one. We use the triangle expansions underlying the Klee graphs of Cygan, Pilipczuk and Škrekovski [6] to construct a two-dimensional minimal face on every positive even order. At uniform edge marginals, a matching law is forced onto its three vertices even when the graph has further matchings. These examples attain the geometric bound and give the coefficient-one counterexample; they do not establish optimality of the coefficient two.
1.3 Deterministic counting with binary multiplicities
For the algorithmic problem, the input specifies a vertex set and nonnegative integer multiplicities k_{ij} in binary for unordered pairs of distinct vertices; omitted pairs have multiplicity zero. Its count is
where M runs over pairings of the vertex set. The input can also list parallel edges explicitly. The algorithm uses the binary multiplicities without expanding them into labelled copies.
Theorem 1.2 (Deterministic approximate counting). There is one uniform deterministic algorithm which, on a graph on n vertices with nonnegative binary integer pair multiplicities, returns an integer A\ge0 satisfying
Its running time and output length are polynomial in the input bit length. In particular, A=0 exactly when N(G)=0. The guarantee includes a compact input consisting of binary n and a list of positive pair records.
The factor 512^n permits a complete implementation with integer and rational arithmetic and a fixed polynomial number of steps. The degree of this polynomial is large; the theorem gives a complexity guarantee, not a practical running-time benchmark. Appendix C treats the different convention that a loop covers its one incident vertex. It returns a rational approximation within factor 2^{18n}, including when the original vertex count is odd.
Approximation history and computational models.
Exact counting is \#\mathrm P-complete even for bipartite perfect matchings, through the permanent of a zero–one matrix [25, Theorem 1]. For an r\times r nonnegative matrix, Linial, Samorodnitsky and Wigderson give an e^r-factor deterministic strongly polynomial arithmetic algorithm [17, author version, Theorem 1.1]. Jerrum, Sinclair and Vigoda give a fully polynomial randomized approximation scheme for the nonnegative permanent [15]. For nonnegative rational matrices, Kudria, Luo and Majid give certified rational endpoints in polynomial bit time with logarithmic width O(r(\log\log r)^2/\log r) [16, Theorem 1.1], while Dong and Jain give factor (1+\varepsilon)^r for every fixed 0<\varepsilon\le1 in a strongly polynomial arithmetic model [7, Theorem 1.1 and Section 1.1]. These permanent results concern bipartite graphs on 2r vertices.
The analogous function for a general graph is the hafnian: the sum of products over pairings of the indices of a symmetric matrix. Barvinok describes a randomized exponential-factor approximation for nonnegative hafnians [3, author preprint, Section 7]. For fixed \delta>0 and any 0<\varepsilon<1, his later theorem approximates \ln\operatorname{haf}(A) to additive error \varepsilon using r^{O_\delta(\log r+\log(1/\varepsilon))} arithmetic operations when the entries of the symmetric 2r\times2r matrix lie in [\delta,1] [4, Theorem 2.1]. The diagonal may be filled arbitrarily in this interval, since a hafnian uses no diagonal entry. Yi gives a deterministic fully polynomial approximation scheme for rational hafnian inputs of even order, with zero diagonal, when nonzero entries lie in [\theta,1] and the support has minimum degree at least (1/2+\gamma) times its order, for fixed 0<\theta\le1 and 0<\gamma<1/2 [27, Theorem 1.1(a)]. These hypotheses differ from arbitrary supports and binary multiplicities in Theorem 1.2. A separate manuscript treats fully polynomial randomized relative approximation for arbitrary simple graphs [19, Theorem 1.1].
The construction follows the entropy-optimization approach of Anari, Oveis Gharan and Vinzant [2, FOCS version, Section I.D], with a rational optimizer and all bit bounds given explicitly here. Section 6 establishes the binary-log weighted interface. Sections 7 and 8 first complete the input to K_n, assigning tiny positive dyadic weights to absent pairs. This keeps the optimization polytope nonempty and separates zero from positive original counts. They then replace the weighted entropy objective by an integer-slope dyadic interpolant and an exact penalty on a box. On K_n, correcting degrees and then mixing with the uniform feasible point repairs constraint violations. The resulting fixed-grid iteration needs only an active violated row. Section 9 finds that row by a parity-preserving cut recursion, and Section 10 proves the count, zero-detection and bit-complexity guarantees. Minimum odd cuts as matching-constraint separators go back to Padberg and Rao [20]. The exponential matching laws used in the entropy proof remain analytic objects; this algorithm does not query them.
The appendices retain alternative relations between face geometry and entropy. Appendix A gives the laminar and quotient-map arguments, then the direct coefficient-three and coefficient-four covariance comparisons and their counting consequences. Appendix B proves the nonlinear entropy-defect bound by normalizing positive marginals and taking the inverse covariance on the face’s direction space; Appendix A also gives its short scalar deduction. Appendix C proves the singleton-loop reduction and its rational bit complexity.
2 Faces and tight cuts of the perfect matching polytope
The geometric input to the entropy argument is a bound on the number of independent equations defining a face on its positive coordinates. We prove the odd-cut description by gluing matching laws across a tight cut. The same gluing operation then combines directions in the two contracted polytopes. Both directions preserve the total mass on the cut, which saves one compatibility equation and yields the sharp bound 3m-2. The laminar proof of the same estimate is given in Appendix A.
Throughout this section, G=(V,E) is a finite undirected loopless multigraph of even order |V|=2m. Parallel edges have distinct labels and coordinates. Write \mathcal M(G) for its perfect matchings, put a(M)=\mathbf 1_M\in\{0,1\}^{E}, and define
The convex hull of an empty matching family is empty. If V is empty, its unique perfect matching is the empty matching and its polytope is a singleton in \mathbb R^\varnothing. For S\subseteq V, let \delta(S) be the set of edges with exactly one endpoint in S, and put \chi_S=\mathbf 1_{\delta(S)}. We abbreviate \delta(\{v\}) to \delta(v), and write x(A)=\sum_{e\in A}x_e for A\subseteq E.
2.1 Contraction and the odd-cut description
For an odd set S\subsetneq V, form G_1 by retaining S and contracting \overline S=V\setminus S to a new vertex, discarding edges internal to \overline S. Form G_2 by interchanging the two sides. Every edge of C=\delta(S) keeps its original label in both graphs; edges that become parallel are not identified. We call the cut nontrivial when both sides have at least three vertices. In that case the contracted graphs have smaller even orders.
Lemma 2.1 (Gluing across an odd cut). Suppose y_i\in P(G_i), for i=1,2, and their coordinates agree on C. There is a point y\in P(G) with the internal coordinates of the two y_i and their common crossing coordinates.
Proof. Choose a matching law of mean y_i in each contracted graph. A matching uses exactly one edge at the contracted vertex, so the common coordinates q_e=(y_1)_e=(y_2)_e, e\in C, sum to one. Choose a label e with these probabilities, then draw the two matchings independently from their respective laws conditioned on using e. A label with q_e=0 is never chosen and needs no conditional law.
Remove the contracted vertices and replace the two copies of the chosen crossing edge by its original edge. The internal matchings and this edge cover every original vertex once. The crossing marginals are q_e, and the law of total probability preserves every internal marginal. The resulting matching law therefore has mean y.
The following is the perfect-matching form of Edmonds’ theorem [9, Section 2, Theorem (P)]. We include the proof for loopless multigraphs, with edge labels retained through contractions.
Theorem 2.2 (Perfect matching polytope). For every graph G as above,
Proof. Denote the set on the right by Q. Every perfect matching has unit degrees and crosses every odd cut, so P(G)\subseteq Q. The degree equation at either endpoint of an edge gives 0\le x_e\le1 for every x\in Q. Thus Q is bounded. If it is empty there is nothing to prove.
We use the elementary fact that a nonempty bounded polytope is the convex hull of its extreme points. Indeed, unless a point is extreme, there is a nonzero direction annihilating all its active constraint rows. The feasible interval in this direction has two endpoints, and the point is a convex combination of them. Each endpoint has a new independent active row: the new row has nonzero directional change, whereas every old active row annihilates the direction. Repeating within the resulting lower-dimensional faces terminates at extreme points.
We show that the extreme points of Q belong to P(G), by induction on the even order. The assertion for order zero is immediate. At order two, Q is the simplex \{x\ge0:\sum_{e\in E}x_e=1\} on the distinguished parallel edges, which is exactly their matching polytope and is empty if there is no edge.
Now let |V|\ge4, and let x be an extreme point of Q. Suppose that an odd set S with 3\le |S|\le |V|-3 has x(\delta(S))=1. Put C=\delta(S), use the two contracted graphs defined above, and let x_i be the restriction of x to the surviving edge labels of G_i.
Both contracted graphs have smaller even order. The degree equations at retained vertices are unchanged, and the degree sum at the new vertex is x(C)=1. To check an odd-cut inequality in a contracted graph, complement its side if necessary so that it excludes the new vertex. The complement remains odd because that graph has even order. Its cut then has exactly the same edge labels and sum as the cut of the corresponding odd set of original vertices. Thus each x_i satisfies the smaller system in Equation (4). By induction, it is the mean of a law on perfect matchings of G_i.
Their crossing coordinates agree, so Lemma 2.1 gives x\in P(G).
It remains to consider an extreme point at which every such nontrivial odd cut is slack. A nonzero vector supported on the positive coordinates of x and preserving all degree equations would allow sufficiently small feasible perturbations in both signs: the positive coordinates stay positive, all nontrivial odd cuts retain positive slack, and singleton cuts and their complements are controlled by the degree equations. Therefore the columns of the unsigned vertex-edge incidence matrix on the positive edges are linearly independent.
Consider a connected component of the positive-edge graph. There are no isolated vertices, by the degree equations. A vertex incident to only one positive edge forces that edge to have value one; its other endpoint then has no other positive incident edge. These vertices therefore occur in isolated edge components. Every remaining component has minimum degree at least two. Column independence implies that its number of edges is at most its number of vertices. Counting incidences forces equality and degree two at every vertex, so the component is a cycle, possibly a two-edge parallel cycle. An even cycle gives a nonzero alternating-sign dependence among the incidence columns. An odd cycle component has cut sum zero on its odd vertex set, contrary to feasibility. Thus only isolated weight-one edge components remain, and x is a perfect matching vector. This completes the induction.
2.2 Directions in the minimal face
For x\in P(G), define
Let F_x be the face obtained by keeping equality in every inequality of Equation (4) that is tight at x. Define
The next lemma identifies T(x) as a linear space and explains why this face is the one relevant to laws with mean x.
Lemma 2.3 (Minimal face and its directions). For every x\in P(G), the space T(x) consists exactly of the vectors satisfying
Moreover, F_x is the minimal face containing x, and
The point x lies in the relative interior of F_x, and every law on perfect matching vectors with mean x is supported on \mathcal A_x.
Proof. Feasibility in both signs forces every active constraint row to annihilate the direction. Conversely, the equations in Equation (5) preserve all active constraints, and sufficiently small perturbations in both signs preserve every inactive inequality, since there are finitely many and each has positive slack. This proves the direction characterization.
The same argument gives a relative neighborhood of x in x+T(x) contained in F_x. Explicitly, for each inactive inequality b_i\cdot y\ge c_i with nonzero normal, choose a radius smaller than its slack at x divided by 2\|b_i\|_2, and take the minimum of these finitely many positive radii. If no such row exists, any positive radius suffices. All active rows stay equalities on x+T(x), and zero-normal rows are constant. Since F_x\subseteq x+T(x), this proves its affine hull and relative interiority.
For any y\in F_x, a short extension from y through x remains in this relative neighborhood. Thus x lies in the relative interior of a segment in F_x having y as an endpoint. Every face containing x must contain y, proving minimality.
Finally, express a point of F_x as a convex combination of matching vectors. Each inequality defining F_x has nonnegative slack at every vector and zero average slack. Every positive-weight vector must therefore belong to F_x. This proves the convex-hull and support assertions. Taking the direction space of this affine hull gives the final equality in Equation (6).
Write d(x)=\dim F_x=\dim T(x). For a point whose coordinates are all positive, let
There are no active nonnegativity constraints, and the degree rows are already the cut rows of singletons. Lemma 2.3 therefore gives the exact identity
We now bound the rank on the right.
2.3 Sharp codimension from compatible directions
The gluing lemma controls dimensions as well as feasible means. Directions in the two contracted faces can be glued whenever their cut coordinates agree. Their cut-coordinate sums are already zero, so this agreement imposes at most |C|-1 independent conditions.
Proposition 2.4 (Codimension on positive coordinates). Let |V|=2m\ge2, and suppose x\in P(G) has x_e>0 for every edge. Then
Proof. We induct on the even order n=2m. At order two, the polytope is the simplex on the distinguished parallel edges. A positive point has dimension |E|-1, giving codimension one as required.
Let n\ge4. If no nontrivial odd cut is tight, positivity and Lemma 2.3 show that only the n degree equations restrict T(x). Thus |E|-d(x)\le n\le3n/2-2. Otherwise choose a tight nontrivial cut C=\delta(S), and let x_i be the restricted means in the two contracted graphs G_i. The feasibility argument in Theorem 2.2 gives x_i\in P(G_i), and every retained coordinate is positive. Put
Each crossing label appears in both graphs, whereas each internal label appears in one. Consequently
Consider the space of compatible directions
Each h_i preserves the degree at its contracted vertex, so \sum_{e\in C}(h_i)_e=0. The linear map (h_1,h_2)\mapsto h_1|_C-h_2|_C therefore takes values in
Since x(C)=1, the set C is nonempty and this target has dimension |C|-1. Its kernel is W, whence
Map (h_1,h_2)\in W to the vector h on the original edges with their internal coordinates and common crossing coordinates. This map is injective: restricting h recovers both h_i. For any such pair, choose \varepsilon>0 so that x_i+th_i\in P(G_i) for both i and every |t|<\varepsilon. Their crossing coordinates agree for each t, so Lemma 2.1 yields x+th\in P(G). Thus h\in T(x) and d(x)\ge\dim W. In particular every parent cut tight at x is preserved, including cuts crossing S, because both signs of the perturbation are feasible.
Using Equation (9) and induction gives
The saving of one compatibility condition is exactly what closes this recurrence at the stated constant.
No connectedness assumption or strict upper bound x_e<1 was used. Section 5 constructs positive means attaining this codimension at every positive even order.
For an arbitrary mean x\in P(G) on 2m\ge2 vertices, deleting just its zero-coordinate edges leaves the same vertex set and identifies the supported minimal face with the minimal face in the resulting positive-edge graph. Indeed, every law at x omits those edges, and coordinate restriction and zero extension are inverse on the corresponding face. Hence the supported form of the estimate is
The next reduction additionally removes coordinates equal to one.
2.4 Removing fixed coordinates
We finally transfer the rank estimate to an arbitrary polytope point. This reduction will also allow entropy comparisons to be made entirely on the fractional coordinates. For x\in P(G), set
Lemma 2.5 (Fractional coordinates and the minimal face). Let x\in P(G). The number of vertices in V_f(x) is even; write |V_f(x)|=2m_f. Let G_f=(V_f(x),E_f(x)) and \bar x=x|_{E_f(x)}. The coordinate extension
is an affine isomorphism from P(G_f) onto the face
It sends the minimal face of \bar x onto F_x. For every z\in P(G_f), removing the fixed edges gives a bijection between laws with mean \iota(z) and laws on perfect matchings of G_f with mean z, preserving their probabilities. Moreover,
If m_f=0, then x is a matching vector and d(x)=0.
Proof. An edge with coordinate one exhausts the degree sum at both endpoints, so neither endpoint meets a fractional edge. At a vertex outside V_f(x), all incident coordinates are zero or one and sum to one; exactly one incident edge therefore has coordinate one. These fixed edges form a perfect matching of V\setminus V_f(x), so |V_f(x)| is even.
Every law of mean x uses each value-one edge and omits each value-zero edge with probability one. Deleting the fixed edges gives a perfect matching law on G_f with mean \bar x, proving \bar x\in P(G_f). Conversely, adjoining the fixed edges to any perfect matching of G_f gives a perfect matching of G.
The inequalities 0\le y_e\le1 hold throughout P(G), so requiring any of these coordinates to equal zero or one defines a face; their intersection Q_x is a face containing x. The preceding matching extension shows \iota(P(G_f))\subseteq Q_x. For the reverse inclusion, express any point of Q_x as a law on perfect matchings. Its fixed zero and one marginals force every positive-probability matching to omit the zero edges and contain the fixed edges. Removing those edges leaves a perfect matching of G_f. This proves both equality of the image with Q_x and the stated bijection of laws for every mean. Coordinate restriction is the affine inverse of \iota.
An affine isomorphism preserves faces and their relative interiors. The image of the minimal face at \bar x is thus a face of Q_x, and hence of P(G), containing x in its relative interior. By Lemma 2.3, it is exactly F_x. In particular, their dimensions are equal. One can also see this directly on directions: a two-sided direction at x vanishes on every fixed zero or one coordinate, and its restriction to E_f(x) is a two-sided direction at \bar x; extension gives the inverse correspondence.
If m_f\ge1, every coordinate of \bar x is positive, and Proposition 2.4 applied to G_f gives
If m_f=0, all coordinates of x are integral, and the degree equations identify x as a single matching vector. Finally, at every vertex of V_f(x) the fractional incident coordinates sum to one. Summing those degree equations counts each fractional edge twice and gives \sum_{e\in E_f(x)}x_e=m_f.
3 Entropy and the covariance trace
We now turn the geometric rank estimate into the lower bound of Theorem 1.1. The entropy maximizer has a smooth exponential parameterization on each minimal face. At a hypothetical positive maximum of the entropy deficit, the second derivative along those parameters bounds the face dimension by a covariance trace. The rank estimate makes that trace too small. Boundary points require a separate reduction before taking derivatives.
3.1 Continuity and maximum entropy on a face
For probability laws p and q on the same finite set, write \Ent(p)=-\sum_a p_a\log p_a. We will use the elementary comparison
whenever q_a>0 on the support of p; equality holds exactly when p=q. Indeed, \log t\le t-1 gives \sum_{p_a>0}p_a\log(q_a/p_a)\le\sum_{p_a>0}q_a-1\le0, with the asserted equality condition. This also proves \Ent(p)\le\log N for a law on N atoms, by comparison with the uniform law.
Lemma 3.1 (Continuity at the boundary). For a nonempty perfect-matching polytope P(G), the maximum mean entropy H is attained, nonnegative, concave and continuous on the whole polytope.
Proof. The laws of a prescribed mean form a nonempty closed subset of the finite probability simplex. Compactness and continuity of entropy give attainment. Mixing maximizing laws proves concavity, and entropy is nonnegative.
For upper semicontinuity at x, let y_j\to x in P(G) and choose maximizing laws at y_j. Take a subsequence realizing the upper limit of their entropies and then a convergent subsequence of laws. Its limit has mean x, so continuity of entropy on the simplex gives \limsup_j H(y_j)\le H(x).
For lower semicontinuity, take y\ne x close to x in P(G) and put t=\sqrt{\|y-x\|_2} and z=x+(y-x)/t. For sufficiently close y, we have 0<t<1 and z\in P(G). To check the latter assertion, use the finite linear description of the polytope. Equalities are preserved; an inequality tight at x is preserved because its slack at z is its slack at y divided by t; and every inactive inequality stays satisfied since z\to x. There are only finitely many inactive inequalities. Since y=(1-t)x+tz, concavity and nonnegativity give H(y)\ge(1-t)H(x). Letting y\to x proves the reverse semicontinuity.
Let \mathcal A be the set of matching incidence vectors, let F_x be the minimal face containing x, and put \mathcal A_x=\mathcal A\cap F_x. The next lemma is the finite maximum-entropy principle on that face. The exponential representation is the standard finite maximum-entropy duality; compare Singh and Vishnoi [23, full version, Definition 2.1 and Lemma 2.3]. Jaynes [14] gives the historical maximum-entropy principle, and the covariance identities are standard in exponential-family theory [26, Proposition 3.1]. We work on the minimal face so that the relative-interior condition holds, and include the support and boundary arguments needed here.
Lemma 3.2 (Exponential laws on the minimal face). Every law with mean x\in P(G) is supported on \mathcal A_x. Its entropy maximizer is positive on every atom of \mathcal A_x and has the form
for a finite vector \theta\in\R^E. For every \eta\in\R^E, the law obtained by replacing \theta by \eta maximizes entropy at its own mean, and that mean has minimal face F_x.
Proof. The active inequalities defining F_x have nonnegative slack at each matching vector. Their expected slack is zero at x, so every positive-probability atom belongs to F_x. The geometric description also shows that F_x=\conv\mathcal A_x and that x is relatively interior to it.
Let b be the barycenter of \mathcal A_x. For sufficiently small \varepsilon>0, the point (x-\varepsilon b)/(1-\varepsilon) belongs to F_x. Represent it by a law on \mathcal A_x and mix in weight \varepsilon of the uniform law. This produces a law q of mean x positive on every face atom. If a maximizing law p vanished on a nonempty set Z\subseteq\mathcal A_x, then
for sufficiently small u>0. The summands outside Z are differentiable at p_a>0, which justifies the O(u) term. Thus p is positive.
Form the matrix with columns (1,a), indexed by a\in\mathcal A_x. All sufficiently small perturbations of p in its kernel preserve positivity, mass and mean. The entropy gradient (-1-\log p_a)_a therefore lies in the row space. Because the constant row is present, \log p_a=c+\theta\cdot a for finite real coefficients; normalization gives Equation (14). No independence of the constraint rows is required.
For a law of the displayed form with parameter \eta, all face atoms have positive probability. An inequality is tight at its mean y exactly when it is tight at every atom of \mathcal A_x, equivalently when it is tight at x. Hence F_y=F_x, and every law q' of mean y is supported on \mathcal A_x. Equation (13) gives
with equality for the exponential law itself. This proves maximality.
3.2 The trace obstruction
For a real number c, define J_c=F-cB. The following lemma isolates the analytic consequence of a maximum; it does not yet choose c.
Lemma 3.3 (Second variation at a fractional maximum). Let G have 2m\ge2 vertices, and suppose that x\in P(G) has 0<x_e<1 for every edge. If J_c-H has a local maximum at x, then, with d=\dim F_x and s=|E|,
Proof. Let p and \theta be supplied by Lemma 3.2, and write T=\operatorname{span}(F_x-x). For v\in\R^E and real t, set
The lemma gives F_{y(t)}=F_x and
All sums are finite, so these curves are smooth. Every coordinate of y(t) remains strictly between zero and one, since both coordinate values occur among the positive-probability face atoms.
Define the covariance matrix
Differentiation gives p_a'(0)=p_a v\cdot(a-x) and y'(0)=Kv. For every w, we have w^{\mathsf T}Kw=\sum_a p_a(w\cdot(a-x))^2. Positivity of p and the spanning of T by a-x therefore give
Also y''(0)\in T, since the curve stays in x+T.
Let g=\nabla J_c(x) and let D be its diagonal Hessian:
Since \Phi'(t)=v\cdot y(t), Equation (16) gives \frac{d}{dt}H(y(t))=-(\theta+tv)\cdot y'(t). For r(t)=J_c(y(t))-H(y(t)), the first two derivatives at zero are
Stationarity gives r'(0)=0 for every v. Since \operatorname{im}K=T and y''(0)\in T, the last term in r''(0) vanishes. The second derivative test is therefore
This cancellation is why differentiating within the minimal face suffices; no smoothness of H across different faces has been assumed.
Take orthonormal eigenvectors u_1,\ldots,u_d of K with positive eigenvalues \lambda_1,\ldots,\lambda_d. Substituting v=u_i in Equation (18), dividing by \lambda_i, and summing gives
Only the spectral decomposition of K is used; K and D need not commute. If d=0, this same statement is the empty sum identity. Each coordinate is Boolean, so K_{ee}=x_e(1-x_e). Using \sum_e x_e=m, we obtain
which proves Equation (15).
Lower bound in Theorem 1.1. Write the original vertex count as 2M\ge2, and fix c=2-2/M+\varepsilon with \varepsilon>0. By Lemma 3.1, J_c-H attains a maximum on P(G). Suppose that this maximum is positive, at x. Delete its zero edges and the endpoints of its value-one edges. The exact fractional reduction in Lemma 2.5 identifies all laws of mean x with laws of the reduced mean and preserves F,B,H. An empty reduction would give F=B=H=0, contrary to positivity. The reduced graph therefore has 2m vertices for some 1\le m\le M, and all retained coordinates are strictly fractional.
Every feasible mean in the reduced graph extends by the fixed matching edges to a feasible original mean, preserving the same three functions. The reduced mean consequently remains a global maximum of J_c-H. The geometric rank bound gives d\ge s-3m+2, whereas Lemma 3.3 gives
This contradiction proves H\ge F-cB for every \varepsilon>0. For each fixed mean, B is finite; letting \varepsilon\downarrow0 proves H\ge F-(2-2/M)B. The strict coefficient followed by this limit is essential: the displayed geometric comparison can be an equality when m=M and \varepsilon=0.
3.3 The upper bound and componentwise refinement
The upper bound is the vertex-star instance of Shearer’s entropy inequality [5, Section V, inequality (22)]. We give the short chain-rule proof to make the counting of parallel edge coordinates explicit.
Upper bound in Theorem 1.1. Let X=(X_e)_{e\in E} be the incidence vector of any matching law with mean x, and order E. For a vertex v, the chain rule gives
Conditioning on additional finite random variables decreases conditional entropy, by concavity of entropy applied to the conditional laws. Every edge, including every labelled parallel edge, belongs to exactly two vertex stars. Summing and applying the chain rule again therefore gives \sum_v\Ent(X_{\delta(v)})\ge2\Ent(X). At a vertex the star vector makes exactly one choice, with probabilities (x_e)_{e\in\delta(v)}, so
Taking the maximum over laws proves the upper bound, including fixed coordinates and disconnected graphs.
Corollary 3.4 (Fractional components). For x\in P(G), remove its zero edges and the endpoints of its value-one edges. Let the nonempty connected components of the remaining graph have 2m_i vertices, and let B_i denote the sum defining B on component i. Then
If there are no remaining components, F(x)=B(x)=H(x)=0.
Proof. The exact reduction preserves the functions. Every residual component has a perfect matching, hence even positive order. A law of a whole matching induces matching laws on the components, whose entropies sum to at least the joint entropy. Conversely, the independent product of component maximizing laws realizes the prescribed mean and the sum of their entropies. Thus H, like F and B, is additive at these fixed component means. Apply Theorem 1.1 separately to each component.
4 Entropy and counting consequences
The pointwise entropy bound has two kinds of counting consequences. Maximizing a separable entropy objective estimates the total matching count, while evaluating it at a feasible uniform mean gives lower counts from structural hypotheses. Throughout this section, unless an empty graph is explicitly mentioned, G is a finite loopless multigraph on 2m>0 vertices with at least one perfect matching. Parallel edges retain their individual labels. Write P=P(G), N=|\mathcal M(G)|, and recall that F, B, and H use natural logarithms. For every x\in P, Theorem 1.1 gives
The elementary scalar estimate
will be used repeatedly. Indeed, u+(1-u)\ln(1-u) vanishes at zero and has derivative -\ln(1-u)\ge0 on [0,1); continuity gives the endpoint. Every perfect matching has m edges, so \sum_e x_e=m and
4.1 Entropy defects and separable counting estimates
Corollary 4.1 (Entropy-dependent defect). For every x\in P,
Proof. The first inequality follows from H\le F. Nonnegativity of entropy gives F-H\le F, while Equations (19) and (21) give F-H\le(2-2/m)B\le2m-2. This includes m=1, when the defect is zero.
Define the binary-coordinate entropy by
The word “binary” refers to an edge indicator’s two values; these entropies are still measured with natural logarithms.
Corollary 4.2 (Separable estimates of the matching count). One has
Proof. The entropy comparison in Equation (13), applied to the uniform law, gives entropy at most \ln N for every law on N outcomes, with equality for the uniform law. At the mean \bar x of the uniform matching law we therefore have H(\bar x)=\ln N. Equation (19) gives \ln N\le F(\bar x)\le H_{\mathrm{bin}}(\bar x), proving both lower estimates. Corollary 4.1 gives F(x)\le H(x)+2m-2\le\ln N+2m-2 at every x\in P. Also,
Taking maxima proves the upper estimates. The maxima exist because P is compact and both separable functions are continuous.
4.2 Uniform marginals and structural lower counts
Theorem 4.3 (Many edge-disjoint perfect matchings). Let G be a finite loopless multigraph on 2m>0 vertices that contains k\ge1 pairwise edge-disjoint perfect matchings. If k=1, then N(G)\ge1. If k\ge2, then
Proof. Let M_1,\ldots,M_k be the selected matchings and take their uniform mixture. Its mean
is 1/k on their union of km labeled edges and zero on every other edge. In particular, the hypotheses do not require all ambient edges to belong to that union. We have F(x)=m\ln k. If k=1, the selected matching already gives N(G)\ge1. For k\ge2, direct evaluation yields
Since H(x)\le\ln N(G), Theorem 1.1 now gives
Exponentiating proves the first inequality in Equation (25). The function \ln(1-u)+u/(1-u) starts at zero and has derivative u/(1-u)^2\ge0 for 0\le u<1. Thus (k-1)\ln(1-1/k)\ge-1, giving the second inequality; the third uses m-1\le m.
At m=1, the finite-order estimate is simply N(G)\ge k, the exact count on the selected parallel-edge subgraph. We keep k=1 separate to avoid an undefined power at zero.
Only feasibility of the uniform mean enters the preceding proof. It therefore applies to the following class without requiring a partition of its edges into perfect matchings.
Corollary 4.4 (Regular graphs with large odd cuts). Let G be a finite loopless k-regular multigraph on 2m>0 vertices, where k\ge1. Suppose \lvert\delta(S)\rvert\ge k for every odd vertex set S. Then the conclusions of Theorem 4.3 hold. In particular, they hold for every (k-1)-edge-connected k-regular graph of positive even order.
Proof. The vector x_e=1/k has unit degree sums, and the cut hypothesis gives x(\delta(S))\ge1 for every odd S. Theorem 2.2 implies x\in P(G); in particular, G has a perfect matching. Since |E|=km, the evaluations of F(x) and B(x) in the preceding proof apply unchanged when k\ge2. For k=1, the graph itself is a perfect matching.
For the final assertion, an odd S is nonempty and proper because |V(G)| is even. Edge connectivity gives \lvert\delta(S)\rvert\ge k-1, while summing degrees in S gives
Consequently |\delta(S)|\equiv k\pmod2; it cannot equal k-1 and is therefore at least k. Parallel edges are counted with multiplicity in this identity.
The odd-cut hypothesis is a condition on the uniform vector. Requiring merely that every edge lie in some perfect matching does not assert that condition. At small degree the exponential base in Equation (25) can be below one, so these estimates do not supply the classical cubic exponential lower bound.
The empty graph has one empty perfect matching. Its count is handled directly, without using expressions that divide by m; for k\ge1, the homogeneous coarse bound (e^{-2}k)^m is interpreted as one. When k=0 and the vertex set is nonempty, the coarse bound is zero, while formulas containing 1/k are not asserted. In particular, specifying no selected matchings places no restriction on the ambient edge set.
The weaker separable and nonlinear comparisons and their structural consequences appear with the alternative proofs in Appendix A. The next section examines sharp face codimension and the obstruction to coefficient one. Section 6 then passes from these entropy estimates to weighted partition functions.
5 Triangle expansions and sharp face codimension
Extremal rank examples already occur among the cubic staircases of Abdi et al. [1, discussion after Corollary 6.6 and Figure 2]. They have exactly three perfect matchings meeting every minimum odd cut once, and those cut rows have rank |E|-2. We give an explicit triangle-expansion construction and derive the associated prescribed-marginal entropy formulas. This also gives a necessary lower bound on a universal entropy coefficient. The construction underlying Klee graphs is standard; see Cygan, Pilipczuk, and Škrekovski [6, Section 1 and Lemma 2.1] on the triangle expansions and the unique partition into three perfect matchings, up to permutation. We give the construction and the argument needed here. Balanced matching laws on cubic graphs and triangle contractions also occur in the corrected full version of Esperet et al. [11, Claim 3 and Lemma 10]. Although an expansion can introduce further perfect matchings, the prescribed uniform edge marginals force a law to remain on three of them.
We retain P(G), a(M), F_x, and d(x)=\dim F_x from Section 2, and the entropy functions F,B,H from Equations (1)–(2). The separable comparison considered below is H(x)\ge F(x)-cB(x). All edge labels, including parallel-edge labels, are retained.
5.1 Expansion and contraction
Let v be a vertex of degree three in a loopless multigraph G that has a perfect matching, with incident labelled edges e_i=vu_i, 1\le i\le3. The vertices u_i need not be distinct. Replace v by a triangle on new vertices t_1,t_2,t_3, reattach e_i to t_i u_i, and let f_i denote the triangle edge opposite t_i. Call the resulting graph G', and set T=\{t_1,t_2,t_3\}. Reattached edges keep their old labels; the f_i receive new labels. Figure 1 shows the local change.
Every perfect matching M of G contains exactly one of e_1,e_2,e_3, say e_i. Its unique extension that crosses \delta(T) once is obtained by retaining its labelled edges and adding f_i. Conversely, contracting T in a perfect matching of G' that crosses \delta(T) once recovers exactly one perfect matching of G.
Figure 1: A local triangle expansion. The displayed matching uses e_1; its unique extension crossing the triangle cut once adds the opposite edge f_1. Thick blue edges are selected. The rest of the graph is unchanged.
Lemma 5.1 (The face of a triangle expansion). The set
is a face of P(G') affinely isomorphic to P(G). Under this isomorphism an old edge keeps its coordinate and
If x\in P(G) has coordinate 1/3 on every edge, its image x' has coordinate 1/3 on every edge of G'. The isomorphism maps the minimal face at x onto the minimal face at x'.
Proof. Every perfect matching of G' crosses the odd cut \delta(T) either once or three times. Hence y(\delta(T))\ge1 is valid on P(G'), and its equality set is a face. A convex combination lies in this face exactly when every matching with positive coefficient crosses the cut once. For these matchings the extension and contraction just described are inverse bijections, and the indicator of f_i equals the indicator of e_i. They therefore induce the stated affine isomorphism, with inverse given by restriction to the old edge labels.
The coordinate statement follows directly. Finally, Q_T is a face containing x'. The minimal face of P(G') at x' is therefore also the minimal face of Q_T at x'; affine isomorphisms preserve minimal faces.
5.2 A triangular minimal face for every order
Begin with two vertices joined by three distinct labelled parallel edges. Its three one-edge perfect matchings partition its edge set. Repeatedly expand any vertex as above. Each expansion adds two vertices and three edges, and all degrees remain three. Denote any graph obtained after m-1 expansions by G_m, so that
The three initial perfect matchings extend uniquely at each step. Their extensions M_1,M_2,M_3 still partition the edge set: the old edges retain their partition, and f_i belongs to the extension of the matching containing e_i. In particular,
has every coordinate equal to 1/3 and belongs to the full perfect-matching polytope.
The first expansion gives K_4; subsequent expansions preserve simplicity. Thus G_m is simple for every m\ge2, and these are Klee graphs. Only the starting case m=1 needs parallel edges.
Proposition 5.2 (Sharp codimension and prescribed-marginal entropy). For every integer m\ge1, the graph G_m and the point x^{(m)} above satisfy
The unique law on perfect matchings with mean x^{(m)} is the uniform law on M_1,M_2,M_3. Consequently,
Proof. For m=1, the three matching vectors are the three coordinate vectors in \mathbb R^3, and P(G_1) is their simplex. Its uniform point is in its relative interior. Repeated application of Lemma 5.1 shows that the minimal face at x^{(m)} is the image of this simplex, with vertices a(M_1),a(M_2),a(M_3). In particular its dimension is two.
One can also see the restriction on laws directly. For the last inserted triangle, a law with edge marginals 1/3 has expected cut-crossing count 3(1/3)=1. Since each matching crosses this cut once or three times, it must cross once almost surely. Contraction gives a law on the preceding graph with the same uniform marginals, and the crossing-one extension is unique. Iterating leaves only the three initial matchings. Thus the original law is supported on M_1,M_2,M_3. Since these matchings partition the edges, the marginal of any edge in M_i equals the probability assigned to M_i, which must be 1/3. This proves uniqueness and the entropy formula.
There are 3m edges, all with marginal 1/3. Substitution in the definitions of F and B gives the remaining formulas.
All coordinates here are strictly between zero and one. Equation (26) therefore attains the bound in Proposition 2.4 for every m\ge1. Equivalently, by Equation (7), the tight odd-cut rows have rank 3m-2. The dimension two is the dimension of the minimal face at x^{(m)}; the whole perfect-matching polytope can have additional vertices.
Corollary 5.3 (Restriction on a universal entropy coefficient). If a constant c satisfies
for every finite loopless multigraph G and every x\in P(G), then
The same necessary bound holds if the assertion is restricted to simple graphs.
Proof. Applying the asserted inequality to G_m,x^{(m)} gives
Let m tend to infinity. The graphs with m\ge2 are simple, so the same limit applies under that restriction.
The necessary coefficient in Corollary 5.3 lies strictly between 1 and the universal coefficient 2 supplied by Theorem 1.1. Sharpness of the geometric estimate therefore does not settle the optimal entropy coefficient. The next example makes the failure of coefficient one explicit at a fixed order.
5.3 An eight-vertex obstruction to coefficient one
For a concrete instance, take vertex set \{0,1,\ldots,7\} and edge set
where ij denotes the undirected edge with endpoints i,j. Contracting the triangles T=\{2,3,4\} and U=\{5,6,7\} gives K_4. Thus this graph is obtained by expanding two vertices of K_4, and is an instance of G_4.
Its five perfect matchings are
This list follows without enumeration software. A matching uses one of 01,03,05. If it uses 01, the remaining two odd triangles are joined only by 27, forcing M_1. If it uses 03, vertex 1 is matched by 14 or 16, after which the remaining edges are forced, giving N_1 or M_2. If it uses 05, the same two choices at vertex 1 force M_3 or N_2.
The cuts
both have total marginal one at x_e=1/3. The matching N_1 crosses the first cut three times, and N_2 crosses the second cut three times. They therefore have probability zero in every law with those marginals. The remaining three matchings partition E, so their probabilities are all 1/3. In particular the relevant entropy is \ln3, even though the graph has five perfect matchings in total.
At this feasible point of the full polytope,
because (4/3)^4=256/81>3. The difference F(x)-B(x)-H(x) is \ln(256/243)>0. This gives a simple eight-vertex counterexample to the coefficient-one lower bound.
6 Weighted partition functions
Let G be a loopless labelled multigraph on n=2m\ge2 vertices with at least one perfect matching. Write P=P(G). We pass from natural-log entropy to binary-log weights, so that the resulting estimate can be used by the rational counting algorithm.
Put
For \beta\in\mathbb R^E, define
The maximum exists by continuity on the compact matching polytope.
Corollary 6.1 (Weighted counting estimate). For every finite real vector \beta,
Proof. Let p_\beta(M)=2^{\beta\cdot\mathbf1_M}/Z_\beta, a positive probability law on the matching family. The finite entropy comparison with this law gives, for any matching law p of mean x,
with equality for p=p_\beta. Indeed, this is the nonnegativity of \sum_{M:p(M)>0}p(M)\ln(p(M)/p_\beta(M)), which follows from \ln t\le t-1. Taking a maximizing law at each mean and then the maximum over means therefore yields
Corollary 4.1 says F(x)-(2m-2)\le H(x)\le F(x). Divide by \ln2, add \beta\cdot x, and maximize to obtain Equation (28).
The analytical comparison does not itself supply a numerical optimizer. The exact-arithmetic construction in Sections 7–10 uses the following coarser bracket, with fixed constants that leave room for its later rounding and optimization errors.
Corollary 6.2 (Conservative weighted bracket). For every finite loopless labelled multigraph on an even number n\ge2 of vertices with at least one perfect matching, and every finite real vector \beta\in\mathbb R^E,
Proof. With n=2m, Corollary 6.1 gives
Since \ln2=\int_1^2t^{-1}\,dt\ge1/2, we have (n-2)/\ln2\le2n-4\le4n. Enlarging both sides of this bracket proves the claim.
For the empty graph, the matching family consists of the empty matching, Z_\beta=1 and q^*=0. The counting algorithm handles that input directly. On positive even order it uses exactly Equation (30); all constants in the finite optimization and final estimate below refer to this bracket.
7 A rational objective for counting matchings
The weighted entropy estimate reduces counting to a continuous maximum. We now replace that maximum by one computed from exact rational data. Assume throughout this section that n\ge4 is even. Let N be the number of perfect matchings in the input graph, with parallel edges counted as distinct choices. We allow the multiplicity k_e of each unordered pair e\in\binom V2 to be supplied in binary; an absent pair has k_e=0. For a simple graph, every multiplicity is zero or one.
We work on the complete simple graph K_n, writing
The objective functions below have one coordinate for each of these p unordered pairs. In particular, P is nonempty even when the input graph has no perfect matching. Small positive weights on absent pairs will encode the input support in the objective. Completion also provides the uniform feasible mean u_{ij}=1/(n-1), whose nontrivial odd-cut inequalities are strict. Section 8 uses that slack to repair cut violations after correcting the degree sums.
7.1 Completing the graph with small weights
Set
For a positive integer k_e, its binary bit length minus one equals \lfloor\log_2 k_e\rfloor. Thus these coefficients are computed exactly by integer arithmetic, and their numerical magnitudes are polynomial in n+b_{\max}.
Use Z_\beta and q^* from Corollary 6.2 for K_n with the weights in Equation (31). A term in Z_\beta is called valid if its matching uses only pairs with positive input multiplicity; write Z_{\mathrm{good}} and Z_{\mathrm{bad}} for the sums of valid and remaining terms, respectively.
Lemma 7.1 (Weighted completion). The contribution of matchings using an absent pair satisfies
Moreover,
Proof. For each pair with k_e>0, put r_e=2^{\lfloor\log_2 k_e\rfloor}. Then
For a valid matching of K_n, the product of its k_e’s is the number of corresponding perfect matchings in the input multigraph. Replacing these n/2 factors by r_e and summing therefore gives
If N>0, there is at least one valid matching, and its rounded weight is a positive integer. Hence Z_{\mathrm{good}}\ge1.
Every remaining matching uses a pair of weight 2^{-L}, and each of its other pair weights is at most 2^{b_{\max}}. There are at most 2^p matchings, since each is a subset of the p pairs. Thus
For the last inequality, put t=n+b_{\max}+1\ge5 and note that
When N=0, every term is in Z_{\mathrm{bad}}; also Z_\beta>0 because K_n has a perfect matching and every assigned weight is positive. This proves the first implication in Equation (32). When N>0, Equation (33) gives the lower bounds, while
because N is a positive integer.
7.2 Interpolating entropy on a dyadic grid
Let K be the least nonnegative integer such that 2^K\ge p. Define \phi(t)=-t\log_2 t on [0,1], with \phi(0)=0, and let \psi be its continuous linear interpolant at
The interpolant has the explicit rational formulas
The formulas agree at common endpoints.
Lemma 7.2 (Dyadic entropy approximation). The function \psi is concave, with integer slopes of absolute value at most K. For every x\in P,
Proof. At a positive knot, \phi(2^{-k})=k2^{-k}. The chord between 2^{-(k+1)} and 2^{-k} therefore has slope k-1 and intercept 2^{-k}, whereas the chord from zero has slope K. This proves Equation (34). Reading the intervals from left to right, the slopes are nonincreasing, so \psi is concave. Since p\ge6, we have K\ge1, and all its slopes lie between -1 and K.
The concavity of \phi puts every chord below its graph. If 2^{-(k+1)}\le t\le2^{-k}, then
Consequently 0\le\phi(t)-\psi(t)\le t on this interval. On the interval adjacent to zero, write t=2^{-K}r, where 0\le r\le1. Then
Here the expression at r=0 is interpreted by continuity; on (0,1], differentiation gives the maximum 1/(e\ln2)<1.
For x\in P, summing the degree equations gives \sum_e x_e=n/2. Apply the bound x_e on intervals above 2^{-K}, and the bound 2^{-K} on the interval below it. The total error is at most
This proves Equation (35).
Define the concave function f on the entire box [0,1]^p by
Equation (35) gives f(x)\le h_2(x)+\beta\cdot x\le f(x)+n on P. Taking maxima yields
On each affine piece, f has integer coordinate slopes of absolute value at most K+L, since |\beta_e|\le L. All breakpoints and intercepts in Equation (34) have denominators dividing 2^K<2p. Thus f can be evaluated exactly at rational points using rational arithmetic. Section 8 uses these properties to estimate f^*.
8 Optimization by an exact penalty
Retain the notation of Section 7: n\ge4 is even, P=P(K_n), p=\binom n2, and f^*=\max_{x\in P}f(x). We first replace optimization over P by optimization over the box [0,1]^p. For x in this box, define
By Theorem 2.2, w(x)=0 exactly when x\in P.
Lemma 8.1 (Feasibility repair). Set A_0=10n^2. For every x\in[0,1]^p, there is y\in P such that
Proof. Write w=w(x), d_i=1-x(\delta(i)), and d_{\mathrm{tot}}=\sum_{i\in V}d_i. Correct the degrees by setting
The correction sums to d_i at vertex i, since
Thus x'(\delta(i))=1 for every i. Since |d_i|\le w and |d_{\mathrm{tot}}|\le nw,
Consequently x'_e\ge-2w, and every odd set S satisfies
Let u_{ij}=1/(n-1). This vector has degree sums one, and
Cuts with |S|=1 or |S|=n-1 have value one. For every nontrivial odd cut, 3\le |S|\le n-3, and hence, when n\ge6,
There are no nontrivial odd cuts when n=4. In particular, u\in P.
Set
If A_0w\ge1, including equality, then y=u\in P. Otherwise t=A_0w<1. The inequalities
give
Equation (40) also gives, for each nontrivial odd cut,
The degree sums remain one, so the trivial odd cuts also have value one. Theorem 2.2 now yields y\in P in this branch as well.
For either branch, use the identity
Both u and x lie in the box, so
This also covers w=0.
The repair bound converts constraint violation into a quantitative distance from feasibility. We can therefore penalize violations by a fixed amount large enough to recover exactly the constrained optimum.
Define the positive integers M_0,D_0 and the function \Phi by
A vector g is a supergradient of \Phi at x on the box if
Lemma 8.2 (Exact penalty and integral supergradients). The function \Phi is concave on [0,1]^p, and
At every point of the box, \Phi has an integral supergradient g satisfying \|g\|_2^2\le D_0.
Proof. By Lemma 7.2, the slopes of \psi are integers of absolute value at most K. Since |\beta_e|\le L, it follows that
For the point y\in P supplied by Lemma 8.1, Equation (43) gives
Conversely, \Phi=f on P, proving equality of the maxima. The function w is a maximum of affine functions and is therefore convex. Since f is concave, \Phi is concave.
Choose a supporting piece slope \sigma_e of \psi at each x_e; at a knot either adjacent slope is allowed. With b_e=\sigma_e+\beta_e, these choices give
Write each absolute value in Equation (38) as the maximum of its two affine terms. Choose any active affine term a\cdot z+c in this maximum, including the zero term when it is active. Then a_e\in\{-1,0,1\}, and
Subtracting the last inequality, multiplied by M_0, proves that g=b-M_0a is a supergradient of \Phi on the entire box. The independent choices of supporting pieces and active rows are valid also at endpoints and ties. Finally, g is integral and
We use the classical projected subgradient method [21, Equation (1)] to approximate the maximum of \Phi. Its bounded integral supergradients permit a fixed step size and keep every iterate on one rational grid. The next lemma gives the finite iteration count and value guarantee directly.
Lemma 8.3 (Finite projected ascent). Let N_{\mathrm{it}}=pD_0, set x^{(0)}=0, and for j=0,\ldots,N_{\mathrm{it}}-1 choose a supergradient g^{(j)} as in Lemma 8.2 and set
where \Pi_{[0,1]^p} clips each coordinate to [0,1]. Then
Proof. Choose z\in P with f(z)=f^*; then \Phi(z)=f^* by Lemma 8.2. Clipping cannot increase distance to z\in[0,1]^p. Expanding the squared distance and using the supergradient inequality therefore gives
Summing Equation (46) over exactly the indicated N_{\mathrm{it}} indices yields
Here \|x^{(0)}-z\|_2^2\le p. Thus the largest of the sampled values, say V, satisfies f^*-1\le V\le f^*. Since R=\lfloor V\rfloor,
which proves Equation (45).
Every iterate in Equation (44) has coordinates that are integer multiples of 1/D_0: the update adds an integral vector divided by D_0, and clipping inserts only 0 or 1. To evaluate w and choose an active row, compare the zero term and the 2n signed degree terms with the largest odd-cut violation. Lemma 9.2 computes a minimum odd cut from the nonnegative integer capacities D_0x_e^{(j)} and returns its row in the original edge coordinates. The values of \Phi and the floor defining R can then be computed exactly using rational arithmetic. Proposition 10.1 gives the resulting bit-complexity bound.
9 Computing an active odd-cut constraint
The optimization in Section 8 needs both the value of w(x) and an affine function attaining its defining maximum. The degree violations are immediate to compute. We supply the remaining ingredient: an exact minimum odd cut, together with its vertex set. The use of minimum odd cuts for matching-constraint separation goes back to Padberg and Rao [20]. We prove the recursion and its arithmetic bounds here.
Throughout this section, an auxiliary graph has vertex set W and nonnegative integer capacities c_{ij}=c_{ji} for distinct i,j\in W. Absent edges have capacity zero. Parallel capacities are summed and loops are discarded. Write
We use the classical augmenting-path method of Ford and Fulkerson [12, Section 2], specialized here to unit augmentations. The capacity-dependent bound needed below is proved explicitly.
Lemma 9.1 (An integral two-terminal minimum cut). For distinct a,b\in W, a minimum cut separating a from b can be found deterministically using at most C unit augmentations and O(v^2(C+1)) arithmetic operations on integers of O(\log_2(v+C+2)) bits.
Proof. Maintain integers b_{ij}=-b_{ji} such that b_{ij}\le c_{ij} in both directions and \sum_j b_{ij}=0 for i\notin\{a,b\}. The two directional inequalities give -c_{ij}\le b_{ij}\le c_{ij}. Start with zero flow. If a simple directed path from a to b uses only steps with residual capacity c_{ij}-b_{ij}>0, increase the flow on each forward step by one and decrease its reverse by one. Integrality makes this feasible, conservation is preserved, and the net source outflow q=\sum_j b_{aj} increases by one. Since
there are at most C augmentations.
When no such path exists, let S be the vertices reachable from a by positive-residual steps. Then b\notin S, and every step from S to its complement is saturated. Antisymmetry cancels internal flows, so conservation gives
For every other a–b cut, the same conservation identity and b_{ij}\le c_{ij} give capacity at least q. Thus S is minimum. A graph search with fixed vertex order finds a simple residual path, or the final reachable set, in O(v^2) operations. There are at most C+1 searches, and all flows and residual capacities have magnitude at most 2C. The argument includes C=0.
Lemma 9.2 (Minimum odd-terminal cut). Let U\subseteq W have positive even cardinality. One can deterministically find a set S\subseteq W minimizing c(S) subject to |S\cap U| being odd. The algorithm returns the set itself, uses at most |U|-1 recursive instances, and requires O(|U|^3v^2(C+1)) arithmetic operations on integers of O(\log_2(v+C+2)) bits.
Proof. Call a cut terminal-separating if both sides meet U. Compute a minimum cut for every pair of distinct terminals using Lemma 9.1, and take the least-capacity result, with sides A and \overline A=W\setminus A. This is a minimum terminal-separating cut: every such cut separates some terminal pair, and every recorded pair cut is terminal-separating.
If |A\cap U| is odd, return A. Every admissible odd-terminal cut is terminal-separating, so this answer is optimal. Otherwise both A\cap U and \overline A\cap U have positive even cardinality. Form two children:
- (i)
keep A, contract \overline A to a new nonterminal, and use terminal set A\cap U;
- (ii)
keep \overline A, contract A to a new nonterminal, and use terminal set \overline A\cap U.
For example, in the first child the capacity from i\in A to the new vertex is \sum_{j\in\overline A}c_{ij}. Recurse on both children and return the better lifted cut. Every call strictly decreases the positive even terminal count; when |U|=2, the first cut is already odd.
Lifting cuts. A child cut lifts by replacing its contracted vertex, if included, with the entire block it represents. The crossing capacities are unchanged, and including that block adds an even number of parent terminals. Thus the lift has the same capacity and is terminal-odd.
This remains true through arbitrarily nested contractions. Relative to the initial instance, current vertices form a partition into blocks. Every current terminal is an original terminal singleton, and every nonterminal block contains an even number of original terminals. Initially the latter count is zero; each contraction combines an even number of current terminals with blocks of even parity, preserving the assertion. Capacities between current vertices are sums of original capacities between their blocks. Consequently every returned subset lifts to an original subset with the same capacity and terminal parity. Figure 2 illustrates the parity rule.
Preserving an optimum. Let S be an optimal odd-terminal side in the current instance. Exactly one of S\cap A and S\cap\overline A contains an odd number of terminals; exchange the names of the two sides so that it is S\cap A. Because |A\cap U| is even, replacing S by its complement preserves this odd intersection. Make this replacement if S contains all terminals of \overline A. Now S\cup A contains terminals of A and omits a terminal of \overline A, so
For any two vertex sets, nonnegative undirected capacities satisfy
Indeed, the right side minus the left side is twice the capacity between S\setminus A and A\setminus S. It follows that c(S\cap A)\le c(S). The set S\cap A is a feasible odd-terminal side in the first child, avoiding its contracted vertex. Hence at least one child has optimum at most the parent’s. Conversely, lifting shows that every child optimum is at least the parent’s. Induction on |U| proves that the better recursive answer attains the parent optimum.
Size and running time. Each nonleaf splits its terminal set into two disjoint nonempty even sets. There are at most |U|/2 leaves and hence at most |U|-1 instances in this binary recursion tree. Each contracted side contains at least two terminals, so a child also has fewer vertices than its parent. Within any one instance, every surviving capacity sums a disjoint set of original edge capacities; original edges internal to blocks are discarded. Its total capacity is therefore at most C. Capacities in different children may overlap, and we account for them by multiplying the cost of an instance by the number of instances.
There are at most O(|U|^2) pair computations per instance, each costing O(v^2(C+1)) by Lemma 9.1. Contractions and lifted-set bookkeeping fit within the same bound. This proves the stated running time. All comparisons and tie choices may use fixed orderings; zero capacities require no perturbation.
Figure 2: Lifting through an even-terminal contraction. Filled dots are terminals and the open dot represents the contracted block. In this schematic instance each side initially has two terminals. The shaded child side lifts to the shaded parent side by taking the entire contracted block, preserving odd parity. Parallel crossing capacities are added, so the cut capacity is preserved as well.
Recovering an active row in the original coordinates. At an optimization trial point, D_0x_e is a nonnegative integer for every original complete-graph pair e. Indeed, the initial point is zero, and an integral supergradient step of size 1/D_0, followed by clipping to [0,1], preserves this grid. Apply Lemma 9.2 with U=V and capacities c_e=D_0x_e. Store each contracted vertex’s block of original vertices, so the returned cut yields an explicit original set S\subseteq V of odd cardinality. It minimizes x(\delta(S)).
The corresponding affine function in the definition of w is
Its coefficient is -1 on every original pair crossing S, including pairs with x_e=0, and zero elsewhere. Thus the row is recovered by scanning the original pairs, even if zero-capacity edges were omitted during graph searches. Edges discarded as contraction loops have both endpoints in one block and do not cross a lifted cut. Comparing \ell_S(x) with zero and the two signed degree violations for every vertex gives w(x) and an affine row attaining it, as required in Section 8.
Here the initial total capacity is at most pD_0. A merged edge can exceed D_0, but the bound on each instance’s total capacity remains pD_0; likewise a large reverse residual does not change the source-outflow bound in Lemma 9.1. One complete violation computation therefore takes
arithmetic operations. The numerical bounds on D_0 and the resulting bit complexity are recorded in Proposition 10.1.
10 The algorithm and its guarantee
We now assemble the preceding constructions into a deterministic algorithm. The input consists of a vertex set V=\{1,\ldots,n\} and nonnegative integer multiplicities k_{\{i,j\}} for distinct vertex pairs, written in binary; an omitted pair has multiplicity zero. Listing parallel edges individually is also allowed, since their multiplicities can first be counted. Let N be the number of perfect matchings, with parallel edge choices distinguished. Fix the vertex and pair orderings, and use the deterministic cut procedure of Section 9.
- 1.
Handle the elementary cases. If n=0, return 1. If n is odd, return 0. If n=2, return k_{\{1,2\}}. Sort the endpoint labels occurring in positive-multiplicity pair records and count the distinct labels. If fewer than n occur, an isolated vertex forces the count to be zero; return 0. This test uses the input records even when n is supplied in binary, before allocating any array indexed by all vertices or pairs.
- 2.
Set up the complete-pair objective. Now n\ge4 is even. Use all p=\binom n2 pair coordinates. Compute b_{\max},L,\beta from Equation (31), and let K be the least nonnegative integer with 2^K\ge p. Define \psi and f by Equations (34) and (36). Set A_0=10n^2, define w by Equation (38), and compute M_0,\Phi,D_0 from Equation (42). Set
N_{\mathrm{it}}=pD_0,\qquad a^{(0)}=0\in\mathbb Z^p.The integer vector a^{(j)} represents x^{(j)}=a^{(j)}/D_0.
- 3.
Evaluate and update N_{\mathrm{it}} trial points. For j=0,\ldots,N_{\mathrm{it}}-1, do the following.
- (a)
Apply Lemma 9.2 to the integral capacities a^{(j)}_e, with every vertex terminal, obtaining a minimum-capacity odd cut S_j. At x=x^{(j)}, compare
0,\quad x(\delta(1))-1,\quad 1-x(\delta(1)),\quad\ldots,\quad x(\delta(n))-1,\quad 1-x(\delta(n)),\quad 1-x(\delta(S_j)).Their maximum is w(x). Select the first maximizing expression in this list and let r^{(j)}\in\{-1,0,1\}^p be its linear coefficient vector. Evaluate \Phi(x) exactly and retain the largest trial value seen so far.
- (b)
In each coordinate choose the right-hand slope \sigma_e^{(j)} of \psi at x_e^{(j)}, using the left-hand slope at 1. Set
g_e^{(j)} =\sigma_e^{(j)}+\beta_e-M_0r_e^{(j)}.These are the integral supergradients from Lemma 8.2.
- (c)
Update the integer numerators by
a_e^{(j+1)} =\min\!\left\{D_0,\, \max\{0,a_e^{(j)}+g_e^{(j)}\}\right\} \qquad(e\in E(K_n)).
- (a)
- 4.
Return the estimate. Let
R=\left\lfloor \max_{0\le j<N_{\mathrm{it}}}\Phi(x^{(j)}) \right\rfloor.If R<-10n, return 0. Otherwise return
A=2^{\rho}, \qquad \rho=\max\{0,R-5n\}.
The slope convention and the ordering in Step 3 settle all remaining ties. The numerator update is exactly the clipped step x^{(j)}+g^{(j)}/D_0 of Lemma 8.3.
Approximation guarantee in Theorem 1.2. The elementary cases return the exact count, so suppose n\ge4 is even and the algorithm reaches the optimization. Lemma 8.3, Lemma 7.2, and Corollary 6.2 give, respectively,
Combining them yields
If N=0, Lemma 7.1 gives \log_2 Z_\beta\le-20n, hence R\le-16n<-10n. If N>0, the same lemma gives Z_\beta\ge1, hence R\ge-3n>-10n. Thus the zero test is exact.
Now let N>0. The inequalities Z_\beta\le2N and Z_\beta\ge2^{-n/2}N, again from Lemma 7.1, imply
Also \log_2N\ge0, so \rho=\max\{0,R-5n\}\le\log_2N. Since \rho\ge R-5n, Equation (49) gives \log_2N-\rho\le9n. Exponentiating proves A\le N\le2^{9n}A=512^nA.
Proposition 10.1 (Bit complexity). The algorithm above is uniform and deterministic, and its running time and output length are polynomial in the input bit length.
Proof. The elementary cases require only integer operations on the input. In the remaining case put \tau=n+b_{\max}+1, so \tau\ge5. The parameters have polynomial numerical magnitude, not just polynomial bit length. Indeed p\le\tau^2, K\le n\le\tau, 2^K<2p, L=100\tau^3, and A_0\le10\tau^2. Consequently
Here K+L\le101\tau^3 and 2+A_0\le12\tau^2 give the first inequality, and K+L+M_0\le1313\tau^7 gives the second. The exponent of each positive multiplicity is obtained from its binary length: \lfloor\log_2 k_e\rfloor=\operatorname{bitlen}(k_e)-1. No logarithm is evaluated numerically.
The update preserves a_e^{(j)}\in\{0,\ldots,D_0\}, because every supergradient coordinate is integral. Thus every iterate has denominator dividing D_0. On a noninitial dyadic interval the affine formula for \psi is (k-1)t+2^{-k}, and on the interval next to zero it is Kt. The intercept denominators therefore divide 2^K. Every degree or cut sum, and hence w(x^{(j)}), has denominator dividing D_0. A single common denominator for all trial objectives is
This denominator does not grow with the number of iterations or with changes of dyadic piece. The piece comparisons, objective comparisons, and the final floor can all be made by exact integer arithmetic.
For an explicit bound on the operands, 0\le w(x)\le n on the box, and
Together with Equation (50) and 2^K<2p, these bounds show that all objective numerators with denominator Q have polynomial magnitude in \tau. The supergradients, scaled capacities, and counters do as well. Their bit lengths are therefore O(\log\tau).
At any trial point, the cut oracle receives capacities a_e^{(j)}, not the original multiplicities. Their total is at most pD_0. After any sequence of contractions, each surviving capacity is a sum of original capacities between two disjoint vertex blocks; internal edges are discarded. Every original edge contributes to at most one surviving pair, so the same total bound holds throughout the recursion. By Lemma 9.1, each terminal-pair computation uses at most pD_0 unit augmentations. Lemma 9.2 uses O(n) recursive calls, each with O(n^2) terminal-pair computations. Dense residual path searches take O(n^2) elementary operations. The entire optimization thus uses at most
elementary graph and arithmetic operations, on integers of O(\log\tau) bits. Standard integer arithmetic gives a polynomial bit bound.
It remains to bound the length of the explicit integer output. Lemma 8.3 gives R\le f^*. Since \psi(t)\le -t\log_2t\le1 on [0,1], \beta_e\le b_{\max}, and \sum_e x_e=n/2 on P(K_n), we have f^*\le p+b_{\max}n/2. This upper bound is nonnegative, so the clamped exponent satisfies
Writing 2^\rho as a binary integer therefore takes O(n^2+nb_{\max}+1) bits and operations. The zero and exact elementary outputs also have polynomial length.
For an explicit vertex list, both n and b_{\max} are bounded by the input bit length. The same conclusion holds when n is given in binary and only positive pair records are listed. The coverage test in Step 1 takes polynomial time in the input bit length. If it does not return zero, every vertex appears in a record, so n is at most twice the number of positive pair records. Thus the complete-pair allocation and the optimization are polynomial in this encoding as well.
Theorem 1.2 and Proposition 10.1 give both the approximation guarantee and its uniform polynomial bit implementation. If an upper estimate is preferred, 512^nA lies between N and 512^nN.
A Alternative geometric and entropy arguments
We give two other descriptions of supported face codimension: a laminar family of tight cuts, and a quotient-space formulation of contraction. Both recover the bound used in the main proof. We then retain the direct coefficient-three and coefficient-four covariance comparisons and their counting consequences. These comparisons use weaker dimension estimates; they do not require the finite-order entropy theorem.
Throughout, G=(V,E) is a finite loopless labelled multigraph on n=2m\ge2 vertices with a nonempty matching polytope, denoted by P=P(G). We use F_x, T(x), and d(x)=\dim T(x) from Lemma 2.3. Its direction-space description and Theorem 2.2 are the shared geometric preliminaries. Removing the zero coordinates of a mean preserves the dimension of its minimal face: coordinate restriction and zero extension are inverse affine maps on that face. We use this identification whenever we work only on supported edges.
A.1 Uncrossing and a laminar rank bound
This alternative proof uses the laminar uncrossing method for tight odd cuts, as in [24, full version, Lemma 2.2 and Appendix A]; compare also the tight-cut rank estimate in [1, Lemma 6.5]. We give the spanning argument and the tree count explicitly, retaining the dependence between two complementary children of the root.
Recall that \chi_S=\mathbf1_{\delta(S)} and that \mathcal S_x is the family of odd sets whose cuts are tight at x. Equation (7) identifies the supported face codimension with the rank of these cut vectors after zero coordinates are removed. We first choose a laminar spanning family, then bound its rank by a tree count.
A family of sets is laminar if every two of its members are disjoint or one contains the other. Two sets cross if they intersect and neither contains the other.
Lemma A.1 (Laminar spanning family). Suppose x\in P(G) and x_e>0 for every edge. There is a laminar family \mathcal L\subseteq\mathcal S_x whose cut vectors are linearly independent and span all the cut vectors \chi_S, S\in\mathcal S_x.
Proof. First let A,B\in\mathcal S_x cross, and put
The first three regions are nonempty; O may be empty. If |I| is odd, then both I and A\cup B are odd, and the coordinatewise cut identity is
Here E(D,D') denotes the edges joining those two regions. Taking the dot product with x, the left side equals two, the first two terms on the right are at least one each, and the last term is nonnegative. Thus both new odd sets are tight and x(E(D,D'))=0. Since every coordinate of x is positive, there are no edges in E(D,D'), so its indicator vector vanishes.
If |I| is even, then D,D' are odd and instead
The same argument shows that D,D' are tight and that the last indicator vanishes. Both identities hold edge by edge, including for parallel edges. All replacement sets are nonempty and proper: in the first case A\cup B is odd and so cannot be the even set V, and in the second case the differences are nonempty proper subsets. In particular, if A\cup B=V, only the second case can occur. We have proved that in either case the two replacements U,W belong to \mathcal S_x and satisfy
Choose an inclusionwise maximal laminar subfamily \mathcal L of \mathcal S_x with independent cut vectors, and let R be their span. Suppose a tight cut vector lies outside R. Among the corresponding tight sets choose A crossing as few members of \mathcal L as possible. It crosses some B\in\mathcal L, for otherwise it could be added to the family while preserving both laminarity and independence. Uncross A,B as above. At least one replacement vector lies outside R, since otherwise Equation (55) and \chi_B\in R would give \chi_A\in R.
Each replacement is laminar with B. Also, neither replacement can cross a member C\in\mathcal L that did not cross A. Indeed, such a set C is laminar with both A and B. If C contains A, then it meets B, and laminarity forces it to contain B as well: the other nesting direction would imply A\subseteq B. Thus C contains A\cup B. If C\subseteq A, laminarity with B puts C inside I or D; it cannot contain B, since B\nsubseteq A. Finally, if C is disjoint from A, its relation to B puts it inside D' or O. These cases exhaust the possibilities. Every set among I,A\cup B,D,D' is laminar with each set in this classification.
Consequently the replacement whose vector is outside R crosses only previously crossed members of \mathcal L, and it no longer crosses B. This contradicts the minimal crossing count of A. Hence \mathcal L spans every tight cut vector.
Laminar proof of Proposition 2.4. Take the laminar spanning family from Lemma A.1. Adjoin all singleton sets, if missing, and then adjoin V as a root. The resulting inclusion tree has 2m singleton leaves. Each internal node is the disjoint union of its children, because all singletons are present. Every proper node has odd cardinality. A nonroot internal node therefore has an odd number of children, at least three. The root has an even number c of children, at least two.
If q is the number of nonroot internal nodes, the tree identity for the number of leaves gives
Hence the number of proper nodes is 2m+q\le3m-c/2. If c\ge4, their cut vectors have rank at most 3m-2 by this count. If c=2, the two root children are complementary sets, and their cut vectors coincide. The rank is then at most the number of proper nodes minus one, again at most 3m-2. The original laminar spanning family is contained among these proper nodes. Equation (7) now proves the claim.
A.2 The quotient-space contraction argument
The main proof assembles compatible directions in the two contracted graphs. The same dimension count can instead be expressed as a map to the quotient spaces of child constraints. We include both the sharp estimate and the weaker forms used in the entropy comparisons below.
Proposition A.2 (Supported face codimension). For a loopless labelled multigraph on n=2m\ge2 vertices and x\in P(G), put A=\{e:x_e>0\} and s_A=|A|. Then s_A-d(x)\le3m-2. In particular,
Hence s_A-d(x)\le2n=4m. For the empty graph, P(G) is a singleton in zero coordinates and the codimension is zero.
Proof. Identify T(x) with a subspace U_x of \mathbb R^A. We prove the sharp estimate by induction on the even order n. At order two, the supported matching polytope is a simplex, whose positive point has codimension one. For n\ge4, if no nontrivial odd cut is tight, only the degree equations constrain U_x. Thus its codimension is at most n\le3n/2-2.
Otherwise choose a tight nontrivial cut \delta(S). Contract each side in turn as in the main geometric proof, obtaining x_i\in P(G_i), supported edge sets A_i=\{e:(x_i)_e>0\}, and direction spaces U_i=T(x_i)\subseteq\mathbb R^{A_i}. The restrictions are feasible by the odd-cut check in the proof of Theorem 2.2. The orders satisfy 4\le n_i<n and n_1+n_2=n+2. Let C=A\cap\delta(S); this set is nonempty since x(C)=1. Every label in C occurs in both A_i.
Let r_i:\mathbb R^A\to\mathbb R^{A_i} restrict coordinates, and define
For u\in\ker\mathcal Q, both restrictions are child face directions. Choose a common positive radius such that x_i+t r_i(u)\in P(G_i) in both signs of t. The perturbed means agree on every cut coordinate. Lemma 2.1 glues them to give x+tu\in P(G), so \ker\mathcal Q\subseteq U_x. In particular, all tight parent cuts are preserved, including those crossing S: their nonnegative slacks cannot change in opposite signs under these two feasible perturbations.
There is one dependence between the two quotient requirements. The cut-sum functionals
are well-defined because every child direction preserves the degree of the contracted vertex. Each is nonzero, as the class of a unit vector on any cut label has value one. For every u\in\mathbb R^A,
Thus the image of \mathcal Q lies in the kernel of the nonzero functional (v_1,v_2)\mapsto\ell_1(v_1)-\ell_2(v_2). This kernel has codimension one in the full quotient target. Rank–nullity and induction now give
For n\ge4, this is at most 2(n-2). The order-two simplex and the empty graph give the remaining assertions.
A.3 The exact fractional residual cases
For a general point x\in P(G), put
Let V_f(x) be the set of vertices incident to these fractional edges, and put s_f=|V_f(x)|. The following consequence isolates the coordinates needed for the entropy estimate.
Corollary A.3 (Fractional coordinates). For every x\in P(G), the integer s_f is even, and
Proof. An edge with value one exhausts the degree equation at both its endpoints, so neither endpoint meets a fractional edge. Conversely, at a vertex outside V_f(x), all incident coordinates are zero or one and sum to one. Exactly one of those edges has value one. Thus the vertices outside V_f(x) are covered by disjoint fixed edges, and s_f is even.
Let H be the graph with vertex set V_f(x) and edge set E_f(x), and let \bar x be the restriction of x to E_f(x). A matching law with mean x uses every value-one edge and no value-zero edge with probability one. Deleting the fixed edges therefore gives a perfect matching law on H with mean \bar x, whose coordinates are all positive. Conversely, adjoining the fixed edges to any perfect matching of H gives a perfect matching of G. This affine extension of P(H) into P(G) sends \bar x to x, and its linear part injects the two-sided direction space at \bar x into T(x).
If s_f\ge 4, Proposition A.2 now gives
If s_f=2, the residual graph consists of k=|E_f(x)|\ge 2 distinguished parallel edges. Its polytope is the simplex \{z\ge 0:\sum_e z_e=1\}, and the positive point \bar x has direction dimension k-1. Hence d(x)\ge k-1=|E_f(x)|-1. If s_f=0, the point is a matching vector and the dimension inequality is immediate; the minimal face is the singleton consisting of that matching vector.
Finally, each vertex of V_f(x) has total fractional incident value one. Summing these degree equations counts each fractional edge twice, giving the second identity in Equation (58).
A.4 The coefficient-three and coefficient-four covariance proofs
The coarser dimension estimates above already imply the following entropy bounds. We use the continuity and face-law results from Lemmas 3.1 and 3.2, and the entropy comparison in Equation (13). The calculation keeps fixed coordinates in the ambient space and takes derivatives only on the fractional coordinates. It therefore displays directly how the exact residual cases distinguish coefficients three and four.
Theorem A.4 (Separable entropy bounds by covariance). Let G be a finite loopless labelled multigraph of even order n=2m, with a nonempty perfect-matching family. With natural logarithms and continuous endpoint conventions, define
For each c\in\{3,4\} and every x\in P(G),
For n=0, all displayed quantities are zero.
Proof. The empty graph gives the stated trivial case. Assume n\ge2. For the upper bound, regard a matching law with mean x as a law on \{0,1\}^E, giving zero probability to nonmatching vectors. Compare it with independent Bernoulli coordinates of respective means x_e. This product law is positive wherever the matching law is positive: a coordinate with mean zero or one is necessarily fixed at that value under both laws. Equation (13) now gives the upper bound.
For the lower bound, fix either c=3 or c=4. Lemma 3.1 and continuity of J_c imply that H-J_c attains its minimum on the compact set P. At an integral mean the only possible law is the point mass at that matching vector, so H=J_c=0. It suffices to rule out a fractional minimizer.
Suppose, then, that x is such a minimizer. Take its positive maximizing law p and a parameter \theta from Lemma 3.2. For any v\in\mathbb R^E and t\in\mathbb R, define
The same lemma shows that x(t) stays in the relative interior of F_x and
Thus we may differentiate along these curves without assuming differentiability of H across faces.
Let
be the covariance matrix at t=0. Differentiating the finite sums gives p_a'(0)=p_a\,v\cdot(a-x), hence x'(0)=Cv. For any w\in\mathbb R^E,
All p_a are positive, and \operatorname{span}\{a-x:a\in\mathcal A_x\}=T(x). Since C is symmetric, it follows that
At a fractional mean, some coordinate has variance C_{ee}=x_e(1-x_e)>0, so d(x)\ge1. Also x''(0)\in T(x), because the whole curve lies in \operatorname{aff}F_x=x+T(x).
On the fractional coordinates, write
let D be diagonal, and set g_e=D_{ee}=0 on the other coordinates. These entries represent the derivatives of J_c restricted to the face. Indeed, a coordinate with x_e\in\{0,1\} has that value on every face atom, so its contribution to J_c(x(t)) is constantly zero. A fractional coordinate takes both bit values among the face atoms; positivity of p(t) keeps 0<x_e(t)<1 for every finite t. Consequently the usual chain rule on fractional coordinates gives all derivatives of J_c(x(t)).
From \Phi'(t)=v\cdot x(t) and Equation (60), we obtain
Both signs of t are permitted. The minimum property at t=0 therefore gives
By Equation (61), \theta+g is orthogonal to T(x), and in particular (\theta+g)\cdot x''(0)=0. The second derivative at the minimum is accordingly
Let u_1,\ldots,u_d be orthonormal eigenvectors for the positive eigenvalues \lambda_1,\ldots,\lambda_d of C, where d=d(x). Substituting v=u_i in Equation (62) and dividing by \lambda_i>0 gives \lambda_i u_i^{\mathsf T}(-D)u_i\ge1. Summing and using C=\sum_{i=1}^d\lambda_i u_i u_i^{\mathsf T}, we find
Only the spectral decomposition of C is used here; no inverse of C, or simultaneous diagonalization of C and D, is needed.
Each matching coordinate is Boolean, so C_{ee}=x_e(1-x_e). Writing s_f for the number of vertices incident with E_f(x), Corollary A.3 gives
For c=4, the weaker consequence d(x)\ge|E_f(x)|-2s_f of the residual dimension bound suffices:
because a fractional point has s_f>0. For c=3, the trace is |E_f(x)|-2s_f, so we use the exact residual cases. If s_f\ge4, then
If s_f=2, then
These exhaust the positive even values of s_f. For either coefficient, the result contradicts Equation (63). Thus no fractional minimizer exists; the minimum is attained at an integral mean and equals zero. This proves the lower bound for each coefficient by its own covariance contradiction.
A.5 Two other entropy comparisons
The covariance comparisons just proved give separable counting estimates and a short scalar proof of the nonlinear bound. We give those deductions here before the distinct normalized-covariance proof in Appendix B. As in Section 4, N(G) denotes the number of labelled perfect matchings, and B(x)\le m by Equation (21).
Corollary A.5 (Separable and nonlinear consequences). For every x\in P(G) with |V(G)|=n=2m>0,
Furthermore,
Proof. Theorem A.4 proves F-3B\le H\le F+B by the contraction and covariance route; its coefficient-four proof gives F-4B\le H as well. Since B\ge0, the first two terms are ordered as displayed. Nonnegativity of entropy and B\le m give F-H\le\min\{F,3m\}. Put t=F(x)/m\ge0 and f(t)=8(1-e^{-t}). On [0,\ln2], one has f(0)=0 and f'(t)=8e^{-t}\ge4\ge1, hence f(t)\ge t. For t\ge\ln2, one has f(t)\ge4\ge3. Thus \min\{t,3\}\le f(t), proving the nonlinear inequality including t=0. This deduction is independent of the normalized inverse-covariance proof of Theorem B.1.
For the optimized bound, H\le\ln N and (F+B)-(F-3B)=4B\le4m=2n give the upper error 2n. Using F-4B instead gives the separate original comparison (F+B)-(F-4B)=5B\le5m=5n/2. The uniform matching law supplies the lower bound exactly as in Corollary 4.2. The sharper error 3m-2 in that corollary improves both comparisons on the same domain.
A.6 Structural estimates from the other entropy bounds
For k\ge1, put b_1=1 and b_k=k(1-1/k)^{3(k-1)} for k\ge2.
Corollary A.6 (Coefficient-three and nonlinear counts). A loopless labelled multigraph G on 2m>0 vertices containing k\ge1 pairwise edge-disjoint perfect matchings satisfies
The same two conclusions hold when G is k-regular and every odd cut has at least k edges.
Proof. For the selected matching mixture in Theorem 4.3, F(x)=m\ln k and x vanishes outside their labelled union. For k\ge2, F(x)-3B(x)=m\ln k+3m(k-1)\ln(1-1/k). Using H(x)\le\ln N(G) and the coefficient-three inequality in Corollary A.5, then exponentiating, gives the first bound. The inequality (k-1)\ln(1-1/k)\ge-1 from the proof of Theorem 4.3 gives its coarse form. At k=1 the selected matching gives N(G)\ge1=b_1^m.
At this same mean, the nonlinear inequality gives \ln N(G)\ge m\ln k-8m(1-1/k), including k=1. Exponentiating and using 1-1/k\le1 proves the second line. For a regular graph satisfying the odd-cut hypothesis, Corollary 4.4 proves that the uniform vector is feasible; the same evaluations then prove both statements without requiring a partition of the edges into perfect matchings. Its cut-parity argument also proves the (k-1)-edge-connected even-order case.
For k\ge2, the finite-order bound of Theorem 4.3 implies the coefficient-three bound directly, since 0<1-1/k<1 and 2(m-1)(k-1)\le3m(k-1). The coefficient-three logarithmic loss is at most 3, while 8(1-1/k)\ge4 for k\ge2, so it also dominates the second displayed base. We have nevertheless derived that base from the nonlinear inequality to retain the distinct implication. At k=1, the refined bounds b_1^m and [k\exp\{-8(1-1/k)\}]^m both equal one.
Corollary A.7 (An exact partition of the ambient edges). If the entire edge set of a loopless labelled graph on 2m>0 vertices is partitioned by k\ge1 perfect matchings, then
When k=1 the count is exactly one. If k=0 and the order is positive, the graph is edgeless and its count is zero; only the coarse bound is then asserted. On the empty vertex set there is one empty matching.
Proof. The partition provides the hypothesis of Corollary A.6; its uniform law has marginal 1/k on every ambient edge. Thus the nonlinear proof just given applies verbatim. For k=1 the entire graph is a single perfect matching. For k=0 it has no edges. The empty case follows directly from the definition of a matching and does not use expressions containing 1/m.
The exact-partition hypothesis in the last corollary is stronger than containing a selected union. In particular, a graph containing one perfect matching may have more than one, whereas the exact one-matching union has count one.
B A normalized-covariance proof of the nonlinear entropy bound
We give a direct proof of the entropy-dependent estimate using the supported-face codimension bound from Proposition A.2. The normalization below makes the marginal-entropy Hessian equal to minus the identity, while the covariance trace has an exact combinatorial value. These two identities lead to a contradiction at any positive maximum of the proposed entropy defect. The scalar deduction in Corollary A.5 is a separate proof of the same bound.
Throughout this appendix, G=(V,E) is a finite loopless multigraph on 2m>0 vertices with at least one perfect matching. Parallel edges have distinct labels. Write \mathcal M for its perfect matchings, a(M)=\mathbf1_M, and P=P(G)=\operatorname{conv}\{a(M):M\in\mathcal M\}. Recall that, with natural logarithms and 0\ln0=0,
To distinguish entropy of a law from its maximum at a prescribed mean, write \operatorname{Ent}(p)=-\sum_Mp_M\ln p_M.
Theorem B.1 (Nonlinear entropy bound). For every y\in P(G),
The attainment and continuity of H on the whole polytope follow from Lemma 3.1. In particular, a continuous defect has a maximum even when that maximum lies on a proper face. The proof below combines the codimension bound with that lemma, the face description, and the exponential law of Lemma 3.2. These inputs are independent of Theorem 1.1.
B.1 The face at a hypothetical positive maximum
Proof of Theorem B.1. Define
Suppose that \Psi is positive somewhere. By Lemma 3.1, it has a positive maximum at some x\in P. Let F_x be the minimal face containing x, and put
Here s counts supported edges. Each matching has exactly m edges, so \sum_ex_e=m and 0\le x_e\le1. Concavity of -u\ln u gives
On [0,\ln8], we have f(0)=0 and f'(t)\ge1, so f(t)\ge t. Since H(x)\ge0, positivity of \Psi(x) therefore forces t>\ln8, and hence s>8m. The supported-face estimate of Proposition A.2 now yields
Thus all integral and low-entropy cases have already been excluded before any covariance inverse is introduced.
Let
Every law whose mean is in F_x is supported on \mathcal M_x. Indeed, each inequality active on this face has nonnegative slack at every matching vector. Expected slack zero forces every atom of positive probability to satisfy its equality. This applies to both zero coordinates and tight odd cuts. Consequently F_x=\operatorname{conv}\{a(M):M\in\mathcal M_x\}.
Discard the coordinates outside A and set
All diagonal entries of D are positive. By Lemma 2.3, x is relatively interior to F_x. Therefore
identifies a relative neighborhood of x in the face with a neighborhood of zero in the d-dimensional Euclidean space \mathcal T. Define
Their convex hull contains a neighborhood of zero in \mathcal T. All gradients, Hessians, operator inverses, and operator traces in the remainder of the proof are taken on \mathcal T. Coordinates with x_e=1 have not been discarded: their centered entries and all tangent directions are zero, so they cause no singularity on this space.
B.2 A finite exponential family on the normalized tangent space
We now express the face law of Lemma 3.2 in the normalized coordinates. Let p be the positive maximizing law at x, and write its parameter as \theta\in\mathbb R^A, restricting to supported coordinates. Since a(M)=x+D^{1/2}b_M,
Every b_M lies in \mathcal T. Thus only the orthogonal projection \lambda=\operatorname{proj}_{\mathcal T} (D^{1/2}\theta) affects the normalized law. Define
The law and its normalized mean then satisfy
The last equality is the zero mean of b_M under p. The parameter is finite because the original law is taken on its minimal face.
For any \eta\in\mathcal T, put
This law has exponential parameter D^{-1/2}\eta in the original coordinates, since the centering term is constant across atoms. Lemma 3.2 therefore shows that it maximizes entropy at its own mean y(\eta) and remains on the same minimal face. Differentiating the finite sum defining \Phi yields
Each C(\eta) is positive definite on \mathcal T. Indeed, zero variance in a direction u\in\mathcal T would make u\cdot b_M constant on all face atoms because p_\eta is positive. The affine span of the b_M is \mathcal T, so this forces u=0. Write C=C(\lambda).
B.3 The second variation and its trace
We have a positive definite covariance on a space of dimension d>s/2. We now compare its inverse with the marginal-entropy Hessian. This comparison uses the smooth exponential parameter; it does not require differentiability of H across faces.
Set
These functions are smooth near zero on \mathcal T. In the retained coordinates, the Hessian of F at x is -D^{-1}. The change of coordinates in Equation (72) therefore gives
By Equation (74), the smooth function
has a local maximum at \lambda. Its gradient is
Since C is invertible and z(\lambda)=0, stationarity implies \nabla L(0)+\lambda=0. Differentiating once more at \lambda, the derivative of C(\eta) is multiplied by this zero vector. Thus the second-derivative test gives
Congruence by C^{-1}, as an operator on \mathcal T, yields
Under p=p_\lambda, the normalized vector b_M has mean zero. For each edge e, its indicator in the random matching has variance x_e(1-x_e), so
The trace on \mathcal T equals the ambient trace because all the vectors b_M lie in \mathcal T. For u>0, the inequality u^{-1}\ge2-u follows from (u-1)^2/u\ge0. Applying it to the d positive eigenvalues of C gives
The last inequality is again the supported-face codimension bound.
It remains to include the nonlinear correction. Writing g=\nabla\widehat F(0), the full chain rule is
In particular, the rank-one term has trace f''(t)\|g\|_2^2/m\le0. Since t\le\ln(s/m), we also have f'(t)=8e^{-t}\ge8m/s. Combining Equations (71), (78), and (79), we obtain
This contradicts the negative semidefiniteness in Equation (76). Hence \Psi(y)\le0 throughout P, proving Theorem B.1.
The theorem assumes m>0 because its formula divides by m. On the empty vertex set, the unique empty matching has F=H=0; its entropy statement is handled separately without that quotient. If a nonempty graph has no perfect matching, there are no means in P(G) to which the theorem applies.
C A convention allowing singleton loops
Suppose a loop is allowed to cover its single incident vertex. Let \ell_i be the number of distinguished loop choices at vertex i, and retain the multiplicities k_{\{i,j\}} for pairs of distinct vertices. All these integers are given in binary. A matching under this convention covers every vertex exactly once by either a chosen loop or an ordinary pair. Write N_j for the number of such matchings using exactly j loops, and N_{\mathrm{loop}}=\sum_{j=0}^n N_j.
Proposition C.1. There is one deterministic algorithm which, given a graph on n vertices with nonnegative binary integer pair and singleton-loop multiplicities, returns a nonnegative rational number A_{\mathrm{loop}} such that
It returns zero exactly when N_{\mathrm{loop}}=0. Its running time and output length are polynomial in the input bit length, including when the input gives n in binary and lists only the positive pair and loop records.
Proof. First count the distinct vertices occurring in a positive ordinary pair or having a positive loop count. If any of the n vertices is missing, it cannot be covered, so return zero. This test uses only the listed records, without enumerating the vertex set. Otherwise, if there are r positive pair records and s positive loop records, then n\le2r+s. Thus the constructions indexed by vertices below have size polynomial in the input length, even for a compact binary vertex count.
For each j\in\{0,\ldots,n\}, construct an ordinary loopless graph G_j by adjoining j labeled new vertices. Keep all original edges between distinct vertices. There are no edges among the new vertices, and the pair joining original vertex i to any new vertex has multiplicity \ell_i. Label these parallel edges by the corresponding original loop choices.
Every perfect matching of G_j pairs the new vertices to j distinct original vertices. Replace those pairs by their labeled loop choices and retain the other edges; this gives a matching counted by N_j. Conversely, each matching counted by N_j has exactly j! lifts, one for each bijection from the new vertices to its j loop-covered vertices. Edge labels preserve the loop choices independently of this bijection. Thus, including j=0,
Run the ordinary algorithm on each G_j, obtaining a nonnegative integer A_j, and return
Parity is tested on each transformed order n+j, as part of that ordinary algorithm. There is no initial rejection for odd n: a single vertex with a loop is already a positive-count example. The parity of n+j equals that of the number n-j of original vertices that remain to be paired by ordinary edges.
By Theorem 1.2 and Equation (81),
Since n+j\le2n, summing these inequalities proves the claimed factor 512^{2n}=2^{18n}. All terms are nonnegative, and A_j=0 exactly when N_j=0, so zero recognition is also exact.
The construction retains compressed multiplicity records: G_j has at most r+js positive pair records. No parallel-edge list is expanded. Each transformed graph has at most 2n vertices and uses only multiplicities already present in the input. If b_{\max} is the largest binary exponent of any positive pair or loop multiplicity, taking b_{\max}=0 when all multiplicities are zero, Proposition 10.1 bounds each call and gives O(n^2+nb_{\max}+1) bits for A_j. There are only n+1 calls. The rational sum can be represented exactly with the common denominator n!:
The denominator has O(n\log_2(n+1)+1) bits, and the numerator has O(n^2+nb_{\max}+n\log_2(n+1)+1) bits. Factorials, exact integer divisions, products, and the sum therefore take polynomial bit time. The case n=0 uses the single term j=0, with 0!=1 and A_0=1, so the empty matching is counted exactly.
References
- [1]Ahmad Abdi, Gérard Cornuéjols, Daniel Dadush, and Mahsa Dalirrooyfard. Lower bounds for cube-ideal set-systems. Proceedings of the London Mathematical Society, 133(2):e70199, 2026. doi:10.1112/plms.70199.
- [2]Nima Anari, Shayan Oveis Gharan, and Cynthia Vinzant. Log-Concave Polynomials, Entropy, and a Deterministic Approximation Algorithm for Counting Bases of Matroids. In 2018 IEEE 59th Annual Symposium on Foundations of Computer Science (FOCS), pages 35–46, IEEE, 2018. doi:10.1109/FOCS.2018.00013.
- [3]Alexander Barvinok. Polynomial Time Algorithms to Approximate Permanents and Mixed Discriminants Within a Simply Exponential Factor. Random Structures & Algorithms, 14(1):29–61, 1999. Section locator refers to the author preprint. doi:10.1002/(SICI)1098-2418(1999010)14:1<29::AID-RSA2>3.0.CO;2-X.
- [4]Alexander Barvinok. Approximating Permanents and Hafnians. Discrete Analysis, 2017(2):1–34, 2017. Theorem locator refers to the final arXiv version 1601.07518v5, 13 January 2017. doi:10.19086/da.1244, arXiv:1601.07518v5.
- [5]Fan R. K. Chung, Ronald L. Graham, Peter Frankl, and James B. Shearer. Some Intersection Theorems for Ordered Sets and Graphs. Journal of Combinatorial Theory, Series A, 43(1):23–37, 1986. doi:10.1016/0097-3165(86)90019-1.
- [6]Marek Cygan, Marcin Pilipczuk, and Riste Škrekovski. A bound on the number of perfect matchings in Klee-graphs. Discrete Mathematics & Theoretical Computer Science, 15(1):37–52, 2013. doi:10.46298/dmtcs.633.
- [7]Dingding Dong and Vishesh Jain. A deterministic (1+\varepsilon)^n approximation for the permanent of a nonnegative matrix. 2026. Version 1. arXiv:2609.11049, https://arxiv.org/abs/2609.11049v1.
- [8]Farzam Ebrahimnejad, Ansh Nagda, and Shayan Oveis Gharan. Counting and Sampling Perfect Matchings in Regular Expanding Non-Bipartite Graphs. In 13th Innovations in Theoretical Computer Science Conference, pages 61:1–61:12, 2022. Conjecture locator refers to arXiv:2103.08683v1, 15 March 2021. doi:10.4230/LIPIcs.ITCS.2022.61.
- [9]Jack Edmonds. Maximum Matching and a Polyhedron with 0,1-Vertices. Journal of Research of the National Bureau of Standards, Section B, 69B(1–2):125–130, 1965. doi:10.6028/jres.069B.013.
- [10]Jack Edmonds, William R. Pulleyblank, and László Lovász. Brick Decompositions and the Matching Rank of Graphs. Combinatorica, 2(3):247–274, 1982. doi:10.1007/BF02579233.
- [11]Louis Esperet, František Kardoš, Andrew D. King, Daniel Kráľ, and Serguei Norine. Exponentially Many Perfect Matchings in Cubic Graphs. Advances in Mathematics, 227(4):1646–1664, 2011. Numbered statements refer to arXiv:1012.2878v2, 5 September 2011, whose exposition differs from the journal version. doi:10.1016/j.aim.2011.03.015.
- [12]L. R. Ford, Jr. and D. R. Fulkerson. A Simple Algorithm for Finding Maximal Network Flows and an Application to the Hitchcock Problem. Canadian Journal of Mathematics, 9:210–218, 1957. doi:10.4153/CJM-1957-024-0.
- [13]Leonid Gurvits. Unleashing the power of Schrijver’s permanental inequality with the help of the Bethe Approximation. Technical Report TR11-169, Electronic Colloquium on Computational Complexity, 2011. Expanded version: arXiv:1106.2844v11 (20 June 2012). arXiv:1106.2844v11, https://eccc.weizmann.ac.il/report/2011/169/.
- [14]Edwin T. Jaynes. Information Theory and Statistical Mechanics. Physical Review, 106(4):620–630, 1957. doi:10.1103/PhysRev.106.620.
- [15]Mark Jerrum, Alistair Sinclair, and Eric Vigoda. A Polynomial-Time Approximation Algorithm for the Permanent of a Matrix with Nonnegative Entries. Journal of the ACM, 51(4):671–697, 2004. doi:10.1145/1008731.1008738.
- [16]Sergei Kudria, Jason Luo, and Mahbod Majid. Subexponential Approximation of the Permanent in Deterministic Polynomial Time. 2026. Version 1. arXiv:2609.10516, https://arxiv.org/abs/2609.10516v1.
- [17]Nathan Linial, Alex Samorodnitsky, and Avi Wigderson. A Deterministic Strongly Polynomial Algorithm for Matrix Scaling and Approximate Permanents. Combinatorica, 20(4):545–568, 2000. Theorem locator refers to the author version. doi:10.1007/s004930070007.
- [18]Denis Naddef. Rank of Maximum Matchings in a Graph. Mathematical Programming, 22:52–70, 1982. doi:10.1007/BF01581025.
- [19]OpenAI. A Fully Polynomial Randomized Approximation Scheme for Perfect Matchings in General Graphs. OpenAI Math Release preprint PDF, 2026. Reading view on this site: A Fully Polynomial Randomized Approximation Scheme for Perfect Matchings in General Graphs.
- [20]Manfred W. Padberg and M. R. Rao. Odd Minimum Cut-Sets and b-Matchings. Mathematics of Operations Research, 7(1):67–80, 1982. doi:10.1287/moor.7.1.67.
- [21]B. T. Polyak. A general method for solving extremal problems. Doklady Akademii Nauk SSSR, 174(1):33–36, 1967. In Russian; method citation refers to Equation (1). https://www.mathnet.ru/eng/dan33049.
- [22]Alexander Schrijver. Counting 1-Factors in Regular Bipartite Graphs. Journal of Combinatorial Theory, Series B, 72(1):122–135, 1998. doi:10.1006/jctb.1997.1798.
- [23]Mohit Singh and Nisheeth K. Vishnoi. Entropy, Optimization and Counting. In Proceedings of the Forty-Sixth Annual ACM Symposium on Theory of Computing, pages 50–59, ACM, 2014. Full version arXiv:1304.8108v1, 2013. doi:10.1145/2591796.2591803.
- [24]Ola Svensson and Jakub Tarnawski. The matching problem in general graphs is in Quasi-NC. In 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS), pages 696–707, IEEE, 2017. Full version: arXiv:1704.01929v2, 4 September 2017. doi:10.1109/FOCS.2017.70.
- [25]Leslie G. Valiant. The Complexity of Computing the Permanent. Theoretical Computer Science, 8(2):189–201, 1979. doi:10.1016/0304-3975(79)90044-6.
- [26]Martin J. Wainwright and Michael I. Jordan. Graphical Models, Exponential Families, and Variational Inference. Foundations and Trends in Machine Learning, 1(1–2):1–305, 2008. doi:10.1561/2200000001.
- [27]Zihong Yi. Diffuse Gaussian Truncation for Deterministic Approximate Counting. 2026. Version 1. arXiv:2609.04079, https://arxiv.org/abs/2609.04079v1.