• No se han encontrado resultados

OBJETIVOS DE LAS PRUEBAS SUSTANTIVAS IMPUESTO PREDIAL UNIFICADO

We provide a brief overview of simple definitions and facts about matchings and vertex covers in this section. The interested reader is referred to excellent texts by Lovasz and Plummer [237] and Schrijver [286] for more details and missing proofs.

2.2.1. Matchings

Formally, a matching M of an undirected graph G(V, E) is any collection of edges that do not share vertices. A vertex is matched by a matching M if one of its incident edges belong toM and is otherwisefree. A matching is calledperfect iff it matches all vertices. A matching M is called maximum iff its size, i.e., the number of edges it contains, is largest among all matchings in G. Throughout this thesis, we useMM(G) to denote the size of a maximum matching in G.

A maximal matchingM inGis a matching which is not a proper subset of any other matching in G. Clearly, any maximum matching is also maximal but the reverse is not true. However, we have the following basic fact showing that a maximal matching cannot be much smaller than a maximum matching either.

Fact 2.2.1. Any maximal matchingM of a graphG has size at least half of the size of any maximum matching inG, i.e., |M| ≥(1/2)·MM(G).

Augmenting paths. An important notion in matchings is that of augmenting paths. A path P in Gwhose edges are alternately inside and outside a matching M and starts and finishes in two different free vertices is called an augmenting path for M. Formally, an augmenting path P of a matching M is an odd length path P := v1, v2, . . . , v2k+1 where

vertices. Anaugmentation of matchingM with respect to an augmenting path P is a new matching M0 obtained fromM by switching the matched edges of P (with respect to M) with unmatched edges. It is clear that an augmentation increases the size ofM by one.

Fact 2.2.2. Let M be any matching in G andM∗ be a maximum matching of G. ThenM admits at least (|M∗| − |M|) many vertex-disjoint augmenting paths.

An immediate corollary of Fact2.2.2is that a matchingM is maximum inGiff it admits no augmenting paths. This suggests an iterative approach for finding a maximum matching: start from any maximal matching (which can be found easily by a simple greedy algorithm) and augment it iteratively by finding augmenting paths. This strategy is behind many of the algorithms for finding maximum matchings, including the celebrated Hopcroft-Karp algorithm [181] and Micali-Vazirani algorithm [248] that achieve (currently best) running time of O(m√n) on bipartite graphs and non-bipartite graphs, respectively.

Another simple corollary of Fact2.2.2is a generalization of Fact 2.2.1that states that a matching with no “short” augmenting paths is a “good” approximation of maximum matching. Formally,

Proposition 2.2.3 ([181]). For any integer k ≥ 1, any matching M with shortest aug- menting path of length 2k+ 1is a k+1k

-approximation to maximum matching.

Proof. Fix any maximum matching M∗. By Fact 2.2.2, M admits at least |M∗| − |M|

many vertex-disjoint augmenting paths. Since the length of each such path is at least 2k+ 1, and since they are vertex-disjoint (and hence edge-disjoint), the total number of such path can be at most|M|/k(any such path “uses” at least kedges fromM). As such,

|M∗| − |M| ≤ 1 k · |M|and hence|M ∗| ≤ k+1 k · |M|.

In a simpler form, Proposition2.2.3implies that any matching with no augmenting path of lengthO(1/ε), is a (1 +ε)-approximate matching.

2.2.2. Vertex Cover

A vertex cover of a graph G(V, E) is a collection of vertices C ⊆V such that any edge in

G is incident on at least one vertex ofC. We use VC(G) throughout this thesis to denote the size of a smallest vertex cover of G.

There are many connections between matchings and vertex covers. For example, size of any maximum matching of a graphGis always at most equal to the size of a vertex cover of

G(as at least one end point of any edge from the matching need to be in the vertex cover). Forbipartite graphs, this connection is in fact tight:

of a minimum vertex cover in G, i.e., MM(G) =VC(G).

An easy way to prove Fact2.2.4is to see that the standard linear programs for matching and vertex cover are dual of each other and the matching polytope on bipartite graphs always admit an integral optimal solution.

On the other hand, one can also show that size of a minimum vertex cover cannot be much larger than a maximum matching. This is because the vertices matched by any

maximal matchingMofGform a vertex cover ofG(as otherwise one can add any uncovered edge to M to get a superset matching of M, contradicting the maximality). This implies the following basic fact.

Fact 2.2.5. For any graphG, MM(G)≤VC(G)≤2·MM(G).

We note that in Fact2.2.5, we can bound the RHS with two times the size of any maximal matching ofGnot necessarily a maximum matching.

We further have the following simple proposition that suggests that a matching and vertex cover can serve as a “witness” to near-optimality of each other.

Proposition 2.2.6. SupposeM andC are respectively, a matching and a vertex cover of a graphGsuch thatα·|M| ≥ |C|; then, bothM andC areα-approximation to their respective problems. Proof. VC(G) ≥ Fact2.2.5 MM(G)≥ |M| ≥ 1 α· |V 0| ≥ 1 α·VC(G) ≥ Fact2.2.5 1 α ·MM(G).