## Approximation Bounds For Minimum Degree Matching

## Bert Besser /star

Institut für Informatik, Goethe-Universität Frankfurt am Main, Germany

Abstract. We consider the MinGreedy strategy for Maximum Cardinality Matching. MinGreedy repeatedly selects an edge incident with a node of minimum degree. For graphs of degree at most ∆ we show that MinGreedy achieves approximation ratio at least ∆ -1 2 ∆ -3 in the worst case and that this performance is optimal among adaptive priority algorithms in the vertex model, which include many prominent greedy matching heuristics.

Even when considering expected approximation ratios of randomized greedy strategies, no better worst case bounds are known for graphs of small degrees.

Keywords: matching, greedy, approximation, priority algorithm.

## 1 Introduction

In the Maximum Cardinality Matching Problem a node disjoint subset of edges of maximum size is to be determined. Matching problems have many applications, e.g. image feature matching in computer vision or protein structure comparison in computational biology.

A maximum matching can be found in polynomial time, e.g. by the algorithm of Micali and Vazirani [MV80] running in time O ( √ | V | · | E | · α ( | E , V | | | )) where α ( | E , V | | | ) is the inverse Ackermann function [Vaz12]. The algorithm of Mucha and Sankowski [MS04] runs asymptotically faster on dense graphs, its runtime is O V ( | | ω ) where ω &lt; 2 38 . is the exponent needed to perform matrix multiplication.

However, there are much faster greedy algorithms that in practice compute very large matchings, even near optimal ones. Very good approximate solutions may already be satisfactory in some applications. If maximum matchings are needed, one can save lots of runtime when feeding large greedy matchings into optimal algorithms which iteratively improve an initial solution.

MinGreedy . The (randomized) MinGreedy algorithm computes a matching M by repeatedly picking edges incident to nodes of currently minimum degree, see Figure 1. MinGreedy can be implemented in linear time O V ( | | + | E | ) .

The experimentally observed approximation performance is quite impressive. Tinhofer [Tin84] observed that on random graphs of varying density MinGreedy performed superior to Greedy (which randomly selects an edge) and to MRG (which randomly selects a node and subsequently an incident edge). In experiments of Frieze et al. [FRS93] on random cubic graphs MinGreedy left only about 10 out of 10 6 nodes unmatched. On random graphs of small constant

/star Partially supported by DFG SCHN 503/6-1.

```
        M = 0
        repeat until all edges removed from input graph:
            select (random) node u of minimum non-zero degree
            select (random) neighbor v of u
            pick edge {u,v}, i.e. set M = M \c{{u,v}}
            remove all edges incident with u and v from input graph
        return M

                First 1 The randomized MInstCDestroy algorithm
```

Fig. 1. The (randomized) MinGreedy algorithm

average degree Magun [Mag97] observed that MinGreedy produces extremely few 'lost edges' in comparison with an optimal solution.

In an involved argument, Frieze et al. [FRS93] showed that c 1 · n 1 5 ≤ λ n ≤ c 2 · n 1 5 · ln( n ) holds ( c 1 , c 2 being constants) for the expected number λ n of nodes not being matched by MinGreedy on random n -node cubic graphs.

Whereas the performance of MinGreedy on random instances is very good, its worst case performance is poor. Poloczek [Pol12] constructed hard input instances on which MinGreedy (and common variations of the algorithm) achieves approximation ratio at most 1 2 + (1) o w.h.p.

MRG Greedy , &amp; Shuffle . The Modified Random Greedy algorithm, abbreviated MRG in literature, ignores node degrees and repeatedly selects a node and then a neighbor uniformly at random. The expected approximation ratio was shown to be at least 1 2 + 1 400 000 . by Aronson et al. [ADFS95].

The random edge algorithm Greedy repeatedly selects an edge uniformly at random. For graphs with degrees bounded by ∆ an expected lower bound on the approximation ratio of ∆ 2 ∆ -1 was shown by Dyer and Frieze [DF91] and later improved by Miller and Pritikin [MP97] to 1 2 ( √ ( ∆ -1) 2 +1 -∆ +2) . If Greedy prefers edges of degree-1 nodes, the KarpSipser algorithm is obtained, which is asymptotically optimal w.h.p. on large sparse random graphs [KS81].

The Shuffle algorithm, proposed by Goel and Tripathi [GT12], is an adaptation of the Ranking algorithm of Karp et al. [KVV90] to non-bipartite graphs. Shuffle selects a random permutation π of the nodes and repeatedly matches the, according to π , first non-isolated node to its first unmatched neighbor. Chan et al. [CCWZ14] showed that Shuffle achieves an approximation ratio of at least 2 · (5 -√ 7) / 9 ≈ 0 523 . .

Inapproximability. To show performance bounds for greedy algorithms, Borodin et al. [BNR02] proposed the model of adaptive priority algorithms . The model formalizes the greedy nature of an algorithm: while gathering knowledge about the input, irrevocable decisions have to be made to construct a solution.

Davis and Impagliazzo [DI04] introduced the vertex model to study adaptive priority algorithms for graph problems. Adaptive priority algorithms in the vertex model for the matching problem, which we call APV -algorithms, implement powerful node and edge selection routines. In particular, in each step a node v and an incident edge is not picked arbitrarily but based on all knowledge already gathered about v and its neighbors, e.g. is a neighbor matched or unmatched,

what is the degree of a neighbor, what are the neighbors of a neighbor, etc. APV -algorithms include Greedy , KarpSipser , MRG MinGreedy , , Shuffle and all vertex iterative algorithms, a class of algorithms defined in [GT12] as a generalization of Shuffle .

Despite the strength of APV -algorithms, Poloczek [Pol12] constructed rather simple graphs with worst case approximation ratio at most 2 3 . (He also showed an inapproximability bound of 5 6 for randomized priority algorithms.) Presented in the same thesis, for graphs with arbitrarily large degree Besser and Poloczek showed that no APV -algorithm achieves worst case approximation ratio better than 1 2 + (1) o .

Contributions. From now on we reserve the name MinGreedy for the deterministic version of MinGreedy in which a node of minimum degree and an incident edge is picked by a worst case adversary.

We show that MinGreedy approximates an optimal matching within a factor of ∆ -1 2 ∆ -3 for graphs in which degrees are bounded by at most ∆ . In the proof we analyze a variant of MinGreedy which is also related with the KarpSipser algorithm.

We also show that the worst case approximation performance of MinGreedy is optimal for (deterministic) APV -algorithms. In particular, we improve the construction of Besser and Poloczek given in [Pol12] and present hard input instances of degree at most ∆ for which any APV -algorithm computes a matching of size at most ∆ -1 2 ∆ -3 + (1) o times optimal.

Our worst case performance guarantees are stronger than the best known bounds on the expected performance of MRG and Shuffle ( 1 2 + 1 400 000 . resp. ≈ 0 523 . ), for small ∆ , and of Greedy ( ≈ 0 618 . for ∆ =3 ), for all ∆ .

Techniques. For our performance guarantees for MinGreedy we study the matching graph composed of the edges of a matching M , computed by MinGreedy , and of a maximum matching M ∗ . The connected components are alternating paths and cycles. Only paths of length three have poor 'local' approximation ratio (of M -edges to M ∗ -edges). To obtain a global performance guarantee, we balance local approximation ratios by transferring ' M -funds' from rich to poor components using edges of the input graph.

Incorporating the properties of MinGreedy within an amortized analysis is our technical contribution.

Overview. In Section 2 we present the charging scheme used to prove the performance guarantees for MinGreedy . In Section 3 we show our 2 3 bound for graphs of degree at most ∆ = 3 . For graphs of degree at most ∆ ≥ 4 we present in Section 4 our performance guarantee of ∆ -1 2 ∆ -3 . Our inapproximability results for APV -algorithms are given in Section 5.

## 2 The Charging Scheme

The Matching Graph. Let G = ( V, E ) be a connected graph, M ∗ a maximum matching in G and M a matching computed by MinGreedy when applied to input G . To analyze the worst case approximation ratio of MinGreedy we investigate the graph

$$H = ( V, M \cup M ^ { * } ) \,. \, \\ e \ r r \quad.$$

The connected components of H are paths and cycles composed of edges of M and M ∗ . For example, H contains so-called ( M -)augmenting paths , or paths for short: an augmenting path X has m X edges of M and m ∗ X = m X +1 edges of M ∗ and starts and ends with an M ∗ -edge:

We call the two nodes of a path X which do not have an incident M -edge the endpoints of X (the leftmost and the rightmost node in the figure). Other connected components of H are edges of M ∩ M ∗

$$\begin{matrix} \end{matrix}$$

which we call singletons . For a singleton X we have m X = m ∗ X = 1 . We may focus on these two component types:

Lemma 1. There is a maximum matching M ∗ in G such that each connected component of H is a singleton or an augmenting path.

Proof. Let M ′ be a maximum matching in G = ( V, E ) and let MinGreedy compute the matching M . We show how to transform M ′ into M ∗ . The connected components of the graph ( V, M ∪ M ′ ) are singletons and alternating paths and cycles, where a path starts and ends with an M -edge or M ′ -edge and a cycle does not have path endpoints. To prove the statement we eliminate paths starting and ending both with an M -edge, paths starting and ending with different types of edges, and cycles. There is no path X of the first type, since if there was, then we could replace the m ′ X many M ′ -edges of X with the m ′ X +1 many M -edges of X to obtain a matching larger than M ′ . In a component X of the latter types we replace the M ′ -edges of X with the M -edges of X : component X is replaced by m X many singletons. /intersectionsq /unionsq

Local Approximation Ratios. To bound the approximation ratio

$$\alpha = | M | / | M ^ { * } |$$

of MinGreedy , our approach is to bound local approximation ratios

$$\alpha _ { X } = m _ { X } / m _ { X } ^ { * } \,,$$

of components X of H . Observe that a 1 2 -path X

$$\cdot$$

i.e. an augmenting path with m X = 1 edge of M and m ∗ X = 2 edges of M ∗ , has local approximation ratio α X = 1 2 , while all other components have local approximation ratios at least 2 3 . In particular, a singleton X has optimal local approximation ratio α X = 1 . Thus we have to balance local approximation ratios. For any component X , we say that X has M -funds m X and we introduce a change t X to the M -funds of X such that the changed local approximation ratio of X is lower bounded by

$$\alpha _ { X } = \frac { m _ { X } + t _ { X } } { m _ { X } ^ { * } } \stackrel {! } { \geq } \beta$$

for appropriately chosen β . If ∑ X X t = 0 holds, then the total M -funds ∑ X m X + t X = ∑ X m X = | M | are unchanged and hence MinGreedy achieves approximation ratio at least

$$\alpha = | M | / | M ^ { * } | = \left ( \sum _ { X } m _ { X } + t _ { X } \right ) / | M ^ { * } | \geq \left ( \sum _ { X } \beta m _ { X } ^ { * } \right ) / | M ^ { * } | = \beta \,.$$

Fig. 2. An augmenting path with transfers to its path endpoints and from its M -covered nodes. Not all F -edges are used to move M -funds.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-deaa372a-27f7-4bff-903c-e2fcddbff6f6.jpg)

Transferring M -Funds. The idea is to transfer M -funds from rich components to poor components: as an example, we could transfer M -funds from a singleton to a 1 2 -path. But which components should be involved in a transfer?

Observe that an augmenting path endpoint w is detrimental to its augmenting path X , since w decreases the local approximation ratio of X . So a transfer should push M -funds towards poor w from a rich M -covered node.

Since the G -neighbors of w are M -covered (otherwise M would not be maximal), our approach is to move M -funds to w from G -neighbors of w which belong to other components: M -funds are moved over certain edges in

$$F \coloneqq E \, \langle M \cup M ^ { * } )$$

which connect the components of H , see Figure 2 for an illustration. We verify that a poor component, in particular a 1 2 -path, is able to receive M -funds:

Lemma 2. An augmenting path endpoint w is incident with F -edge, since the degree of w in G is at least

$$d _ { G } ( w ) \geq 2 \,.$$

Proof. When MinGreedy picks the first M -edge of the augmenting path of w , a node of degree at least two is selected (with an incident M -edge and M ∗ -edge). So w also has degree at least two and is incident not only with its M ∗ -edge. /intersectionsq /unionsq

When transferring M -funds over all F -edges we face the danger of augmenting path endpoints having large degree and drawing very large amounts of M -funds: rich components might become poor and now have too small local approximation ratio. The following definition prevents high degree path endpoints from wasting M -funds.

Definition 1. Let w be an augmenting path endpoint. Edge { v, w } ∈ F is a transfer if in the step of MinGreedy matching v the degree of w drops to at most d w ( ) ≤ 1 . A transfer moves one coin with value θ from the component of v to the component of w .

We frequently denote a transfer { v, w } as ( v, w ) to stress its direction. In order to refer to transfers from/to a given component X , we also call ( v, w ) a debit from v and a credit to w . I.e., debits from a component are transfers directed from its M -covered nodes, credits to an augmenting path are transfers directed to its path endpoints.

Bounding Local Approximation Ratios. Let X be a component of H and denote the numbers of debits and credits of nodes of X by d X respectively c X . We call c X -d X the balance of X . 1 Given an upper bound on the debits from X and a lower bound on the credits to X , we obtain a bound on the balance of X of at least

$$c _ { X } - d _ { X } \geq T _ { X } \,.$$

Whenever we move M -funds over an edge { v, w } ∈ F , we transfer an amount θ of M -funds to the augmenting path endpoint w using one coin. Hence the local approximation ratio of X is at least

