Introduction

A network is useful only if its parts can reach each other, and it is robust only if it stays connected when something fails. Connectivity makes both ideas precise: whether paths exist between vertices, how a graph splits into connected pieces, and how many vertices or edges must be removed to disconnect it. These questions arise in network design (single points of failure), in algorithms (breadth-first and depth-first search find components, cut vertices and bridges in linear time) and in minimum spanning trees.

Prerequisites

Core concepts

Connected graphs and components

  • Vertices uu and vv are connected if there is a path between them. This is an equivalence relation on VV; its classes are the connected components.
  • GG is connected if it has exactly one component. The number of components is written c(G)c(G) or ω(G)\omega(G).
  • The distance d(u,v)d(u, v) is the length of a shortest path. The eccentricity of vv is max⁡ud(u,v)\max_u d(u, v); the diameter is the largest eccentricity and the radius the smallest. rad(G)≤diam(G)≤2 rad(G)\text{rad}(G) \le \text{diam}(G) \le 2\,\text{rad}(G).

Edge counts and connectivity

For a simple graph with nn vertices:

StatementBound
Connected needs at leastn−1n - 1 edges (a tree attains it)
With kk components, at leastn−kn - k edges
With kk components, at most(n−k+12)\binom{n - k + 1}{2} edges
A disconnected graph has at most(n−12)\binom{n-1}{2} edges
So any graph with more than (n−12)\binom{n-1}{2} edges isconnected

The maximum for kk components is attained by Kn−k+1K_{n-k+1} plus k−1k - 1 isolated vertices: concentrating vertices in one clique maximises edges, since (a2)+(b2)≤(a+b−12)\binom{a}{2} + \binom{b}{2} \le \binom{a+b-1}{2} for a,b≥1a, b \ge 1.

Degree condition. If δ(G)≥(n−1)/2\delta(G) \ge (n-1)/2, then GG is connected (two non-adjacent vertices have more than n−2n - 2 neighbours between them among the other n−2n - 2 vertices, so they share a neighbour). The bound is tight: two disjoint copies of Kn/2K_{n/2} have δ=n/2−1\delta = n/2 - 1.

Cut vertices and bridges

  • A cut vertex (articulation point) is a vertex whose removal (with its incident edges) increases the number of components.
  • A bridge (cut edge) is an edge whose removal increases the number of components.
  • An edge is a bridge if and only if it lies on no cycle. Every edge of a tree is a bridge.
  • A vertex vv is a cut vertex exactly when some distinct u,w≠vu,w\ne v lie in the same component of GG, but are disconnected in G−vG-v; equivalently a uu-ww path exists and every such path passes through vv.
  • If {u,v}\{u, v\} is a bridge and deg⁡(u)≥2\deg(u) \ge 2, then uu is a cut vertex. The converse fails: a cut vertex need not be incident to any bridge (the shared vertex of two triangles joined at one vertex, the "bowtie").
  • Every non-trivial connected graph has at least two vertices that are not cut vertices (the ends of a longest path).

A connected graph with no cut vertex (and at least 3 vertices) is 2-connected (biconnected). The maximal 2-connected pieces and bridges are its blocks. A graph with n≥3n \ge 3 is 2-connected if and only if every two vertices lie on a common cycle (Whitney).

Cut vertices, bridges, and connectivity numbers
Figure 1. A graph with its cut vertices and bridge highlighted, and a second graph showing κ=1\kappa = 1, λ=2\lambda = 2, δ=3\delta = 3, so that the inequality κ≤λ≤δ\kappa \le \lambda \le \delta is strict.

Vertex and edge connectivity

  • The vertex connectivity κ(G)\kappa(G) is the minimum number of vertices whose removal disconnects GG or leaves a single vertex. κ(Kn)=n−1\kappa(K_n) = n - 1 by convention, since no set of vertices disconnects a complete graph.
  • The edge connectivity λ(G)\lambda(G) of a graph with n≥2n \ge 2 vertices is the minimum number of edges whose removal disconnects GG.
  • GG is kk-connected if κ(G)≥k\kappa(G) \ge k, and kk-edge-connected if λ(G)≥k\lambda(G) \ge k.
  • κ(G)=0\kappa(G) = 0 if and only if GG is disconnected (or trivial); κ(G)=1\kappa(G) = 1 if and only if GG is connected with a cut vertex (or G=K2G = K_2); λ(G)=1\lambda(G) = 1 if and only if GG is connected with a bridge.

Whitney's inequality:

κ(G)≤λ(G)≤δ(G).\kappa(G) \le \lambda(G) \le \delta(G).

The right inequality holds because removing all edges at a minimum-degree vertex isolates it. Both inequalities can be strict.

Graphκ\kappaλ\lambdaδ\delta
KnK_nn−1n - 1n−1n - 1n−1n - 1
CnC_n222
Tree with n≥3n \ge 3111
Kr,sK_{r,s}, r≤sr \le srrrrrr
QkQ_kkkkkkk
Two K4K_4 sharing one vertex133

