Structural Results on Matching Estimation with Applications to Streaming

We study the problem of estimating the size of a matching when the graph is revealed in a streaming fashion. Our results are multifold: We give a tight structural result relating the size of a maximum matching to the arboricityα\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\alpha $$\end{document} of a graph, which has been one of the most studied graph parameters for matching algorithms in data streams. One of the implications is an algorithm that estimates the matching size up to a factor of (α+2)(1+ε)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$(\alpha +2)(1+\varepsilon )$$\end{document} using O~(αn2/3)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\tilde{O}(\alpha n^{2/3})$$\end{document} space in insertion-only graph streams and O~(αn4/5)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\tilde{O}(\alpha n^{4/5})$$\end{document} space in dynamic streams, where n is the number of nodes in the graph. We also show that in the vertex arrival insertion-only model, an (α+2)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$(\alpha +2)$$\end{document} approximation can be achieved using only O(logn)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$O(\log {n})$$\end{document} space. We further show that the weight of a maximum weighted matching can be efficiently estimated by augmenting any routine for estimating the size of an unweighted matching. Namely, given an algorithm for computing a λ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\lambda $$\end{document}-approximation in the unweighted case, we obtain a 2(1+ε)·λ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$2(1+\varepsilon )\cdot \lambda $$\end{document} approximation for the weighted case, while only incurring a multiplicative logarithmic factor in the space bounds. The algorithm is implementable in any streaming model, including dynamic streams. We also investigate algebraic aspects of computing matchings in data streams, by proposing new algorithms and lower bounds based on analyzing the rank of the Tutte-matrix of the graph. In particular, we present an algorithm determining whether there exists a matching of size k using O(k2logn)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$O(k^2\log n)$$\end{document} space. We also show a lower bound of Ω(n1-ε)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\Omega (n^{1-\varepsilon })$$\end{document} space for small approximation factors to the maximum matching size in insertion-only streams. This lower bound also holds for approximating the rank of a matrix. We give a tight structural result relating the size of a maximum matching to the arboricityα\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\alpha $$\end{document} of a graph, which has been one of the most studied graph parameters for matching algorithms in data streams. One of the implications is an algorithm that estimates the matching size up to a factor of (α+2)(1+ε)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$(\alpha +2)(1+\varepsilon )$$\end{document} using O~(αn2/3)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\tilde{O}(\alpha n^{2/3})$$\end{document} space in insertion-only graph streams and O~(αn4/5)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\tilde{O}(\alpha n^{4/5})$$\end{document} space in dynamic streams, where n is the number of nodes in the graph. We also show that in the vertex arrival insertion-only model, an (α+2)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$(\alpha +2)$$\end{document} approximation can be achieved using only O(logn)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$O(\log {n})$$\end{document} space. We further show that the weight of a maximum weighted matching can be efficiently estimated by augmenting any routine for estimating the size of an unweighted matching. Namely, given an algorithm for computing a λ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\lambda $$\end{document}-approximation in the unweighted case, we obtain a 2(1+ε)·λ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$2(1+\varepsilon )\cdot \lambda $$\end{document} approximation for the weighted case, while only incurring a multiplicative logarithmic factor in the space bounds. The algorithm is implementable in any streaming model, including dynamic streams. We also investigate algebraic aspects of computing matchings in data streams, by proposing new algorithms and lower bounds based on analyzing the rank of the Tutte-matrix of the graph. In particular, we present an algorithm determining whether there exists a matching of size k using O(k2logn)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$O(k^2\log n)$$\end{document} space. We also show a lower bound of Ω(n1-ε)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\Omega (n^{1-\varepsilon })$$\end{document} space for small approximation factors to the maximum matching size in insertion-only streams. This lower bound also holds for approximating the rank of a matrix.

arrival insertion-only model, an (α + 2) approximation can be achieved using only

Introduction
In the graph streaming model, introduced by Henzinger et al. [27], we are given a sequence of updates to the adjacency matrix of a graph, and we aim to solve a graph problem, using as little space as possible. Much of the recent work has typically focused on the semi-streaming model [21], where we are allowed to use O(n · polylog n) space for a graph with n nodes, and ideally, we would use a single pass over the data.
In particular, computing matchings is arguably the most studied problem in graph streaming models. While a lot is already well-understood about the space requirements for this problem, many intriguing questions remain still open.
To bypass the (n) lower bound required to store a matching, recent research has begun to focus on only approximating the size of matchings, resulting in several algorithms with sublinear-space bounds, even with respect to the number of nodes. We continue this line of work, and present several results for estimating matchings in weighted and unweighted graphs, using only o(n) space. 1 Zalando SE, Dortmund, NRW, Germany