$$\alpha _ { X } = \frac { m _ { X } + \theta c _ { X } - \theta d _ { X } } { m _ { X } ^ { * } } \geq \frac { m _ { X } + \theta T _ { X } } { m _ { X } ^ { * } } \,.$$

In the analysis we find T X and θ such that α X ≥ β for all components. Hence MinGreedy computes matchings of size at least β times optimal.

1 Previous versions of this work use the notion of total debits of a component X , which are defined as d X -c X . This notion is equivalent to the notion of the balance of X .

## 2.1 Balance Bounds

For each path X we demand the following: both nodes of each M -edge { x, x ′ } of X pay at most

$$d _ { \{ x, x ^ { \prime } \} } \leq 2 ( \Delta - 2 ) & & ( - \text{Edge} )$$

coins and X receives at least

$$c _ { X } \geq 2 \quad \quad \quad \left ( + \text{Endpoints} \right )$$

coins. Therefore, the minimum balance of path X is 2 -D X for D X := 2 m X ( ∆ -2) . In particular, bounds ( -Edge) and ( + Endpoints) are bounds on numbers of coins and not on numbers of transfers: we demand that both hold w.r.t. transfers as well as donations , the latter of which are another way to move coins that we introduce later.

To show that all components have local approximation ratio at least ∆ -1 2 ∆ -3 we will verify balance bounds

$$- d _ { X } \ & \geq - 2 ( \Delta - 1 ) \ + \ 2 \quad \text{ for any singleton } X \text{ and } \left ( \pm \text{Singleton} \right ) \\ c _ { X } - d _ { X } \ & \geq \ 2 - D _ { X } \quad \ + \ 2 ( \Delta - 2 ) \quad \text{ for any path } X. \quad \ \left ( \pm \text{Path} \right )$$

Lemma 3. If balance bounds ( ± Singleton) and ( ± Path) hold then all components have local approximation ratio at least ∆ -1 2 ∆ -3 .

Proof. Choose θ = 1 2(2 ∆ -3) . Using ( ± Singleton), the local approximation ratio of a singleton X is at least 1+ ( θ c X -d X ) 1 ≥ 1 -2 ( θ ∆ -2) , which in turn equals

$$1 - 2 \theta ( \Delta - 2 ) \ = \ 1 - \frac { 2 ( \Delta - 2 ) } { 2 ( 2 \Delta - 3 ) } \ = \ \frac { \Delta - 1 } { 2 \Delta - 3 } \,.$$

Therefore each singleton has local approximation ratio at least ∆ -1 2 ∆ -3 .

Using ( ± Path), we get that the local approximation ratio of a path X is at least

$$\frac { m _ { X } + \theta ( c _ { X } - d _ { X } ) } { m _ { X } ^ { * } } & \geq \frac { m _ { X } - 2 \theta m _ { X } ( \Delta - 2 ) + 2 \kappa ( \Delta - 1 ) } { m _ { X } + 1 } \\ & = 1 - 2 \theta ( \Delta - 2 ) + \frac { 2 \theta ( 2 \Delta - 3 ) - 1 } { m _ { X } + 1 } \\ & = 1 - 2 \theta ( \Delta - 2 ) \,, \\ \intertext { a k k e n d e r } \omega \, \colon = \, \Phi ( \Delta + 2 ) \,,$$

which by (1) is bounded by at least ∆ -1 2 ∆ -3 as well, i.e. all paths have local approximation ratio at least ∆ -1 2 ∆ -3 . /intersectionsq /unionsq

## 2.2 Organisation of the Proof of ( ± Singleton) and ( ± Path)

Consider the 1-2-MinGreedy algorithm given in Figure 3. Observe that a sequence of edges picked by the (deterministic) MinGreedy algorithm is a valid sequence of edges to be picked by 1-2-MinGreedy . Therefore 1-2-MinGreedy achieves no better worst case approximation ratio than MinGreedy and obtaining performance guarantees for 1-2-MinGreedy implies the same approximation performance for MinGreedy .

Note that 1-2-MinGreedy can also be understood as a refined variant of the (deterministic) KarpSipser algorithm, which selects an arbitrary edge whenever all degrees are at least two and otherwise selects an arbitrary node of minimum degree, i.e. of degree one, and matches it with an arbitrary neighbor.

```
        M = 0
        repeat until all edges removed from input graph:
            if each node has degree at least 3:
                select (arbitrary) edge {u,v}
            else:
                select (arbitrary) node u of minimum non-zero degree
                select (arbitrary) neighbor v of u
            pick edge {u,v}, i.e. set M = M \U {{u,v}}
            remove all edges incident with u and v from input graph
        return M

                Fig. 3. The (deterministic) 1-2-MINGREEDY algorithm
```

Fig. 3. The (deterministic) 1-2-MinGreedy algorithm

We prepare the proof with some basic observations in Section 2.3. Then, for 1-2-MinGreedy we verify bounds ( -Edge), ( + Endpoints), ( ± Singleton), and ( ± Path) for graphs of maximum degree ∆ = 3 in Section 3, where our argument will rely on transfers only. In Section 4 we analyze graphs of maximum degree ∆ ≥ 4 , where we will introduce donations as an additional way to move coins.

## 2.3 Preparations

Since transfers move coins from M -covered nodes over F -edges to adjacent path endpoints, the following bounds on the number of outgoing and incoming transfers are an immediate consequence.

In particular, the following bounds imply ( -Edge) as well as ( + Endpoints) in case coins are moved only in transfers but not in donations.

## Lemma 4. Let an M -edge { u, v } be given.

{ } -

If { u, v } is the edge of a singleton, then both nodes pay at most 2( ∆ -1) debits. If u, v is a path M -edge, then both nodes pay at most 2( ∆ 2) debits.

Proof. Since only F -edges can be transfers, it suffices to bound the number of F -edges incident with each of u and v . Each M -covered node of a singleton is incident with at most ∆ -1 many F -edges. Each M -covered node of a path is incident with at most ∆ -2 many F -edges. /intersectionsq /unionsq

Lemma 5. Let w be an endpoint of path X . Endpoint w receives at least one credit. Path X receives at least c X ≥ 2 credits.

Proof. Let d G ( w ) denote the degree of w in G and denote the current degree of w by d w ( ) . By Lemma 2 we have d G ( w ) ≥ 2 .

If d w ( ) = 2 holds, then an F -edge incident with w gets removed and we obtain c w ≥ 1 .

Since w is a path endpoint, node w never gets matched. Consider the step when the degree of w drops from d w ( ) to 0, where d w ( ) ∈ { 1 2 , } .

If d w ( ) = 1 holds, then either an F -edge incident with w gets removed and we have c w ≥ 1 , or the M ∗ -edge of w gets removed. In the latter case the degree of w dropped from d G ( w ) ≥ 2 to d w ( ) = 1 when an F -edge incident with w was removed, and again we have c w ≥ 1 .

Finally, observe that since path X has two endpoints, path X receives at least c X ≥ 2 credits. /intersectionsq /unionsq

## 3 Maximum Degree ∆ = 3

In this section we show

Theorem 1. The 1-2-MinGreedy algorithm achieves approximation ratio at least ∆ -1 2 ∆ -3 = 2 3 for graphs of maximum degree ∆ = 3 .

In the proof we verify ( ± Singleton) and ( ± Path), which for ∆ = 3 reduce to

$$- d _ { X } & \geq - 2 & \quad \text{ for each singleton } X \text{ and } \quad ( \pm \text{Singleton} ^ { 3 } ) \\ c _ { X } - d _ { X } & \geq 2 - 2 m _ { X } + 2 & \quad \text{ for each path } X. \quad \text{ ( \pm \text{Path} ^ { 3 } ) } \\ \wedge \cdot \quad \dots \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot$$

Coins will be moved using transfers only. Therefore ( -Edge) and ( + Endpoints) hold: in case only transfers are used, we have already verified both bounds in Lemmas 4 and 5.

## 3.1 Two Debits are Missing

Recall that the minimum balance of a singleton X is -2( ∆ -1)= -4 , i.e. singleton X pays at most four debits. Our plan to verify ( ± Singleton ) is to show 3 that X pays two debits less than maximum: we say that two debits are missing .

Similarly, the minimum balance of a path X is 2 -D X = 2 -2 m X , where D X is the maximum number of debits payed by X . Again, if X has two missing debits then X is balanced as required in ( ± Path ). However, it might be the case that 3 X has less than two missing debits. In this case the balance of X will be increased by additional credits.

Organization of the Proof. We start with the proof of two missing debits for singletons in Lemma 6 (in Lemma 6 c), in particular); this result concludes the proof of ( ± Singleton ). 3

More generally, Lemma 6 also applies to paths and identifies those cases in which paths have two missing debits as well. Lemma 6 also prepares the analysis of the special case in which a path X has less than two missing debits: we will argue that X has exactly one missing debit and in Lemma 7 in Section 3.2 we prove that the extra debit is compensated by an additional credit to X . Hence Lemmas 6 and 7 conclude the proof of ( ± Path ). 3

Lemma 6. Assume that degrees are bounded by at most ∆ = 3 . Consider the creation step of component X , and assume that the 1-2-MinGreedy algorithm selects node u with current degree d u ( ) . Component X has two missing debits if

- a) we have d u ( ) = 1
- b) we have d u ( ) = ∆ = 3
- c) component X is a singleton.

Proof. Let X be created in step s when u is matched with, say, node v . If neither u nor v pays a debit, then two debits are missing and we are done. Hence in the rest of the proof we may assume that at least one of u and v pays a debit, which we denote by ( x, w ) for x ∈{ u, v } .

We prove a). If d u ( ) = 1 holds at step s , then no F -edges are incident with u . Hence u has two missing debits by Definition 1.

/negationslash

We prove b). Since ( x, w ) is a transfer, step s removes edge { x, w } from G and after step s the degree of w is d ′ ( w ) ≤ 1 . Observe that in step s at most two edges incident with w are removed. Since the degree of w is at least d w ( ) ≥ d u ( ) = 3 before step s , we have d ′ ( w ) = 1 at step s + 1 . But since endpoint w is never selected, another degree-1 node y = w is selected next in step s + 1 . Observe that the degree of y also drops from d y ( ) = 3 to d ′ ( y ) = 1 in step s , namely when incident edges { u, y } and { v, y } are removed.

/negationslash

- -If y belongs to a component Y = X other than X , then both { u, y } and { v, y } are F -edges. But { u, y } and { v, y } are not debits, since u, v and y are M -covered. Hence we have found a missing debit for each of u and v .
- -If y is a node of X (note that in this case X must be a path), then nodes u, v , and y form a triangle and one of { u, y } and { v, y } , say { u, y } , is an F -edge. Since both u and y are M -covered, edge { u, y } is not a transfer and hence both u and y have a missing debit.

We prove c). We may assume that d u ( ) = 2 holds at creation of singleton X , since a) and b) apply in particular to singletons. Observe that a debit is missing from node u . In order to obtain a contradiction, we assume that this is the only missing debit from X . Consequently, node u pays exactly one debit, say to w u , and v pays exactly two debits, say to w v and w ′ v .

Since at creation of X node u has degree d u ( ) = 2 and is adjacent to v , node u is adjacent to at most one of w v and w ′ v . Since edges { u, w u } , { v, w v } , and { v, w ′ v } are transfers, Definition 1 implies that the degrees of w u , w v and, w ′ v are at most 1 after step s . We distinguish two cases.

- -If u is adjacent to neither w v nor w ′ v , then w u , w v , and w ′ v have degree exactly 1 after step s : their degrees were at least the minimum degree of d u ( ) = 2 before { u, v } was picked, and their degrees dropped to at most one afterwards.
- -Now consider the case that u is adjacent to w v or w ′ v , say w u = w v holds. Then the degree of w ′ v drops by at most one when edge { u, v } is picked, and hence w ′ v has degree exactly 1 afterwards.

In both cases, no other degrees than those of w , w u v , and w ′ v dropped in step s . Since in step s +1 one of these endpoints has degree exactly one, one of w u , w v , or w ′ v is selected and matched next. A contradiction, since path endpoints are never matched by 1-2-MinGreedy . /intersectionsq /unionsq

## 3.2 One Missing Debit and an Additional Credit

To finish the proof of Theorem 1 it remains to verify ( ± Path ) for any given 3 path X . Recall that the balance of X is at least c X -d X ≥ 2 -D X = 2 -2 m X .

To prove a balance of at least c X -d X ≥ 2 -2 m X +2 it suffices to show that two debits are missing for X .

!

Since by Lemma 2 path X is created in a step selecting a node u of current degree d u ( ) ≥ 2 , we analyze the cases that in the creation step of X we have d u ( ) = 2 or d u ( ) = 3 .

In the latter case, two debits are missing by Lemma 6 b). Hence, for the rest of the proof we may assume that d u ( ) = 2 holds. Observe that no F -edge is incident with u when being selected, hence a debit is missing for u .

If an additional debit is missing for X , then we are done once again. So assume from here on that the only missing debit for X is missing for u . Then d X = D X -1 = 2 m X -1 holds. Rather than proving a contradiction, in Lemma 7 we show that X receives at least three credits: we obtain c X -d X ≥ 3 -2 m X +1 , as required in ( ± Path ). 3

Lemma 7. Assume that degrees are bounded by at most ∆ = 3 . Let X be a path which pays d X = 2 m X -1 debits. Then X receives at least c X ≥ 3 credits.

Proof. We assume that c X &lt; 3 holds and show a contradiction.