Menger's theorem (stated for reference): for non-adjacent u,vu, v, the minimum number of vertices separating them equals the maximum number of internally vertex-disjoint uu-vv paths; the edge version is the same with edges. This links connectivity to network flows.

Directed graphs

  • A digraph is strongly connected if every vertex can reach every other along directed paths, and weakly connected if its underlying undirected graph is connected.
  • The strongly connected components (SCCs) partition the vertices; contracting each SCC to one vertex gives a directed acyclic graph (the condensation). SCCs are found in O(n+m)O(n + m) time (Kosaraju's or Tarjan's algorithm).
  • A strongly connected digraph on n≥2n \ge 2 vertices has at least nn arcs (a directed cycle attains it).

Counting spanning trees

A spanning tree of a connected graph is a spanning subgraph that is a tree; it has n−1n - 1 edges. Every connected graph has one.

  • Cayley's formula: KnK_n has nn−2n^{n-2} spanning trees (equivalently, there are nn−2n^{n-2} labelled trees on nn vertices).
  • Kr,sK_{r,s} has rs−1sr−1r^{s-1} s^{r-1} spanning trees. CnC_n has nn.
  • Kirchhoff's matrix-tree theorem: the number of spanning trees equals any cofactor of the Laplacian L=D−AL = D - A, where DD is the diagonal degree matrix and AA the adjacency matrix (delete row ii and column ii, take the determinant).

Worked examples

Example 1: forced connectivity

What is the minimum number of edges that guarantees a simple graph on 10 vertices is connected? A disconnected graph has at most (92)=36\binom{9}{2} = 36 edges, so 37 edges guarantee connectivity.

Example 2: components and edges

A simple graph with 12 vertices has 3 components. Minimum edges: 12−3=912 - 3 = 9. Maximum: (12−3+12)=(102)=45\binom{12 - 3 + 1}{2} = \binom{10}{2} = 45.

Example 3: forests

A forest with 20 vertices and 14 edges has 20−14=620 - 14 = 6 components (each tree component has one fewer edge than vertices).

Example 4: matrix-tree theorem

For K4K_4 minus one edge (vertices 1, 2, 3, 4; edge {3,4}\{3, 4\} missing), the Laplacian is

L=(3−1−1−1−13−1−1−1−120−1−102).L = \begin{pmatrix} 3 & -1 & -1 & -1 \\ -1 & 3 & -1 & -1 \\ -1 & -1 & 2 & 0 \\ -1 & -1 & 0 & 2 \end{pmatrix}.

Deleting row 1 and column 1: det⁡(3−1−1−120−102)=3⋅4−(−1)(−2)+(−1)(2)=12−2−2=8\det \begin{pmatrix} 3 & -1 & -1 \\ -1 & 2 & 0 \\ -1 & 0 & 2 \end{pmatrix} = 3 \cdot 4 - (-1)(-2) + (-1)(2) = 12 - 2 - 2 = 8. So it has 8 spanning trees, compared with 42=164^2 = 16 for K4K_4. (Check: the 16 trees of K4K_4 split evenly over its 6 edges with 3⋅16/6=83 \cdot 16 / 6 = 8 containing any given edge, leaving 16−8=816 - 8 = 8 that avoid it.)

Important properties and observations

  • Removing a cut vertex can create many components (the centre of a star K1,sK_{1,s} creates ss); removing a bridge creates exactly one more.
  • A connected graph with nn vertices and n−1n - 1 edges is a tree; with nn edges it has exactly one cycle.
  • GG or G‾\overline{G} is connected; if GG is disconnected, G‾\overline{G} has diameter at most 2.
  • A 3-regular graph has κ=λ\kappa = \lambda.
  • An Euler graph (all degrees even) has no bridges.

GATE examination perspective

  • Edge-bound questions. Maximum edges with kk components, minimum edges to force connectivity: (n−12)+1\binom{n-1}{2} + 1.
  • Forest component counts. Components =n−m= n - m.
  • Cut vertex and bridge identification. A bridge lies on no cycle; check whether removing a vertex separates two others.
  • κ≤λ≤δ\kappa \le \lambda \le \delta. Expect true or false statements; know a strict example.
  • Spanning-tree counts. Cayley nn−2n^{n-2}, Kr,sK_{r,s}, matrix-tree theorem for small graphs.
  • Trap: a graph with n−1n - 1 edges need not be connected; it is a tree only if it is also connected (or acyclic).

Summary

Sources

  1. K. H. Rosen, Discrete Mathematics and Its Applications, 7th ed., McGraw-Hill, 2012: Sections 10.4 (Connectivity) and 11.4 (Spanning Trees).
  2. D. B. West, Introduction to Graph Theory, 2nd ed., Prentice Hall, 2001: Sections 2.2 (Spanning Trees and Enumeration), 4.1 (Cuts and Connectivity) and 4.2 (k-connected Graphs).

Next steps