Our Contribution
Structural Results Most previous papers on estimating matching sizes in streams focus on classes of sparse graphs, either by limiting the degree of each node [30], 1 or more generally by assuming bounded arboricity [20]. The arboricity of a graph G(V, E) is defined as α := max U ⊆V |E(U )| |U |−1 , where E(U ) is the set of edges between vertices of U . Equivalently, the arboricity can be defined as the minimum number of forests into which the edges of the graph can be decomposed. For the rest of the paper, we assume that the arboricity of the graph (or an upper bound on it) is known in advance. Our main result is a structural theorem relating the matching size to the arboricity: Therefore, estimating e∈E x e allows us to estimate the matching size while losing an (α+2) factor. We also show how to estimate this sum, provided it is large enough. If the sum is too small to be efficiently estimated, we simultaneously use a further algorithm to estimate the size. The algorithm in question depends on the streaming model. In insertion-only streams, where edges arrive one after the other, we can greedily maintain a maximal matching, which was also done by Esfandiari et al. [20], resulting in a (α + 2)(1 + ε) approximation usingÕ(ε −2 αn 2/3 ) bits of space. In dynamic streams, we use an algebraic approach discussed further below. As a further consequence, we relate the degree distribution of the nodes to the arboricity. This type of estimation achieves an approximation factor of (α + 2) of the matching size. In the vertex-arrival model, where all edges adjacent to a node arrive simultaneously, the degree distribution can be maintained in a straightforward manner using only O(log n) space.
Reduction of Weighted to Unweighted Matching Estimation. Building on similar approaches for parallel algorithms [48], and on approximate matching computation in streams [14], we give a reduction from unweighted to weighted matching estimation as follows: Theorem 2 Given > 0 and a λ-approximate estimation using S space with failure probability δ, there exists an 2(1 + ε)λ-approximate estimation algorithm for the weighted matching problem with weight range [1, W ] using O(S · log W · ε −1 ) space with failure probability δ · log 1+ε W .
This reduction applies to any streaming model including the dynamic stream model, where edges may be inserted and deleted.
Algebraic Techniques for Computing Matchings in Streams. Finally, we introduce algebraic techniques for analyzing matching problems in data streams. Like most algebraic matching algorithms, we focus on properties of the Tutte-matrix of a graph. Tutte [47] famously showed that a graph has a perfect matching if and only if the maximum rank of the Tutte-matrix is n. This was later generalized by Lovász [36], who showed that the maximum possible rank of the Tutte-matrix is exactly twice the maximum matching size. The Tutte-matrix is obtained from the adjacency matrix by replacing every edge e in the upper right half with an indeterminate x e and the corresponding entry in the lower left half with −x e . It is not obvious how to make use of the aforementioned results, without an assignment resulting in a maximum rank. Lovász addressed this by showing that a suitable random assignment results in the maximum rank with high probability.
This has two consequences for streaming algorithms, namely that (1) any approximation algorithm for the rank of a matrix can be used to approximate the matching size of a graph, and that (2) lower bounds for estimation tasks of the matching size can be used to derive lower bounds for the rank of a matrix.
Using rank-preserving sketches (see e.g., [11]) applied to the Tutte matrix, we then obtain the following upper bound: Theorem 3 Let G(V, E) be an arbitrary graph. Then there exists a dynamic streaming algorithm that either (1) outputs k if match(G) ≥ k or (2) outputs match(G) otherwise. The algorithm uses O(k 2 log n) bits of space and succeeds with constant probability.
Theorem 3 was also reproved by Chitnis et al. [10] using sampling-based approaches. Combining this result with our estimation techniques for bounded arboricity matchings, we obtain a (α + 2)(1 + ε) factor estimation of the matching using O(ε −2 αn 4/5 ) space, which is one of the few non-trivial results for dynamic graph streams using sublinear space.

Lower Bounds on Size Estimation
For lower bounds, we show that by approximating the matching to a sufficiently good factor, we can solve hard instances of the Boolean Hidden Hypermatching (BHH) problem. The Boolean Hidden Matching (BHM) problem was initially proposed by Bar-Yossef et al. [5] for the purpose of separating the one-way communication complexity of quantum and classical messaging models. Roughly speaking, Alice is given a binary bit string x ∈ {0, 1} n and Bob a perfect matching M on the indexes of x as well as a binary vector w ∈ {0, 1} n/2 . It is promised that the parities of the indexes of x with respect to the matching M are either equal to w or to w and the players' task is to determine which is the case. A tight bound of ( √ n) on the communication complexity of BHM has been given by Gavinsky et al. [22]. BHH is a generalization introduced by Verbin and Yu [50]. With a slightly modified version of BHH we obtain, Theorem 4 (informal version) Any 1-pass streaming algorithm approximating the size of the maximum matching up to an (1 + O(ε)) factor requires (n 1−ε ) bits of space.
Using the aforementioned connection between matching size and rank of a matrix established by the Tutte matrix, we also obtain an (n 1−ε ) space bound for 1 + Table 1 Results for estimating the size of a maximum matching in data streams. α is the arboricity of a graph, e.g., 3 for planar graphs.Õ( f (n)) hides factors polylogarithmic in f (n). We also suppressed (1 + ε) multiplicative factors in some approximation ratios and polynomial dependencies on ε −1 in the space bounds. All upper bounds can be extended to weighted matching at an additional loss of a multiplicative factor of 2 in the approximation ratio approximating the rank of a matrix in data streams. It also gives an exponential separation between estimating the rank of a diagonal matrix which admits a O(log n) space algorithm by estimating the 0 norm of a vector, see for instance Kane et al. [28] Table 1 contains a succinct overview of our specific results and the most relevant previous work.

