New successor rules for constructing de Bruijn sequences

Size: px
Start display at page:

Download "New successor rules for constructing de Bruijn sequences"

Transcription

1 New successor rules for constructing de Bruijn sequences Dennis Wong Northwest Missouri State University Daniel Gabric and Joe Sawada University of Guelph, CAN Aaron Williams Simon s Rock, USA Southeastern / 13

2 Outline 1. What is a de Bruijn sequence? 2. Construction methods Euler cycles in a de Bruijn graph Greedy approach Linear feedback shift registers Successor rules 3. Necklaces and co-necklaces 4. New successor rules Southeastern / 13

3 Definition What is a de Bruijn sequence? A de Bruijn sequence is a circular string of length 2 n where every binary string of length n occurs as a substring (exactly once). Example is a de Bruijn sequence for n = 4 The 16 unique substrings of length 4 are: 0000, 0001, 0010, 0101, 1011, 0110, 1101, 1010, 0100, 1001, 0011, 0111, 1111, 1110, 1100, Southeastern / 13

4 Definition What is a de Bruijn sequence? A de Bruijn sequence is a circular string of length 2 n where every binary string of length n occurs as a substring (exactly once). Example is a de Bruijn sequence for n = 4 The 16 unique substrings of length 4 are: 0000, 0001, 0010, 0101, 1011, 0110, 1101, 1010, 0100, 1001, 0011, 0111, 1111, 1110, 1100, PROBLEM: How to efficiently construct a de Bruijn sequence? Southeastern / 13

5 Construction method #1: Graph model Construct the de Bruijn graph with 2 n 1 vertices and 2 n edges: A de Bruijn sequence is in 1-1 correspondence with an Euler cycle in a de Bruijn graph. Southeastern / 13

6 Construction method #1: Graph model Construct the de Bruijn graph with 2 n 1 vertices and 2 n edges: A de Bruijn sequence is in 1-1 correspondence with an Euler cycle in a de Bruijn graph. By counting Euler cycles, the number of de Bruijn sequences is: 2 2n 1 n Southeastern / 13

7 Construction method #1: Graph model Construct the de Bruijn graph with 2 n 1 vertices and 2 n edges: A de Bruijn sequence is in 1-1 correspondence with an Euler cycle in a de Bruijn graph. By counting Euler cycles, the number of de Bruijn sequences is: 2 2n 1 n this method requires exponential space to store the graph Southeastern / 13

8 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Southeastern / 13

9 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

10 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

11 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

12 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

13 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

14 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

15 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

16 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

17 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

18 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

19 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Southeastern / 13

20 Construction method #2: Greedy approach Prefer-larger greedy algorithm (Martin 1934) 1. Start with 0 n (very important!) 2. Repeat: append the largest bit that does not create a duplicate length n substring Example n = Other greedy approaches: Prefer-same (Eldert 1958) Prefer-opposite (Alhakim 2010) these methods require exponential space to remember the sequence Southeastern / 13

21 Construction method #3: Linear feedback shift registers Construct and iterate an LFSR 1. Find a primitive polynomial polynomial of order n 2. Construct a linear feedback shift register from the polynomial 3. Iterate through register 2 n 1 times time and space efficient misses the string 0 n requires a different primitive polynomial for each n Southeastern / 13

22 Construction method #4: Successor rules Successor rule constructions A successor rule for a given de Bruijn sequence is a function { b1 if conditions NEXT (b 1 b 2 b n ) = otherwise that returns the bit following the substring b 1 b 2 b n. b 1 Southeastern / 13

23 Construction method #4: Successor rules Successor rule constructions A successor rule for a given de Bruijn sequence is a function { b1 if conditions NEXT (b 1 b 2 b n ) = otherwise that returns the bit following the substring b 1 b 2 b n. b 1 For the n = 4 de Bruijn sequence , its successor rule would define NEXT (1010) = 0. Southeastern / 13

24 Necklaces and co-necklaces Strings from cycling register (rotate left) Strings from Complementing Cycling Register (complement first bit then rotate left) The lexicographically smallest element from each equivalence class is called a necklace and co-necklace respectively. Southeastern / 13

