693 research outputs found

    On Greedy Algorithms for Binary de Bruijn Sequences

    Full text link
    We propose a general greedy algorithm for binary de Bruijn sequences, called Generalized Prefer-Opposite (GPO) Algorithm, and its modifications. By identifying specific feedback functions and initial states, we demonstrate that most previously-known greedy algorithms that generate binary de Bruijn sequences are particular cases of our new algorithm

    Wavelet analysis on symbolic sequences and two-fold de Bruijn sequences

    Full text link
    The concept of symbolic sequences play important role in study of complex systems. In the work we are interested in ultrametric structure of the set of cyclic sequences naturally arising in theory of dynamical systems. Aimed at construction of analytic and numerical methods for investigation of clusters we introduce operator language on the space of symbolic sequences and propose an approach based on wavelet analysis for study of the cluster hierarchy. The analytic power of the approach is demonstrated by derivation of a formula for counting of {\it two-fold de Bruijn sequences}, the extension of the notion of de Bruijn sequences. Possible advantages of the developed description is also discussed in context of applied

    Efficient tilings of de Bruijn and Kautz graphs

    Full text link
    Kautz and de Bruijn graphs have a high degree of connectivity which makes them ideal candidates for massively parallel computer network topologies. In order to realize a practical computer architecture based on these graphs, it is useful to have a means of constructing a large-scale system from smaller, simpler modules. In this paper we consider the mathematical problem of uniformly tiling a de Bruijn or Kautz graph. This can be viewed as a generalization of the graph bisection problem. We focus on the problem of graph tilings by a set of identical subgraphs. Tiles should contain a maximal number of internal edges so as to minimize the number of edges connecting distinct tiles. We find necessary and sufficient conditions for the construction of tilings. We derive a simple lower bound on the number of edges which must leave each tile, and construct a class of tilings whose number of edges leaving each tile agrees asymptotically in form with the lower bound to within a constant factor. These tilings make possible the construction of large-scale computing systems based on de Bruijn and Kautz graph topologies.Comment: 29 pages, 11 figure

    Perfect Necklaces

    Full text link
    We introduce a variant of de Bruijn words that we call perfect necklaces. Fix a finite alphabet. Recall that a word is a finite sequence of symbols in the alphabet and a circular word, or necklace, is the equivalence class of a word under rotations. For positive integers k and n, we call a necklace (k,n)-perfect if each word of length k occurs exactly n times at positions which are different modulo n for any convention on the starting point. We call a necklace perfect if it is (k,k)-perfect for some k. We prove that every arithmetic sequence with difference coprime with the alphabet size induces a perfect necklace. In particular, the concatenation of all words of the same length in lexicographic order yields a perfect necklace. For each k and n, we give a closed formula for the number of (k,n)-perfect necklaces. Finally, we prove that every infinite periodic sequence whose period coincides with some (k,n)-perfect necklace for any n, passes all statistical tests of size up to k, but not all larger tests. This last theorem motivated this work

    Demystifying our Grandparent's De Bruijn Sequences with Concatenation Trees

    Full text link
    Some of the most interesting de Bruijn sequences can be constructed in seemingly unrelated ways. In particular, the "Granddaddy" and "Grandmama" can be understood by joining necklace cycles into a tree using simple parent rules, or by concatenating smaller strings (e.g., Lyndon words) in lexicographic orders. These constructions are elegant, but their equivalences seem to come out of thin air, and the community has had limited success in finding others of the same ilk. We aim to demystify the connection between cycle-joining trees and concatenation schemes by introducing "concatenation trees". These structures combine binary trees and ordered trees, and traversals yield concatenation schemes for their sequences. In this work, we focus on the four simplest cycle-joining trees using the pure cycling register (PCR): "Granddaddy" (PCR1), "Grandmama" (PCR2), "Granny" (PCR3), and "Grandpa" (PCR4). In particular, we formally prove a previously observed correspondence for PCR3 and we unravel the mystery behind PCR4. More broadly, this work lays the foundation for translating cycle-joining trees to known concatenation constructions for a variety of underlying feedback functions including the complementing cycling register (CCR), pure summing register (PSR), complementing summing register (CSR), and pure run-length register (PRR)
    corecore