Related Work
Matching Computation Maintaining a 2-approximation to the maximum matching in an insertion-only stream can be straightforwardly done by greedily maintaining a maximal matching [21]. This remains the best algorithm discovered thus far and no single pass semi-streaming algorithm using O(n · polylog n) space can do better than e/(e−1), see Goel et al. [25] and Kapralov [29]. If the edges of an insertion only stream are assumed to arrive in random order as opposed to an adversarial order, Konrad et al. [32] were able to obtain a semi-streaming algorithm with an approximation factor of 1.989. In sliding window streams, Crouch et al. [13] gave a (3+ε)-approximation. For dynamic streams, Assadi et al. [4] showed that any sketching algorithm computing a n ε approximate matching requires (n 2−3ε ) space, see also the earlier work by Konrad [31]. Since linear sketches can be used to obtain lower bounds of dynamic graph streams [1], this result gives a lower bound for maintaining approximate matchings in dynamic graph streams.
For weighted matching, a trickle of results sequentially improving on the approximation ratio have been recently published for insertion streams [14,18,19,21,38,49,51]. Paz and Schwartzman [44] gave a 2 + ε approximate semi-streaming algorithm, which Ghaffari [23] re-analyzed to obtain slightly improved space bounds. This result essentially implies that any further improvement to weighted matching will also improve unweighted matching.
Matching Estimation To bypass the natural (n) bound required by any algorithm maintaining an approximate matching, recent research has begun to focus on only estimating the size of the maximum matching. In one of the few non-trivial graph streaming results using polylog n space, Kapralov et al. [30] obtained a polylogarithmic approximate estimate for randomly ordered streams. Monemizadeh et al. [41] also showed that property testers in bounded degree graphs may be simulated in random order streams. Using a result by Nguyen and Onak [42], this implies that an ε · n additive approximation to some maximal matching is possible storing only a constant number of edges in randomly order streams.
The remaining algorithms in this line of research focus on approximating matching sizes in graphs of bounded arboricity. Estimators relating the matching size to arboricity were first considered in the field of distributed computing by Czygrinow et al. [16]. In a streaming setting this task was first addressed by Esfandiari et al. [20], who obtained a (5α +9)(1+ε) approximation usingÕ(ε −2 αn 2/3 ) bits of space in insertion only streams andÕ(ε −2 αn 1/2 ) bits of space in random-order streams. This was subsequently extended to aÕ(ε −2 αn 4/5 ) space algorithm in dynamic streams indepedently by Chitnis et al. [10], and the initial publication of Bury and Schwiegelshohn [8].
Lower bounds were first obtained by Esfandiari et al. [20]. The authors showed that ( √ n) space is necessary for any approximation better than 3 2 . Assadi et al. [3] achieved significant improvement over our work. Among other results, they showed that for small approximation factors, a super-linear lower of (n 1+1/ log log n ) is necessary. They also showed that for graphs with arboricity bounded by O(α), any algorithm achieving an α-approximation must use ( √ n/α 2.5 ) space. Chakrabarti and Kale [9] further studied multi-pass streaming. They showed that any deterministic streaming algorithm using s space and p passes achieving an α-approximation must satisfy p · s ≥ ( n eα log e − log n)/2.

Schatten Norm Estimation
The p Schatten norm of a matrix A is the p norm of the vector containing the singular values of A. Taking the limit of p → 0, the 0 Schatten norm corresponds to the rank. Most previous work focused on lower bounds for dynamic streams. Clarkson and Woodruff [11] obtained a (k 2 ) lower bound for determining whether a matrix has rank at least k. Li et al. [33] showed a lower bound of ( √ n) for the target dimension of any linear sketch-based constant factor approximation of the rank and an (n 2 ) target dimension for bi-linear sketching, see also later extensions and improvements for other Schatten norms in [35]. The related question of finding the largest eigenvalues of a matrix was investigated by Andoni and Nguyen [2], whose algorithm can also be used to solve the rank decision problem. The only other result pertaining to insertion-only streams we are aware of is due to Li and Woodruff [34]. Their result extends upon our construction initially published in [8] by showing that any algorithm estimating certain classes of functions of singular values well enough can be used to solve a hard instance of Boolean Hidden Hypermatching.

