De Bruijn graph

In graph theory, an n-dimensional De Bruijn graph of m symbols is a directed graph representing overlaps between sequences of symbols. It has mn vertices, consisting of all possible length-n sequences of the given symbols; the same symbol may appear multiple times in a sequence. For a set of m symbols S = {s1, …, sm}, 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 invented independently by both de Bruijn[1] and I. J. Good.[2] Much earlier, Camille Flye Sainte-Marie[3] implicitly used their properties.

  1. ^ Cite error: The named reference Bruijn1946 was invoked but never defined (see the help page).
  2. ^ Cite error: The named reference Good1946 was invoked but never defined (see the help page).
  3. ^ Cite error: The named reference Flye1894 was invoked but never defined (see the help page).