
In the
mathematical
Mathematics is a field of study that discovers and organizes methods, Mathematical theory, theories and theorems that are developed and Mathematical proof, proved for the needs of empirical sciences and mathematics itself. There are many ar ...
field of
graph theory
In mathematics and computer science, graph theory is the study of ''graph (discrete mathematics), graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of ''Vertex (graph ...
, the complement or inverse of a
graph is a graph on the same
vertices such that two distinct vertices of are adjacent
if and only if
In logic and related fields such as mathematics and philosophy, "if and only if" (often shortened as "iff") is paraphrased by the biconditional, a logical connective between statements. The biconditional is true in two cases, where either bo ...
they are not adjacent in . That is, to generate the complement of a graph, one fills in all the missing
edges required to form a
complete graph, and removes all the edges that were previously there.
[.]
The complement is not the
set complement of the graph; only the edges are complemented.
Definition
Let be a
simple graph and let consist of all 2-element subsets of . Then is the complement of , where is the
relative complement of in . For
directed graphs, the complement can be defined in the same way, as a directed graph on the same vertex set, using the set of all 2-element
ordered pairs of in place of the set in the formula above. In terms of the
adjacency matrix ''A'' of the graph, if ''Q'' is the adjacency matrix of the
complete graph of the same number of vertices (i.e. all entries are unity except the diagonal entries which are zero), then the adjacency matrix of the complement of ''A'' is ''Q-A''.
The complement is not defined for
multigraphs. In graphs that allow
self-loops (but not multiple adjacencies) the complement of may be defined by adding a self-loop to every vertex that does not have one in , and otherwise using the same formula as above. This operation is, however, different from the one for simple graphs, since applying it to a graph with no self-loops would result in a graph with self-loops on all vertices.
Applications and examples
Several graph-theoretic concepts are related to each other via complementation:
*The complement of an
edgeless graph is a
complete graph and vice versa.
*Any
induced subgraph of the complement graph of a graph is the complement of the corresponding induced subgraph in .
*An
independent set in a graph is a
clique in the complement graph and vice versa. This is a special case of the previous two properties, as an independent set is an edgeless induced subgraph and a clique is a complete induced subgraph.
*The
automorphism group of a graph is the automorphism group of its complement.
*The complement of every
triangle-free graph is a
claw-free graph, although the reverse is not true.
Self-complementary graphs and graph classes

A
self-complementary graph
In the mathematical field of graph theory, a self-complementary graph is a graph which is isomorphic to its complement. The simplest non-trivial self-complementary graphs are the path graph and the cycle graph. There is no known characteri ...
is a graph that is
isomorphic to its own complement.
Examples include the four-vertex
path graph and five-vertex
cycle graph. There is no known characterization of self-complementary graphs.
Several classes of graphs are self-complementary, in the sense that the complement of any graph in one of these classes is another graph in the same class.
*
Perfect graphs are the graphs in which, for every induced subgraph, the
chromatic number equals the size of the maximum clique. The fact that the complement of a perfect graph is also perfect is the
perfect graph theorem of
László Lovász.
*
Cographs are defined as the graphs that can be built up from single vertices by
disjoint union and complementation operations. They form a self-complementary family of graphs: the complement of any cograph is another different cograph. For cographs of more than one vertex, exactly one graph in each complementary pair is connected, and one equivalent definition of cographs is that each of their connected
induced subgraphs has a disconnected complement. Another, self-complementary definition is that they are the graphs with no induced subgraph in the form of a four-vertex path.
*Another self-complementary class of graphs is the class of
split graphs, the graphs in which the vertices can be partitioned into a clique and an independent set. The same partition gives an independent set and a clique in the complement graph.
*The
threshold graphs are the graphs formed by repeatedly adding either an independent vertex (one with no neighbors) or a
universal vertex (adjacent to all previously-added vertices). These two operations are complementary and they generate a self-complementary class of graphs.
Algorithmic aspects
In the
analysis of algorithms on graphs, the distinction between a graph and its complement is an important one, because a
sparse graph
In mathematics, a dense graph is a Graph (discrete mathematics), graph in which the number of edges is close to the maximal number of edges (where every pair of Vertex (graph theory), vertices is connected by one edge). The opposite, a graph with ...
(one with a small number of edges compared to the number of pairs of vertices) will in general not have a sparse complement, and so an algorithm that takes time proportional to the number of edges on a given graph may take a much larger amount of time if the same algorithm is run on an explicit representation of the complement graph. Therefore, researchers have studied algorithms that perform standard graph computations on the complement of an input graph, using an
implicit graph representation that does not require the explicit construction of the complement graph. In particular, it is possible to simulate either
depth-first search or
breadth-first search on the complement graph, in an amount of time that is linear in the size of the given graph, even when the complement graph may have a much larger size.
It is also possible to use these simulations to compute other properties concerning the connectivity of the complement graph.
[.][.]
References
{{reflist, 30em
Graph operations