By assumption and as a consequence of Lemma 5, each endpoint of X receives exactly one credit. Moreover, we have already argued before Lemma 7 that the node u selected to create X has degree d u ( ) = 2 at creation, and that u has the only missing debit of X . Consequently, all other M -covered nodes of X have exactly one debit, since d X = 2 m X -1 holds. Let u be matched with node v .

/negationslash

First we consider the case that X is a 1 2 -path with m X = 1 . Let w u and w v be the endpoints of X such that we have { u, w u } { , v, w v } ∈ M ∗ . Note that this implies w u = w v . Node v pays the only debit, say to the path endpoint y . Observe that in the creation step of X the degrees of w , w u v , and y all drop, and no other degrees drop.

If the degree of w v is still at least two after X was created, then w v receives two credits over two still incident F -edges. A contradiction to our assumption that c X &lt; 3 holds.

Hence we may assume from here on that after creation of X the degree of w v is at most d ′ ( w ) ≤ 1 . But when { u, v } is picked we have d u ( ) = 2 , i.e. endpoint w v is not incident with u and the degree of w v drops by at most one. Consequently, endpoint w v has degree exactly d ′ ( w ) = 1 after creation, which is the new minimum degree in the graph. But since only the degrees of w , w u v , and y dropped in the creation step, one of w , w u v and y is matched in the next step. A contradiction is obtained since path endpoints are never matched. The possible configurations are depicted in Figure 4.

Fig. 4. Creating a 1 2 -path which pays one debit and receives exactly two credits: dashed endpoints have degree one after u and v are matched (not all edges are drawn)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-1ac843c8-050a-4f35-8d0a-c62dca72e638.jpg)

Nowconsider the case that path X has m X ≥ 2 edges of M . After edge { u, v } is picked in the creation step of X , at least one path endpoint w of X is still connected with its unique M ∗ -neighbor, call it x . We consider the step when x becomes matched, say with its M -neighbor x ′ . In this step, we denote the current degree of a node z as d z ( ) .

Recall that x pays a debit, say to endpoint y . Since w and y are endpoints and are thus never matched, both w and y are not yet isolated. Thus node x is still connected with x , w ′ , and y and has degree at least d x ( ) ≥ 3 .

Also, we may assume that w has degree at most d w ( ) ≤ 2 . To see this, assume that the degree of w is still ∆ = 3 and observe that the two F -edges incident with w become credits, which contradicts our assumption that c X &lt; 3 holds.

Moreover, we argue that the degree of w is exactly d w ( ) = 2 . Why? Recall that u has the only missing debit from X . Hence x ′ pays a debit, i.e. node x ′ is adjacent to an endpoint of an path. Since x ′ is also adjacent to x , node x ′ has degree at least d x ( ′ ) ≥ 2 . But the degree of x ′ is not larger than the degree d w ( ) of w , i.e. it is at most d x ( ′ ) ≤ d w ( ) ≤ 2 . Therefore the degree of x ′ is exactly d x ( ′ ) = 2 . Consequently, endpoint w has degree exactly d w ( ) = 2 as well.

All still present neighbors of x and x ′ are endpoints of paths, and only their degrees drop when edge { x , x ′ } is picked. The possible configurations are depicted in Figure 5. We distinguish two cases.

- -If x ′ is not adjacent to w , then the degree of w drops by exactly one to exactly (the three leftmost configurations in Figure 5). Hence either w or another path endpoint is selected in the next step. A contradiction, since a path endpoint is never matched.
- -Lastly, assume that x ′ and w are adjacent (the rightmost configuration in Figure 5). Then w becomes isolated in that step. We consider the recipient y of the debit from x . Since x ′ is adjacent to w and x and has degree exactly d x ( ′ ) = 2 , endpoint y is not adjacent to x ′ . Therefore the degree of y drops by exactly one. Since the degree of y drops from at least d y ( ) ≥ 2 to at most 1 , by Definition 1 we get that the degree of y is exactly 1 in the next step. Furthermore, endpoint y is now the only degree-1 node. Hence y is selected and matched next. A contradiction, since y is a path endpoint.

/intersectionsq

/unionsq

Fig. 5. Removing the last M ∗ -edge at an end of a path: dashed endpoints have degree one after x and x ′ are matched (not all edges are drawn)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-f7ee3d7f-14a2-49ac-843c-41472bee2803.jpg)

## 4 Maximum Degree ∆ ≥ 4

In this section we show

Theorem 2. The 1-2-MinGreedy algorithm achieves approximation ratio at least ∆ -1 2 ∆ -3 for graphs of maximum degree ∆ ≥ 4 .

In the proof we have to verify bounds ( -Edge), ( + Endpoints), ( ± Singleton), and ( ± Path). First, we recall these bounds in an overview of how we refine the analysis applied for ∆ = 3 . In particular, the overview is structured so as to highlight the two main concepts used in our analysis.

Since ∆ is now larger than 3 , a path endpoint might receive more credits than for ∆ = 3 . However, extra transfers degrade the balance of their source

- -Canceling Transfers components.

To annihilate this drawback we cancel extra transfers: certain transfers as per Definition 1 will no longer move coins. The discussion is found in Section 4.1.

-

In particular, we carefully cancel transfers such that Lemma 5 still applies: each endpoint of a path X still receives at least one credit. Consequently, bound ( + Endpoints) of at least

$$c _ { X } \geq 2 \text{ \quad \ \ } \text{(+Endpoints)}$$

credits to X will be satisfied.

Donations

We discuss how to make a path X balanced. Assuming that ( + Endpoints) and ( -Edge) hold, i.e. that the minimum balance of X is c X -d X ≥ 2 -D X , observe that

$$c _ { X } - d _ { X } \geq 2 - D _ { X } + 2 ( \Delta - 2 ) \text{ \quad \ \ } ( \pm \text{Path} )$$

holds if X has at least 2( ∆ -2) missing debits. However, we will see that the number of missing debits from X might smaller, even as small as a constant. To increase the balance of X we introduce a donation to X , which will compensate excessively payed debits from X . Summing up, path X will have to pay 2( ∆ -2) debits less than maximum, as desired. Like transfers, donations are edges in F . The discussion is found in Section 4.2.

The balance of the source component Y of a donation is reduced, since coins have to be payed. Is Y balanced? If Y is a singleton, then we show that both nodes of Y pay at most

$$d _ { Y } \leq 2 ( \Delta - 2 ) & & ( \pm \text{Singleton} )$$

coins even if a donation must be payed. For a path Y we have to verify ( -Edge) for each M -edge { y, y ′ } of Y , i.e. we have to show that nodes y and y ′ pay at most

$$2 ( \Delta - 2 ) & & ( - \text{Edge} )$$

coins even if a donation must be payed.

Organization of the Proof. In Section 4.1 we introduce transfer cancellations and verify bound ( + Endpoints). Thereafter we discuss donations in Section 4.2. In Section 4.3 we develop bounds on the number of coins payed by edges with an outgoing donation. Finally, in Section 4.4 we show that all components are balanced by proving ( -Edge), ( ± Singleton), and ( ± Path).

## 4.1 Canceling Extra Transfers

Unlike for ∆ = 3 where each path endpoint has at most two incident F -edges and therefore receives at most two credits, for ∆ ≥ 4 we will see that a path endpoint might receive up to three credits. But extra credits decrease the balances of their source components. In order to push up their balances, we show how to cancel extra credits in Definition 2. Thereafter we verify ( + Endpoints) in Lemma 9.

Example. We prepare an example of an endpoint w which receives an extra credit. Assume that w receives k credits from nodes matched in steps 1 , . . . , s : in any step s + l with l ≥ 1 we say that w already receives k credits.

Consider Figure 6, where 1-2-MinGreedy begins by creating the ∆ -5 many 1 2 -paths drawn above path X , then proceeds to pick the two edges of X in steps ∆ -4 and ∆ -3 , and eventually picks the two singletons drawn left and right of X . Endpoint w receives three credits in total: in step ∆ -3 node w already receives two credits from the nodes matched to create path X , and afterwards w receives an additional credit.

Fig. 6. Endpoint w receives three credits from path X ( M -edges are numbered to indicate the order in which they are picked, where 1-2-MinGreedy selects fat nodes)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-6302802f-3ed8-4f53-acb2-51e13ddc1f09.jpg)

However, path X is not balanced. Why? Path X pays three debits to each of the ∆ -5 topmost 1 2 -paths, and receives only four credits from the two singletons. Hence the balance of X is as small as c X -d X = 4 -3( ∆ -5) , whereas balance at least c X -d X ≥ 2 -2 m X ( ∆ -2) + 2( ∆ -2) = 2 -2( ∆ -2) is required by ( ± Path).

The Definition. Therefore we cancel an extra credit to w , thereby limiting the number of credits to w to at most two (like for ∆ = 3 ). To prepare the definition we first analyze the exact 'configuration' of a path endpoint with more than two credits.

Lemma 8. As a consequence of Definition 1 of transfers,

- a) each path endpoint receives at most three credits, and
- b) path endpoint w receives three credits if and only if the the following holds: the degree of w drops
- i. from d w ( ) = 3 to d w ( ) = 1 when two incident F -edges are removed and
- ii. from d w ( ) = 1 to d w ( ) = 0 when the last incident F -edge is removed.

Proof. First we argue that an endpoint w receives less than three credits if there is a step s when the current degree of w is d w ( ) = 2 . By Definition 1, no F -edge of w removed before step s is a credit to w . Moreover, in step s at most two F -edges are still incident with w .

Consequently, if endpoint w receives at least three credits, then w never has current degree d w ( ) = 2 . This implies the following two facts. First, the degree of w in G is d G ( w ) ≥ 3 , since the degree of w in G is d G ( w ) ≥ 2 by Lemma 2. Secondly, there is a step when the current degree of w is d w ( ) = 3 : the degree d w ( ) of w never equals two, hence we get that d w ( ) drops from larger than d w ( ) &gt; 2 to below d w ( ) &lt; 2 , which is only possible if d w ( ) drops from exactly d w ( ) = 3 , since in each step at most two edges incident with w are removed.

- a) In the step when d w ( ) = 3 holds, by Definition 1 of transfers endpoint w still has zero credits. Hence only the remaining three incident edges can be transfer F -edges. Thus w receives at most 3 credits.
- b) In the step when d w ( ) = 3 holds, all remaining edges incident with w must be F -edges, since otherwise w would receive less than three credits. The statement follows, since we have already argued that w never has degree d w ( )=2 . /intersectionsq /unionsq

If endpoint w receives the maximum of three credits, then we cancel the 'third' credit, i.e. the one coming from a node getting matched in the step when the degree of w drops from one to zero, cf. Lemma 8 b) ii. (Observe that path X in Figure 6 is now balanced, since the debits from its rightmost M -covered node are canceled and therefore the balance c X -d X ≥ 4 -2( ∆ -5) &gt; 2 -2( ∆ -2) is now strictly larger than ( ± Path) requires.)

Definition 2. Let w be a path endpoint with current degree d w ( ) = 1 and one incident F -edge { v, w } . If w already receives two credits, then we cancel transfer ( v, w ) , i.e. edge { v, w } does not move coins.

The final set of transfers is given by Definitions 1 and 2. We are now ready to prove ( + Endpoints).

Lemma 9. a) Each path endpoint w receives at most two credits. An endpoint for which a credit was canceled receives exactly two credits.

- b) Each path endpoint w receives at least one credit. Therefore ( + Endpoints) holds.

Proof. a) is a direct consequence of Lemma 8 and Definition 2, since w receives at most three credits, and if so then the third credit is canceled. To prove b) we only have to consider path endpoints with less than two credits. In particular, we only have to study an endpoint w for which no credit was canceled, since by a) only such an endpoint can have less than two credits. Now observe that Lemma 5 applies to w , no matter if a credit was canceled for w or not: by Lemma 5 endpoint w receives at least one credit. /intersectionsq /unionsq

## 4.2 Moving Coins to Paths in Donations

We prepare the discussion and introduce some notation, which will also be used in the remainder of Section 4. Let X be a path and consider the creation step of X . We denote the current degree of a node x as d x ( ) . The nodes matched in the creation step are called u and v , where we assume that 1-2-MinGreedy selects u and matches u with neighbor v . In the next step, we denote the current degree of x as d ′ ( x ) , and we call the matched nodes u ′ and v ′ , where we assume that u ′ is selected and matched with neighbor v ′ .

Organization of this Section. We begin this section with an example of a path which pays many debits from nodes u and v . Thereafter, we sketch that nodes u ′ and v ′ are good candidates to compensate for the excessively payed debits from u and v . We conclude with the definition of donations-which move coins over F -edges-and a discussion of donation steps , i.e. the steps matching source nodes of donations.

Example. Recall that to verify ( ± Path) we would like to show that for each path at least 2( ∆ -2) debits are missing. However, even after canceling transfers a path might pay too many debits. In particular, the example in Figure 6 can be changed slightly as follows, see Figure 7: like in Figure 6 the 1-2-MinGreedy algorithm first creates the topmost ∆ -5 many 1 2 -path end creates the left and right singletons in the last two steps; however, in steps ∆ -4 and ∆ -3 the algorithm creates a 1 2 -path X and another singleton. Path X receives c X = 4 credits and pays d X = 2( ∆ -5) debits, i.e. its balance is c X -d X = 4 -2( ∆ -5) , whereas balance at least c X -d X ≥ 2 -2 m X ( ∆ -2) + 2( ∆ -2) = 2 is required by ( ± Path).

Sketch. Hence we have to provide more coins to an unbalanced path X . Therefore we focus on the creation step of X as well as on the following step. Recall that ( ± Path) holds if nodes u and v pay k = 0 debits, since then at least 2( ∆ -2) debits are missing in total. If nodes u and v pay