25 Necklace based successor rules Wong Successor (SWW 2016) { b1 if b NEXT (b 1 b 2 b n ) = 2 b 3 b n 1 is a necklace b 1 otherwise. Southeastern / 13

26 Necklace based successor rules Wong Successor (SWW 2016) { b1 if b NEXT (b 1 b 2 b n ) = 2 b 3 b n 1 is a necklace b 1 otherwise. Williams Successor *NEW* { b1 if 0b NEXT (b 1 b 2 b n ) = 2 b 3 b n is a necklace b 1 otherwise. Fredricksen (1972) gave the only other necklace based conditions Southeastern / 13

27 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

28 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

29 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

30 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

31 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

32 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

33 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

34 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

35 Wong successor rule (necklace spanning tree n = 5) Southeastern / 13

36 Co-necklace based successor rules Huang (1990) gave the only other co-necklace based conditions (quite complex) Gabric Successor *NEW* Let β = b 1b 2 b n and let γ = b 2b 3 b n0 { b1 if b 2b 3 b n0 0 n is a co-necklace NEXT (b 1b 2 b n) = otherwise. b 1 Southeastern / 13

37 Gabric successor rule (co-necklace spanning tree n = 5) Southeastern / 13

38 Gabric successor rule (co-necklace spanning tree n = 5) Southeastern / 13

39 Summary of results So far we have found 6 new de Bruijn successors where each bit can be computed in O(n)-time O(n)-memory is required Related techniques allow us to construct an exponential number of de Bruijn sequences where each bit can be computed in O(n)-time O(n 2 )-memory is required Southeastern / 13

40 Summary of results So far we have found 6 new de Bruijn successors where each bit can be computed in O(n)-time O(n)-memory is required Related techniques allow us to construct an exponential number of de Bruijn sequences where each bit can be computed in O(n)-time O(n 2 )-memory is required -Gracias- Southeastern / 13

September 6, Abstract

September 6, Abstract A simple shift rule for -ary de Bruijn sequences Joe Sawada Aaron Williams Dennis Wong September 6, 2016 Abstract A -ary de Bruijn sequence of order n is a cyclic sequence of length n in which each -ary

More information

De Bruijn Sequences for the Binary Strings with Maximum Density

De Bruijn Sequences for the Binary Strings with Maximum Density De Bruijn Sequences for the Binary Strings with Maximum Density Joe Sawada 1, Brett Stevens 2, and Aaron Williams 2 1 jsawada@uoguelph.ca School of Computer Science, University of Guelph, CANADA 2 brett@math.carleton.ca

More information

GENERALIZING THE CLASSIC GREEDY AND NECKLACE CONSTRUCTIONS OF DE BRUIJN SEQUENCES AND UNIVERSAL CYCLES

GENERALIZING THE CLASSIC GREEDY AND NECKLACE CONSTRUCTIONS OF DE BRUIJN SEQUENCES AND UNIVERSAL CYCLES GENERALIZING THE CLASSIC GREEDY AND NECKLACE CONSTRUCTIONS OF DE BRUIJN SEQUENCES AND UNIVERSAL CYCLES JOE SAWADA, AARON WILLIAMS, AND DENNIS WONG Abstract. We present a class of languages that have an

More information

arxiv: v1 [math.co] 30 Mar 2010

arxiv: v1 [math.co] 30 Mar 2010 arxiv:1003.5939v1 [math.co] 30 Mar 2010 Generalized Fibonacci recurrences and the lex-least De Bruijn sequence Joshua Cooper April 1, 2010 Abstract Christine E. Heitsch The skew of a binary string is the

More information

Fixed-Density Necklaces and Lyndon Words in Cool-lex Order

Fixed-Density Necklaces and Lyndon Words in Cool-lex Order Fixed-Density Necklaces and Lyndon Words in Cool-lex Order J. Sawada A. Williams July 6, 2009 Abstract This paper creates a simple Gray code for fixed-density binary necklaces and Lyndon words. The Gray

More information

Finding the Largest Fixed-Density Necklace and Lyndon word

Finding the Largest Fixed-Density Necklace and Lyndon word Finding the Largest Fixed-Density Necklace and Lyndon word Joe Sawada Patrick Hartman April 18, 2017 Abstract We present an O(n) time algorithm for finding the lexicographically largest fixed-density necklace

More information

The Adjacency Graphs of Linear Feedback Shift Registers with Primitive-like Characteristic Polynomials

The Adjacency Graphs of Linear Feedback Shift Registers with Primitive-like Characteristic Polynomials The Adjacency Graphs of Linear Feedback Shift Registers with Primitive-like Characteristic Polynomials Ming Li and Dongdai Lin State Key Laboratory of Information Security, Institute of Information Engineering,

More information

AN EXPLICIT UNIVERSAL CYCLE FOR THE (n 1)-PERMUTATIONS OF AN n-set

AN EXPLICIT UNIVERSAL CYCLE FOR THE (n 1)-PERMUTATIONS OF AN n-set AN EXPLICIT UNIVERSAL CYCLE FOR THE (n 1)-PERMUTATIONS OF AN n-set FRANK RUSKEY AND AARON WILLIAMS Abstract. We show how to construct an explicit Hamilton cycle in the directed Cayley graph Cay({σ n, σ

More information

A fast algorithm to generate necklaces with xed content

A fast algorithm to generate necklaces with xed content Theoretical Computer Science 301 (003) 477 489 www.elsevier.com/locate/tcs Note A fast algorithm to generate necklaces with xed content Joe Sawada 1 Department of Computer Science, University of Toronto,

More information

DE BRUIJN GRAPHS AND THEIR APPLICATIONS TO FAULT TOLERANT NETWORKS

DE BRUIJN GRAPHS AND THEIR APPLICATIONS TO FAULT TOLERANT NETWORKS DE BRUIJN GRAPHS AND THEIR APPLICATIONS TO FAULT TOLERANT NETWORKS JOEL BAKER Abstract. The goal of this expository paper is to introduce De Bruijn graphs and discuss their applications to fault tolerant

More information

De Bruijn Sequences from Nonlinear Feedback Shift Registers

De Bruijn Sequences from Nonlinear Feedback Shift Registers De Bruijn Sequences from Nonlinear Feedback Shift Registers Ming Li and Dongdai Lin State Key Laboratory of Information Security, Institute of Information Engineering, Chinese Academy of Sciences, Beijing

More information

DeBruijn Cycles and Relatives

DeBruijn Cycles and Relatives Chapter 7 DeBruijn Cycles and Relatives Dominoes is a simple game, enjoyed by children and adults alike. There are 28 domino pieces, each of which consists of an unordered pair of numbers taken from the

More information

Nonlinear Shi, Registers: A Survey and Open Problems. Tor Helleseth University of Bergen NORWAY

Nonlinear Shi, Registers: A Survey and Open Problems. Tor Helleseth University of Bergen NORWAY Nonlinear Shi, Registers: A Survey and Open Problems Tor Helleseth University of Bergen NORWAY Outline ntroduc9on Nonlinear Shi> Registers (NLFSRs) Some basic theory De Bruijn Graph De Bruijn graph Golomb

More information

On The Nonlinearity of Maximum-length NFSR Feedbacks

On The Nonlinearity of Maximum-length NFSR Feedbacks On The Nonlinearity of Maximum-length NFSR Feedbacks Meltem Sönmez Turan National Institute of Standards and Technology meltem.turan@nist.gov Abstract. Linear Feedback Shift Registers (LFSRs) are the main

More information

arxiv: v2 [math.co] 23 Nov 2015

arxiv: v2 [math.co] 23 Nov 2015 Locating Patterns in the De Bruijn Torus arxiv:1505.04065v2 [math.co] 23 Nov 2015 Victoria Horan Air Force Research Laboratory Information Directorate Brett Stevens School of Mathematics and Statistics

More information

Enumeration and symmetry of edit metric spaces. Jessie Katherine Campbell. A dissertation submitted to the graduate faculty

Enumeration and symmetry of edit metric spaces. Jessie Katherine Campbell. A dissertation submitted to the graduate faculty Enumeration and symmetry of edit metric spaces by Jessie Katherine Campbell A dissertation submitted to the graduate faculty in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY

More information

Necklaces Pólya s Enumeration Theorem. Pólya Counting I. Gordon Royle. Semester 1, 2004

Necklaces Pólya s Enumeration Theorem. Pólya Counting I. Gordon Royle. Semester 1, 2004 Semester 1, 2004 George Pólya (1887 1985) George Polya discovered a powerful general method for enumerating the number of orbits of a group on particular configurations. This method became known as the

More information

Data Structures in Java

Data Structures in Java Data Structures in Java Lecture 21: Introduction to NP-Completeness 12/9/2015 Daniel Bauer Algorithms and Problem Solving Purpose of algorithms: find solutions to problems. Data Structures provide ways

More information

LOOPLESS GENERATION OF MULTISET PERMUTATIONS BY PREFIX SHIFTS

LOOPLESS GENERATION OF MULTISET PERMUTATIONS BY PREFIX SHIFTS LOOPLESS GENERATION OF MULTISET PERMUTATIONS BY PREFIX SHIFTS AARON WILLIAMS UNIVERSITY OF VICTORIA, CANADA Abstract. This paper answers the following mathematical question: Can multiset permutations be

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Part II Emma Strubell http://cs.umaine.edu/~ema/quantum_tutorial.pdf April 13, 2011 Overview Outline Grover s Algorithm Quantum search A worked example Simon s algorithm

More information

Cryptography Lecture 3. Pseudorandom generators LFSRs

Cryptography Lecture 3. Pseudorandom generators LFSRs Cryptography Lecture 3 Pseudorandom generators LFSRs Remember One Time Pad is ideal With OTP you need the same transmission capacity via an already secure channel for the key as you can then secure via

More information

De Bruijn Sequences Revisited

De Bruijn Sequences Revisited De Bruijn Sequences Revisited Lila Kari Zhi Xu The University of Western Ontario, London, Ontario, Canada N6A 5B7 lila@csd.uwo.ca zxu@google.com Abstract A (non-circular) de Bruijn sequence w of order

More information

Necklaces: Generalizations

Necklaces: Generalizations Necklaces: Generalizations V Ch Venkaiah V Ch Venkaiah is presently with the School of Computer and Information Sciences, University of Hyderabad. Prior to that he served in several organizations including

More information

HAMMING DISTANCE FROM IRREDUCIBLE POLYNOMIALS OVER F Introduction and Motivation

HAMMING DISTANCE FROM IRREDUCIBLE POLYNOMIALS OVER F Introduction and Motivation HAMMING DISTANCE FROM IRREDUCIBLE POLYNOMIALS OVER F 2 GILBERT LEE, FRANK RUSKEY, AND AARON WILLIAMS Abstract. We study the Hamming distance from polynomials to classes of polynomials that share certain

More information

CS Analysis of Recursive Algorithms and Brute Force

CS Analysis of Recursive Algorithms and Brute Force CS483-05 Analysis of Recursive Algorithms and Brute Force Instructor: Fei Li Room 443 ST II Office hours: Tue. & Thur. 4:30pm - 5:30pm or by appointments lifei@cs.gmu.edu with subject: CS483 http://www.cs.gmu.edu/

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programming II Date: 10/12/17

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programming II Date: 10/12/17 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programming II Date: 10/12/17 12.1 Introduction Today we re going to do a couple more examples of dynamic programming. While

More information

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple shift-registers with a small number of xor gates. Used for: random number generation

More information

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) EECS150 - igital esign Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Nov 21, 2002 John Wawrzynek Fall 2002 EECS150 Lec26-ECC Page 1 Outline Error detection using parity Hamming

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2016.6.1 COMPUTER SCIENCE TRIPOS Part IB Thursday 2 June 2016 1.30 to 4.30 COMPUTER SCIENCE Paper 6 Answer five questions. Submit the answers in five separate bundles, each with its own cover sheet.

More information

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University CS 530 Information redundancy: Coding theory Yashwant K. Malaiya Colorado State University March 30, 2017 1 Information redundancy: Outline Using a parity bit Codes & code words Hamming distance Error

More information

Bloom Filters, Minhashes, and Other Random Stuff

Bloom Filters, Minhashes, and Other Random Stuff Bloom Filters, Minhashes, and Other Random Stuff Brian Brubach University of Maryland, College Park StringBio 2018, University of Central Florida What? Probabilistic Space-efficient Fast Not exact Why?

More information

Information redundancy

Information redundancy Information redundancy Information redundancy add information to date to tolerate faults error detecting codes error correcting codes data applications communication memory p. 2 - Design of Fault Tolerant

More information

Continuing discussion of CRC s, especially looking at two-bit errors

Continuing discussion of CRC s, especially looking at two-bit errors Continuing discussion of CRC s, especially looking at two-bit errors The definition of primitive binary polynomials Brute force checking for primitivity A theorem giving a better test for primitivity Fast

More information

Cryptographic D-morphic Analysis and Fast Implementations of Composited De Bruijn Sequences

Cryptographic D-morphic Analysis and Fast Implementations of Composited De Bruijn Sequences Cryptographic D-morphic Analysis and Fast Implementations of Composited De Bruijn Sequences Kalikinkar Mandal, and Guang Gong Department of Electrical and Computer Engineering University of Waterloo Waterloo,

More information

10.4 The Kruskal Katona theorem

10.4 The Kruskal Katona theorem 104 The Krusal Katona theorem 141 Example 1013 (Maximum weight traveling salesman problem We are given a complete directed graph with non-negative weights on edges, and we must find a maximum weight Hamiltonian

More information

A Scalable Method for Constructing Galois NLFSRs with Period 2 n 1 using Cross-Join Pairs

A Scalable Method for Constructing Galois NLFSRs with Period 2 n 1 using Cross-Join Pairs A Scalable Method for Constructing Galois NLFSRs with Period 2 n 1 using Cross-Join Pairs Elena Dubrova Royal Institute of Technology (KTH), Forum 12, 164 4 Kista, Sweden {dubrova}@kth.se Abstract. This

More information

DE BRUIJN SEQUENCES FOR FIXED-WEIGHT BINARY STRINGS

DE BRUIJN SEQUENCES FOR FIXED-WEIGHT BINARY STRINGS DE BRUIJN SEQUENCES FOR FIXED-WEIGHT BINARY STRINGS FRANK RUSKEY, JOE SAWADA, AND AARON WILLIAMS Abstract. De Bruijn sequences are circular strings of length 2 n whose length n substrings are the binary

More information

3.8 MEASURE OF RUNDOMNESS:

3.8 MEASURE OF RUNDOMNESS: Lec 10 : Data Security Stream Cipher Systems 1 3.8 MEASURE OF RUNDOMNESS: 3.9.1 DEFINITION: Run: sequence of identical bits (0 or 1) Ex.01110000111 Runs are 0,111, 0000, 111 Gap: runs of zeroes 1000011

More information

De Bruijn sequences on primitive words and squares

De Bruijn sequences on primitive words and squares De Bruijn sequences on primitive words and squares arxiv:0904.3997v2 [math.co] 24 Nov 2009 Yu-Hin Au Department of Combinatorics & Optimization yau@uwaterloo.ca November 24, 2009 Abstract We present a

More information

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 150 - Components and esign Techniques for igital Systems Lec 26 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler

More information

CMPSCI 311: Introduction to Algorithms Second Midterm Exam

CMPSCI 311: Introduction to Algorithms Second Midterm Exam CMPSCI 311: Introduction to Algorithms Second Midterm Exam April 11, 2018. Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question. Providing more

More information

Logic BIST. Sungho Kang Yonsei University

Logic BIST. Sungho Kang Yonsei University Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern

More information

Exam in Discrete Mathematics

Exam in Discrete Mathematics Exam in Discrete Mathematics First Year at the Faculty of Engineering and Science and the Technical Faculty of IT and Design June 4th, 018, 9.00-1.00 This exam consists of 11 numbered pages with 14 problems.

More information

Determine the size of an instance of the minimum spanning tree problem.

Determine the size of an instance of the minimum spanning tree problem. 3.1 Algorithm complexity Consider two alternative algorithms A and B for solving a given problem. Suppose A is O(n 2 ) and B is O(2 n ), where n is the size of the instance. Let n A 0 be the size of the

More information

Computation Theory Finite Automata

Computation Theory Finite Automata Computation Theory Dept. of Computing ITT Dublin October 14, 2010 Computation Theory I 1 We would like a model that captures the general nature of computation Consider two simple problems: 2 Design a program

More information

The Kolakoski Sequence and Some Fast Algorithms, Part 2

The Kolakoski Sequence and Some Fast Algorithms, Part 2 The Kolakoski Sequence and Some Fast Algorithms, Part 2 Richard P. Brent Australian National University and University of Newcastle 1 October 2017 Joint work with Judy-anne Osborn Copyright c 2017, R.

More information

Convolutional Codes. Telecommunications Laboratory. Alex Balatsoukas-Stimming. Technical University of Crete. November 6th, 2008

Convolutional Codes. Telecommunications Laboratory. Alex Balatsoukas-Stimming. Technical University of Crete. November 6th, 2008 Convolutional Codes Telecommunications Laboratory Alex Balatsoukas-Stimming Technical University of Crete November 6th, 2008 Telecommunications Laboratory (TUC) Convolutional Codes November 6th, 2008 1

More information

CSE 20. Lecture 4: Introduction to Boolean algebra. CSE 20: Lecture4

CSE 20. Lecture 4: Introduction to Boolean algebra. CSE 20: Lecture4 CSE 20 Lecture 4: Introduction to Boolean algebra Reminder First quiz will be on Friday (17th January) in class. It is a paper quiz. Syllabus is all that has been done till Wednesday. If you want you may

More information

Data Structures and Algorithms

Data Structures and Algorithms Data Structures and Algorithms Autumn 2018-2019 Outline 1 Algorithm Analysis (contd.) Outline Algorithm Analysis (contd.) 1 Algorithm Analysis (contd.) Growth Rates of Some Commonly Occurring Functions

More information

Ph 219b/CS 219b. Exercises Due: Wednesday 22 February 2006

Ph 219b/CS 219b. Exercises Due: Wednesday 22 February 2006 1 Ph 219b/CS 219b Exercises Due: Wednesday 22 February 2006 6.1 Estimating the trace of a unitary matrix Recall that using an oracle that applies the conditional unitary Λ(U), Λ(U): 0 ψ 0 ψ, 1 ψ 1 U ψ

More information

NP-Completeness. NP-Completeness 1

NP-Completeness. NP-Completeness 1 NP-Completeness x x x 2 x 2 x 3 x 3 x 4 x 4 2 22 32 3 2 23 3 33 NP-Completeness Outline and Reading P and NP ( 3.) Definition of P Definition of NP Alternate definition of NP NP-completeness ( 3.2) Definition

More information

CSE 202 Homework 4 Matthias Springer, A

CSE 202 Homework 4 Matthias Springer, A CSE 202 Homework 4 Matthias Springer, A99500782 1 Problem 2 Basic Idea PERFECT ASSEMBLY N P: a permutation P of s i S is a certificate that can be checked in polynomial time by ensuring that P = S, and

More information

Lecture 23: Introduction to Quantum Complexity Theory 1 REVIEW: CLASSICAL COMPLEXITY THEORY

Lecture 23: Introduction to Quantum Complexity Theory 1 REVIEW: CLASSICAL COMPLEXITY THEORY Quantum Computation (CMU 18-859BB, Fall 2015) Lecture 23: Introduction to Quantum Complexity Theory November 31, 2015 Lecturer: Ryan O Donnell Scribe: Will Griffin 1 REVIEW: CLASSICAL COMPLEXITY THEORY

More information

Coding on a Trellis: Convolutional Codes

Coding on a Trellis: Convolutional Codes .... Coding on a Trellis: Convolutional Codes Telecommunications Laboratory Alex Balatsoukas-Stimming Technical University of Crete November 6th, 2008 Telecommunications Laboratory (TUC) Coding on a Trellis:

More information

Kernelization Lower Bounds: A Brief History

Kernelization Lower Bounds: A Brief History Kernelization Lower Bounds: A Brief History G Philip Max Planck Institute for Informatics, Saarbrücken, Germany New Developments in Exact Algorithms and Lower Bounds. Pre-FSTTCS 2014 Workshop, IIT Delhi

More information

Growth functions of braid monoids and generation of random braids

Growth functions of braid monoids and generation of random braids Growth functions of braid monoids and generation of random braids Universidad de Sevilla Joint with Volker Gebhardt Introduction Random braids Most authors working in braid-cryptography or computational

More information

De Bruijn Cycles for Covering Codes

De Bruijn Cycles for Covering Codes De Bruijn Cycles for Covering Codes Fan Chung, 1 Joshua N. Cooper 1,2 1 Department of Mathematics, University of California, San Diego, La Jolla, California 92093 2 Courant Institute of Mathematical Sciences,

More information

CS 455/555: Mathematical preliminaries

CS 455/555: Mathematical preliminaries CS 455/555: Mathematical preliminaries Stefan D. Bruda Winter 2019 SETS AND RELATIONS Sets: Operations: intersection, union, difference, Cartesian product Big, powerset (2 A ) Partition (π 2 A, π, i j

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

6.111 Lecture # 12. Binary arithmetic: most operations are familiar Each place in a binary number has value 2 n

6.111 Lecture # 12. Binary arithmetic: most operations are familiar Each place in a binary number has value 2 n 6.111 Lecture # 12 Binary arithmetic: most operations are familiar Each place in a binary number has value 2 n Representation of negative numbers: there are a number of ways we might do this: 5 = 00000101

More information

CS360 Homework 12 Solution

CS360 Homework 12 Solution CS360 Homework 12 Solution Constraint Satisfaction 1) Consider the following constraint satisfaction problem with variables x, y and z, each with domain {1, 2, 3}, and constraints C 1 and C 2, defined

More information

CRC Press has granted the following specific permissions for the electronic version of this book:

CRC Press has granted the following specific permissions for the electronic version of this book: This is a Chapter from the Handbook of Applied Cryptography, by A. Menezes, P. van Oorschot, and S. Vanstone, CRC Press, 1996. For further information, see www.cacr.math.uwaterloo.ca/hac CRC Press has

More information

Procedure for Graphing Polynomial Functions

Procedure for Graphing Polynomial Functions Procedure for Graphing Polynomial Functions P(x) = a nx n + a n-1x n-1 + + a 1x + a 0 To graph P(x): As an example, we will examine the following polynomial function: P(x) = 2x 3 3x 2 23x + 12 1. Determine

More information

Nonlinear feedback shift registers and generating of binary de Bruijn sequences

Nonlinear feedback shift registers and generating of binary de Bruijn sequences Nonlinear feedback shift registers and generating of binary de Bruijn sequences Christian Ebne Vivelid November 21, 2016 Master's thesis Department of Informatics University of Bergen 1 Introduction Cryptology

More information

Lecture 2 September 4, 2014

Lecture 2 September 4, 2014 CS 224: Advanced Algorithms Fall 2014 Prof. Jelani Nelson Lecture 2 September 4, 2014 Scribe: David Liu 1 Overview In the last lecture we introduced the word RAM model and covered veb trees to solve the

More information

Computational Models Lecture 8 1

Computational Models Lecture 8 1 Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. April 18/ May 2, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice

More information

Fixed-Universe Successor : Van Emde Boas. Lecture 18

Fixed-Universe Successor : Van Emde Boas. Lecture 18 Fixed-Universe Successor : Van Emde Boas Lecture 18 Fixed-universe successor problem Goal: Maintain a dynamic subset S of size n of the universe U = {0, 1,, u 1} of size u subject to these operations:

More information

How does the computer generate observations from various distributions specified after input analysis?

How does the computer generate observations from various distributions specified after input analysis? 1 How does the computer generate observations from various distributions specified after input analysis? There are two main components to the generation of observations from probability distributions.

More information

Computational Models Lecture 8 1

Computational Models Lecture 8 1 Computational Models Lecture 8 1 Handout Mode Nachum Dershowitz & Yishay Mansour. Tel Aviv University. May 17 22, 2017 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing The lecture notes were prepared according to Peter Shor s papers Quantum Computing and Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization Problem set 8: solutions 1. Fix constants a R and b > 1. For n N, let f(n) = n a and g(n) = b n. Prove that f(n) = o ( g(n) ). Solution. First we observe that g(n) 0 for all

More information

Theoretical aspects of ERa, the fastest practical suffix tree construction algorithm

Theoretical aspects of ERa, the fastest practical suffix tree construction algorithm Theoretical aspects of ERa, the fastest practical suffix tree construction algorithm Matevž Jekovec University of Ljubljana Faculty of Computer and Information Science Oct 10, 2013 Text indexing problem

More information

Computational Models Lecture 8 1

Computational Models Lecture 8 1 Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. May 11/13, 2015 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice

More information

Pseudo-Random Number Generators

Pseudo-Random Number Generators Unit 41 April 18, 2011 1 Pseudo-Random Number Generators Recall the one-time pad: k = k 1, k 2, k 3... a random bit-string p = p 1, p 2, p 3,... plaintext bits E(p) = p k. We desire long sequences of numbers

More information

Chapter 1: Preliminaries and Error Analysis

Chapter 1: Preliminaries and Error Analysis Chapter 1: Error Analysis Peter W. White white@tarleton.edu Department of Tarleton State University Summer 2015 / Numerical Analysis Overview We All Remember Calculus Derivatives: limit definition, sum

More information

Logarithmic space. Evgenij Thorstensen V18. Evgenij Thorstensen Logarithmic space V18 1 / 18

Logarithmic space. Evgenij Thorstensen V18. Evgenij Thorstensen Logarithmic space V18 1 / 18 Logarithmic space Evgenij Thorstensen V18 Evgenij Thorstensen Logarithmic space V18 1 / 18 Journey below Unlike for time, it makes sense to talk about sublinear space. This models computations on input

More information

A fast algorithm for the Kolakoski sequence

A fast algorithm for the Kolakoski sequence A fast algorithm for the Kolakoski sequence Richard P. Brent Australian National University and University of Newcastle 13 December 2016 (updated 30 Dec. 2016) Joint work with Judy-anne Osborn The Kolakoski

More information

ELCT201: DIGITAL LOGIC DESIGN

ELCT201: DIGITAL LOGIC DESIGN ELCT201: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Lecture 6 Following the slides of Dr. Ahmed H. Madian محرم 1439 ه Winter

More information

CPSC 490 Problem Solving in Computer Science

CPSC 490 Problem Solving in Computer Science CPSC 490 Problem Solving in Computer Science Lecture 6: Recovering Solutions from DP, Bitmask DP, Matrix Exponentiation David Zheng and Daniel Du Based on CPSC490 slides from 2014-2017 2018/01/23 Announcements

More information

2 n -Periodic Binary Sequences with Fixed k-error Linear Complexity for k = 2 or 3

2 n -Periodic Binary Sequences with Fixed k-error Linear Complexity for k = 2 or 3 2 n -Periodic Binary Sequences with Fixed k-error Linear Complexity for k = 2 or 3 Ramakanth Kavuluru Department of Computer Science University of Kentucky SEequences and Their Applications 2008 Ramakanth

More information

Unit 1A: Computational Complexity

Unit 1A: Computational Complexity Unit 1A: Computational Complexity Course contents: Computational complexity NP-completeness Algorithmic Paradigms Readings Chapters 3, 4, and 5 Unit 1A 1 O: Upper Bounding Function Def: f(n)= O(g(n)) if

More information

Advanced Combinatorial Optimization Updated February 18, Lecture 5. Lecturer: Michel X. Goemans Scribe: Yehua Wei (2009)

Advanced Combinatorial Optimization Updated February 18, Lecture 5. Lecturer: Michel X. Goemans Scribe: Yehua Wei (2009) 18.438 Advanced Combinatorial Optimization Updated February 18, 2012. Lecture 5 Lecturer: Michel X. Goemans Scribe: Yehua Wei (2009) In this lecture, we establish the connection between nowhere-zero k-flows

More information

MTAT Complexity Theory October 13th-14th, Lecture 6

MTAT Complexity Theory October 13th-14th, Lecture 6 MTAT.07.004 Complexity Theory October 13th-14th, 2011 Lecturer: Peeter Laud Lecture 6 Scribe(s): Riivo Talviste 1 Logarithmic memory Turing machines working in logarithmic space become interesting when

More information

What Is a Language? Grammars, Languages, and Machines. Strings: the Building Blocks of Languages

What Is a Language? Grammars, Languages, and Machines. Strings: the Building Blocks of Languages Do Homework 2. What Is a Language? Grammars, Languages, and Machines L Language Grammar Accepts Machine Strings: the Building Blocks of Languages An alphabet is a finite set of symbols: English alphabet:

More information

D1 Discrete Mathematics The Travelling Salesperson problem. The Nearest Neighbour Algorithm The Lower Bound Algorithm The Tour Improvement Algorithm

D1 Discrete Mathematics The Travelling Salesperson problem. The Nearest Neighbour Algorithm The Lower Bound Algorithm The Tour Improvement Algorithm 1 iscrete Mathematics The Travelling Salesperson problem The Nearest Neighbour lgorithm The Lower ound lgorithm The Tour Improvement lgorithm The Travelling Salesperson: Typically a travelling salesperson

More information

Parallel Multipliers. Dr. Shoab Khan

Parallel Multipliers. Dr. Shoab Khan Parallel Multipliers Dr. Shoab Khan String Property 7=111=8-1=1001 31= 1 1 1 1 1 =32-1 Or 1 0 0 0 0 1=32-1=31 Replace string of 1s in multiplier with In a string when ever we have the least significant

More information

Generating Necklaces. North Carolina State University, Box 8206

Generating Necklaces. North Carolina State University, Box 8206 Generating Necklaces Frank Ruskey Department of Computer Science University of Victoria, P. O. Box 1700 Victoria, B. C. V8W 2Y2 CND Carla Savage y Terry MinYih Wang Department of Computer Science North

More information

New techniques for trail bounds and application to differential trails in Keccak

New techniques for trail bounds and application to differential trails in Keccak New techniques for trail bounds and application to differential trails in Keccak Silvia Mella 1,2 Joan Daemen 1,3 Gilles Van Assche 1 1 STMicroelectronics 2 University of Milan 3 Radboud University Fast

More information

NFA and regex. the Boolean algebra of languages. regular expressions. Informatics 1 School of Informatics, University of Edinburgh

NFA and regex. the Boolean algebra of languages. regular expressions. Informatics 1 School of Informatics, University of Edinburgh NFA and regex cl the Boolean algebra of languages regular expressions Informatics The intersection of two regular languages is regular L = even numbers L = odd numbers L = mod L = mod Informatics The intersection

More information

VIII. NP-completeness

VIII. NP-completeness VIII. NP-completeness 1 / 15 NP-Completeness Overview 1. Introduction 2. P and NP 3. NP-complete (NPC): formal definition 4. How to prove a problem is NPC 5. How to solve a NPC problem: approximate algorithms

More information

Math 8803/4803, Spring 2008: Discrete Mathematical Biology

Math 8803/4803, Spring 2008: Discrete Mathematical Biology Math 883/483, Spring 28: Discrete Mathematical Biology Prof. Christine Heitsch School of Mathematics Georgia Institute of Technology Lecture 5 January 5, 28 Nucleic acid hybridization DNA is an oriented

More information

New Constructions for De Bruijn Tori

New Constructions for De Bruijn Tori New Constructions for De Bruijn Tori Glenn Hurlbert Garth Isaak Dedicated to the memory of Tony Brewster Abstract A De Bruijn torus is a periodic d dimensional k ary array such that each n 1 n d k ary

More information

Advanced topic: Space complexity

Advanced topic: Space complexity Advanced topic: Space complexity CSCI 3130 Formal Languages and Automata Theory Siu On CHAN Chinese University of Hong Kong Fall 2016 1/28 Review: time complexity We have looked at how long it takes to

More information

1 Computing System 2. 2 Data Representation Number Systems 22

1 Computing System 2. 2 Data Representation Number Systems 22 Chapter 4: Computing System & Data Representation Christian Jacob 1 Computing System 2 1.1 Abacus 3 2 Data Representation 19 3 Number Systems 22 3.1 Important Number Systems for Computers 24 3.2 Decimal

More information

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except

More information

Computational Complexity. IE 496 Lecture 6. Dr. Ted Ralphs

Computational Complexity. IE 496 Lecture 6. Dr. Ted Ralphs Computational Complexity IE 496 Lecture 6 Dr. Ted Ralphs IE496 Lecture 6 1 Reading for This Lecture N&W Sections I.5.1 and I.5.2 Wolsey Chapter 6 Kozen Lectures 21-25 IE496 Lecture 6 2 Introduction to

More information

ON THE CALCULATION OF THE LINEAR EQUIVALENCE BIAS OF JUMP CONTROLLED LINEAR FINITE STATE MACHINES

ON THE CALCULATION OF THE LINEAR EQUIVALENCE BIAS OF JUMP CONTROLLED LINEAR FINITE STATE MACHINES Tatra Mt Math Publ 45 (2010), 51 63 DOI: 102478/v10127-010-0005-x t m Mathematical Publications ON THE CALCULATION OF THE LINEAR EQUIVALENCE BIAS OF JUMP CONTROLLED LINEAR FINITE STATE MACHINES Cees J

More information

CS Data Structures and Algorithm Analysis

CS Data Structures and Algorithm Analysis CS 483 - Data Structures and Algorithm Analysis Lecture VII: Chapter 6, part 2 R. Paul Wiegand George Mason University, Department of Computer Science March 22, 2006 Outline 1 Balanced Trees 2 Heaps &

More information

Space-Efficient Construction Algorithm for Circular Suffix Tree

Space-Efficient Construction Algorithm for Circular Suffix Tree Space-Efficient Construction Algorithm for Circular Suffix Tree Wing-Kai Hon, Tsung-Han Ku, Rahul Shah and Sharma Thankachan CPM2013 1 Outline Preliminaries and Motivation Circular Suffix Tree Our Indexes

More information

Space and Nondeterminism

Space and Nondeterminism CS 221 Computational Complexity, Lecture 5 Feb 6, 2018 Space and Nondeterminism Instructor: Madhu Sudan 1 Scribe: Yong Wook Kwon Topic Overview Today we ll talk about space and non-determinism. For some

More information