
In
graph theory
In mathematics, graph theory is the study of '' graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of '' vertices'' (also called ''nodes'' or ''points'') which are conn ...
, a cograph, or complement-reducible graph, or ''P''
4-free graph, is a
graph
Graph may refer to:
Mathematics
*Graph (discrete mathematics), a structure made of vertices and edges
**Graph theory, the study of such graphs and their properties
*Graph (topology), a topological space resembling a graph in the sense of discre ...
that can be generated from the single-vertex graph ''K''
1 by
complementation and
disjoint union
In mathematics, a disjoint union (or discriminated union) of a family of sets (A_i : i\in I) is a set A, often denoted by \bigsqcup_ A_i, with an injection of each A_i into A, such that the images of these injections form a partition of A ...
. That is, the family of cographs is the smallest class of graphs that includes ''K''
1 and is closed under complementation and disjoint union.
Cographs have been discovered independently by several authors since the 1970s; early references include , , , and . They have also been called D*-graphs, hereditary Dacey graphs (after the related work of James C. Dacey Jr. on
orthomodular lattices), and 2-parity graphs.
They have a simple structural decomposition involving
disjoint union
In mathematics, a disjoint union (or discriminated union) of a family of sets (A_i : i\in I) is a set A, often denoted by \bigsqcup_ A_i, with an injection of each A_i into A, such that the images of these injections form a partition of A ...
and
complement graph
In the mathematical field of graph theory, 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 they are not adjacent in . That is, to generate the complement ...
operations that can be represented concisely by a labeled tree, and used algorithmically to efficiently solve many problems such as finding the
maximum clique that are hard on more general graph classes.
Special cases of the cographs include the
complete graph
In the mathematical field of graph theory, a complete graph is a simple undirected graph in which every pair of distinct vertices is connected by a unique edge. A complete digraph is a directed graph in which every pair of distinct vertices ...
s,
complete bipartite graph
In the mathematical field of graph theory, a complete bipartite graph or biclique is a special kind of bipartite graph where every vertex of the first set is connected to every vertex of the second set..Electronic edition page 17.
Graph theory ...
s,
cluster graphs, and
threshold graphs. The cographs are, in turn, special cases of the
distance-hereditary graphs,
permutation graphs,
comparability graph
In graph theory, a comparability graph is an undirected graph that connects pairs of elements that are comparable to each other in a partial order. Comparability graphs have also been called transitively orientable graphs, partially orderable graph ...
s, and
perfect graph
In graph theory, a perfect graph is a graph in which the chromatic number of every induced subgraph equals the order of the largest clique of that subgraph ( clique number). Equivalently stated in symbolic terms an arbitrary graph G=(V,E) is per ...
s.
Definition
Recursive construction
Any cograph may be constructed using the following rules:
# any single vertex graph is a cograph;
# if
is a cograph, so is its
complement graph
In the mathematical field of graph theory, 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 they are not adjacent in . That is, to generate the complement ...
;
# if
and
are cographs, so is their disjoint union
.
The cographs may be defined as the graphs that can be constructed using these operations, starting from the single-vertex graphs.
Alternatively, instead of using the complement operation, one can use the join operation, which
consists of forming the disjoint union
and then adding an edge between every pair of a vertex from
and a vertex from
.
Other characterizations
Several alternative characterizations of cographs can be given. Among them:
* A cograph is a graph which does not contain the
path ''P''
4 on 4 vertices (and hence of length 3) as an
induced subgraph
In the mathematical field of graph theory, an induced subgraph of a graph is another graph, formed from a subset of the vertices of the graph and ''all'' of the edges (from the original graph) connecting pairs of vertices in that subset.
Definit ...
. That is, a graph is a cograph if and only if for any four vertices
, if
and
are edges of the graph then at least one of
or
is also an edge.
* A cograph is a graph all of whose induced subgraphs have the property that any maximal
clique
A clique ( AusE, CanE, or ), in the social sciences, is a group of individuals who interact with one another and share similar interests. Interacting with cliques is part of normative social development regardless of gender, ethnicity, or popula ...
intersects any
maximal independent set in a single vertex.
* A cograph is a graph in which every nontrivial induced subgraph has at least two vertices with the same neighbourhoods.
* A cograph is a graph in which every connected induced subgraph has a disconnected complement.
* A cograph is a graph all of whose connected
induced subgraph
In the mathematical field of graph theory, an induced subgraph of a graph is another graph, formed from a subset of the vertices of the graph and ''all'' of the edges (from the original graph) connecting pairs of vertices in that subset.
Definit ...
s have
diameter
In geometry, a diameter of a circle is any straight line segment that passes through the center of the circle and whose endpoints lie on the circle. It can also be defined as the longest chord of the circle. Both definitions are also valid fo ...
at most 2.
* A cograph is a graph in which every
connected component is a
distance-hereditary graph with diameter at most 2.
* A cograph is a graph with
clique-width at most 2.
* A cograph is a
comparability graph
In graph theory, a comparability graph is an undirected graph that connects pairs of elements that are comparable to each other in a partial order. Comparability graphs have also been called transitively orientable graphs, partially orderable graph ...
of a
series-parallel partial order.
* A cograph is a
permutation graph of a
separable permutation.
* A cograph is a graph all of whose minimal
chordal completions are
trivially perfect graphs.
* A cograph is a
hereditarily well-colored graph, a graph such that every
greedy coloring
In the study of graph coloring problems in mathematics and computer science, a greedy coloring or sequential coloring is a coloring of the vertices of a graph formed by a greedy algorithm that considers the vertices of the graph in sequence a ...
of every induced subgraph uses an optimal number of colors.
* A graph is a cograph if and only if every vertex order of the graph is a
perfect order
''Perfect Order: Recognizing Complexity in Bali'' is a 2006 book by anthropologist J. Stephen Lansing about Balinese culture. It focuses on the development of Balinese wet-rice agriculture over the last several hundred years, particularly the '' ...
, since having no ''P''
4 means that no obstruction to a perfect order will exist in any vertex order.
Cotrees