$$k > 0$$

coins over debits, then it will turn out that u ′ and v ′ have missing debits, which can be used to compensate for excessively payed debits from u and v . Depending on whether u ′ and v ′ belong to X or not we proceed as follows:

Fig. 7. A 1 2 -path X which pays too many debits ( M -edges are numbered to indicate the order in which they are picked, where 1-2-MinGreedy selects fat nodes)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-46f7bcf8-79e9-4c27-8e48-4f9172ab63cd.jpg)

- -If u ′ and v ′ belong to X , then the numbers of missing debits for u, v, u ′ and v ′ will add up to at least 2( ∆ -2) : the balance of X is c X -d X ≥ 2 -D X +2( ∆ -2) , as required in ( ± Path).

/negationslash

We call the step in which u ′ and v ′ are matched the donation step of X .

- -If otherwise u ′ and v ′ belong to another component Y = X , then without Y becoming unbalanced component Y will be able to donate k coins to u and v : the k debits payed by u and v are compensated and again the balance of X is increased by at least 2( ∆ -2) over 2 -D X .

Degree-1 Endpoints After Creation. We argue that debits are missing for u ′ and v ′ . Recall that we need only consider the case that a debit leaves u or v , say to endpoint w , since otherwise we have found sufficiently many missing debits for ( ± Path) to hold. Definition 1 of transfers requires that w has degree at most d ′ ( w ) ≤ 1 after the creation step of X . The key to our proof is:

endpoint w might have degree exactly d ′ ( w ) = 1 after creation of X .

Definition 3. Let X be a path being created when 1-2-MinGreedy selects node u and matches it with v . Assume that u or v pays a debit, say to endpoint w . If after creation of X endpoint w has degree exactly d ′ ( w ) = 1 , then we say that a degree-1 endpoint exists after creation of X .

Assume that a degree-1 endpoint exists after creation of X , call it w . Since endpoint w will never be matched, the 1-2-MinGreedy algorithm selects another degree-1 node, namely node u ′ , next. As desired, we have found missing debits for u ′ : since u ′ has degree d ′ ( u ′ ) = 1 when being selected, node u ′ pays zero debits by Definition 1.

In Lemma 10 we identify the 'configurations' in which a degree-1 endpoint exists after creation of a path. In particular, in Lemma 10 b) we identify the exact configurations in which no degree-1 endpoint exists after creation.

Lemma 10. Consider the creation step of path X , where nodes u and v are matched and 1-2-MinGreedy selects u with current degree d u ( ) . Assume that one of u or v pays a debit t , say to node w .

- a) If d u ( ) ≥ 3 holds, then a degree-1 endpoint exists after creation of X .
- b) If d u ( )=2 holds, then a degree-1 endpoint exists after creation of X , unless the following holds (see Figure 8 for an illustration of this exception):
- i. after creation of X endpoint w has degree d ′ ( w ) = 0 ,
- ii. at creation of X endpoint w has degree d w ( ) = 2 ,
- iii. no debit leaves u ,
- iv. debit t leaves v , i.e. we have t = ( v, w ) ,
- v. we have { u, w } ∈ M ∗ ,
- at creation of X all other endpoints w , . . . , w 1 k neighboring v (i.e. we have w / w , . . . , w ) have degree at least three, and
- vii. node v pays no other debits besides t .
- vi. ∈ { 1 k }

. . .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-3e48ab8d-e88a-479a-a8a7-fb853fcfe826.jpg)

. . .

Fig. 8. No degree-1 endpoint exists after creation of path X (the M ∗ -neighbor of v could be one of the w i )

Proof. By Definition 1, endpoint w has degree at most d ′ ( w ) ≤ 1 in the step after creation of X . Observe that before creation of X endpoint w is not isolated, since t is an incoming transfer and hence edge t is still incident with w .

a) If d u ( ) ≥ 3 holds, then the degree of w drops from at least d w ( ) ≥ 3 to at least d ′ ( w ) ≥ 1 , since at most two edges incident with w are removed. Hence w has degree exactly d ′ ( w ) = 1 after creation of X .

- b) Now assume that d u ( ) = 2 holds. Since we have d ′ ( w ) ≤ 1 after creation of X , to prove the statement we only need to study the case that no degree-1 endpoint exists after creation, i.e. that endpoint w has degree d ′ ( w ) = 0 after creation. Observe that i. holds and it remains to verify ii. to vii.
- ii. Endpoint w has degree d w ( ) = 2 at creation, since the degree is d w ( ) ≥ 2 by Lemma 2 and if the degree was at least d w ( ) ≥ 3 then it could not drop to d ′ ( w ) = 0 after creation, as is fact by i.
- iii. Since u has degree d u ( ) = 2 at creation of X , node u is not incident with an F -edge, as would be required in order to pay a debit.
- iv. Since debit t does not leave u by iii., debit t leaves v .
- v. Since in the creation step of X the degree of w drops by two, an edge connecting w with each of u and v is removed, and one of both edges must be the M ∗ -edge incident with w . But we have t = ( v, w ) , i.e. edge { v, w } is an F -edge. We obtain { u, w } ∈ M ∗ .
- vii. This follows from vi. Why? If all w i have degree at least three at creation of X , then no w i receives a transfer from v , since the degree of each w i drops by exactly one (recall that u is adjacent only with v and w ). Consequently, endpoint w receives the only transfer from v . /intersectionsq /unionsq
- vi. Observe that for each w i we have d ′ ( w i ) ≥ 1 after creation of X , since before creation of X we have d w ( i ) ≥ d u ( ) = 2 and w i is not connected with u . Since we assumed that no degree-1 endpoint exists after creation of X and w i is not isolated then, we obtain d ′ ( w i ) ≥ 2 . But an edge incident with w i is removed in the creation step of X . Hence we get d w ( i ) ≥ 3 .

The Definition of Donations. Donations will only be needed to move coins to paths for which a degree-1 endpoint exists after creation. Hence in the rest of this section we focus on this case. (In Lemma 18 we analyze the case that no degree-1 endpoint exists after creation.)

Assume that a degree-1 endpoint exists after creation of path X . Since u ′ is selected with current degree d ′ ( u ′ ) = 1 and hence pays zero debits, node u ′ is a preferred candidate to compensate the debits payed by u and v .

/negationslash

To prepare the definition of donations, in Lemma 11 we show that an edge e connecting u ′ with u or v is removed in the creation step of X . In particular, if a donation needs to be given to X from another component Y = X , then e is an edge in F .

Lemma 11. Assume that a degree-1 endpoint exists after creation of path X . The node u ′ selected next by 1-2-MinGreedy is

- a) an M ∗ -neighbor of u or v in X or
- b) an F -neighbor of u or v in a component Y = X .

/negationslash

Proof. After creation of X let w be a degree-1 endpoint. Since at creation of X all degrees are at least two, thereafter both degree-1 nodes w and u ′ lost an edge connecting to u or v . Hence node u ′ was connected to u or v by an M ∗ -edge or by an F -edge.

If u ′ was connected by an M ∗ -edge, then node u ′ belongs to X . This proves a).

To prove b), assume that u ′ is not an M ∗ -neighbor of u or v . Then u ′ was connected only by an F -edge with u or v . It remains to show that u ′ is not a node of X . To see this, observe that after creation of X all M -covered nodes of X (other than the M ∗ -neighbors of u and v ) have degree at least two and recall that u ′ is selected when it has degree d ′ ( u ′ ) = 1 . /intersectionsq /unionsq

/negationslash

Definition 4. Let nodes u and v be matched in the creation step of path X , where 1-2-MinGreedy selects node u with current degree d u ( ) . Assume that u and v pay k &gt; 0 debits. Let nodes u ′ and v ′ of component Y = X be matched in the donation step of X , where 1-2-MinGreedy selects u ′ with current degree d ′ ( u ′ )=1 . Denote the F -edge connecting u ′ with u or v as { u , x ′ } for x ∈ { u, v } .

- -If d u ( ) = 2 holds, then edge { u , x ′ } = { u , v ′ } is called a static donation and moves ∆ -3 coins to v .
- -If d u ( ) ≥ 3 holds, then edge { u , x ′ } is called a dynamic donation and moves k coins to x .

Donation { u , x ′ } is denoted as a bold directed edge ( u , x ′ ) from the paying node u ′ of Y to the receiving node x of X .

Soundness of the Definition. Recall that our proof of ( ± Path) crucially relies on bound ( -Edge), i.e. on the (yet unproven) fact that each M -edge of path X pays at most 2( ∆ -2) coins over outgoing debits and donations: in total, all M -edges of X pay at most D X = m X · 2( ∆ -2) coins. Since the endpoints of X receive at least c X ≥ 2 credits by ( + Endpoints), the balance of X is at least c X -d X ≥ 2 -D X . Our approach to use a donation to compensate all coins payed by nodes u and v implies that the balance of X is increased by at least 2( ∆ -2) : the balance is at least c X -d X ≥ 2 -D X +2( ∆ -2) , as required in ( ± Path).

But to develop our Definition 4 of donations we only considered coins payed by u and v over debits: if u or v pays a donation whose coins are not compensated, then our approach to verify ( ± Path) fails. However, Lemma 12 a) implies that neither u nor v pays a donation, i.e. our Definition 4 of donations is consistent with our approach to analyze the creation step of X . Moreover, Lemma 12 b) shows that coins donated to X need not be shared with another path.

Lemma 12. Let set C = { s , s 1 2 , . . . } with s 1 &lt; s 2 &lt; . . . be the set of path creation steps, and set D = { s 1 +1 , s 2 +1 , . . . } the set of donation steps.

- a) We have C ∩ D = ∅ .
- b) The node selected in donation step s i +1 donates coins to exactly one node, which was matched in the creation step s i .

Proof. a) Consider an arbitrary donation step s i +1 . Assume that 1-2-MinGreedy selects node u ′ i , and recall that u ′ i is selected with current degree d ′ ( u ′ i ) = 1 . However, Lemma 2 shows that in each path creation step s j a node u j of current degree at least d u ( j ) ≥ 2 is selected. We get s i +1 / C ∈ and the statement follows.

b) It suffices to show that s i -1 +1 &lt; s i holds, since then creation step s i is the only creation step between donation step s i +1 and the previous donation step s i -1 +1 . The previous donation step s i -1 +1 selects a node of degree one, whereas step s i selects a node of degree at least two in order to create a path. Therefore s i -1 +1 = s i holds. Using s i -1 &lt; s i we obtain s i -1 +1 &lt; s i . /intersectionsq /unionsq

/negationslash

## 4.3 Combined Coins of Transfers and Donations

In this section we prove the following result, which will be applied in Section 4.4 to verify bounds ( ± Path), ( ± Singleton), and ( -Edge).

Lemma 13. Let X be a path for which a degree-1 endpoint exists after creation, and assume that nodes u and v are matched in the creation step of X and nodes u ′ and v ′ are matched in the next step.

Denote by d u,v the number of debits payed by u and v , and by d v ′ the numbers of debits payed by v ′ (recall that u ′ pays no debits since u ′ is selected with current degree one). There exist (non-negative) integers k and l with

$$d _ { u, v } \leq k \quad a n d \quad d _ { v ^ { \prime } } \leq l$$

such that

$$k + l \ \leq \ 2 ( \Delta - 2 )$$

/negationslash holds. In particular, if u ′ belongs to another component Y = X and pays a donation to X , then we may choose k as the number of donated coins.

/negationslash

Organization of the Proof. To verify Lemma 13 we distinguish the following cases. Assume that path X is created when u is selected with current degree d u ( )=2 . Then we bound k + l whether u ′ is a node of X or of another component Y = X , where by Definition 4 the analysis of the latter case involves the use of a static donation. Assuming that path X is created when u is selected with current degree d u ( ) ≥ 3 , then again we bound k + l whether u ′ belongs to X or not, where by Definition 4 in the latter case we have to take into account a dynamic donation. Cases d u ( ) = 2 and d u ( ) ≥ 3 are analyzed in Lemma 14 resp. Lemma 15.

In the proof of Lemma 14 it suffices to analyze (the number of debits leaving) each of nodes u, v, u ′ , and v ′ individually. However, in order to show Lemma 15 we have to take into account that the bound l depends'dynamically' on the number k of debits payed by u and v . Consequently, the proof is more involved than that of Lemma 14. In particular, we study the endpoints neighboring nodes u and v as well as nodes u ′ and v ′ (in G ). Therefore we introduce some helpful notation in Definition 5.

Lemma 14. Lemma 13 holds in case 1-2-MinGreedy selects u with current degree d u ( ) = 2 . In particular, we have the following:

- a) If u ′ is an M ∗ -neighbor of u or v , i.e. node u ′ belongs to X , then we may choose k and l such that we have d u,v = k ≤ ∆ -2 as well as d v ′ = l ≤ ∆ -2 .

/negationslash

In both cases we have k + l ≤ 2( ∆ -2) .

- b) If u ′ belongs to component Y = X , then we may choose k and l such that we have d u,v ≤ k = ∆ -3 as well as d v ′ = l ≤ ∆ -1 .

Proof. To prepare the proof, consider the creation step of X . Observe that u is not incident with an F -edge, since we have d u ( ) = 2 . Hence u pays zero debits. Recall that also u ′ pays no debits since 1-2-MinGreedy selects u ′ with current degree d ′ ( u ′ ) = 1 .

We prove a). At creation of X node v is incident with at most ∆ -2 edges of F , since v is also incident with its M -edge and M ∗ -edge. Hence v pays at most ∆ -2 debits. We obtain d u,v ≤ ∆ -2 , since u pays no debits. Analogously, after creation of X node v ′ is incident with at most ∆ -2 edges of F , since v ′ is also a node of path X . Here we get d v ′ ≤ ∆ -2 . Now choose k = d u,v and l = d v ′ .

