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 ...
, an -dimensional De Bruijn graph of symbols is a
directed graph
In mathematics, and more specifically in graph theory, a directed graph (or digraph) is a graph that is made up of a set of vertices connected by directed edges, often called arcs.
Definition
In formal terms, a directed graph is an ordered pai ...
representing overlaps between sequences of symbols. It has
vertices, consisting of all possible sequences of the given symbols; the same symbol may appear multiple times in a sequence. For a
set of symbols the set of vertices is:
:
If one of the vertices can be expressed as another vertex by shifting all its symbols by one place to the left and adding a new symbol at the end of this vertex, then the latter has a directed edge to the former vertex. Thus the set of arcs (that is, directed edges) is
:
Although De Bruijn graphs are named after
Nicolaas Govert de Bruijn, they were discovered independently by both De Bruijn
and
I. J. Good.
Much earlier, Camille Flye Sainte-Marie
implicitly used their properties.
Properties
* If , then the condition for any two vertices forming an edge holds
vacuously
In mathematics and logic, a vacuous truth is a conditional or universal statement (a universal statement that can be converted to a conditional statement) that is true because the antecedent cannot be satisfied. For example, the statement "she ...
, and hence all the vertices are connected, forming a total of edges.
* Each vertex has exactly incoming and outgoing edges.
* Each -dimensional De Bruijn graph is the
line digraph of the De Bruijn graph with the same set of symbols.
* Each De Bruijn graph is
Eulerian and
Hamiltonian. The Euler cycles and Hamiltonian cycles of these graphs (equivalent to each other via the line graph construction) are
De Bruijn sequences.
The
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 ...
construction of the three smallest binary De Bruijn graphs is depicted below. As can be seen in the illustration, each vertex of the -dimensional De Bruijn graph corresponds to an edge of the De Bruijn graph, and each edge in the -dimensional De Bruijn graph corresponds to a two-edge path in the De Bruijn graph.
Dynamical systems
Binary De Bruijn graphs can be drawn in such a way that they resemble objects from the theory of
dynamical system
In mathematics, a dynamical system is a system in which a function describes the time dependence of a point in an ambient space. Examples include the mathematical models that describe the swinging of a clock pendulum, the flow of water i ...
s, such as the
Lorenz attractor
The Lorenz system is a system of ordinary differential equations first studied by mathematician and meteorologist Edward Lorenz. It is notable for having chaotic solutions for certain parameter values and initial conditions. In particular, the ...
:
This analogy can be made rigorous: the -dimensional -symbol De Bruijn graph is a model of the
Bernoulli map
:
The Bernoulli map (also called the map for ) is an
ergodic
In mathematics, ergodicity expresses the idea that a point of a moving system, either a dynamical system or a stochastic process, will eventually visit all parts of the space that the system moves in, in a uniform and random sense. This implies t ...
dynamical system, which can be understood to be a single
shift
Shift may refer to:
Art, entertainment, and media Gaming
* ''Shift'' (series), a 2008 online video game series by Armor Games
* '' Need for Speed: Shift'', a 2009 racing video game
** '' Shift 2: Unleashed'', its 2011 sequel
Literature
* ''Sh ...
of a
-adic number.
The trajectories of this dynamical system correspond to walks in the De Bruijn graph, where the correspondence is given by mapping each real in the interval to the vertex corresponding to the first digits in the
base- representation of . Equivalently, walks in the De Bruijn graph correspond to trajectories in a one-sided
subshift of finite type.

Embeddings resembling this one can be used to show that the binary De Bruijn graphs have
queue number 2
[ and that they have book thickness at most 5.][
]
Uses
* Some grid network topologies are De Bruijn graphs.
* The distributed hash table
A distributed hash table (DHT) is a distributed system that provides a lookup service similar to a hash table: key–value pairs are stored in a DHT, and any participating node can efficiently retrieve the value associated with a given key. The ...
protocol Koorde uses a De Bruijn graph.
* 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 combin ...
, De Bruijn graphs are used for ''de novo'' assembly of sequencing reads into a genome
In the fields of molecular biology and genetics, a genome is all the genetic information of an organism. It consists of nucleotide sequences of DNA (or RNA in RNA viruses). The nuclear genome includes protein-coding genes and non-coding ...
.
See also
* De Bruijn torus
In combinatorial mathematics, a De Bruijn torus, named after Dutch mathematician Nicolaas Govert de Bruijn, is an array of symbols from an alphabet (often just 0 and 1) that contains every possible matrix of given dimensions exactly once. It ...
* Hamming graph
Hamming graphs are a special class of graphs named after Richard Hamming and used in several branches of mathematics ( graph theory) and computer science. Let be a set of elements and a positive integer. The Hamming graph has vertex ...
* Kautz graph
References
External links
* {{MathWorld, title=De Bruijn Graph, id=deBruijnGraph
Tutorial on using De Bruijn Graphs in Bioinformatics
by Homolog.us
Dynamical systems
Automata (computation)
Parametric families of graphs
Directed graphs