Preliminaries
We useÕ( f (n)) to hide factors polylogarithmic in f (n). Graphs are denoted by A matching is maximal if it cannot be extended by any further edge in E and maximum if it is of largest possible cardinality. We refer to the size of a maximum matching of G by match(G). Our estimated value M is a λ-approximation to the size of the maximum matching match(G) if M ≤ match(G) ≤ λ M. Most of our estimation algorithms are randomized and have some probability of failure. We use the shorthand constant probability to indicate that the estimation is correct with probability greater than 1 2 . Hence, we require that any randomized algorithm succeeds with constant probability. We note that we may amplify the probability of success in the standard way by running multiple estimations in parallel and outputting the median.

Arboricity-Based Estimation
We first restate Theorem 1: Define the fractional matching polytope for a graph G as: When the underlying graph is clear from context, we also write FM for FM(G). We say any x ∈ FM(G) is a fractional matching. The size of this fractional matching is e∈E x e and for a graph where edge e has weight w e , the weight of the matching is e∈E w e x e . A standard result on fractional matching is that the maximum size of a fractional matching is at most a factor 3/2 larger than the maximum size of an (integral) matching. We will also make use of the following lemma, which is a simple corollary of Edmonds' Matching Polytope theorem [17].
Then, for any edge weights {w e } e∈E , where match(G) is the weight of the maximum weighted (integral) matching. For the streaming applications we will be interested in fractional matchings that can be computed locally.
Definition 1 For a given graph G, we say a fractional matching x ∈ FM(G) is local if every x e is only a function of the edges (and their weights in the case of a weighted graph) that share an end point with e.
The next two theorems show that x is a local fractional matching and where score(x) = e x e . This proves Theorem 1 and we note that the upper bound can be improved slightly if α is even. In Sect. 3, we show that it is possible to efficiently estimate score(x) in the data stream model.

Theorem 5 x ∈ FM(G) and
Proof First, note that x e ≥ 0 for each e ∈ E and for any u ∈ V , e∈E:u∈e and hence x ∈ FM. The bound for bipartite graphs follows because the maximum size of a fractional matching in a bipartite graph equals the maximum size of an integral matching. For the rest of the result, we appeal to Lemma 1. Since x ∈ FM, it is simple to show that x satisfies the conditions of the lemma with λ t ≤ t/(t − 1); this follows because e∈G [U ] x e ≤ |U |/2 for any x ∈ FM. Furthermore, since there are at most x e ≤ |U | 2 if α even .
Note that Theorem 5 is tight. For example, a 5-clique has arboricity 3, maximum matching of size 2, and score(x) = 5/2. We next bound score(x) in terms of the number of edges whose endpoints both have "large" degree and the number of edges whose endpoints both have "small" degree.

Theorem 6
Define a node to be heavy if it has degree at least α + 2. Let h be the number of heavy nodes, let E 2 be the set of edges where both endpoints are heavy, and let E 0 be the set of edges where neither endpoints are heavy. Then, Proof Let d i be the degree of node i and assume i.e., the number of neighbors of node i that have higher or lower degree respectively than node i where ties are broken by the ordering supposed in the above line. Consider labeling an edge e with weight x e where we first label edges incident to node 1, then the (remaining unlabeled) edges incident to node 2, etc. Then c 1 = d 1 edges get labeled with min(1/d 1 , 1/(α +1)), c 2 edges get labeled with min(1/d 2 , 1/(α + 1)), c 3 edges get labeled with min(1/d 3 , 1/(α + 1)) etc. Then Note that |E 2 | < αh, because these edges in this induced subgraph can be partitioned into at most α forests. Therefore, as required. Note that h +|E 0 | ≥ match(G) because every edge in a matching is either in E 0 or has at least one heavy node as an endpoint. Therefore, See Fig. 1 for an example that shows that Theorem 6 is tight.