Weprove b). Since u ′ does not belong to X and is selected with degree d ′ ( u ′ ) = 1 , an F -edge e incident with u ′ is removed in the creation step of X . Edge e connects u ′ with v , since u is not incident with any F -edges when being selected by 1-2-MinGreedy . In particular, edge e is a static donation from u ′ to v by Definition 4. But both u ′ and v are M -covered, thus e is not a debit from v and at most ∆ -3 debits leave v . We get d u,v ≤ ∆ -3 . Now observe that the M -edge incident with v ′ is not a debit from v ′ . Hence we have d v ′ ≤ ∆ -1 . Now choose k as the number of donated coins k = ∆ -3 as well as l = d v ′ . /intersectionsq /unionsq

Definition 5. Consider the creation step of path X , when 1-2-MinGreedy selects node u with current degree d u ( ) ≥ 3 and matches u with v . We denote

- -by W ⊆ W the set of W -endpoints neighboring u or v ,
- -by W the set of path endpoints w with current degree at least d w ( ) ≥ 3 ,
- -by W δ = { w ∈ W : d ′ ( w ) = δ } the set of W -endpoints which have degree δ after creation of X for δ ∈ { 1 2 , } ,
- -by W f 1 = { w ∈ W 1 : |{{ w, u } { , w, v }} ∩ F | = f } the set of W 1 -endpoints connected to u and v by f edges of F for f ∈ { 1 2 , } , and
- -by W ≥ 3 = W \ ( W 1 ∪ W 2 ) the set of W -endpoints which have degree at least 3 after creation of X ,
- -by E ( W ) = { { x, y } ∈ E : x ∈ { u, v } , y ∈ W } the set of edges connecting nodes u and v with W -endpoints.

Note that W 1 1 and W 2 1 form a partition of W 1 and that W 1 , W 2 , and W ≥ 3 form a partition of W , i.e. sets W\ W,W ≥ 3 , W , W 2 2 1 , and W 1 1 are pairwise disjoint.

Lemma 15. Lemma 13 holds in case 1-2-MinGreedy selects u with current degree d u ( ) ≥ 3 . In particular, we may choose k and l such that we have

$$d _ { u, v } \ & = \ k \ = \ 2 | W _ { 1 } ^ { 2 } | + | W _ { 1 } ^ { 1 } | \quad a n d \quad & \text{(a)} \\ d _ { v ^ { \prime } } \ & = \ l \ \leq \ | W _ { 1 } ^ { 1 } | + | W _ { 2 } | \quad & \text{(b)}$$

as well as

$$k + l \ & \leq \ 2 | W _ { 1 } ^ { 2 } | + 2 | W _ { 1 } ^ { 1 } | + | W _ { 2 } | \\ & \leq \ | \mathcal { E } ( W ) | \\ & \leq \ 2 ( \Delta - 2 ) \,. \\ \nu \, \infty \quad e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e \quad \ e$$

Proof. We prove (a). Therefore we show that nodes u and v pay d u,v = 2 | W 2 1 | + | W 1 1 | debits. To prove that we may choose k = d u,v we have to verify that if X receives a donation then this donation moves d u,v coins. By Definition 4, path X receives a dynamic donation since u was selected with current degree d u ( ) ≥ 3 . Now observe that a dynamic donation moves exactly d u,v coins.

To count the number of debits payed by u and v , we first study which endpoints do not receive a transfer from u or v . First, recall that each endpoint w ∈ W has degree at least three before creation of X and observe that w has degree at least one thereafter, since degrees drop by at most two when X is created. Endpoints in W \ W , i.e. endpoints which are not adjacent to u or v , as well as endpoints in W ≥ 3 still have degree at least three after creation of X and hence do not receive credits from u or v . Also, endpoints in W 2 receive no credits from u or v , since their degree is at least two after creation.

Hence only endpoints in W 1 might receive credits from u or v , since their degree is exactly one after creation. In the creation step of X , for each w ∈ W 1 , either two incident F -edges are removed, i.e. we have w ∈ W 2 1 , or one incident F -edge and an incident M ∗ -edge is removed, i.e. we have w ∈ W 1 1 : since all these removed F -edges are transfers, we get that nodes u and v pay exactly d u,v = 2 | W 2 1 | + | W 1 1 | debits.

To show (b), we prove that node v ′ pays at most d v ′ ≤ | W 1 1 | + | W 2 | debits and set l = d v ′ . Which endpoints do not receive transfers from v ′ ? (Recall that u ′ pays no debits since u ′ is selected when it has degree d ′ ( u ′ ) = 1 .) Here, our Definition 2 of transfer cancellations is crucial: observe that v ′ does not pay transfers to endpoints in W 2 1 , since each of these endpoints already receives two credits from u and v and any additional credit from v ′ is canceled by Definition 2. Furthermore, endpoints in W\ W have degree at least three after creation of X and do not receive transfers from v ′ : when u ′ and v ′ are matched, node u ′ is selected with current degree d ′ ( u ′ ) = 1 , thus the degree of each endpoint in W \ W drops by at most one and to at least two. Analogously, no endpoint in W ≥ 3 receives a transfer from v ′ .

Hence v ′ might pay debits only to endpoints in W 1 1 and W 2 , and (b) follows. We note that, in particular, an endpoint w ∈ W 1 1 ∪ W 2 receives less than two credits from u or v , i.e. further credits are not canceled, and we have d ′ ( w ) ≤ 2 , i.e. the degree of w might drop to at most one when edge { v , w ′ } is removed.

We prove (c), i.e. that k + l is bounded from above by the number |E ( W ) | of edges connecting u or v with an endpoint before creation of X . First, we argue that

$$| W _ { 2 } | \leq | \mathcal { E } ( W ) | - 2 ( | W _ { 1 } ^ { 1 } | + | W _ { 1 } ^ { 2 } | )$$

holds: for each w ∈ W 1 1 as well as for each w ∈ W 2 1 two edges connecting w with u and v are removed when in the creation step of X the degree of w drops from at least d w ( ) ≥ 3 to at most d ′ ( w ) ≤ 1 ; moreover, each endpoint in W 2 is connected with u or v by at least one of the remaining edges. Now we apply (a) and (b) to obtain k + l ≤ 2 | W 2 1 | +2 | W 1 1 | + | W 2 | ≤ |E ( W ) | , as claimed.

We prove (d), i.e. that |E ( W ) | is bound from above by 2( ∆ -2) . To see this, observe first that before creation of X two edges incident with u do not connect u with an endpoint: edge { u, v } is an M -edge and edge { u, u ′ } is removed when in the creation step of X the degree of u ′ drops from at least d u ( ′ ) ≥ d u ( ) ≥ 3 to d ′ ( u ′ ) = 1 . Analogously, edges { v, u } and { v, u ′ } do not connect v with an endpoint. Consequently, at most ∆ -2 edges connect each of u and v with an endpoint. The statement follows. /intersectionsq /unionsq

## 4.4 All Components Are Balanced

Recall that in order to prove Theorem 2 we have to verify ( + Endpoints), ( -Edge), ( ± Path), and ( ± Singleton). Recall also that in Lemma 9 we have already shown ( + Endpoints), i.e. that each path receives at least two credits at its endpoints.

In Lemma 16 we show ( ± Singleton) for each singleton.

Also in Lemma 16, we show ( -Edge) for path M -edges. Thereafter it remains to prove ( ± Path) for each path. In particular, we prove ( ± Path) for each path for which a degree-1 endpoint exists after creation as well as for each path for which there does not exist a degree-1 endpoint after creation: these proofs are provided in Lemma 17 resp. Lemma 18.

In the proof of ( ± Path) we may assume that the nodes u and v matched to create a path X pay at least one debit, since otherwise at least 2( ∆ -2) debits are missing for X and as required in ( ± Path) the balance of X is at least c X -d X ≥ 2 -D X +2( ∆ -2) , by ( + Endpoints) and ( -Edge).

We begin with the proof of ( -Edge) and ( ± Singleton).

Lemma 16. Bounds ( -Edge) and ( ± Singleton) hold, since for each M -edge { y, y ′ } of a path or a singleton, nodes y and y ′ pay at most 2( ∆ -2) coins.

Proof. We have to verify that y and y ′ pay at most 2( ∆ -2) coins whether a donation must be payed or not. Assume that 1-2-MinGreedy selects node y and matches y with neighbor y ′ . Hence a donation might be payed from y , but not from y ′ .

Assume that y pays a donation. The following argument applies whether { y, y ′ } is a path M -edge or a singleton. By Definition 4 of donations, edge { y, y ′ } is picked in the donation step of a path X for which a degree-1 endpoint exists after creation. By Lemma 13, we have k + l ≤ 2( ∆ -2) for the number k of coins donated by y and the number l of debits payed by y ′ , i.e. both nodes pay at most 2( ∆ -2) coins.

From here on we assume that nodes y and y ′ pay only debits. If { y, y ′ } is a path M -edge then observe that each of y and y ′ is incident with at most ∆ -2 edges of F and recall that only F -edges can be transfers. Thus y and y ′ pay at most 2( ∆ -2) coins.

If { y, y ′ } is the edge of a singleton Y , then each of y and y ′ has at most ∆ -1 incident F -edges, i.e. we have d Y ≤ 2( ∆ -1) . In order to prove ( ± Singleton) with balance at least -d Y ≥ -2( ∆ -2) it suffices to show that at least two debits are missing. Assume otherwise, i.e. that y and y ′ pay at least 2( ∆ -2)+1 debits. Then each of y and y ′ has degree at least ∆ -1 when { y, y ′ } is picked, since otherwise one of y and y ′ would have at most ∆ -3 incident F -edges and hence at least two missing debits. But since both y and y ′ have degree at least ∆ -1 ≥ 3 before creation and a debit leaves y or y ′ , say to endpoint w , before creation endpoint w has degree at least d w ( ) ≥ 3 as well and we obtain that d ′ ( w ) = 1 holds after creation. Hence a node other than w is selected next after creation of Y , call it z . But z had degree at least 3 before creation of Y as well, hence z must be a degree-1 node after creation: two edges connecting y and y ′ with z are removed from the graph in the creation step of Y . Both edges are not transfers, since y, y ′ , and z are M -covered. Consequently, each of y and y ′ has a missing debit, a contradiction. /intersectionsq /unionsq

To complete the proof of Theorem 2, it remains to verify ( ± Path).

Lemma 17. Bound ( ± Path) holds for each path for which a degree-1 path endpoint exists after creation.

Proof. Let X be a path for which a degree-1 endpoint exists after creation. Since X receives at least c X ≥ 2 credits by ( + Endpoints) and each M -edge of X pays at most 2( ∆ -2) coins by ( -Edge), to show ( ± Path) we have to prove that the balance of X is increased above 2 -D X by at least 2( ∆ -2) .

/negationslash

Let u ′ be the node selected next after creation of X , and recall that u ′ is selected with degree d ′ ( u ) = 1 since there is a degree-1 endpoint after creation of X . By Lemma 11, node u ′ is the M ∗ -neighbor of u or v , or u ′ belongs to another component Y = X . We distinguish these two cases.

Assume that u ′ is the M ∗ -neighbor of u or v , i.e. edge { u , v ′ ′ } is an M -edge of X . Observe that by ( -Edge) the number of coins payed by nodes of the X -edges { u, v } and { u , v ′ ′ } is bounded from above by 4( ∆ -2) . However, letting k be the number of debits payed by nodes u and v , and letting l be the number of debits payed by nodes u ′ and v ′ , Lemma 13 shows that k + l ≤ 2( ∆ -2) holds, i.e. edges { u, v } and { u , v ′ ′ } pay at least 2( ∆ -2) coins less than maximum. Therefore we obtain d X ≤ D X -2( ∆ -2) and hence the balance of X is at least c X -d X ≥ 2 -D X +2( ∆ -2) .

/negationslash

Now assume that u ′ belongs to another component Y = X . Hence X receives a donation from u ′ . Here, Lemma 13 shows that the number k of coins received by X over the donation satisfies k ≥ d u,v for the number d u,v of debits payed by u and v . Since we have d u,v -k ≤ 0 , we obtain d X ≤ ( m X -1) · 2( ∆ -2) + d u,v -k ≤ ( m X -1) · 2( ∆ -2) = D X -2( ∆ -2) and hence the balance of X is at least c X -d X ≥ 2 -D X +2( ∆ -2) again. /intersectionsq /unionsq

No Degree-1 Endpoint Exists After Creation. By ¯ X we denote path such that after creation of ¯ X there does not exist a degree-1 endpoint. Assume that 1-2-MinGreedy selects node ¯ u to create ¯ X and matches ¯ u with ¯ v . Lemma 10 iii. shows that node ¯ u pays no debits, Lemma 10 iv. and vii. show that node ¯ v pays exactly one debit. Therefore we can only bound the number of missing debits from ¯ u and ¯ v by at least 2( ∆ -2) -1 . Thus the number of coins payed by ¯ X is at most

