Skip to content

Chapter 62. Edge Covers

An edge cover is a collection of edges that touches every vertex of a graph. Edge covers are dual in spirit to vertex covers. Instead of selecting vertices to cover edges, one selects edges to cover vertices. Edge covers are closely related to matchings and form an important part of combinatorial optimization. (en.wikipedia.org)

The theory of edge covers is simpler than the theory of vertex covers, but the interaction between edge covers and matchings leads to elegant structural identities and efficient algorithms.

62.1 Definition

Let

G=(V,E) G=(V,E)

be a graph.

An edge cover is a subset

FE F \subseteq E

such that every vertex of GG is incident with at least one edge in FF.

Equivalently,

vV,eF \forall v \in V, \quad \exists e \in F

such that vv is an endpoint of ee.

Thus every vertex is “covered” by at least one selected edge.

For example, consider the path

v1v2v3v4. v_1-v_2-v_3-v_4.

The set

F={v1v2,  v3v4} F=\{v_1v_2,\; v_3v_4\}

is an edge cover, because every vertex touches one of these edges.

The set

{v2v3} \{v_2v_3\}

is not an edge cover, because vertices v1v_1 and v4v_4 remain uncovered.

62.2 Edge Cover Number

A minimum edge cover is an edge cover of smallest possible size.

Its size is denoted by

ρ(G). \rho(G).

Thus,

ρ(G)=min{F:F is an edge cover of G}. \rho(G) = \min\{|F| : F \text{ is an edge cover of } G\}.

The minimum edge cover problem asks for an edge cover using as few edges as possible.

62.3 Existence of Edge Covers

A graph has an edge cover if and only if it contains no isolated vertices.

Proof

Suppose vv is isolated.

No edge is incident with vv, so no edge set can cover vv. Hence no edge cover exists.

Conversely, suppose every vertex has degree at least one.

Then the entire edge set

E E

covers every vertex.

Thus an edge cover exists.

This proves the characterization.

62.4 Edge Covers in Standard Graphs

Paths

For the path graph PnP_n,

ρ(Pn)=n2. \rho(P_n) = \left\lceil \frac{n}{2} \right\rceil.

Cycles

For the cycle graph CnC_n,

ρ(Cn)=n2. \rho(C_n) = \left\lceil \frac{n}{2} \right\rceil.

Complete Graphs

For the complete graph KnK_n,

ρ(Kn)=n2. \rho(K_n) = \left\lceil \frac{n}{2} \right\rceil.

Indeed, every edge covers two vertices.

Stars

For the star graph

K1,n, K_{1,n},

the center edge set itself covers all vertices, so:

ρ(K1,n)=n. \rho(K_{1,n})=n.

Each leaf requires its own incident edge.

62.5 Minimal and Minimum Edge Covers

As with vertex covers, minimal and minimum mean different things.

TermMeaning
Minimal edge coverNo edge can be removed
Minimum edge coverSmallest possible size

Every minimum edge cover is minimal.

The converse need not hold.

62.6 Relationship with Matchings

Edge covers are strongly connected to matchings.

Suppose MM is a matching.

Each edge of MM covers two vertices.

Unmatched vertices may still remain uncovered.

To produce an edge cover:

  1. Start with a matching.
  2. Add one incident edge for each uncovered vertex.

This relationship leads to a fundamental identity.

62.7 Gallai’s Identity

Suppose GG has no isolated vertices.

Then:

ν(G)+ρ(G)=V. \nu(G)+\rho(G)=|V|.

\nu(G)+\rho(G)=|V|

Here:

SymbolMeaning
ν(G)\nu(G)Maximum matching size
ρ(G)\rho(G)Minimum edge cover size

This theorem is called Gallai’s identity. (en.wikipedia.org)

It is one of the most elegant relations in graph theory.

62.8 Proof of Gallai’s Identity

Let MM be a maximum matching.

Suppose:

M=ν(G). |M|=\nu(G).

The matching covers exactly:

2ν(G) 2\nu(G)

vertices.

Therefore:

V2ν(G) |V|-2\nu(G)

vertices remain uncovered.

Since MM is maximum, every uncovered vertex must be adjacent to some matched vertex. Otherwise, an additional matching edge could be added.

Add one incident edge for each uncovered vertex.

These additional edges cover all remaining vertices.

Thus the resulting edge cover contains:

ν(G)+(V2ν(G))=Vν(G) \nu(G) + (|V|-2\nu(G)) = |V|-\nu(G)

edges.

Hence:

ρ(G)Vν(G). \rho(G)\le |V|-\nu(G).

Conversely, let FF be a minimum edge cover.

Every connected component of the graph formed by FF is either:

ComponentStructure
Single edgeCovers two vertices
Star-like componentMore edges than necessary

Because FF is minimum, each component must contain exactly one more vertex than edge.

Selecting one edge from each component produces a matching.

Counting shows:

ν(G)Vρ(G). \nu(G)\ge |V|-\rho(G).

Combining the inequalities yields:

ν(G)+ρ(G)=V. \nu(G)+\rho(G)=|V|.

62.9 Constructing Minimum Edge Covers

Gallai’s identity gives an efficient construction method.

