Graph Theory Lecture Notes 2

Application 1.3.1: Job Assignment Problem

There are six committees of a state legislature, Finance, Environment, Health, Transportation, Education, and Housing. Suppose that there are 10 legislators who need to be assigned to committees, each to one committee. The following matrix has i, j entry equal to 1 iff the ith legislator would like to serve on the jth committee.


Suppose that we want to choose exactly one new member for each committee, choosing only a legislator who would like to serve. Can we do so? (Not every legislator needs to be assigned to a committee and no legislator can be assigned to more than one committee.)



Def: Subgraph

Induced subgraphs

If H is a subgraph of G and u and w are vertices of H, then by the definition of a subgraph, u and w are also vertices of G. However, if u and w are adjacent in G (i.e., there is an edge of G joining them), the definition of subgraph does not require that the edge joining them in G is also an edge of H. If the subgraph H has the property that whenever two of its vertices are joined by an edge in G, this edge is also in H, then we say that H is an induced subgraph. Here is an example of two subgraphs of G, defined on the same set of vertices where one is an induced subgraph and the other isn't.

induced and not induced subgraphs

Some particular types of subgraphs:

A clique is a set of vertices of a graph, each pair of which is joined by an edge and no set containing this set has this property. In a simple graph, the subgraph induced by a clique is a complete graph.


Any pair of adjacent vertices in a graph are called neighbors. The neighborhood of a vertex v, denoted N(v), is the subgraph induced by v and all of its neighbors. This is sometimes referred to as the closed neighborhood of v.

neighborhood of a vertex

Def: Walk, Connected, Trail, Path, Cycle, Tree

A component of a graph is a maximal connected subgraph. A connected graph has only one component. These are sometimes referred to as connected components. Here is a graph with three components.

components of a graph

Spanning Trees
A subgraph which has the same set of vertices as the graph which contains it, is said to span the original graph. A spanning subgraph which is a tree is called a spanning tree of the graph. A graph which contains no cycles is called acyclic. Each component of an acyclic graph is a tree, so we call acyclic graphs forests. A spanning subgraph which is a forest is called a spanning forest, and the portion of the spanning forest in each component of the graph is a spanning tree of that component.

spanning forest

Graph Operations

Deleting a vertex or an edge: A vertex-cut is a set of vertices whose removal produces a subgraph with more components than the original graph. A cut-vertex (or cut-point) is a vertex-cut consisting of a single vertex.


An edge-cut is a set of edges whose removal produces a subgraph with more components than the original graph. A cut-edge (or bridge) is an edge-cut consisting of a single edge.


Adding a vertex or an edge is as simple as it sounds, but note that adding a vertex is not, in general, the opposite of removing a vertex ... when you add a vertex to a graph, you do not add any edges.

If a new vertex v is joined to each of the pre-existing vertices of a graph G, then the resulting graph is called the join of G and v (or the suspension of G from v), and is denoted by G + v.

join of G and v

In a simple graph G we define the edge complement of G, denoted Gc, as the graph on the same vertex set, such that two vertices are adjacent in Gc if and only if they are not adjacent in G.


If H is a subgraph of G, the relative complement G - H is the graph obtained by deleting all the edges of H from G.

relative complement

Graph Isomorphism

A graph isomorphism between two graphs G and H is a pair of bijections, one fV, mapping the vertices of G onto the vertices of H and the second, fE, mapping the edges of G onto the edges of H, such that for every edge e of G, fV maps the endpoints of e to the endpoints of the edge fE(e) in H.

Def: Isomorphic graphs

Examples: Q3 and CL4 are isomorphic. K3,3 and ML3 are isomorphic.

Isomorphism is an equivalence relation and an equivalence class is called an isomorphism type.

An isomorphism from a graph to itself is called a graph automorphism.

The Graph Reconstruction Problem

Given a graph G we can form a list of subgraphs of G, each subgraph being G with one vertex removed. This list is called the vertex-deletion subgraph list of G. The graph reconstruction problem is to decide whether two non-isomorphic graphs with three or more vertices can have the same vertex-deletion subgraph list. It is conjectured that they can not, and the conjecture has only been verified for graphs with fewer than 10 vertices.

The Graph Isomorphism Problem

The graph isomorphism problem is concerned with determining when two graphs are isomorphic. This is a difficult problem, and in the general case there is no known efficient algorithm for doing it.

It is often easy to show that two graphs are not isomorphic. For instance, if they have different numbers of vertices or edges, or if the degrees of the vertices do not match up. But showing that they are isomorphic requires that an isomorphism can actually be produced.

Problem: Are these graphs isomorphic?