$$\int _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \lambda \right ) \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda. \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda ) } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \varphi } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \alpha } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \beta } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \gamma } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \nu } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \xi } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \bar { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum_ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \aau } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \ aau } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum. \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \alpha _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \varphi _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left ( \sum _ { \lambda } \left$$

where D ¯ X = m ¯ X · 2( ∆ -2) is the maximum possible number of coins payed by ¯ X , since each M -edge of ¯ X pays at most 2( ∆ -2) coins by ( -Edge).

Therefore, using ( + Endpoints) we obtain that the balance of ¯ X is at least

Can we find an additional missing debit However, unlike in the case that a degree-1 endpoint exists after creation, in order to find an additional missing debit for ¯ X we cannot rely on the analysis of a degree-1 node matched after creation of ¯ X . In particular, no coins are donated to ¯ X .

$$c _ { \bar { X } } - d _ { \bar { X } } \geq 2 - \left ( D _ { \bar { X } } - \left ( 2 ( \Delta - 2 ) - 1 \right ) \right ) = 1 - D _ { \bar { X } } + 2 ( \Delta - 2 ) \,,$$

which fails to satisfy bound ( ± Path) by one coin. Thus, if we can find an additional credit or an additional missing debit, then ¯ X is balanced and we are done. Hence the following result completes the proof of Theorem 2.

Lemma 18. Bound ( ± Path) holds for each path ¯ X for which there does not exist a degree-1 path endpoint after creation, since ¯ X receives c ¯ X ≥ 3 credits or an M -edge { ¯ ¯ x, x ′ } of ¯ X pays at most 2( ∆ -2) -1 coins, where { ¯ ¯ x, x ′ } /negationslash = { ¯ ¯ u, v } is not the M -edge of ¯ X picked in the creation step.

Proof. To prepare the proof, observe that to show c ¯ X ≥ 3 it suffices to identify an endpoint of ¯ X which receives at least two credits, since by Lemma 5 the other endpoint of ¯ X receives an additional credit.

We distinguish cases by the number m ¯ X of M -edges of ¯ X .

Assume that ¯ X is a 1 2 -path with m ¯ X = 1 . We show that an endpoint of ¯ X receives two credits, which proves c ¯ X ≥ 3 . First, we consider the creation step of ¯ X and argue that in the subsequent step there is an endpoint of ¯ X which is not isolated. Since after creation of ¯ X there does not exist a degree-1 endpoint, by Lemma 10 b) the 1-2-MinGreedy algorithm selects a node ¯ u of current degree exactly ¯ ¯ d u ( ) = 2 . Let ¯ v denote the node matched with ¯ u and observe that the M ∗ -neighbor of ¯ v , call it ¯ w, has degree at least ¯ ¯ d w ( ) ≥ ¯ ¯ d u ( ) = 2 as well. Since m ¯ X = 1 holds, node ¯ w must be an endpoint of ¯ X , and since we have ¯ ¯ d u ( ) = 2 endpoint ¯ w is not adjacent to ¯ u . Thus the degree of ¯ w drops by at most one and to at least ¯ d ′ ( ¯ w ) ≥ 1 in the step after creation of ¯ X .

Moreover, after creation of ¯ X all non-isolated path endpoints have degree at least two, since there does not exist a degree-1 endpoint. This holds in particular for ¯ w . But since after creation of ¯ X endpoint ¯ w is incident with at least two F -edges, endpoint ¯ w eventually receives at least two credits, namely over those two F -edges of ¯ w which are removed last from the graph.

From here on, assume that ¯ X has m ¯ X ≥ 2 edges of M . We again denote the nodes matched to create ¯ X by ¯ u and ¯ v , where we assume that 1-2-MinGreedy selects ¯ u . Recall that since no degree-1 endpoint exists after creation of ¯ X , by Lemma 10 b) an M ∗ -edge of ¯ X incident with an endpoint of ¯ X is removed from the graph.

We consider the step s when for the second time an M ∗ -edge incident with an endpoint of ¯ X is removed from the graph. Denote by ¯ x the selected node and by ¯ x ′ the neighbor matched with ¯ x . Since m ¯ x ≥ 2 holds we have { ¯ ¯ u, v } /negationslash = { ¯ ¯ x, x ′ } . We distinguish the cases that ¯ x and ¯ x ′ pay only debits, or ¯ x pays a static or a dynamic donation.

First, assume that ¯ x and ¯ x ′ pay no donation but only debits. To show that edge { ¯ ¯ x, x ′ } pays at most 2( ∆ -2) -1 debits, assume the opposite. Then each of ¯ x and ¯ x ′ pays ∆ -2 debits, since each is incident with at most ∆ -2 edges of F . Hence each of ¯ x and ¯ x ′ has degree at least ∆ -1 at step s , since each is incident with ∆ -2 edges of F as well as with edge { ¯ ¯ x, x ′ } . But a debit leaves ¯ x or ¯ x ′ , say to endpoint w , hence by Definition 1 of transfers after step s endpoint w has degree at most one. In particular, endpoint w has degree exactly one after step s , since before step s node ¯ x has degree at least ∆ -1 ≥ 3 and hence endpoint w has degree at least 3 as well.

Thus a node other than w is selected next, call it y . But node y had degree at least 3 before step s as well and since thereafter endpoint w has degree exactly one, node y is selected with current degree exactly one. Consequently, edges { ¯ x, y } and { ¯ x , y ′ } are removed from the graph in step s . Both { ¯ x, y } and { ¯ x , y ′ } are not transfers, since ¯ ¯ x, x ′ , and y are M -covered. Now observe that at most one of { ¯ x, y } and { ¯ x , y ′ } can be an M ∗ -edge, since otherwise two M ∗ -edges would be incident with y : at least one of { ¯ x, y } and { ¯ x , y ′ } is an F -edge, say { ¯ x, y } . Since edge { ¯ x, y } is not a transfer, there is a debit missing for ¯ x and edge { ¯ ¯ x, x ′ } pays at most 2( ∆ -2) -1 debits, as claimed.

Nowassume that ¯ x pays a static donation . By Definition 4, path ¯ X pays ∆ -3 coins over the donation from ¯ x . Furthermore, node ¯ x ′ pays at most ∆ -2 debits, since at most ∆ -2 many F -edges are incident with ¯ x ′ when 1-2-MinGreedy picks edge { ¯ ¯ x, x ′ } . Again, the nodes in edge { ¯ ¯ x, x ′ } pay at most 2( ∆ -2) -1 coins.

/negationslash

Lastly, assume that ¯ x pays a dynamic donation (¯ x, u ) of k coins. By Definition 4 of donations, node u belongs to a path X = ¯ X for which a degree-1 endpoint exists after creation, and 1-2-MinGreedy selects u with current degree d u ( ) ≥ 3 when creating X . Edge { ¯ ¯ x, x ′ } is picked in the donation step of X when ¯ x has current degree d ′ ( ¯ x ) = 1 .

Assume that u is matched with v , and recall the definition of the sets W,W 1 , W ,W ,W 1 1 2 1 2 , and W ≥ 3 of endpoints neighboring u and v , see Definition 5. By Lemmas 13 and 15 we have the following: nodes u and v pay d u,v = k = 2 | W 2 1 | + | W 1 1 | debits, node ¯ x donates k coins to u , node ¯ x ′ pays at most d ¯ x ′ = l ≤ | W 1 1 | + | W 2 | debits. Hence ¯ x and ¯ x ′ pay at most k + l ≤ 2( ∆ -2) coins in total. If k + l &lt; 2( ∆ -2) holds then an additional debit is missing from ¯ x or ¯ x ′ and we are done.

So assume from here on that ¯ x and ¯ x ′ pay k + l = 2( ∆ -2) coins. As a consequence of Lemma 15 (c) and (d) we get

$$k + l = 2 | W _ { 1 } ^ { 2 } | + 2 | W _ { 1 } ^ { 1 } | + | W _ { 2 } | = | \mathcal { E } ( W ) | = 2 ( \Delta - 2 ) \,.$$

Since k = 2 | W 2 1 | + | W 1 1 | holds, we get that ¯ x ′ pays exactly

$$d _ { \bar { x } ^ { \prime } } = l = | W _ { 1 } ^ { 1 } | + | W _ { 2 } |$$

debits. To which endpoints? Node ¯ x ′ pays zero debits to endpoints in W \ W or W ≥ 3 : in the step when 1-2-MinGreedy picks edge { ¯ ¯ x, x ′ } these endpoints have degree at least three, and since these endpoints are not adjacent to ¯ x when ¯ x is selected with current degree d ′ ( ¯ x ) = 1 in the donation step of X , the degrees of these endpoints drop by at most one and to at least two, i.e. these endpoints do not receive transfers from ¯ x ′ . Therefore ¯ x ′ might only pay debits to endpoints in W 2 ∪ W 1 . But node ¯ x ′ also pays no debits to nodes in W 2 1 , since in the step when 1-2-MinGreedy picks edge { ¯ ¯ x, x ′ } each endpoint in W 2 1 already receives two credits from nodes u and v and any further credits from ¯ x ′ are canceled. Consequently, node ¯ x ′ might pay debits only to nodes in W 2 or W 1 1 . Since sets W \ W,W ≥ 3 , W , W 2 2 1 , and W 1 1 are pairwise disjoint and since we have d ¯ x ′ = | W 1 1 | + | W 2 | , we obtain that ¯ x ′ pays exactly one debit to each endpoint in W 1 1 as well as to each endpoint in W 2 .

In the rest of the proof we proceed as follows. We show that either an endpoint of ¯ X receives at least two credits, which proves c X ≥ 3 , or we show a contradiction to our assumption that nodes ¯ x and ¯ x ′ pay k + = 2( l ∆ -2) coins, which proves that edge { ¯ ¯ x, x ′ } pays at most 2( ∆ -2) coins.

We conduct a case analysis based on which of W ,W 1 1 2 1 , or W 2 endpoint ¯ w belongs to. (Recall that sets W 1 1 and W 2 1 form a partition of W 1 and sets W ,W 1 2 , and W ≥ 3 form a partition of W .) Path X is created when the nodes u and v being matched have degree at least d u ( ) ≥ 3 resp. d v ( ) ≥ 3 , and after creation of X the degree of ¯ x is exactly d ′ ( ¯ x ) = 1 . Thus two edges { u, x ¯ } and { v, x ¯ } are removed from the graph in the creation step of X .

Consider the step when 1-2-MinGreedy picks edge { ¯ ¯ x, x ′ } . Recall that ¯ x is selected with current degree d ′ ( ¯ x ) = 1 , i.e. when the M ∗ -edge of ¯ x is already removed from the graph. Recall also that an M ∗ -edge incident with a path endpoint of ¯ X is removed in this step. This M ∗ -edge must be incident with ¯ x ′ and we call it edge { ¯ x , w ′ ¯ } .

¯ w ∈ W \ W or ¯ w ∈ W ≥ 3 : Here we show that ¯ w receives at least two credits due to its large degree after creation of X .

Since X receives a dynamic donation, by Definition 4 of donations the degrees of u and v are at least three in the creation step of X . Consequently, the degree of ¯ w is at least d w ( ¯ ) ≥ 3 as well. If we have ¯ w ∈ W \ W , then ¯ w is not adjacent to u or v and hence no edges incident with ¯ w are removed in the creation step of X . Thus the degree of ¯ w is at least d ′ ( w ) ≥ 3 after creation of X . If ¯ w ∈ W ≥ 3

holds, then the degree of ¯ w is at least d ′ ( w ) ≥ 3 after creation of X by Definition 5.

In the step after creation of X , i.e. in the donation step of X , when 1-2-MinGreedy picks edge { ¯ ¯ x, x ′ } , the degree of endpoint ¯ w drops by at most one, since ¯ w is not adjacent with node ¯ x which is selected with current degree d ′ ( ¯ x ) = 1 .

Consider the step after edge { ¯ ¯ x, x ′ } is picked. The degree of ¯ w is at least two and the M ∗ -edge of ¯ w is removed from the graph. Hence ¯ w is incident with at least two F -edges. Now observe that ¯ w eventually receives at least two credits, namely over the two of the F -edges of ¯ w which are removed last from the graph. Consequently, path ¯ X receives at least c ¯ X ≥ 3 credits.

¯ w ∈ W 1 1 : We show a contradiction to our assumption that k + l = 2( ∆ -2) holds.

Consider the step when path X is created. Recall by Definition 5 of W 1 1 , that at least two edges incident with ¯ w are removed, since ¯ w has degree at least d w ( ¯ ) ≥ 3 before and degree at most d ′ ( ¯ w ) ≤ 1 afterwards. Also by definition of W 1 1 , only one F -edge incident with ¯ w is removed, hence the M ∗ -edge incident with ¯ w is removed as well. Consequently, endpoint ¯ w belongs to X .

/negationslash

We obtain a contradiction, since endpoint ¯ w belongs to path ¯ X and ¯ X = X holds by definition of the donation (¯ x, u ) .

¯ w ∈ W 2 1 : By Definition 5 of set W 2 1 , two F -edges e 1 and e 2 incident with ¯ w are removed when path X is created. In particular, since after creation of X the degree of ¯ w is exactly one, edges e 1 and e 2 are credits to ¯ w and both credits are never canceled. Hence path ¯ X receives at least c ¯ X ≥ 3 credits.

¯ w ∈ W 2 : Recall that d ¯ x ′ = l = | W 1 1 | + | W 2 | holds and that node ¯ x ′ pays a debit to each endpoint in W 1 1 and to each endpoint in W 2 . Since we have ¯ w ∈ W 2 , node ¯ x ′ pays a debit to ¯ w . But only F -edges can be transfers, thus we have { ¯ x , w ′ ¯ } ∈ F . A contradiction to endpoint ¯ w being the M ∗ -neighbor of ¯ x ′ , i.e. to { ¯ x , w ′ ¯ } ∈ M ∗ . /intersectionsq /unionsq

## 5 Inapproximability Results