Algorithm

  1. Compute a maximum matching MM.
  2. Every unmatched vertex is uncovered.
  3. Add one incident edge for each uncovered vertex.

The resulting edge set is a minimum edge cover.

Size

If

M=ν(G), |M|=\nu(G),

then the number of unmatched vertices equals:

V2ν(G). |V|-2\nu(G).

Adding one edge per uncovered vertex gives:

ν(G)+(V2ν(G))=Vν(G)=ρ(G). \nu(G)+(|V|-2\nu(G)) = |V|-\nu(G) = \rho(G).

Thus the construction is optimal.

62.10 Edge Covers and Perfect Matchings

If a graph has a perfect matching, then:

ν(G)=V2. \nu(G)=\frac{|V|}{2}.

Using Gallai’s identity:

ρ(G)=VV2=V2. \rho(G) = |V|-\frac{|V|}{2} = \frac{|V|}{2}.

Thus every perfect matching is automatically a minimum edge cover.

Indeed, a perfect matching already covers every vertex using the fewest possible edges.

62.11 Edge Covers and Trees

Trees provide especially simple examples.

Let TT be a tree with nn vertices.

Since trees are sparse, minimum edge covers often resemble matchings with additional leaf-covering edges.

Example

Consider:

v1v2v3v4v5. v_1-v_2-v_3-v_4-v_5.

A maximum matching has size:

2. 2.

Hence:

ρ(T)=52=3. \rho(T)=5-2=3.

One minimum edge cover is:

{v1v2,  v2v3,  v4v5}. \{v_1v_2,\; v_2v_3,\; v_4v_5\}.

62.12 Edge Cover Algorithms

The minimum edge cover problem is computationally easy.

Main Strategy

  1. Find a maximum matching.
  2. Extend it into an edge cover.

Thus edge cover algorithms inherit the complexity of matching algorithms.

Complexity

Graph TypeComplexity
Bipartite graphsPolynomial
General graphsPolynomial

Unlike vertex cover, edge cover is not NP-complete.

62.13 Weighted Edge Covers

Suppose each edge has weight:

w(e). w(e).

The goal becomes minimizing:

eFw(e). \sum_{e \in F} w(e).

Weighted edge covers arise in network design, transportation, and infrastructure planning.

These problems can be solved using weighted matching techniques.

62.14 Edge Covers and Dominating Structures

Edge covers are related to domination concepts.

A dominating set selects vertices that dominate neighboring vertices.

An edge cover selects edges that dominate vertices through incidence.

Both problems concern efficient coverage, but the objects selected differ.

62.15 Edge Covers and Hypergraphs

In hypergraphs, an edge may contain many vertices.

An edge cover becomes a family of hyperedges whose union equals the vertex set.

This version appears in:

AreaApplication
Database systemsQuery optimization
Set systemsCovering problems
Combinatorial designBlock coverings

The hypergraph edge cover problem becomes substantially more difficult.

62.16 Edge Cover Polytope

Edge covers can also be described using linear inequalities.

Introduce variables:

xe={1,eF,0,eF. x_e= \begin{cases} 1, & e \in F, \\ 0, & e \notin F. \end{cases}

The edge-cover constraints become:

evxe1 \sum_{e \ni v} x_e \ge 1

for every vertex vv.

\sum_{e \ni v} x_e \ge 1

These inequalities define the edge-cover polytope.

Linear programming methods apply naturally to weighted versions.

62.17 Edge Covers and Flows

Edge cover problems can be transformed into matching or flow problems.

In bipartite graphs, minimum edge cover can be solved through maximum matching, which in turn reduces to maximum flow.

Thus edge covers are closely connected to network optimization.

62.18 Comparison with Vertex Covers

Edge covers and vertex covers solve dual-looking problems.

ProblemSelected ObjectsCovered Objects
Vertex coverVerticesEdges
Edge coverEdgesVertices

Despite the similar names, the computational behavior differs greatly.

ProblemComplexity
Minimum vertex coverNP-complete
Minimum edge coverPolynomial

The matching connection explains much of this difference.

62.19 Applications

Edge covers appear in many practical settings.

ApplicationInterpretation
Sensor networksCommunication links covering devices
TransportationRoutes serving all locations
Resource allocationAssignments touching all resources
Infrastructure designConnectivity guarantees
SchedulingTasks incident with active channels

The structure naturally models coverage by pairwise relationships.

62.20 Common Identities

IdentityMeaning
(\nu(G)+\rho(G)=V
Perfect matching \Rightarrow minimum edge coverMatching already covers all vertices
No isolated vertices \Leftrightarrow edge cover existsExistence condition

These formulas summarize the central structure of edge-cover theory.

62.21 Exercises

  1. Find a minimum edge cover of P6P_6.

  2. Compute ρ(C7)\rho(C_7).

  3. Prove that a graph with an isolated vertex has no edge cover.

  4. Prove Gallai’s identity.

  5. Show that every perfect matching is a minimum edge cover.

  6. Construct a minimum edge cover from a maximum matching.

  7. Compute ρ(K5)\rho(K_5).

  8. Explain why edge cover is polynomial-time solvable.

  9. Compare edge covers and vertex covers for a small graph.

  10. Write the linear programming formulation for minimum edge cover.