Structural Result for Weighted Graphs
In this section we show how to find a good local fractional matching for weighted graphs. It does not improve upon the bounds given by the unweighted to weighted reduction of Sect. 4. However, we think the structural result is interesting and could be useful in other computational models.
Define y ∈ R E where for e = {u, v} ∈ E, we set Fig. 1 A tight example for Theorem 6. Let L 1 consist of α nodes whereas L 2 and L 3 consist of n α nodes. The edges are a complete bipartite graph of L 1 and L 2 and a matching between L 2 and L 3 . Then score(x) = αn · 1/n + n · 1/(α + 1) and match(G) = n. Hence match(G)/ score(x) tends to α + 1 as n tends to infinity where deg e (u) and deg e (v) are the number of edges at least as heavy as e that are incident to u and v respectively and H (r ) = 1/1 + 1/2 + · · · + 1/r is the harmonic function.
The next two theorems show that y is a local fractional matching and where score(y) = e w e y e and D is the maximum degree of the graph. Note that bounded arboritcity does not imply a bounded maximum degree and thus Theorem 8 only applies to the latter type of graphs.
Theorem 7 y ∈ FM(G) and Furthermore, if G is bipartite then score(y) ≤ match(G).
Proof For all u ∈ V , e∈E:u∈e and hence y ∈ FM. The result of the proof follows as in the proof of Theorem 5 since y e ≤ 1/(α + 1) for all e.
Proof Let z e be the optimum weighted integral matching. Let 0 < w 1 < w 2 < w 3 < · · · be the distinct weights in the graph and let w 0 = 0. Let G k be the unweighted . Then which goes to (α + 1)H ( √ n) as n goes to infinity.
Note that √ n is maximum degree in G and H ( √ n) = (log n) graph formed from the original weighted graph where all edges whose weight is < w k are deleted and the other edges are given weight 1. Let z k e be the optimum unweighted integral matching for G k and let deg k (u) be the degree of node u in G k . Then, where the last inequality follows by our result for the unweighted case.
But for any e ∈ E, where the first inequality follows because deg k (u) ≥ deg e (u) for all k such that e ∈ G k . Therefore match(G) ≤ H (D)(α + 1) score(y) as claimed.
See Fig. 2 for an example that shows that Theorem 8 is tight.

Exact Degree Distribution
Using ideas from the previous sections, we now show that the size of the maximum matching can be approximated up to a (α + 2) factor given just the degree distribution of G. Specifically, consider the following estimate: The next theorem shows thatM is an (α + 2) approximation for match(G).
Proof As before, let h be the number of "heavy" nodes with degree at least α + 2. Partition the edges E into E 0 , E 1 , and E 2 depending on whether the edge has zero, one, or two heavy endpoints. Then, Note that |E 2 | < αh because the number of edges in any induced subgraph is at most α times the number of nodes in that subgraph. Hence,

From Theorem 6 and Theorem 5, we know that
and hence, Both inequalities in Theorem 9 are tight. For the lower bound, consider a collection of n disjoint edges, which has match(G) =M = n. For the upper bound, consider a 5-clique, that has arboricity 3, match(G) = 2, andM = 10.

Adversarial Insertion-Only Streams
In this section we briefly describe a streaming estimation based on the results from Sect. 2.
From Theorem 1, we know we can estimate the size of the maximum cardinality via the following quantity, To do this we first show that A can be estimated via the quantity, where S is a subset of V formed by sampling each node independently with probability p. The next lemma shows that A S is within a 1 + factor of Ap 2 with probability at least 3/4 assuming p is sufficiently large. Note that a similar approach is taken in Esfandiari et al. [20] and Chitnis et al. [10] in the context of their algorithm to estimate the number of high degree nodes and edges that are not incident to high degree nodes.  Since the sum of all x e that share an endpoint with e is at most 2 because x ∈ FM, We then use Chebyshev's inequality to obtain Given this key lemma, the algorithm and analysis proceed similarly to that of Esfandiari et al. [20]. Specifically, two algorithms are run in parallel: a greedy matching algorithm and a sampling-based algorithm. The greedy matching algorithm uses O(n 2/3 log n) space to find a maximal matching of size at least min(n 2/3 , match(G)/2). Since every induced subgraph also has arboricity α, the sampling-based algorithm uses O(αn 2/3 log n) space to sample each node with probability p = c −1 /n 2/3 (for some sufficiently large constant c) and then find all edges whose endpoints are both sampled along with the degrees of the sampled edges. If the greedy matching has size less than n 2/3 then it is necessarily a 2 approximation of match(G). If not, we can use the estimate of A based on the nodes sampled since in this case A = (n 2/3 ). Theorem 10 Given > 0, there exists a single pass data stream algorithm using O(α −1 n 2/3 log δ −1 ) space that returns a (α + 2)(1 + ) approximation of the maximum matching with constant probability.

Adjacency List Graph Streams
In the adjacency list model 2 the edges incident to each node v appear consecutively in the stream [6,7,37]. Thus, every edge {u, v} will appear twice: once when we view the adjacency list of u and once for v. Aside from that constraint, the stream is ordered arbitrarily. For example, for the graph consisting of a cycle on three nodes V = {v 1 , v 2 , v 3 }, a possible ordering of the stream could be v 3 in O(log n) space since the degree of a node can be calculated exactly when the adjacency list of that node appears. The next theorem immediately follows from Theorem 9.