MinGreedy does not exploit knowledge gathered about the input in previous steps: e.g. the neighbors of the selected node u are not remembered in order to 'explore' the neighborhood of u later. In a step of MinGreedy , an arbitrary node of minimum degree, who is located in an unknown place in the graph, is matched to an arbitrary neighbor.

A question arises naturally: are the worst case performance guarantees given above for MinGreedy optimal, i.e. is there a greedy matching algorithm which always computes larger matchings than proven for MinGreedy ? In particular, a greedy matching algorithm in question may in each step utilize all previously gathered knowledge in very sophisticated node and edge selection routines.

Adaptive priority algorithms [BNR02] in the vertex model [DI04] define a large class of deterministic greedy matching algorithms, which we denote as APV . APV -algorithms do not have resource constraints and formalize the essential properties of greedy algorithms: to what extent can the input be unveiled in a single step, what are the possible irrevocable decisions for the constructed solution to be done after part of the input is revealed? An APV -algorithm may gather and process much data about its input instances and deduce knowledge to be used in clever future steps. Therefore APV -algorithms seem much stronger than MinGreedy . In particular, APV contains (the deterministic variants of) many prominent greedy matching algorithms, see Lemma 19.

Nevertheless, we construct graphs with degrees bounded by ∆ for which a matching of size at most ∆ -1 2 ∆ -3 + (1) o times optimal is computed. So our 2 3 lower bound for ∆ = 3 and our ∆ -1 2 ∆ -3 lower bound for ∆ -regular graphs are tight: the very simple MinGreedy algorithm has optimal worst case performance among APV -algorithms. For graphs of degree at most ∆ our ∆ -1 / 2 2 ∆ -2 lower bound shows that MinGreedy has good worst case performance.

For an APV algorithm A the input graph is represented as a set of adjacency lists, e.g. {〈 u v, w , ; 〉 〈 v u, w , ; 〉 〈 w u, v ; 〉} is the triangle on u, v, w (where an arbitrarily ordered list of neighbors appears after a semicolon). An APV -algorithm A has a priori access to the number of nodes and starts with an empty matching. In each step, algorithm A selects a node by specifying a total priority order on all possible adjacency lists. From the given order, algorithm A receives the adjacency list which has highest priority and corresponds to a still non-isolated node u , say 〈 u v, w, . . . ; 〉 . (A node is called isolated , if it, or each of its neighbors, is matched.) Lastly, algorithm A selects a non-isolated matching partner for u from the neighbor set { v, w, . . . } and then changes to the next step.

Matched nodes are not removed from the adjacency lists in G : Observation 1 shows that if A remembers already matched nodes, then A can submit priority orders on adjacency lists w.r.t. the 'reduced' graph, i.e. w.r.t. the set of nodes which are not yet isolated.

Observation 1. If an APV -algorithm receives a data item 〈 u v, w, x, . . . ; 〉 , then each neighbor v, w, x, . . . of u is either matched or not isolated.

Proof. Let y ∈ { v, w, x, . . . } and assume that y is not matched but isolated. Each neighbor of y is matched and thus isolated. Since u is a neighbor of y and the data item of u is received, node u is not isolated. A contradiction. /intersectionsq /unionsq

Leaving adjacency lists unchanged increases the power of A : a neighbor of an already matched node v may be requested and hence A is able to explore the neighborhood of v and is not oblivious to the parts of G being processed.

Lemma 19. The class APV contains (all deterministic variants of) Greedy , KarpSipser MRG MinGreedy Shuffle , , , , and all vertex iterative algorithms.

Proof. We have to implement any deterministic variant of one of the given algorithms as an APV -algorithm.

The argument for the other algorithms in analogous. In each round, a priority list is built recursively under the assumptions that high priority entries are not in the graph, and then translated to a list of adjacency lists.

In a given round of Greedy , a priority order e , e 1 2 , e 3 , . . . on edges has to be built adaptively depending on previous computations. This list can be built edge by edge like this: The sub-list e , e 2 3 , . . . is built under the assumption that e 1 is not in the graph, the sub-list e , . . . 3 is built under the assumption that both e , e 1 2 are not in the graph, etc. After Greedy adds the highest priority edge in the graph to the solution, a new round starts and a new priority list is built adaptively like above. We have to translate e , e 1 2 , e 3 , . . . into a priority order on adjacency lists. Therefore edge e i = { u, v } is replaced by a list containing an adjacency list 〈 u v, w, x, . . . ; 〉 for each possible choice of w, x, . . . , making sure that if e i is in the graph it is picked before e i +1 . If Greedy receives the adjacency list 〈 u v, w, x, . . . ; 〉 , node u is matched with v .

KarpSipser works like Greedy but prefers an edge incident with a degree1 node, if such an edge exists. So edges incident with degree-1 nodes are moved to the front of the priority order, i.e. the priority order on adjacency lists starts with adjacency lists 〈 u v, w, x, . . . ; 〉 for all possible choices of u and v, w, x, . . . where only v is not already matched.

To implement MRG , a priority list on nodes u , u 1 2 , . . . has to be translated. Node u i is replaced by a list of adjacency lists 〈 u i ; v, w, x, . . . 〉 for each possible choice of v, w, x, . . . If MRG receives an adjacency list, say for node u , an arbitrary non-isolated neighbor of u is to be matched with u .

To implement MinGreedy , a priority list on node degrees 1 2 , , . . . has to be translated. Degree i is replaced by a list of adjacency lists 〈 u v , . . . , v ; 1 i , w, x, . . . 〉 for each possible combination of u and v , . . . , v 1 i , w, x, . . . where only v , . . . , v 1 i are not already matched. As for MRG , for a received adjacency list, say for node u , an arbitrary non-isolated neighbor of u is matched with u .

Shuffle does not compute priority lists in each round, but a node permutation u , u 1 2 , . . . , u n is computed once at the start, using the number n of nodes in the graph. A node u i is replaced by a list of adjacency lists 〈 u i ; v, w, x, . . . 〉 for each possible choice of v, w, x, . . . This priority order is used in each round. If Shuffle receives an adjacency list for a node u i , then from the still non-isolated neighbors of u i the first one in u , u 1 2 , . . . , u n is matched with u i .

Avertex iterative algorithm [GT12] considers nodes one at a time, and probes each node u for neighbors. The probing for u ends after the first successful probe, say for neighbor v . Then nodes u and v are matched. The probing for u also ends after all possible neighbors have been tested without success. Furthermore, the probing for u ends if the algorithm decides to stop probing for further neighbors of u . Once the probing for u ends, node u is never considered again and u is never probed as the neighbor of any other node considered later. In a round of

of the algorithm, we denote by ( a, b ) , ( a, c ) , . . . , ( a, d ) , ( e, f ) , ( e, g ) , . . . , ( e, h ) , . . . that node a is to be probed for neighbors b, c, . . . , d , then e is to be probed for neighbors f, g, . . . , h , etc. A pair ( u, v ) is translated to a list of adjacency lists 〈 u v, w, x, . . . ; 〉 for each possible choice of w, x, . . . . If an adjacency list 〈 u v, w, x, . . . ; 〉 is received, then node u is matched with v . /intersectionsq /unionsq

To proof that no APV -algorithm can guarantee approximation ratio better than ∆ -1 2 ∆ -3 + (1) o , we first present in Lemma 20 a construction for APV -algorithms without access to the number of nodes in the graph, and then adapt the construction in Theorem 3 to the full class of APV -algorithms.

Lemma 20. Let A be an APV -algorithm without access to the number of nodes. There is an input graph of degree at most ∆ for which A computes a matching of size at most ∆ -1 2 ∆ -3 times optimal.

Proof. We describe the construction of a hard input instance G for algorithm A as a game played between A and an adversary B . As A unveils G only bit by bit, adversary B may actually construct G on the fly, thereby reacting to the various moves of A such that G has a much larger matching than the solution of A . Of course, all adjacency lists presented by B during the whole game have to be consistent with the final graph G constructed by B .

The game consists of the regular game , which lasts for s = ∆ -3 steps, followed by the endgame , which has two steps.

During the regular game, adversary B maintains the following invariant: each node v that is not yet isolated has an adjacency list of one of the following types.

Type 1: 〈 v v , . . . , v ; 1 d 〉 where v and v , . . . , v 1 d are unknown , i.e. they did not occur in a previously received adjacency list, and 3 ≤ d ≤ ∆ .

Type 3: 〈 v v , v ; 1 2 , v 3 〉 where v and v , v 1 2 are unknown and v 3 is known , i.e. node v 3 was received by A in a previous adjacency list.

Type 2: 〈 v v , v ; 1 2 〉 where v and v , v 1 2 are unknown.

Observe, that all nodes in G have degree at least two.

Consider the very first step of A . Since all nodes are still unknown, all nodes have adjacency lists of type 1 or 2. Hence the invariant holds. Consider step i and assume that the invariant holds. Adversary B presents the highest ranked adjacency list that is of type 1, 2 or 3. Call that adjacency list a i .

Case 1: a i = 〈 v v , . . . , v ; 1 d 〉 is a type-1 adjacency list. Since all nodes in a i are unknown, we may w.l.o.g. assume that A matches v with v 1 . Adversary B constructs the connected component C depicted in Figure 9 which consists only of nodes of types 1 and 2. All nodes of C are isolated in the next step, hence the invariant is maintained. Observe that within C the maximum matching M ∗ scores two edges (the double edges { v, v 2 } { , v , v 1 d } in Figure 9) whereas the matching M computed by A scores just one edge (the crossed edge { v, v 1 } ).

Since in Case 1 algorithm A requests only unknown nodes, adversary B is able to trick A into unveiling part of G from which A cannot gather knowledge about the rest of G . Can A act smarter? Assume that A has already received

Fig. 9. A connected component of a hard instance

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0596v3-figure-848d58c1-df47-4a33-a6f8-63f2a04a19b3.jpg)

Fig. 10. The core of a hard instance (Gray nodes are unknown, fat frontier nodes. The dashed edge is an example for { m i = v, r j = v 3 } in case 3.)

the adjacency lists of the middle nodes m , . . . , 1 m k of the triangles { l j , m , r j j } of known nodes connected by frontier nodes r j and unknown nodes u j to the still unknown center of G , see Figure 10. If A requests an unknown node with two unknown neighbors, then B easily tricks A by constructing a new triangle { l i , m , r i i } .

Now assume that A tries to explore the neighborhood of known nodes. Observe that the only adjacency lists with a known node are of type 3 and have exactly one unknown node: since the known nodes l j , m , r j j are already isolated, an unknown node can only be explored in the neighborhood of frontier nodes. Again, adversary B tricks A with a new triangle { l i , m , r i i } .

Case 2: a i = 〈 v v , v ; 1 2 〉 is a type-2 adjacency list. Again, all nodes of a i are unknown and we may assume that A matches v with v 1 . Adversary B constructs a triangle { l i , m , r i i } with l i = v , m 2 i = v, r i = v 1 and inserts the edge { r , u i i } , with a new unknown node u i , to connect the triangle to the unknown center. Observe that before nodes m , r i i are matched, nodes m , l i i are of type 2 and r , u i i are of type 1. After matching m , r i i , nodes l i , m , r i i are isolated and u i turns into a type-3 node. Hence the invariant still holds. Again, M ∗ scores two edges, namely { l i , m i } { , r , u i i } , and M scores the edge { m , r i i } .

Case 3: a i = 〈 v v , v ; 1 2 , v 3 〉 is a type-3 adjacency list. Since v 3 is known, v 3 occurred in a previously presented adjacency list. Observe that in our construction so far, the only type-3 nodes are unknown neighbors of known frontier nodes. So v is the neighbor of a frontier node r j = v 3 with j &lt; i .

Is algorithm successful in exploring the unknown neighbor u j of r j , i.e. does v = u j hold? Not necessarily, since B may on the fly construct further neighbors of r j . Why? Since r j gets matched as soon as it becomes known, algorithm A never gets to see the adjacency list of r j and consequently A can never tell if it already knows all neighbors of r j . (Adversary B uses this trick here as well as in the end game.)

Since v 3 = r j is matched and v , v 1 2 are unknown, we may assume that A matches v with v 1 . Adversary B behaves exactly as in case 2 and constructs the triangle { l i = v , m 2 i = v, r i = v 1 } and inserts the edge { r , u i i } where u i is a new unknown node. To complete the devious trick, adversary B also inserts the edge { m i = v, r j = v 3 } (see e.g. the dashed edge in Figure 10). Before m , r i i are matched, node l i is of type 2, nodes r , u i i are of type 1 and m i = v is of type

3. After matching m , r i i , nodes l i , m , r i i are isolated and u i turns into a type-3 node. u j is still of type 3. Hence the invariant still holds. As in case 2, M ∗ scores { l i , m i } { , r , u i i } and M scores { m , r i i } .

This concludes the regular game. In the first step of the endgame adversary B makes algorithm A match a with b . Hence in the next and last step algorithm A matches c . So algorithm A scores two edges in the center, whereas three edges are optimal. As desired, we get

$$| M | = s + 2 = \Delta - 1 \quad \text{and} \quad | M ^ { * } | = 2 s + 3 = 2 \Delta - 3 \,.$$

Observe that our invariant still holds in the first step of the endgame. Again, adversary B presents the highest ranked adjacency list of type 1, 2 or 3. Observe that a and c are the only type-1 nodes left, since the u j have known neighbors and are of type 3 and all other nodes have degree two and are of type 2. The degree of a and c is δ ≤ 3 + s , since both a, c have three center neighbors and each step of the regular game adds at most one neighbor to a respectively c . Let a ∆ -2 be the adjacency list received in step s +1 = ∆ -2 .

