In the
mathematical
Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
area of
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 conne ...
, a clique ( or ) is a subset of vertices of an
undirected graph
In discrete mathematics, and more specifically in graph theory, a graph is a structure amounting to a set of objects in which some pairs of the objects are in some sense "related". The objects correspond to mathematical abstractions called '' v ...
such that every two distinct vertices in the clique are
adjacent. That is, a clique of a graph
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.
Defini ...
of
that is
complete
Complete may refer to:
Logic
* Completeness (logic)
* Completeness of a theory, the property of a theory that every formula in the theory's language or its negation is provable
Mathematics
* The completeness of the real numbers, which implies t ...
. Cliques are one of the basic concepts of graph theory and are used in many other mathematical problems and constructions on graphs. Cliques have also been studied in
computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
: the task of finding whether there is a clique of a given size in 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 ...
(the
clique problem
In computer science, the clique problem is the computational problem of finding cliques (subsets of vertices, all adjacent to each other, also called complete subgraphs) in a graph. It has several different formulations depending on which cliq ...
) 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 tryi ...
, but despite this hardness result, many algorithms for finding cliques have been studied.
Although the study of
complete subgraphs goes back at least to the graph-theoretic reformulation of
Ramsey theory
Ramsey theory, named after the British mathematician and philosopher Frank P. Ramsey, is a branch of mathematics that focuses on the appearance of order in a substructure given a structure of a known size. Problems in Ramsey theory typically ask ...
by , the term ''clique'' comes from , who used complete subgraphs in
social network
A social network is a social structure made up of a set of social actors (such as individuals or organizations), sets of dyadic ties, and other social interactions between actors. The social network perspective provides a set of methods for ...
s to model
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 popular ...
s of people; that is, groups of people all of whom know each other. Cliques have many other applications in the sciences and particularly in
bioinformatics
Bioinformatics () is an interdisciplinary field that develops methods and software tools for understanding biological data, in particular when the data sets are large and complex. As an interdisciplinary field of science, bioinformatics combi ...
.
Definitions
A clique, , in an
undirected graph
In discrete mathematics, and more specifically in graph theory, a graph is a structure amounting to a set of objects in which some pairs of the objects are in some sense "related". The objects correspond to mathematical abstractions called '' v ...
is a subset of the
vertices, , such that every two distinct vertices are adjacent. This is equivalent to the condition that 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.
Defini ...
of induced by is a
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 ...
. In some cases, the term clique may also refer to the subgraph directly.
A maximal clique is a clique that cannot be extended by including one more adjacent vertex, that is, a clique which does not exist exclusively within the vertex set of a larger clique. Some authors define cliques in a way that requires them to be maximal, and use other terminology for complete subgraphs that are not maximal.
A maximum clique of a graph, , is a clique, such that there is no clique with more vertices. Moreover, the clique number of a graph is the number of vertices in a maximum clique in .
The
intersection number
In mathematics, and especially in algebraic geometry, the intersection number generalizes the intuitive notion of counting the number of times two curves intersect to higher dimensions, multiple (more than 2) curves, and accounting properly for ta ...
of is the smallest number of cliques that together cover all edges of .
The clique cover number of a graph is the smallest number of cliques of whose union covers the set of vertices of the graph.
A maximum clique transversal of a graph is a subset of vertices with the property that each maximum clique of the graph contains at least one vertex in the subset.
The opposite of a clique is an
independent set, in the sense that every clique corresponds to an independent set in the
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 of a ...
. The
clique cover
In graph theory, a clique cover or partition into cliques of a given undirected graph is a partition of the vertices into cliques, subsets of vertices within which every two vertices are adjacent. A minimum clique cover is a clique cover that us ...
problem concerns finding as few cliques as possible that include every vertex in the graph.
A related concept is a biclique, a
complete bipartite subgraph. The
bipartite dimension
In the mathematical fields of graph theory and combinatorial optimization, the bipartite dimension or biclique cover number of a graph ''G'' = (''V'', ''E'') is the minimum number of bicliques (that is complete bipartite subgraphs), ...
of a graph is the minimum number of bicliques needed to cover all the edges of the graph.
Mathematics
Mathematical results concerning cliques include the following.
*
Turán's theorem
In graph theory, Turán's theorem bounds the number of edges that can be included in an undirected graph that does not have a complete subgraph of a given size. It is one of the central results of extremal graph theory, an area studying the large ...
gives a
lower bound
In mathematics, particularly in order theory, an upper bound or majorant of a subset of some preordered set is an element of that is greater than or equal to every element of .
Dually, a lower bound or minorant of is defined to be an eleme ...
on the size of a clique in
dense graph
In mathematics, a dense graph is a graph in which the number of edges is close to the maximal number of edges (where every pair of vertices is connected by one edge). The opposite, a graph with only a few edges, is a sparse graph. The distinctio ...
s. If a graph has sufficiently many edges, it must contain a large clique. For instance, every graph with
vertices and more than
edges must contain a three-vertex clique.
*
Ramsey's theorem
In combinatorics, Ramsey's theorem, in one of its graph-theoretic forms, states that one will find monochromatic cliques in any edge labelling (with colours) of a sufficiently large complete graph. To demonstrate the theorem for two colours (say ...
states that every graph 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 of a ...
contains a clique with at least a logarithmic number of vertices.
*According to a result of , a graph with 3''n'' vertices can have at most 3
''n'' maximal cliques. The graphs meeting this bound are the Moon–Moser graphs ''K''
3,3,..., a special case of the
Turán graph
The Turán graph, denoted by T(n,r), is a complete multipartite graph; it is formed by partitioning a set of n vertices into r subsets, with sizes as equal as possible, and then connecting two vertices by an edge if and only if they belong to di ...
s arising as the extremal cases in Turán's theorem.
*
Hadwiger's conjecture, still unproven, relates the size of the largest clique
minor in a graph (its
Hadwiger number
In graph theory, the Hadwiger number of an undirected graph is the size of the largest complete graph that can be obtained by contracting edges of .
Equivalently, the Hadwiger number is the largest number for which the complete graph is a ...
) to its
chromatic number
In graph theory, graph coloring is a special case of graph labeling; it is an assignment of labels traditionally called "colors" to elements of a graph subject to certain constraints. In its simplest form, it is a way of coloring the vertices o ...
.
*The
Erdős–Faber–Lovász conjecture is another unproven statement relating graph coloring to cliques.
Several important classes of graphs may be defined or characterized by their cliques:
*A
cluster graph
In graph theory, a branch of mathematics, a cluster graph is a graph formed from the disjoint union of complete graphs.
Equivalently, a graph is a cluster graph if and only if it has no three-vertex induced path; for this reason, the cluster ...
is a graph whose
connected components are cliques.
*A
block graph
In graph theory, a branch of combinatorial mathematics, a block graph or clique tree.
is a type of undirected graph in which every biconnected component (block) is a clique.
Block graphs are sometimes erroneously called Husimi trees (after KÃ ...
is a graph whose
biconnected component
In graph theory, a biconnected component (sometimes known as a 2-connected component) is a maximal biconnected subgraph. Any connected graph decomposes into a tree of biconnected components called the block-cut tree of the graph. The blocks a ...
s are cliques.
*A
chordal graph
In the mathematical area of graph theory, a chordal graph is one in which all cycles of four or more vertices have a ''chord'', which is an edge that is not part of the cycle but connects two vertices of the cycle. Equivalently, every induced cy ...
is a graph whose vertices can be ordered into a perfect elimination ordering, an ordering such that the
neighbors of each vertex ''v'' that come later than ''v'' in the ordering form a clique.
*A
cograph
In graph theory, a cograph, or complement-reducible graph, or ''P''4-free graph, is a graph that can be generated from the single-vertex graph ''K''1 by complementation and disjoint union. That is, the family of cographs is the smallest class of ...
is a graph all of whose induced subgraphs have the property that any maximal clique intersects any
maximal independent set
In graph theory, a maximal independent set (MIS) or maximal stable set is an independent set that is not a subset of any other independent set. In other words, there is no vertex outside the independent set that may join it because it is max ...
in a single vertex.
*An
interval graph
In graph theory, an interval graph is an undirected graph formed from a set of intervals on the real line,
with a vertex for each interval and an edge between vertices whose intervals intersect. It is the intersection graph of the intervals.
In ...
is a graph whose maximal cliques can be ordered in such a way that, for each vertex ''v'', the cliques containing ''v'' are consecutive in the ordering.
*A
line graph
In the mathematical discipline of graph theory, the line graph of an undirected graph is another graph that represents the adjacencies between edges of . is constructed in the following way: for each edge in , make a vertex in ; for every ...
is a graph whose edges can be covered by edge-disjoint cliques in such a way that each vertex belongs to exactly two of the cliques in the cover.
*A
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 perfe ...
is a graph in which the clique number equals the
chromatic number
In graph theory, graph coloring is a special case of graph labeling; it is an assignment of labels traditionally called "colors" to elements of a graph subject to certain constraints. In its simplest form, it is a way of coloring the vertices o ...
in every
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.
Defini ...
.
*A
split graph
In graph theory, a branch of mathematics, a split graph is a graph in which the vertices can be partitioned into a clique and an independent set. Split graphs were first studied by , and independently introduced by .
A split graph may have m ...
is a graph in which some clique contains at least one endpoint of every edge.
*A
triangle-free graph
In the mathematical area of graph theory, a triangle-free graph is an undirected graph in which no three vertices form a triangle of edges. Triangle-free graphs may be equivalently defined as graphs with clique number ≤ 2, graphs with g ...
is a graph that has no cliques other than its vertices and edges.
Additionally, many other mathematical constructions involve cliques in graphs. Among them,
*The
clique complex
Clique complexes, independence complexes, flag complexes, Whitney complexes and conformal hypergraphs are closely related mathematical objects in graph theory and geometric topology that each describe the cliques (complete subgraphs) of an undir ...
of a graph ''G'' is an
abstract simplicial complex
In combinatorics, an abstract simplicial complex (ASC), often called an abstract complex or just a complex, is a family of sets that is closed under taking subsets, i.e., every subset of a set in the family is also in the family. It is a purely c ...
''X''(''G'') with a simplex for every clique in ''G''
*A
simplex graph
In graph theory, a branch of mathematics, the simplex graph of an undirected graph is itself a graph, with one node for each clique (a set of mutually adjacent vertices) in . Two nodes of are linked by an edge whenever the corresponding two c ...
is an undirected graph κ(''G'') with a vertex for every clique in a graph ''G'' and an edge connecting two cliques that differ by a single vertex. It is an example of
median graph
In graph theory, a division of mathematics, a median graph is an undirected graph in which every three vertices ''a'', ''b'', and ''c'' have a unique ''median'': a vertex ''m''(''a'',''b'',''c'') that belongs to shortest paths between each pair o ...
, and is associated with a
median algebra In mathematics, a median algebra is a set with a ternary operation \langle x,y,z \rangle satisfying a set of axioms which generalise the notions of medians of triples of real numbers and of the Boolean majority function.
The axioms are
# \lang ...
on the cliques of a graph: the median ''m''(''A'',''B'',''C'') of three cliques ''A'', ''B'', and ''C'' is the clique whose vertices belong to at least two of the cliques ''A'', ''B'', and ''C''.
*The
clique-sum
In graph theory, a branch of mathematics, a clique-sum is a way of combining two graphs by gluing them together at a clique, analogous to the connected sum operation in topology. If two graphs ''G'' and ''H'' each contain cliques of equal size, th ...
is a method for combining two graphs by merging them along a shared clique.
*
Clique-width
In graph theory, the clique-width of a graph is a parameter that describes the structural complexity of the graph; it is closely related to treewidth, but unlike treewidth it can be bounded even for dense graphs.
It is defined as the minimum num ...
is a notion of the complexity of a graph in terms of the minimum number of distinct vertex labels needed to build up the graph from disjoint unions, relabeling operations, and operations that connect all pairs of vertices with given labels. The graphs with clique-width one are exactly the disjoint unions of cliques.
*The
intersection number
In mathematics, and especially in algebraic geometry, the intersection number generalizes the intuitive notion of counting the number of times two curves intersect to higher dimensions, multiple (more than 2) curves, and accounting properly for ta ...
of a graph is the minimum number of cliques needed to cover all the graph's edges.
*The
clique graph
In graph theory, a clique graph of an undirected graph is another graph that represents the structure of cliques in .
Clique graphs were discussed at least as early as 1968, and a characterization of clique graphs was given in 1971.
Formal d ...
of a graph is the
intersection graph
In graph theory, an intersection graph is a graph that represents the pattern of intersections of a family of sets. Any graph can be represented as an intersection graph, but some important special classes of graphs can be defined by the types o ...
of its maximal cliques.
Closely related concepts to complete subgraphs are
subdivision
Subdivision may refer to:
Arts and entertainment
* Subdivision (metre), in music
* ''Subdivision'' (film), 2009
* "Subdivision", an episode of ''Prison Break'' (season 2)
* ''Subdivisions'' (EP), by Sinch, 2005
* "Subdivisions" (song), by Rus ...
s of complete graphs and complete
graph minor
In graph theory, an undirected graph is called a minor of the graph if can be formed from by deleting edges and vertices and by contracting edges.
The theory of graph minors began with Wagner's theorem that a graph is planar if and only if ...
s. In particular,
Kuratowski's theorem
In graph theory, Kuratowski's theorem is a mathematical forbidden graph characterization of planar graphs, named after Kazimierz Kuratowski. It states that a finite graph is planar if and only if it does not contain a subgraph that is a subdi ...
and
Wagner's theorem
In graph theory, Wagner's theorem is a mathematical forbidden graph characterization of planar graphs, named after Klaus Wagner, stating that a finite graph is planar if and only if its minors include neither ''K''5 (the complete graph on fi ...
characterize
planar graphs by forbidden complete and
complete bipartite subdivisions and minors, respectively.
Computer science
In
computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
, the
clique problem
In computer science, the clique problem is the computational problem of finding cliques (subsets of vertices, all adjacent to each other, also called complete subgraphs) in a graph. It has several different formulations depending on which cliq ...
is the computational problem of finding a maximum clique, or all cliques, in a given graph. It 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 tryi ...
, one of
Karp's 21 NP-complete problems
In computational complexity theory, Karp's 21 NP-complete problems are a set of computational problems which are NP-complete. In his 1972 paper, "Reducibility Among Combinatorial Problems", Richard Karp used Stephen Cook's 1971 theorem that the b ...
. It is also
fixed-parameter intractable, and
hard to approximate In computer science, hardness of approximation is a field that studies the Computational complexity theory, algorithmic complexity of finding near-optimal solutions to optimization problems.
Scope
Hardness of approximation complements the study of ...
. Nevertheless, many
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
s for computing cliques have been developed, either running in
exponential time
In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by t ...
(such as the
Bron–Kerbosch algorithm In computer science, the Bron–Kerbosch algorithm is an enumeration algorithm for finding all maximal cliques in an undirected graph. That is, it lists all subsets of vertices with the two properties that each pair of vertices in one of the listed ...
) or specialized to graph families such as
planar graphs or
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 perfe ...
s for which the problem can be solved in
polynomial time
In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by ...
.
Applications
The word "clique", in its graph-theoretic usage, arose from the work of , who used complete subgraphs to model
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 popular ...
s (groups of people who all know each other) in
social network
A social network is a social structure made up of a set of social actors (such as individuals or organizations), sets of dyadic ties, and other social interactions between actors. The social network perspective provides a set of methods for ...
s. The same definition was used by in an article using less technical terms. Both works deal with uncovering cliques in a social network using matrices. For continued efforts to model social cliques graph-theoretically, see e.g. , , and .
Many different problems from
bioinformatics
Bioinformatics () is an interdisciplinary field that develops methods and software tools for understanding biological data, in particular when the data sets are large and complex. As an interdisciplinary field of science, bioinformatics combi ...
have been modeled using cliques. For instance, model the problem of clustering
gene expression
Gene expression is the process by which information from a gene is used in the synthesis of a functional gene product that enables it to produce end products, protein or non-coding RNA, and ultimately affect a phenotype, as the final effect. The ...
data as one of finding the minimum number of changes needed to transform a graph describing the data into a graph formed as the disjoint union of cliques; discuss a similar
biclustering Biclustering, block clustering, Co-clustering or two-mode clustering is a data mining technique which allows simultaneous clustering of the rows and columns of a matrix.
The term was first introduced by Boris Mirkin
to name a technique introduce ...
problem for expression data in which the clusters are required to be cliques. uses cliques to model
ecological niche
In ecology, a niche is the match of a species to a specific environmental condition.
Three variants of ecological niche are described by
It describes how an organism or population responds to the distribution of resources and competitors (for ...
s in
food webs
A food web is the natural interconnection of food chains and a graphical representation of what-eats-what in an ecological community. Another name for food web is consumer-resource system. Ecologists can broadly lump all life forms into one ...
. describe the problem of inferring
evolutionary tree
A phylogenetic tree (also phylogeny or evolutionary tree Felsenstein J. (2004). ''Inferring Phylogenies'' Sinauer Associates: Sunderland, MA.) is a branching diagram or a tree showing the evolutionary relationships among various biological spec ...
s as one of finding maximum cliques in a graph that has as its vertices characteristics of the species, where two vertices share an edge if there exists a
perfect phylogeny Perfect phylogeny is a term used in computational phylogenetics to denote a phylogenetic tree in which all internal nodes may be labeled such that all characters evolve down the tree without homoplasy. That is, characteristics do not hold to conver ...
combining those two characters. model
protein structure prediction
Protein structure prediction is the inference of the three-dimensional structure of a protein from its amino acid sequence—that is, the prediction of its secondary and tertiary structure from primary structure. Structure prediction is different ...
as a problem of finding cliques in a graph whose vertices represent positions of subunits of the protein. And by searching for cliques in a
protein-protein interaction network, found clusters of proteins that interact closely with each other and have few interactions with proteins outside the cluster.
Power graph analysis In computational biology, power graph analysis is a method for the analysis and
representation of complex networks. Power graph analysis is the computation, analysis and visual representation of a power graph from a graph (networks).
Power graph a ...
is a method for simplifying complex biological networks by finding cliques and related structures in these networks.
In
electrical engineering
Electrical engineering is an engineering discipline concerned with the study, design, and application of equipment, devices, and systems which use electricity, electronics, and electromagnetism. It emerged as an identifiable occupation in the l ...
, uses cliques to analyze communications networks, and use them to design efficient circuits for computing partially specified Boolean functions. Cliques have also been used in
automatic test pattern generation ATPG (acronym for both Automatic Test Pattern Generation and Automatic Test Pattern Generator) is an electronic design automation method/technology used to find an input (or test) sequence that, when applied to a digital circuit, enables automatic t ...
: a large clique in an incompatibility graph of possible faults provides a lower bound on the size of a test set.
[.] describe an application of cliques in finding a hierarchical partition of an electronic circuit into smaller subunits.
In
chemistry
Chemistry is the science, scientific study of the properties and behavior of matter. It is a natural science that covers the Chemical element, elements that make up matter to the chemical compound, compounds made of atoms, molecules and ions ...
, use cliques to describe chemicals in a
chemical database
A chemical database is a database specifically designed to store chemical information. This information is about chemical and crystal structures, spectra, reactions and syntheses, and thermophysical data.
Types of chemical databases
Bioactivi ...
that have a high degree of similarity with a target structure. use cliques to model the positions in which two chemicals will bind to each other.
See also
*
Clique game
The clique game is a positional game where two players alternately pick edges, trying to occupy a complete clique of a given size.
The game is parameterized by two integers ''n'' > ''k''. The game-board is the set of all edges of a complete graph ...
Notes
References
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*
External links
*
*{{MathWorld, title=Clique Number, urlname=CliqueNumber, mode=cs2
Graph theory objects