Dynamic Streams
Estimation in Trees Let T = (V, E) be a tree with at least three nodes and let h T be the number of internal nodes, i.e., nodes with degree greater than one. Esfandiari et. al. [20] proved the following structural result.
Lemma 3 [20] Let T = (V, E) be a tree with at least three nodes. Then One application is a combination of Lemma 3 with sketching algorithms for the Hamming norm. The Hamming norm of a vector x is defined as 0 (x) = |{i : x i = 0}|, i.e. the number of non-zero coordinates of a vector. In order to estimate the matching size of a tree T , we maintain an 0 -estimator for the degree vector d ∈ R n such that d i = deg(v i )−1 holds at the end of the stream and with it 0 (d) = h T . In other words, we initialize the vector by adding −1 to each entry and update the two corresponding entries when we get an edge deletion or insertion. Using Theorem 10 from [28] we can maintain the 0 -Estimator for d in O(ε −2 log n) space. ∈ (0, 1). Then there is an algorithm that estimates the size of a maximum matching in T within a (2 + ε)-factor in the dynamic streaming model with constant probability using 1-pass over the data and O(ε −2 log n) space.

Theorem 12 Let T = (V, E) be a tree with at least 3 nodes and let ε
Estimation in Low-Arboricity Graphs Algebraic techniques have found many applications for matching problems. Given that all known dynamic streaming algorithms are based on sketching, it may be somewhat surprising that, to the best of our knowledge, no previous work has attempted to apply these techniques. We will first introduce the necessary definitions and background before giving an application to matching size estimation.
The singular value decomposition (SVD) of an n × n matrix is denoted by A = U V T where U, V ∈ R n×n are orthogonal and is diagonal. The rank of a matrix is the number of non-zero entries of , or alternatively the Hamming norm of the vector containing the singular values of A. The spectral norm ||A|| 2 is the largest entry of . For matrices of rank r , we use the truncated SVD A = U V T , where U, V ∈ R n×r have orthogonal columns, and is an r by r diagonal matrix.
Algebraic matching algorithms are usually based around the Tutte-matrix T of a graph G(V, E) defined as where x i, j are indeterminates. In his seminal paper, Tutte [47] showed that a graph contains a perfect matching, i.e., a matching of size n/2 if and only if for some choice of indeterminates the determinant of T is nonzero. This was later generalized by Lovász [36] to arbitrary matching size as follows (see also Rabin and Vazirani [45] for an alternative proof).
Theorem 13 [Lovász [36]] Let G = (V, E) be a graph with a maximum matching M and Tutte matrix T G . For an assignment w ∈ R |E| to the indeterminates of T G we denote the matrix by T G (w) where the indeterminates are replaced by the corresponding assignment in w. Then we have In order to calculate the maximum of the rank, Lovász [36] also showed that the rank of the matrix where the indeterminates are replaced by random numbers uniformly drawn from {1, . . . , R} is equal to max w {rank(T G (w))} with probability at least 1 − |E|/R. We now detail an algorithm determining the exact matching size up to a parameter k using roughly k 2 space based on the Tutte matrix 3 . Our aim is to randomly choose entries of a Tutte matrix and update this matrix with the corresponding value whenever an edge is inserted or deleted. One crucial ingredient is the following result due to Clarkson and Woodruff [11], see Sarlos [46] for similar, slightly weaker statements. Lemma 4 (Lemma 3.4 of [11]) Given integer k and ε, δ > 0, there is m = O(k log(1/δ)/ε) and an absolute constant η such that if S is an n × m sign matrix with η(k+log(1/δ))wise independent entries, then for an n×k matrix U with orthonormal columns, with probability at least 1 − δ, the spectral norm ||U T SS T U − U T U || 2 ≤ ε.
Since U is orthogonal, all singular values are 1. If we choose ε to be some constant, the singular values of S T U and U differ only by multiplicative constant factors close to 1, which also implies that S T U and U have the same rank. For our purposes, ε = 1/3 will be sufficient.  ((u, v), entries, then for an n × k matrix U with orthonormal columns, with probability at least 1 − δ, the rank of S T U is identical to rank of U .
We will also use the following result due to Pagh and Pagh [43]. Our algorithm now proceeds as follows, see also Algorithm 1. We initialize the Tutte matrix T of the input graph G with randomly chosen entries drawn from a k 2 -independent hash function h assigning each edge a random value in [O(k 2 )]. We then independently sample two sign matrices S 1 and S 2 where S 1 , S 2 satisfying the conditions of Corollary 1. We maintain S 1 T S 2 now as follows. Whenever we process an operation on the edge (u, v), the appropriate random value of the corresponding entry in T is queried via h. This value is inserted into an n × n matrix H containing only 0 except for , v) is deleted. S 1 T S 2 can then be updated by adding S 1 T S 2 + S 1 H S 2 . Note that we do not have to construct the entire matrix H . The correctness of this algorithm is an almost direct application of Corollary 1: (2) outputs maximum matching size. The algorithm uses O(k 2 log n) space and succeeds with constant probability.

