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.
| Finance | Environment | Health | Transportation | Education | Housing | |
|---|---|---|---|---|---|---|
| Allen | 1 | 1 | 1 | 0 | 0 | 0 |
| Barnes | 1 | 1 | 0 | 1 | 1 | 0 |
| Cash | 1 | 1 | 1 | 0 | 0 | 0 |
| Dunn | 1 | 0 | 0 | 1 | 1 | 1 |
| Ecker | 0 | 1 | 1 | 0 | 0 | 0 |
| Frank | 1 | 1 | 0 | 0 | 0 | 0 |
| Graham | 1 | 1 | 1 | 0 | 0 | 0 |
| Hall | 1 | 0 | 0 | 0 | 0 | 0 |
| Inman | 1 | 1 | 1 | 0 | 0 | 0 |
| Johnson | 1 | 1 | 0 | 0 | 0 | 0 |
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.)
Solution: 
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.

Some particular types of subgraphs:


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.

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.

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?
