Beating Two-Third for Bipartite Graph
Edge-Degree Constraint Subgraphs
(EDCS)
\text{Def. For any } \beta > \beta\_ \ge 1, \text{a subgraph } H \text{ of } G \text{ is a }(\beta, \beta\_)-\text{EDCS of } G \text { if} \\
\cdot deg_H(u) + deg_H(v) \le \beta~~~~\forall (u, v)\in E(H) \\
\cdot deg_H(u) + deg_H(v) \ge \beta\_~~~~\forall (u, v)\in E(G \setminus H)


G
(3, 2)-\text{EDCS of } G
Main property of EDCS
\text{if }\beta \ge 1/\epsilon \text{ and } \beta\_ \ge (1 - \epsilon)\beta, \text{ then }\mu(H) \ge (\frac{2}{3} - O(\epsilon))\mu(G)
\text{That is, the size of maximum matching on EDCS will}\\
\text{be almost two-third of the original graph}
\text{But this is not enough to beating two-third}
On Tight Instance of EDCS in Bipartite Graph
\text{The author prove a stronger result, which says with right paramenters, }\\ \text{if } H ~\text{doesn't include a larger-than-two-third matching, then there exist an}\\ \text{almost 2/3 matching } M \text{ on }H ~s.t. ~ G ~\text{is far from maximal}
\text{We will make use of this property to beat two-third!}
On Tight Instance of EDCS in Bipartite Graph

\text{(P1): the subgraph }H' \text{ of }H \text{ have almost two-third matching}
\text{(P2): the graph consist of unmatched vertices is far from maximal}
\text{(P3): bound the size of }V_{mid}
On Tight Instance of EDCS in Bipartite Graph
\text{(P1): the subgraph }H' \text{ of }H \text{ have almost two-third matching}
\text{(P2): the graph consist of unmatched vertices is far from maximal}
\text{(P3): bound the size of }V_{mid}

(P1)
(P1)
(P2)
Some settings for the proves

Some settings for the proves
\text{Let } A \text{ be the Hall's witness of }H, \text{ w.l.o.g. }A \subseteq L. \\
\text{Define } \bar A :=L \setminus A, ~B:=N_H(A), ~\bar B:= R \setminus B
\bar A
A
\bar B
B
H
H
Some settings for the proves
\text{Let } A \text{ be the Hall's witness of }H, \text{ w.l.o.g. }A \subseteq L. \\
\text{Define } \bar A :=L \setminus A, ~B:=N_H(A), ~\bar B:= R \setminus B
\bar A
A
\bar B
B
H
H
\text{Fix a maximum matching } M^* \text{ of graph }G, \\ \text{let }\bar M^* \text{be the edges in } M^* \text{ that connect }A \text{ and }\bar B, \\ \text{also define } S:=V(\bar M^*),~W:= V((A\cup\bar B)\setminus S),~T:= \bar A \cup B
S
S
W
W
T
T
\bar M^*
The characterizations
\text{If }\mu(H) < (2/3 + \delta)\mu(G), \text{we have the following characterization}
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
\cdot |S\setminus V_{mid}| \le 199 \delta_{\mu}(G)~(\text{almost all vertices in }S \text{ belong to }V_{mid})
\cdot |T\setminus V_{mid}| \le 600 \delta_{\mu}(G) ~(\text{almost all vertices in }T \text{ belong to }V_{mid})
\cdot |W\setminus V_{low}| \le 33\sqrt{\delta}\mu(G)~(\text{almost all vertices in }W\text{ belong to } V_{low})
S(V_{mid})
W(V_{low})
T(V_{mid})
Some Auxiliary Claims
\text{Claim 5.9. } \mu(H) = |T|
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\text{Claim 5.15.} (\frac{2}{3} - 2\delta)\mu(G) \le |S| \le (\frac{2}{3} + 3\delta)\mu(G)
\text{That is, the size of }S \text{ is about two-third}
The proves
(P1) \mu(H') \ge ( \frac{2}{3}-120 \sqrt{\delta})\mu(G)
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\text{Define } \tilde M^* := M^* \setminus \bar M^*, \text{since } S:=V(\bar M^*), \text{edges in } \tilde M^* \\ \text{must connect } W \text{ and } T
\tilde M^*
\tilde M^*
The proves
(P1) \mu(H') \ge ( \frac{2}{3}-120 \sqrt{\delta})\mu(G)
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\text{Let call an edge "bad" if one of its endpoint is in }(W\setminus V_{low})\cup(T\setminus V_{mid})
\tilde M^*
\tilde M^*
\text{By the previous claims, such edges won't be too much}
\cdot |T\setminus V_{mid}| \le 600 \delta_{\mu}(G) ~(\text{almost all vertices in }T \text{ belong to }V_{mid})
\cdot |W\setminus V_{low}| \le 33\sqrt{\delta}\mu(G)~(\text{almost all vertices in }W\text{ belong to } V_{low})
The proves
(P1) \mu(H') \ge ( \frac{2}{3}-120 \sqrt{\delta})\mu(G)
\text{Let call an edge "bad" if one of its endpoint is in }(W\setminus V_{low})\cup(T\setminus V_{mid})
\text{By the previous claims, such edges won't be too much}
\cdot |T\setminus V_{mid}| \le 600 \delta_{\mu}(G) ~(\text{almost all vertices in }T \text{ belong to }V_{mid})
\cdot |W\setminus V_{low}| \le 33\sqrt{\delta}\mu(G)~(\text{almost all vertices in }W\text{ belong to } V_{low})
\text{\# of bad edges} \le |W\setminus V_{low}| + |T\setminus V_{mid}| \\ \le 33\sqrt{\delta}\mu(G)+600\delta \mu(G) \\ \le119 \sqrt{\delta}\mu(G)
(\text{since }\delta < \frac{1}{60})
The proves
(P1) \mu(H') \ge ( \frac{2}{3}-120 \sqrt{\delta})\mu(G)
\text{\# of bad edges} \le |W\setminus V_{low}| + |T\setminus V_{mid}| \\ \le 33\sqrt{\delta}\mu(G)+600\delta \mu(G) \\ \le119 \sqrt{\delta}\mu(G)
(\text{since }\delta < \frac{1}{60})
\text{Claim 5.15.} (\frac{2}{3} - 2\delta)\mu(G) \le |S| \le (\frac{2}{3} + 3\delta)\mu(G)
\text{\# of good edges} \ge |\tilde M^*| - 119\sqrt{\delta}\mu(G) \\
= (\mu(G) - |S|/2)-119\sqrt{\delta}\mu(G)\\
\ge\mu(G) - \frac{1}{2}(\frac{2}{3} + 3\delta)\mu(G)-119\sqrt{\delta}\mu(G)\\
>(\frac{2}{3}-120\sqrt{\delta})\mu(G)
(\text{since }|\bar M^*| = |S|/2)
(\text{since }\delta < \frac{1}{60})
The proves
(P1) \mu(H') \ge ( \frac{2}{3}-120 \sqrt{\delta})\mu(G)
\text{\# of good edges} >(\frac{2}{3}-120\sqrt{\delta})\mu(G)
\text{Since any good edge }(u, v) \text{ have one endpoint in }(W\cap V_{low}), \\
\text{another in }(T\cap V_{mid}), \text{we have } d_H(u) + d_H(v) \le .8\beta < (1 - \epsilon)\beta, \\
\text{it must belong to }H(\text{the EDCS}), \text{and belong to }H', \text{so we have }\\
\mu(H') \ge \text{\# of good edges} \ge (\frac{2}{3} - 120\sqrt{\delta})\mu(G)
The proves
(P1) \mu(H') \ge ( \frac{2}{3}-120 \sqrt{\delta})\mu(G)
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\text{Simply speaking, this part of the graph have almost }2/3 \text{ matching}
\tilde M^*
\tilde M^*
The proves
(P2) \text{For any matching } M \text{ in } H',~\mu(G[V_{mid}\setminus V(M)]) \ge (\frac{1}{3} - 800\delta)\mu(G)
\text{Let say an edge }(u, v) \in \bar M^* \text{ is wasted if at least one of its endpoint } u\\
\text{is matched in }M, \text{ and suppose it match to } w, \text{since }(u, w) \in M \subseteq H',\\
w \text{ should belong to }T, \text{ and either }u\in (S\cap V_{low}) \text{ or }w \in (T\cap V_{low}) \text{will hold}
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
u
w
v
The proves
(P2) \text{For any matching } M \text{ in } H',~\mu(G[V_{mid}\setminus V(M)]) \ge (\frac{1}{3} - 800\delta)\mu(G)
\text{Let say an edge }(u, v) \in \bar M^* \text{ is wasted if at least one of its endpoint } u\\
\text{is matched in }M, \text{ and suppose it match to } w, \text{since }(u, w) \in M \subseteq H',\\
w \text{ should belong to }T, \text{ and either }u\in (S\cap V_{low}) \text{ or }w \in (T\cap V_{low}) \text{will hold}
\text{So for any wasted edge, there is one dedicated vertex in }S \cup T \text{ that}\\ \text{belong to }V_{low}, \text{and we have}
\text{\# of wasted edges } \le |S\cap V_{low}| + |T\cap V_{low}| \\
\le |S \setminus V_{mid}| + |T \setminus V_{mid}| \\
\le 199 \delta \mu(G) + 600 \delta \mu (G) = 799 \delta \mu (G)
\cdot |S\setminus V_{mid}| \le 199 \delta_{\mu}(G)~(\text{almost all vertices in }S \text{ belong to }V_{mid})
\cdot |T\setminus V_{mid}| \le 600 \delta_{\mu}(G) ~(\text{almost all vertices in }T \text{ belong to }V_{mid})
The proves
(P2) \text{For any matching } M \text{ in } H',~\mu(G[V_{mid}\setminus V(M)]) \ge (\frac{1}{3} - 800\delta)\mu(G)
\text{\# of wasted edges } \le |S\cap V_{low}| + |T\cap V_{low}| \\
\le |S \setminus V_{mid}| + |T \setminus V_{mid}| \\
\le 199 \delta \mu(G) + 600 \delta \mu (G) = 799 \delta \mu (G)
\text{Since any edge that is not wasted belongs to }G[V_{mid}\setminus V(M)], \text{we have}
\mu(G[V_{mid}\setminus V(M)] \ge |\bar M^*| - 799 \delta \mu (G) \\
=\frac{1}{2}|S| - 799 \delta\mu(G) \\
\ge \frac{1}{2}(\frac{2}{3}-2\delta)\mu (G) - 799 \delta \mu (G) \\
=(\frac{1}{3} - 800\delta)\mu(G)
(\text{Since } |\bar M^*| = \frac{1}{2}|S|)
\text{Claim 5.15.} (\frac{2}{3} - 2\delta)\mu(G) \le |S| \le (\frac{2}{3} + 3\delta)\mu(G)
(\text{By claim 5.15})
The proves
(P2) \text{For any matching } M \text{ in } H',~\mu(G[V_{mid}\setminus V(M)]) \ge (\frac{1}{3} - 800\delta)\mu(G)
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\text{Simply speaking, this part have almost }1/3 \text{ matching}
The proves
(P3) |V_{mid}| < 8 \mu(G)
|V_{mid}| = |V_{mid} \cap S| + |V_{mid} \cap T| + |V_{mid} \cap W| \\
\le |S| + |T| + |W\setminus V_{low}| \\
\le |S| + |T| + 33\sqrt{\delta}\mu (G) \\
< 8 \mu(G)
\cdot |W\setminus V_{low}| \le 33\sqrt{\delta}\mu(G)~(\text{almost all vertices in }W\text{ belong to } V_{low})
(\text{Since }|S| = 2|\bar M^*| \le 2 \mu (G) \text { and } |T| = \mu (H) \le \mu(G) \text{ and }\delta < \frac{1}{60})
\text{Claim 5.9. } \mu(H) = |T|
idea of the algorithm
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\tilde M^*
\tilde M^*
\text{If there is an greater-than-2/3 mataching on EDCS, then we are done,}\\
\text{otherwise, we try to find an almost 2/3 matching on }H', \\
\text{and find a greedy matching on the rest of the graph}
The black boxes

\text{That is, a black box that can maintain EDCS and a } (1 - \epsilon) \text{matching on it}\\ \text{dynamically with update-time }O(\sqrt{\Delta}poly(1/\epsilon))
The black boxes
\text{Hopcroft-Karp algorithm, which can find a } (1 - \epsilon) \text{matching of an}\\ \text{m-edge graph in }O(m/\epsilon )
The black boxes

\text{That is, a black box that take the adjacency matrix query access and }\\
\text{estimate the size of a greedy matching in } \tilde O(n/\epsilon^3) \text{ time}, \\
\text{which will be a } (2, \epsilon) \text{ approximate matching}
The data structure
\text{We maintain the adjacency matrix of } G,\\
\text{and a }(\beta, (1-\epsilon)\beta)\text{-EDCS of } G \text{ where } \beta = \Theta (\sqrt{\Delta}poly(1/\epsilon)),\\
\text{ and a } (1-\epsilon) \text{ matching }M_H \text{ with }O(\sqrt{\Delta}poly(1/\epsilon)) \\
\text{ update time using EDCS maintainer}
The algorithm
\text{When being query, we run the following algorithm}

The algorithm
\text{The construction of } H' \text{ will takes } O(n\beta) \text{ since the degree of vertices} \\
\text{ in EDCS is at most } \beta

The algorithm

\text{To find a } (1 - \epsilon)-\text{approximate matching on } H' \text{, we use hopcroft-karp}
\text{Hopcroft-Karp algorithm, which can find a } (1 - \epsilon) \text{matching of an}\\ \text{m-edge graph in }O(m/\epsilon )
\text{Since the size of edge set of } H' \text{ is } O(n\beta),\\
\text{hopcroft-karp runs in } O(n\beta /\epsilon)
The algorithm

\text{Since the size of edge set of } F \text{ will be } O(|V_{mid}|^2) ,\\
\text{we don't construct it explicitly}
The algorithm

\text{Instead, we use the greedy matching estimator to compute a } \\
(2, \epsilon)\text{-matching of }F
\text{That is, a black box that take the adjacency matrix query access and }\\
\text{estimate the size of a greedy matching in } \tilde O(n/\epsilon^3) \text{ time}, \\
\text{which will be a } (2, \epsilon) \text{ approximate matching}
\text{Since we have adjacency matrix access of } G, \\
\text{we can also provide the access to }F
\text{So this part runs in } \tilde O(n/\epsilon^3)
The algorithm

\text{Finally, compare the size of } M_H ((1-\epsilon)\text{-matching on EDCS})\\
\text{with the size of } M_{H'} + g\text{, and output the larger one}
The algorithm

\text{Finally, compare the size of } M_H ((1-\epsilon)\text{-matching on EDCS})\\
\text{with the size of } M_{H'} + g\text{, and output the larger one}

\text{So if }M_H \text{ is over two-third we are done, }\\
\text{otherwise } |M_{H'}|+g \text{ will be over two-third by the tight instance lemma}
The algorithm

(O(n\beta/\epsilon) \text{time by hopcroft-karp})
(\tilde O(n/\epsilon^3) \text{ time by greedy matching estimator})
(O(n\beta) \text{time to construct }H')
\text{So the whole algorithm runs in } O(n\beta/\epsilon) + \tilde O(n/\epsilon^3), \\
\text{and we take }\beta = \sqrt{\Delta}poly(1/\epsilon),\\
\text{which leads to }O(n\sqrt{\Delta}poly(1/\epsilon)) + \tilde O(n poly(1/\epsilon))
The prove of approximate ratio
\text{Lemma 5.6. Let }\delta_0 = 1.8 \times 10^{-6}\text{, either }|M_H| \ge (\frac{2}{3}+\delta_0)\mu(G) \text{ or }\\
|M_{H'}| + g - \epsilon|V_{mid}| \ge(\frac{2}{3} +\delta_0)\mu(G) \text{ must hold}
\text{Let }\delta = 1.9\times 10^{-6} \text{and }\epsilon< \delta / 100 \text{, if }|M_H| \ge (1 - \epsilon)(\frac{2}{3} + \delta)\mu(G)\text{, then}
\text{Proof.}
|M_H| \ge (\frac{2}{3} + \delta - \epsilon)\mu(G) \ge (\frac{2}{3} + 0.99\delta)\mu(G) \ge (\frac{2}{3} + \delta_0)\mu(G)
The prove of approximate ratio
\text{Lemma 5.6. Let }\delta_0 = 1.8 \times 10^{-6}\text{, either }|M_H| \ge (\frac{2}{3}+\delta_0)\mu(G) \text{ or }\\
|M_{H'}| + g - \epsilon|V_{mid}| \ge(\frac{2}{3} +\delta_0)\mu(G) \text{ must hold}
\text{Otherwise }|M_H| < (1 - \epsilon)(\frac{2}{3} + \delta)\mu(G)\text{, since }|M_H| \text{ is a }(1 - \epsilon)\text{-matching,}\\
\text{we have }\mu(H) < (\frac{2}{3} + \delta_0)\mu(G)\text{, so we can use the tight instance lemma}
\text{Proof.}
The prove of approximate ratio
\text{Lemma 5.6. Let }\delta_0 = 1.8 \times 10^{-6}\text{, either }|M_H| \ge (\frac{2}{3}+\delta_0)\mu(G) \text{ or }\\
|M_{H'}| + g - \epsilon|V_{mid}| \ge(\frac{2}{3} +\delta_0)\mu(G) \text{ must hold}
\text{Otherwise }|M_H| < (1 - \epsilon)(\frac{2}{3} + \delta)\mu(G)\text{, since }|M_H| \text{ is a }(1 - \epsilon)\text{-matching,}\\
\text{we have }\mu(H) < (\frac{2}{3} + \delta_0)\mu(G)\text{, so we can use the tight instance lemma}
\text{Proof.}
\text{(P1)} \mu(H') \ge (\frac{2}{3} - 120\sqrt{\delta})\text{, which imply }|M_{H'}| \ge (1-\epsilon)(\frac{2}{3}-120\sqrt{\delta})\mu(G)
The prove of approximate ratio
\text{Lemma 5.6. Let }\delta_0 = 1.8 \times 10^{-6}\text{, either }|M_H| \ge (\frac{2}{3}+\delta_0)\mu(G) \text{ or }\\
|M_{H'}| + g - \epsilon|V_{mid}| \ge(\frac{2}{3} +\delta_0)\mu(G) \text{ must hold}
\text{Otherwise }|M_H| < (1 - \epsilon)(\frac{2}{3} + \delta)\mu(G)\text{, since }|M_H| \text{ is a }(1 - \epsilon)\text{-matching,}\\
\text{we have }\mu(H) < (\frac{2}{3} + \delta_0)\mu(G)\text{, so we can use the tight instance lemma}
\text{Proof.}
\text{(P1)} \mu(H') \ge (\frac{2}{3} - 120\sqrt{\delta})\text{, which imply }|M_{H'}| \ge (1-\epsilon)(\frac{2}{3}-120\sqrt{\delta})\mu(G)
\text{(P2) For any matching }M \text{ in }H', \mu(G[V_{mid}\setminus V(M)]) \ge (\frac{1}{3}-800\delta)\mu(G),\\
\text{which imply }\mu(F) \ge(\frac{1}{3}-800\delta)\mu(G)\text{, and since } g \text{ is the size of a maximal}\\
\text{matching, we have }g \ge\frac{1}{2}(\frac{1}{3} - 800\delta)\mu(G)
The prove of approximate ratio
\text{Lemma 5.6. Let }\delta_0 = 1.8 \times 10^{-6}\text{, either }|M_H| \ge (\frac{2}{3}+\delta_0)\mu(G) \text{ or }\\
|M_{H'}| + g - \epsilon|V_{mid}| \ge(\frac{2}{3} +\delta_0)\mu(G) \text{ must hold}
\text{Otherwise }|M_H| < (1 - \epsilon)(\frac{2}{3} + \delta)\mu(G)\text{, since }|M_H| \text{ is a }(1 - \epsilon)\text{-matching,}\\
\text{we have }\mu(H) < (\frac{2}{3} + \delta_0)\mu(G)\text{, so we can use the tight instance lemma}
\text{Proof.}
\text{(P1)} \mu(H') \ge (\frac{2}{3} - 120\sqrt{\delta})\text{, which imply }|M_{H'}| \ge (1-\epsilon)(\frac{2}{3}-120\sqrt{\delta})\mu(G)
\text{(P2) For any matching }M \text{ in }H', \mu(G[V_{mid}\setminus V(M)]) \ge (\frac{1}{3}-800\delta)\mu(G),\\
\text{which imply }\mu(F) \ge(\frac{1}{3}-800\delta)\mu(G)\text{, and since } g \text{ is the size of a maximal}\\
\text{matching, we have }g \ge\frac{1}{2}(\frac{1}{3} - 800\delta)\mu(G)
\text{(P3) } |V_{mid}| \le 8\mu(G)
The prove of approximate ratio
\text{Lemma 5.6. Let }\delta_0 = 1.8 \times 10^{-6}\text{, either }|M_H| \ge (\frac{2}{3}+\delta_0)\mu(G) \text{ or }\\
|M_{H'}| + g - \epsilon|V_{mid}| \ge(\frac{2}{3} +\delta_0)\mu(G) \text{ must hold}
\text{Proof.}
\text{(P1)} |M_{H'}| \ge (1-\epsilon)(\frac{2}{3}-120\sqrt{\delta})\mu(G)
\text{(P2) }g \ge\frac{1}{2}(\frac{1}{3} - 800\delta)\mu(G)
\text{(P3) } |V_{mid}| \le 8\mu(G)

\text{Then just do some math using these property, and we are done}
The algorithm
\text{So the whole algorithm runs in } O(n\beta/\epsilon) + \tilde O(n/\epsilon^3), \\
\text{and we take }\beta = \sqrt{\Delta}poly(1/\epsilon),\\
\text{which leads to }O(n\sqrt{\Delta}poly(1/\epsilon)) + \tilde O(n poly(1/\epsilon))

\text{Finally, plug this algorithm into the "lazy update" lemma, }\\
\text{we get a fully dynamic algorithm maintain a }(\frac{2}{3}+\delta_0)\text{-apx matching size}\\
\text{with }O(\sqrt{n}) \text{ update time}
Final remark
\text{In conclusion, the algorithm first find a matching on EDCS, }\\
\text{if it is not over two-third, then we try to find a almost two-third}\\
\text{matching in the red part, and a greedy matching on the blue part,}\\
\text{then we can still get a over two-third matching under }\\
\text{the tight instance lemma}
\bar A
A
\bar B
B
H
H
S(V_{mid})
W(V_{low})
T(V_{mid})
\bar M^*
S(V_{mid})
W(V_{low})
T(V_{mid})
\tilde M^*
\tilde M^*
Dynamic Algorithm for Maximum Matching Size: Beating Two-Third For Bipartite Graph
By shioko
Dynamic Algorithm for Maximum Matching Size: Beating Two-Third For Bipartite Graph
- 36