Case 4a: a ∆ -2 = 〈 v v , . . . , v ; 1 δ 〉 is a type-1 adjacency list. Since all nodes of a ∆ -2 are unknown we may assume that A matches v with v 1 . Adversary B chooses v = a , v 1 = b and v , . . . , v 2 δ as the remaining neighbors of a .

Case 4b: a ∆ -2 = 〈 v v , v ; 1 2 〉 is a type-2 adjacency list. Since all nodes of a ∆ -2 are unknown we may assume that A matches v with v 1 . Adversary B sets v = b , v 1 = a and v 2 = d .

Case 4c: a ∆ -2 = 〈 v v , v ; 1 2 , v 3 〉 is a type-3 adjacency list. As in case 3, the known node v 3 is some matched frontier node r , j &lt; ∆ j -2 and we may assume that A matches v with v 1 , since v , v 1 2 are unknown. As in case 3, adversary B does not present the adjacency list of the unknown node u j . Instead, B makes b a neighbor of r j by inserting { v 3 = r , b j } -now b has three neighbors-and sets v = b, v 1 = a and v 2 = d .

Adversary B does not violate degree constraints. Nodes introduced in case 1 have degree at most d ≤ ∆ . All other degrees are at most three, but for a, c and frontier nodes r j . As discussed, nodes a, c have degree at most δ = 3 + s ≤ ∆ . Frontier node have degree at most 3+( s -1)+1 = ∆ , since in each but the first step of the regular game and in step s +1 at most one incident edge is added. /intersectionsq /unionsq

Theorem 3. Let A be an APV -algorithm. There is a graph G of degree at most ∆ for which A computes a matching of size at most ∆ -1 2 ∆ -3 + ε times optimal for any ε &gt; 0 .

Proof. We modify the adversary B who constructs hard inputs in the proof of Lemma 20. First, the modified adversary B ′ announces the number t∆ of nodes, where t is a large integer. Using so many nodes B ′ constructs Ω t ( ) connected components, each with O ∆ ( ) nodes and approximation ratio no better than ∆ -1 2 ∆ -3 . A negligible portion of the graph might be solved optimally by A . In the proof we frequently refer to the adjacency list types and cases found in the proof of Lemma 20 (types 1, 2, and 3, and cases 1, 2, 3, and 4a-c).

Again, the game between A and B ′ is split up into the regular game and the endgame. Like the adversary B from the proof of Lemma 20, in each round of the regular game the construction of B ′ keeps up the invariant that all non-isolated nodes in the graph have adjacency lists of type 1, 2 or, 3 and B ′ returns the highest priority adjacency list having one of these types. However, depending on the requests of A , not only one but several centers C , C , . . . 1 2 might be constructed, each in its own connected component of G . Each center C i is defined as in the proof of Lemma 20, with nodes a , b , c , d i i i i and two more nodes unique to C i , see Figure 10. Each C i will get attached to it a maximum number of triangles, which are not connected to any other center. Thereafter, the nodes of C i are supposed to be matched in the same order as in the proof of Lemma 20, i.e. when no more triangles are attached, nodes a i and b i are matched to each other before c i is matched. Once c i is matched, all edges in the connected component of C i are removed.

Assume that B ′ has already created the centers C , . . . , C 1 l . Call C i active if a i is not yet matched with b i , and inactive otherwise. The construction will ensure that C , . . . , C 1 l -1 are inactive; C l might still be active. (We note here that after center C l becomes inactive, there are nodes in the rest of the connected component K of C l which do not have adjacency lists of types 1, 2 or 3. However, all these nodes are neighbors of c l and adversary B ′ adds no more nodes to K . Thus A scores at most one more edge in K . Therefore, the additional adjacency list types do not have effect on the rest of the construction and we do not discuss these types explicitly.)

Assume that in the next round A receives a type-2 adjacency list of a node with two unknown neighbors. Assume that C l is already inactive, then B ′ creates the next center C l +1 and connects a new type-2 triangle to a l +1 , c l +1 as described in case 2. If otherwise C l is still active, let δ be the number of neighbors of a , c l l constructed so far and recall that we demand δ ≤ ∆ . If δ &lt; ∆ , then B ′ connects a new type-2 triangle to a , c l l as described in case 2. If δ = ∆ , then B ′ makes A match a l with b l as described in case 4b, thereby inactivating C l .

Assume that in the next round A receives a type-3 adjacency list. By construction, the received node is unknown and among its three neighbors there is exactly one known node v 3 , where v 3 = r is a frontier node r in the connected component of the still active center C l . Let δ be the number of neighbors of a , c l l constructed so far. If δ &lt; ∆ , then B ′ connects a new type-3 triangle to a , c l l as described in case 3. If δ = ∆ , then B ′ makes A match a l with b l as described in case 4c, and inactivates C l .

Assume that in the next round A receives a type-1 adjacency list. If the degree of the received node is smaller than ∆ , then B ′ proceeds as in case 1 and creates a new type-1 connected component. Now assume that the received node has degree ∆ . If nodes a , c l l have degree less than ∆ , then again B ′ creates a new type-1 connected component. If nodes a , c l l have degree δ = ∆ , then B ′ makes A match a l with b l as described in case 4a, and thereby inactivates C l .

Why is C l inactivated before B ′ constructs the next active center? In type-2 and type-3 rounds an increasing number of triangles is connected to C l until

the degrees of a , c l l are ∆ . (In intermediate type-1 rounds only type-1 connected components are constructed.) Thereafter, C l is inactivated in the first type-2 or type-3 round or the first type-1 round in which an adjacency list of a degree-∆ node is received. (In intermediate type-1 rounds with nodes of degree less than ∆ only type-1 connected components are constructed.)

The endgame begins as soon as B ′ has constructed k ≥ t∆ -6 ∆ nodes. Let ν = t∆ -k be the number of nodes still to be constructed. Observe that 6 ∆ ≥ ν ≥ 2 ∆ holds, since in each round no more than 4 ∆ additional nodes are introduced (e.g. if ∆ = 3 holds and a new triangle is connected to a new center). Since B ′ has committed to a number of exactly t∆ nodes, in the first round of the endgame B ′ utilizes all remaining ν nodes to create additional connected components Γ , . . . , Γ 1 c , each being a complete bipartite graph with 2 nodes on the right side and between 2 and ∆ (both 2 and ∆ included) nodes on the left. The left sides are as large as possible such that c = O (1) is constant and all nodes in the Γ i have degree at least two. All nodes in Γ , . . . , Γ 1 c are still unknown, in particular all nodes have adjacency lists only of types 1 or 2. Since right sides have two nodes, each Γ i has at most two edges in a maximum matching, making an additional constant number 2 c of optimal edges in total. We assume that A performs optimally in all Γ i , thereby scoring 2 c edges.

Also in the endgame, algorithm A matches still unmatched nodes in the already inactive centers C , . . . , C 1 l -1 . We assume that A performs optimally also in the connected component of the last center C l .

What is the approximation ratio of A ? Observe that each type-1 component has O ∆ ( ) nodes. The same is true for each connected component with a (constant size) center C i , since O ∆ ( ) triangles (of constant size) are attached to C i . So as claimed, Ω t ( ) connected components are constructed. Recall that A scores only one out of two edges in each type-1 connected component. On the other hand, in the connected component of an inactive center A achieves approximation ratio exactly ∆ -1 2 ∆ -3 . In all other components, algorithm A even performs optimally. Therefore, to bound the performance of A we may assume that no type-1 components are constructed. Since only C l might be active at the end of the regular game, there are at least l -1 = Ω t ( ) inactive centers, hence the approximation ratio of A is at most

$$\frac { ( l - 1 ) \cdot \left ( \Delta - 1 \right ) + ( 2 \Delta - 3 ) + 2 c } { ( l - 1 ) \cdot ( 2 \Delta - 3 ) + ( 2 \Delta - 3 ) + 2 c } \,, \\ \cdot \cdot \cdot \cdot \, \mathfrak { m } \cdot \, \varphi \cdot \cdot \, \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \mathfrak { r } \quad \cdot \,.$$

since A performs optimally in C l and in Γ , . . . , Γ 1 c . Letting t →∞ we get l →∞ and this ratio is dominated by ( l -1) ( · ∆ -1) ( l -1) (2 · ∆ -3) . The statement follows. /intersectionsq /unionsq

## 6 Conclusion

We have analyzed the worst case approximation ratio of the well-known MinGreedy algorithm on graphs of bounded degree. Our performance guarantees of 2 3 for graphs of degree at most three and of ∆ -1 2 ∆ -3 for ∆ -regular graphs are tight. In particular, MinGreedy is optimal in the large class of APV -algorithms,

which contains many prominent greedy matching algorithms. We also proved a performance guarantee of ∆ -1 / 2 2 ∆ -2 for graphs of degree at most ∆ , and we conjecture that also in this case MinGreedy is optimal among APV -algorithms and achieves a worst case approximation ratio of at least ∆ -1 2 ∆ -3 .

Our worst case performance guarantees are stronger than the best known worst case bounds on the expected approximation ratio for the well-known greedy matching algorithms Greedy MRG , and Shuffle , if degrees are small.

Open Questions. Is MinGreedy optimal among APV -algorithms on graphs of degree at most ∆ ?

What bounds for MinGreedy can be shown for more restricted graph classes, e.g. bipartite graphs?

Recall that the expected approximation ratio of the randomized MinGreedy algorithm is 1 2 + (1) o w.h.p. on graphs of arbitrarily large degree. Does randomized MinGreedy have an expected approximation ratio strictly better than ∆ -1 2 ∆ -3 if degrees are bounded by ∆ ?

Acknowledgements. I thank Georg Schnitger for many helpful discussions.

## References

| ADFS95.   | Jonathan Aronson, Martin Dyer, Alan Frieze, and Stephen Suen. Ran- domized greedy matching. ii. Random Structures & Algorithms , 6(1):55-73, 1995.                                                                                  |
|-----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| BNR02.    | Allan Borodin, Morten N. Nielsen, and Charles Rackoff. (incremental) pri- ority algorithms. In Proc. 13th SODA , pages 752-761, 2002.                                                                                               |
| CCWZ14.   | T.-H. Hubert Chan, Fei Chen, Xiaowei Wu, and Zhichao Zhao. Ranking on arbitrary graphs: Rematch via continuous lp with monotone and boundary condition constraints. In Chandra Chekuri, editor, SODA , pages 1112-1122. SIAM, 2014. |
| DF91.     | Martin E. Dyer and Alan M. Frieze. Randomized greedy matching. Random Structures & Algorithms , 2(1):29-46, 1991.                                                                                                                   |
| DI04.     | Sashka Davis and Russell Impagliazzo. Models of greedy algorithms for graph problems. In Proc. 15th SODA , pages 381-390, 2004.                                                                                                     |
| FRS93.    | Alan Frieze, A. J. Radcliffe, and Stephen Suen. Analysis of a simple greedy matching algorithm on random cubic graphs. In Proc. 4th SODA , pages 341-351, 1993.                                                                     |
| GT12.     | Gagan Goel and Pushkar Tripathi. Matching with our eyes closed. In Proc. 53rd FOCS , pages 718-727, 2012.                                                                                                                           |
| KS81.     | Richard M. Karp and Michael Sipser. Maximum matchings in sparse ran- dom graphs. In Proc. 22nd FOCS , pages 364-375, 1981.                                                                                                          |
| KVV90.    | Richard M. Karp, Umesh V. Vazirani, and Vijay V. Vazirani. An optimal algorithm for on-line bipartite matching. In Proc. 22nd STOC , pages 352- 358, 1990.                                                                          |
| Mag97.    | Jakob Magun. Greedy matching algorithms, an experimental study. In Proceedings of the 1st Workshop on Algorithm Engineering , volume 6, pages 22-31, 1997.                                                                          |

| MP97.   | Zevi Miller and Dan Pritikin. On randomized greedy matchings. Random Struct. Algorithms , 10(3):353-383, 1997.                                                                                                        |
|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| MS04.   | Marcin Mucha and Piotr Sankowski. Maximum matchings via gaussian elimination. In FOCS , pages 248-255. IEEE Computer Society, 2004.                                                                                   |
| MV80.   | Silvio Micali and Vijay V. Vazirani. An o(sqrt(|v|) |e|) algorithm for find- ing maximum matching in general graphs. In FOCS , pages 17-27. IEEE Computer Society, 1980.                                              |
| Pol12.  | Matthias Poloczek. Greedy algorithms for max sat and maximum matching : their power and limitations . PhD thesis, Institut für Informatik, Goethe- Universität Frankfurt am Main, 2012. http://d-nb.info/1036608425 . |
| Tin84.  | G. Tinhofer. A probabilistic analysis of some greedy cardinality matching algorithms. Annals of Operations Research , 1(3):239-254, 1984.                                                                             |
| Vaz12.  | Vijay V. Vazirani. An improved definition of blossoms and a simpler proof of the mv matching algorithm. CoRR , abs/1210.4594, 2012.                                                                                   |
Bert Besser
Approximation Bounds For Minimum Degree Matching
We consider the MINGREEDY strategy for Maximum Cardinality Matching.
MINGREEDY repeatedly selects an edge incident with a node of minimum degree.
For graphs of degree at most $\Delta$ we show that MINGREEDY achieves
approximation ratio at least $ \frac{\Delta-1}{2\Delta-3} $ in the worst case
and that this performance is optimal among adaptive priority algorithms in the
vertex model, which include many prominent greedy matching heuristics. Even
when considering expected approximation ratios of randomized greedy strategies,
no better worst case bounds are known for graphs of small degrees.