Toolbox

C1: EDCS in Distributed Settings

Reminder: This post contains 5100 words · 15 min read · by Xianbin

Edge degree constrained subgraph (EDCS) has received much attention and proved to be very useful in matching related problems. In this post, we introduce some interesting properties of EDCS in distributed settings. This post is based on [1,2,3].

Definition

Definition (EDCS)\textbf{Definition (EDCS)} Given a graph G=(V,E)G = (V, E), let β1β20\beta_1 \geq \beta_2 \geq 0 be two parameters. An edge degree constrained subgraph (EDCS) H=(V,EH)H=({\color{blue}V}, {\color{red}E_H}) of GG satisfies the following properties.

P1):\textbf{P1)}: For any edge (u,v)EH(u,v) \in E_H: dH(u)+dH(v)β1d_H(u) + d_H(v) \leq \beta_1.

P2):\textbf{P2)}: For any edge (u,v)EEH(u,v) \in E\setminus E_H: dH(u)+dH(v)β2d_H(u) + d_H(v) \geq \beta_2.

EDCS in Sampled Subgraphs

Lemma 1\textbf{Lemma 1} (Degree Distribution Lemma). Fix a graph G=(V,E)G=(V, E) and two parameters β1,β2\beta_1, \beta_2. Let β2=(1λ)β1\beta_2 = (1-\lambda)\beta_1. For any two subgraphs G1,G2G_1,G_2 that are EDCS(G,β1,β2)\text{EDCS}(G, \beta_1,\beta_2), and any vertex vVv\in V, we have

dG1(v)dG2(v)=O(logn)λβ\lvert d_{G_1}(v) - d_{G_2}(v) \rvert = O(\log n) \sqrt{\lambda}\cdot \beta

Theorem 1\textbf{Theorem 1}. Let G1,G2GG_1, G_2 \subseteq G be two edge sample subgraphs (selecting with probability pp) for a given graph G=(V,E)G= (V, E). Let H1,H2\color{blue} H_1, H_2 denote any EDCSs of G1,G2G_1, G_2 respectively, with parameters (β,(1λ)β)(\beta, (1-\lambda)\beta).

Suppose, β750λ2lnn\beta \geq \frac{750}{\lambda^2} \ln n, with high probability, for each vVv \in V, we have

dH1(v)dH2(v)O(logn)λβ\lvert d_{H_1}(v) - d_{H_2}(v)\rvert \leq O(\log n) \sqrt{\lambda}\cdot \beta

Theorem 2\textbf{Theorem 2}. Let G1,G2GG_1, G_2 \subseteq G be two vertex\color{red}\text{vertex} sample subgraphs (selecting with probability pp) for a given graph G=(V,E)G= (V, E). Let H1,H2\color{blue} H_1, H_2 denote any EDCSs of G1,G2G_1, G_2 respectively, with parameters (β,(1λ)β)(\beta, (1-\lambda)\beta).

Suppose, β750λ2lnn\beta \geq \frac{750}{\lambda^2} \ln n, with high probability, for each vG1G2\color{blue} v \in G_1\cap G_2, we have

dH1(v)dH2(v)O(logn)λβ\lvert d_{H_1}(v) - d_{H_2}(v)\rvert \leq O(\log n) \sqrt{\lambda}\cdot \beta

Lemma 1\textbf{Lemma 1}. For any ϵ>0\epsilon > 0 and β1/ϵ\beta \geq 1/\epsilon, any graph G=(V,E)G = (V, E) admits a EDCS(G,β,(1ϵ)β).EDCS(G, \beta, (1-\epsilon)\beta).

It is easy to state this argument, but how to prove such a thing? Let me try to do this in thirty minutes.

If I can design an algorithm to create the required EDCS for any graph, it is proved. So my job is to find this algorithm. For simplicity, let us assume that β,ϵ\beta,\epsilon are some constants. The first step is to obtain the first property, i.e., for any edge (u,v)(u,v) in EDCS, the sum of degree of u,vu,v is at most β\beta. That is easy. We just randomly sample some constant number of edges for each node in VV. It seems that we already satisfy both properties, but there is a problem. For example, if a node has a large degree, then in the sampled subgraph, its degree can be large, which will violate the first property.

I also noticed that if we start with an empty graph, the first property and second property are already satisfied.

When I look at the definition of EDCS, I realized that one thing I did notice before. The goal of EDCS is for the matching. The edge with large degrees of endpoints should not be included in the matching, because it will reduce the chance we find a larger size of matching. If we need a data structure to contain a good matching, we should not contain such an edge. That is to say, for edges in the EDCS, we want the degrees are small and edges out of EDCS can be large.

It is better starting with an empty graph. We first add some edges trying to meet property (ii). We may need to fix the previous results, i.e., removing some edges, if the added edges violate property (i). The final thing is to show that after a certain number of steps, the procedure of fixing will stop. I know potential function might help. The question is to build such a potential function.

Time is up! I cannot figure out the potential function.

Let us check the answer.

Proof\textbf{Proof}. Start with an empty graph HH. ( Ha. We have it! ). If there exists an edge in HH that violates property (i), we remove it. If there exists an edge in GHG\setminus H, we add it to HH.

Set the potential function to be

Φ=Φ(H):=(1ϵ2)βuVdegH(u)undefined first term+(u,v)H(degH(u)+degH(v))undefinedsecond term\Phi = \Phi(H) :=\underbrace{(1-\frac{\epsilon}{2})\beta \sum_{u\in V} deg_H(u)}_{\text{ first term} } +\underbrace{\sum_{(u,v)\in H}-(deg_H(u) + deg_H(v))}_\text{second term}

( This function is what we missed. ) The maximum value of this function is at most O(nβ2)O(n\beta^2) and the initial value is 0.

After removing an edge,

Therefore, Φ\Phi increases by at least ϵβ\epsilon \beta for this case.

Similarly, after adding an edge, Φ\Phi increases by at least ϵβ\epsilon \beta.

So, after O(nβ/ϵ)O(n\beta/\epsilon), the algorithm will stop. It is proved.

It is a beautiful proof.

Unfortunately, I did not figure out the potential function.

Some feelings about this potential function.

I feel that the role of this potential function is to show that no matter edge deletions or edge insertions, the potential function increases. To achieve this goal, we need experience.

Reference

[1]. Assadi, Sepehr, et al. “Coresets meet EDCS: algorithms for matching and vertex cover on massive graphs.” Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms. Society for Industrial and Applied Mathematics, 2019.

[2]. A. Bernstein and C. Stein. Faster fully dynamic matchings with small approximation ratios. In Proceedings of the Twenty-Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2016, Arlington, VA, USA, January 10-12, 2016, pages 692–711, 2016

[3]. Bernstein, Aaron, and Cliff Stein. “Fully dynamic matching in bipartite graphs.” Automata, Languages, and Programming: 42nd International Colloquium, ICALP 2015, Kyoto, Japan, July 6-10, 2015, Proceedings, Part I 42. Springer Berlin Heidelberg, 2015.