A cotree is a tree in which the internal nodes are labeled with the numbers 0 and 1. Every cotree ''T'' defines a cograph ''G'' having the leaves of ''T'' as vertices, and in which the subtree rooted at each node of ''T'' corresponds to the
induced subgraph
In the mathematical field of graph theory, an induced subgraph of a graph is another graph, formed from a subset of the vertices of the graph and ''all'' of the edges (from the original graph) connecting pairs of vertices in that subset.
Definit ...
in ''G'' defined by the set of leaves descending from that node:
* A subtree consisting of a single leaf node corresponds to an induced subgraph with a single vertex.
* A subtree rooted at a node labeled 0 corresponds to the union of the subgraphs defined by the children of that node.
* A subtree rooted at a node labeled 1 corresponds to the ''join'' of the subgraphs defined by the children of that node; that is, we form the union and add an edge between every two vertices corresponding to leaves in different subtrees. Alternatively, the join of a set of graphs can be viewed as formed by complementing each graph, forming the union of the complements, and then complementing the resulting union.
An equivalent way of describing the cograph formed from a cotree is that two vertices are connected by an edge if and only if the
lowest common ancestor of the corresponding leaves is labeled by 1. Conversely, every cograph can be represented in this way by a cotree. If we require the labels on any root-leaf path of this tree to alternate between 0 and 1, this representation is unique.
Computational properties
Cographs may be recognized in linear time, and a cotree representation constructed, using
modular decomposition
In graph theory, the modular decomposition is a decomposition of a graph into subsets of vertices called modules. A ''module'' is a generalization of a connected component of a graph. Unlike connected components, however, one module can be a p ...
,
partition refinement In the design of algorithms, partition refinement is a technique for representing a partition of a set as a data structure that allows the partition to be refined by splitting its sets into a larger number of smaller sets. In that sense it is dual t ...
,
LexBFS , or
split decomposition. Once a cotree representation has been constructed, many familiar graph problems may be solved via simple bottom-up calculations on the cotrees.
For instance, to find the
maximum clique in a cograph, compute in bottom-up order the maximum clique in each subgraph represented by a subtree of the cotree. For a node labeled 0, the maximum clique is the maximum among the cliques computed for that node's children. For a node labeled 1, the maximum clique is the union of the cliques computed for that node's children, and has size equal to the sum of the children's clique sizes. Thus, by alternately maximizing and summing values stored at each node of the cotree, we may compute the maximum clique size, and by alternately maximizing and taking unions, we may construct the maximum clique itself. Similar bottom-up tree computations allow the
maximum independent set,
vertex coloring number, maximum clique cover, and Hamiltonicity (that is the existence of a
Hamiltonian cycle
In the mathematical field of graph theory, a Hamiltonian path (or traceable path) is a path in an undirected or directed graph that visits each vertex exactly once. A Hamiltonian cycle (or Hamiltonian circuit) is a cycle that visits each vertex ...
) to be computed in linear time from a cotree representation of a cograph. Because cographs have bounded clique-width,
Courcelle's theorem In the study of graph theory, graph algorithms, Courcelle's theorem is the statement that every graph property definable in the monadic second-order logic, monadic second-order logic of graphs can be decided in linear time on graphs of bounded treew ...
may be used to test any property in the monadic second-order
logic of graphs (MSO
1) on cographs in linear time.
The problem of testing whether a given graph is ''k'' vertices away and/or ''t'' edges away from a cograph is
fixed-parameter tractable
In computer science, parameterized complexity is a branch of computational complexity theory that focuses on classifying computational problems according to their inherent difficulty with respect to ''multiple'' parameters of the input or output. ...
. Deciding if a graph can be ''k''-edge-deleted to a cograph can be solved in O
*(2.415
''k'') time, and ''k''-edge-edited to a cograph in O
*(4.612
''k''). If the largest induced cograph subgraph of a graph can be found by deleting ''k'' vertices from the graph, it can be found in O
*(3.30
''k'') time.
Two cographs are
isomorphic if and only if their cotrees (in the canonical form with no two adjacent vertices with the same label) are isomorphic. Because of this equivalence, one can determine in linear time whether two cographs are isomorphic, by constructing their cotrees and applying a linear time isomorphism test for labeled trees.
If ''H'' is an
induced subgraph
In the mathematical field of graph theory, an induced subgraph of a graph is another graph, formed from a subset of the vertices of the graph and ''all'' of the edges (from the original graph) connecting pairs of vertices in that subset.
Definit ...
of a cograph ''G'', then ''H'' is itself a cograph; the cotree for ''H'' may be formed by removing some of the leaves from the cotree for ''G'' and then suppressing nodes that have only one child. It follows from
Kruskal's tree theorem that the
relation of being an induced subgraph is a
well-quasi-ordering on the cographs. Thus, if a subfamily of the cographs (such as the
planar cographs) is closed under induced subgraph operations then it has a finite number of
forbidden induced subgraphs. Computationally, this means that testing membership in such a subfamily may be performed in linear time, by using a bottom-up computation on the cotree of a given graph to test whether it contains any of these forbidden subgraphs. However, when the sizes of two cographs are both variable, testing whether one of them is an induced subgraph of the other is
NP-complete
In computational complexity theory, a problem is NP-complete when:
# it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by tryin ...
.
Cographs play a key role in algorithms for recognizing
read-once function In mathematics, a read-once function is a special type of Boolean function that can be described by a Boolean expression in which each Variable (mathematics), variable appears only once.
More precisely, the expression is required to use only the op ...
s.
Enumeration
The number of connected cographs with ''n'' vertices, for ''n'' = 1, 2, 3, ..., is:
:1, 1, 2, 5, 12, 33, 90, 261, 766, 2312, 7068, 21965, 68954, ...
For ''n'' > 1 there are the same number of disconnected cographs, because for every cograph exactly one of it or its
complement graph
In the mathematical field of graph theory, 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 they are not adjacent in . That is, to generate the complement ...
is connected.
Related graph families
Subclasses
Every
complete graph
In the mathematical field of graph theory, a complete graph is a simple undirected graph in which every pair of distinct vertices is connected by a unique edge. A complete digraph is a directed graph in which every pair of distinct vertices ...
is a cograph, with a cotree consisting of a single 1-node and leaves. Similarly, every
complete bipartite graph
In the mathematical field of graph theory, a complete bipartite graph or biclique is a special kind of bipartite graph where every vertex of the first set is connected to every vertex of the second set..Electronic edition page 17.
Graph theory ...
is a cograph. Its cotree is rooted at a 1-node which has two 0-node children, one with leaf children and one with leaf children.
A
Turán graph may be formed by the join of a family of equal-sized independent sets; thus, it also is a cograph, with a cotree rooted at a 1-node that has a child 0-node for each independent set.
Every
threshold graph is also a cograph. A threshold graph may be formed by repeatedly adding one vertex, either connected to all previous vertices or to none of them; each such operation is one of the disjoint union or join operations by which a cotree may be formed.
Superclasses
The characterization of cographs by the property that every clique and maximal independent set have a nonempty intersection is a stronger version of the defining property of
strongly perfect graph
This is a glossary of graph theory. Graph theory is the study of graphs, systems of nodes or vertices connected in pairs by lines or edges.
Symbols
A
B
...
s, in which there every induced subgraph contains an independent set that intersects all maximal cliques. In a cograph, every maximal independent set intersects all maximal cliques. Thus, every cograph is strongly perfect.
The fact that cographs are ''P''
4-free implies that they are
perfectly orderable. In fact, every vertex order of a cograph is a perfect order which further implies that max clique finding and min colouring can be found in linear time with any greedy colouring and without the need for a cotree decomposition.
Every cograph is a
distance-hereditary graph, meaning that every
induced path in a cograph is a
shortest path
In graph theory, the shortest path problem is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized.
The problem of finding the shortest path between t ...
. The cographs may be characterized among the distance-hereditary graphs as having diameter two in each connected component.
Every cograph is also a
comparability graph
In graph theory, a comparability graph is an undirected graph that connects pairs of elements that are comparable to each other in a partial order. Comparability graphs have also been called transitively orientable graphs, partially orderable graph ...
of a
series-parallel partial order, obtained by replacing the disjoint union and join operations by which the cograph was constructed by disjoint union and
ordinal sum
In mathematics, especially order theory, a partially ordered set (also poset) formalizes and generalizes the intuitive concept of an ordering, sequencing, or arrangement of the elements of a set. A poset consists of a set together with a binary ...
operations on partial orders.
Because strongly perfect graphs, perfectly orderable graphs, distance-hereditary graphs, and comparability graphs are all
perfect graph
In graph theory, a perfect graph is a graph in which the chromatic number of every induced subgraph equals the order of the largest clique of that subgraph ( clique number). Equivalently stated in symbolic terms an arbitrary graph G=(V,E) is per ...
s, cographs are also perfect.
Notes
References
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*
*.
*.
*.
External links
*
* {{mathworld , urlname=Cograph , title=Cograph, mode=cs2
Graph families
Perfect graphs
Graph operations