Computer Science > Information Theory
[Submitted on 9 May 2017 (v1), last revised 4 Jun 2019 (this version, v3)]
Title:Binary de Bruijn Sequences via Zech's Logarithms
View PDFAbstract:The focus of this work is to show how to combine Zech's logarithms and each of the cycle joining and cross-join pairing methods to construct binary de Bruijn sequences of any order. A basic implementation is supplied as a proof-of-concept.
The cycles, in the cycle joining method, are typically generated by a linear feedback shift register. We prove a crucial characterization that determining Zech's logarithms is equivalent to identifying conjugate pairs shared by any two distinct cycles. This speeds up the task of building a connected adjacency subgraph that contains all vertices of the complete adjacency graph. Distinct spanning trees in either graph correspond to cyclically inequivalent de Bruijn sequences. As the cycles are being joined, guided by the conjugate pairs, we track the changes in the feedback function. Certificates of star or almost-star spanning trees conveniently handle large order cases.
The characterization of conjugate pairs via Zech's logarithms, as positional markings, is then adapted to identify cross-join pairs. A modified $m$-sequence is initially used, for ease of generation. The process can be repeated on each of the resulting de Bruijn sequences. We show how to integrate an analytic tool, attributed to Fryers, in the process.
Most prior constructions in the literature measure the complexity of the corresponding bit-by-bit algorithms. Our approach is different. We aim first to build a connected adjacency subgraph that is certified to contain all of the cycles as vertices. The ingredients are computed just once and concisely stored. Simple strategies are offered to keep the complexities low as the order grows.
Submission history
From: Martianus Frederic Ezerman [view email][v1] Tue, 9 May 2017 02:39:53 UTC (90 KB)
[v2] Tue, 9 Oct 2018 08:43:31 UTC (565 KB)
[v3] Tue, 4 Jun 2019 09:42:32 UTC (569 KB)
Current browse context:
cs.IT
References & Citations
DBLP - CS Bibliography
export BibTeX citation
Loading...
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.