Theorem 3 Let G(V, E) be an arbitrary graph. Then there exists a dynamic streaming algorithm that either (1) outputs k if if the maximum matching is greater than k or
Before we prove this theorem, we first remark that Theorem 13 still holds when we have limited independence. Proof of Theorem 3 We first argue correctness, then space complexity. We randomly chose the weights of the Tutte matrix T from 1 to 4k 2 such that the weights are k 2wise independent (line 1 of Algorithm 1). By Corollary 2, Theorem 13 holds when we query the size of the matching with constant probability. It is straightforward to maintain S T 1 T S 2 whenever we receive and edge insertion or deletion (lines 6-11 of Algorithm 1).
What remains is to analyze the rank of S T 1 T S 2 . First, let r ≤ k be the rank of T . Let U 1 U T 2 be the truncated singular value decomposition of T such that U 1 , U 2 ∈ R n×r are orthogonal and ∈ R r ×r is diagonal with non-zero entries. Corollary 1 guarantees us that any rank up to k of S T 1 U 1 and U T 2 S 2 is preserved with constant probability. Since is a diagonal matrix with non-zero entries and U 1 is orthogonal, rank( By the same argument and independence of S 1 and S 2 , rank(S T 1 T S 2 ) = r . If r > k, we can decompose U 1 (and analogously U 2 ) into the sum of two orthogonal matrices U k and U R , where U k consists of the first k columns of U 1 and U R consists of the remaining columns of U 1 . We apply the same line of reasoning as above onto U k and note that the rank cannot decrease by adding S T U R .
The space bound of each S T 1 T S 2 is in O(k 2 log n) due to the dimension of the sign matrices via Corollary 1 and by observing that the magnitude of entries of S T 1 T S 2 is polynomial in n. Using Theorem 15, we can store h using O(k 2 log k) bits and S 1 and S 2 using O(k) bits. Thus, the total space is dominated by O(k 2 log n).
We use Theorem 3 to determine the matching size up to n 2/5 . For larger matchings, we apply Lemma 2 with p = (ε −1 /n 4/5 ).

Theorem 16
There exists a single pass dynamic streaming algorithm using O(α −1 n 4/5 ) space that returns a (α + 2)(1 + ) approximation of the maximum matching with constant probability. matching in G to finding large cardinality matchings. Specifically, we show that given a λ-approximation algorithm for the unweighted problem, there is a 2(1 + )λapproximation for the maximum weighted problem where the latter algorithm using a factor O( −1 log W ) more space. This reduction uses ideas from work by Uehara and Chen [48] and Crouch and Stubbs [15]. Theorem 2 then follows immediately from Theorem 17.
This immediately implies 2(α + 2)(1 + )-approximation algorithms for weighted graphs in the arbitrary order and adjacency list models.

Reduction to Unweighted Matchings
Theorem 17 Let G be a graph and letm k be a λ-approximation of the size of the maximum cardinality matching in G k . Then, Proof Let m k be the size of the maximum cardinality matching in G k and let M be the set of edges in the maximum weighted matching in G. We first observe that holds for all edges e ∈ E. To prove the left inequality, observe that where the last inequality follows from Eq. 1. We now prove the right inequality. Consider the matching R formed by taking a maximal matching in E r where r = log 1+ W ; extending this to a maximal matching in E r −1 ; extending this to a maximal matching in E r −2 as so on. Note that since R ∩ E k is a maximal matching in E k , we havem k ≤ m k ≤ 2|R ∩ E k |. Therefore, where the second last inequality follows from Eq. 1.

Lower Bounds for Insertion-Only Streams
Esfandiari et al. [20] showed a space lower bound of ( √ n) for any estimation better than 3/2. Their reduction uses the Boolean Hidden Matching Problem introduced by Bar-Yossef et al. [5], and further studied by Gavinsky et al. [22]. We will use the following generalization due to Verbin and Yu [50]. We first require a bit of notation. A t-hypergraph G(V, E) is a set of nodes V and a set of hyperedges E, where each hyperedge e is a subset of exactly t nodes of V .

Definition 2 [Boolean Hidden
Hypermatching Problem [50]] In the Boolean Hidden Hypermatching Problem B H H t,n Alice gets a vector x ∈ {0, 1} n with n = 2kt and k ∈ N. Bob gets a hypergraph with n nodes with some arbitrary but fixed ordering and a perfect t-hypermatching M, i.e., each hyperedge has exactly t coordinates and each node is contained in exactly one hyperedge, and a string w ∈ {0, 1} n/t . We denote the vector of length n/t given by Verbin and Yu [50] showed a lower bound of (n 1−1/t ) for the randomized oneway communication complexity for B H H t,n . For our reduction we require w = 0 n/t and x ∈ {0, 1} n has exactly n/2 bits set to 1. We denote this problem by B H H 0 t,n . We can show that this does not reduce the communication complexity. Proof Alice is given a boolean vector x ∈ {0, 1} n with n = 4kt for some k ∈ N and Bob a t-hypermatching on n nodes with some arbitrary but fixed ordering and a boolean vector w ∈ {0, 1} n/t . From their respective inputs, Alice will construct a boolean vector x ∈ {0, 1} 4n and Bob will construct a t-hypermatching M on 4n nodes such that M x ⊕ 0 = 0 if M x ⊕ w = 0 and M x ⊕ 0 = 1 if M x ⊕ w = 1 described as follows.
First, let us assume that t is odd. Alice constructs x = [x T x T x T x T ] T as the concatenation of two identical copies of x and two identical copies of the vector resulting from the bitwise negation of x. Without loss of generality, let {y 1 , . . . , y t } ∈ M be the l-th hyperedge of M, where y i denotes the ith node of the hypergraph in the arbitrary but fixed ordering. Bob adds the following four hyperedges to M : The important observation here is that, since t is odd, we flip even number of bits in the case w l = 0 and an odd number of bits if w l = 1. Since every bit flip results in a change of the parity of the set of bits, the parity does not change iff we flip an even number of bits. Therefore, w l ⊕ x 1 ⊕ · · · ⊕ x t = 0 iff the parity of each of the corresponding new hyperedges is 0. Applying the same reasoning to all hyperedges, Theorem 4 Any randomized streaming algorithm that approximates the maximum matching size within a 1 + 1 3t/2−1 − ε factor for t ≥ 2 and any ε > 0 needs (n 1−1/t ) space.
Proof Let n = 4kt for some integer k. Alice is given boolean vector x ∈ {0, 1} n with exactly n/2 indexes set to 0 and Bob is given a perfect t-hypermatching on a graph with n nodes. It is promised that either M x = 0 n/t or M x = 1 n/t . Both players add edges to a graph G containing 2n nodes based on their respective inputs. For each index x i we have two nodes v 1,i , v 2,i and Alice adds the edge {v 1,i , v 2,i } iff x i = 1. For each edge {y i 1 , . . . , y i t } ∈ M. Bob adds a t-clique consisting of the nodes v 2,i 1 , . . . , v 2,i t . Alice now runs a streaming algorithm approximating the size of the maximum matching and sends the memory of the streaming algorithm to Bob. Bob then computes a 1 + 1 3t/2−1 − ε estimation of the maximum matching size of G. In the following we show that this approximation is sufficient to distinguish between the cases M x = 0 n/t or M x = 1 n/t . This in turn shows that the memory of the message sent by Alice, i.e. the space requirement of the streaming algorithm is lower bounded by B H H 0 t,n . We first consider the case where t is odd. We know that the maximum matching of G is at least n/2 because x has exactly n/2 ones. Since Bob adds a clique v 2,i 1 , . . . , v 2,i t for every hyperedge {y i 1 , . . . , y i t } ∈ M it is always possible to match all (or all but one) nodes v 2,i of the clique whose corresponding bit is 0. In the case of M x = 0 n/t the parity of every edge is 0, i.e., the number of nodes whose corresponding bit is 1 is even. Let M 2i ⊆ M be the hyperedges containing exactly 2i one bits and define l 2i := |M 2i |. Then we know n/2 = t/2 i=0 2i · l 2i and |M| = n/t = t/2 i=0 l 2i . For every hyperedge in M 2i the size of the maximum matching within the corresponding subgraph of G is exactly 2i + (t −2i)/2 = 2i + t/2 −i for every i = 0, . . . , t/2 (see Fig. 3). Thus, we have a matching of size If we have M x = 1 n/t then let M 2i+1 ⊆ M be the hyperedges containing exactly 2i +1 one bits and define l 2i+1 := |M 2i+1 |. Again, we know n/2 = t/2 i=0 (2i +1)·l 2i+1 and |M| = n/t = t/2 i=0 l 2i+1 . For every edge in M 2i+1 the size of the maximum matching within the corresponding subgraph is exactly 2i +1+(t −2i −1)/2 = 2i +1+ t/2 −i for every i = 0, . . . , t/2 . Thus, the maximum matching has a size t/2 For t even, the size of the matching is if M x = 0 n/t . Otherwise, we have As a consequence, every streaming algorithm that computes an α-approximation on the size of a maximum matching with α < (3/4)n ((3/4) − 1/(2t))n = 1/(1 − 4/6t) = 1 + 1 3t/2 − 1 can distinguish between M x = 0 n/t and M x = 1 n/t and, thus, needs (n 1−1/t ) space.
Using the relationship between rank and Tutte-matrix established by Theorem 13 and 14, we can now prove the following corollary.
Proof Given an instance of B H H 0 t,n , Alice and Bob construct the adjacency matrix as described in Theorem 4. They further choose each entry of the Tutte-matrix uniformly at random from [n 2 ] from public randomness. Then approximating the rank of the Tutte-matrix within a factor 1 + 1 3t/2−1 − ε approximates the matching within the same factor and solves B H H 0 t,n .