Shift gray codes

dc.contributor.authorWilliams, Aaron Michael
dc.contributor.supervisorRuskey, Frank
dc.contributor.supervisorMyrvold, W. J.
dc.date.accessioned2009-12-11T23:39:39Z
dc.date.available2009-12-11T23:39:39Z
dc.date.copyright2009en
dc.date.issued2009-12-11T23:39:39Z
dc.degree.departmentDepartment of Computer Science
dc.degree.levelDoctor of Philosophy Ph.D.en
dc.description.abstractCombinatorial objects can be represented by strings, such as 21534 for the permutation (1 2) (3 5 4), or 110100 for the binary tree corresponding to the balanced parentheses (()()). Given a string s = s1 s2 sn, the right-shift operation shift(s, i, j) replaces the substring si si+1..sj by si+1..sj si. In other words, si is right-shifted into position j by applying the permutation (j j−1 .. i) to the indices of s. Right-shifts include prefix-shifts (i = 1) and adjacent-transpositions (j = i+1). A fixed-content language is a set of strings that contain the same multiset of symbols. Given a fixed-content language, a shift Gray code is a list of its strings where consecutive strings differ by a shift. This thesis asks if shift Gray codes exist for a variety of combinatorial objects. This abstract question leads to a number of practical answers. The first prefix-shift Gray code for multiset permutations is discovered, and it provides the first algorithm for generating multiset permutations in O(1)-time while using O(1) additional variables. Applications of these results include more efficient exhaustive solutions to stacker-crane problems, which are natural NP-complete traveling salesman variants. This thesis also produces the fastest algorithm for generating balanced parentheses in an array, and the first minimal-change order for fixed-content necklaces and Lyndon words. These results are consequences of the following theorem: Every bubble language has a right-shift Gray code. Bubble languages are fixed-content languages that are closed under certain adjacent-transpositions. These languages generalize classic combinatorial objects: k-ary trees, ordered trees with fixed branching sequences, unit interval graphs, restricted Schr oder and Motzkin paths, linear-extensions of B-posets, and their unions, intersections, and quotients. Each Gray code is circular and is obtained from a new variation of lexicographic order known as cool-lex order. Gray codes using only shift(s, 1, n) and shift(s, 1, n−1) are also found for multiset permutations. A universal cycle that omits the last (redundant) symbol from each permutation is obtained by recording the first symbol of each permutation in this Gray code. As a special case, these shorthand universal cycles provide a new fixed-density analogue to de Bruijn cycles, and the first universal cycle for the "middle levels" (binary strings of length 2k + 1 with sum k or k + 1).en
dc.identifier.bibliographicCitationA. Williams. Loopless generation of multiset permutations using a constant number of variables by pre x shifts. In SODA '09: The Twentieth Annual ACM-SIAM Symposium on Discrete Algorithms, New York, New York, USA, 2009.en
dc.identifier.bibliographicCitationF. Ruskey and A. Williams. The coolest way to generate combinations. Discrete Mathematics, 309(17):5305{5320, September 2009.en
dc.identifier.bibliographicCitationF. Ruskey and A. Williams. Generating balanced parentheses and binary trees by pre x shifts. In CATS '08: Fourteenth Computing: The Australasian Theory Symposium, volume 77 of CRPIT, Wollongong, Australia, 2008. ACS.en
dc.identifier.bibliographicCitationF. Ruskey and A. Williams. An explicit universal cycle for the (n − 1)- permutations of an n-set. ACM Transactions on Algorithms, (accepted), 2008.en
dc.identifier.bibliographicCitationF. Ruskey and A. Williams. Generating combinations by pre x shifts. In COCOON '05: Computing and Combinatorics, 11th Annual International Conference, volume 3595 of Lecture Notes in Computer Science, pages 570{576, Kunming, China, 2005. Springer-Verlag.en
dc.identifier.urihttp://hdl.handle.net/1828/1966
dc.languageEnglisheng
dc.language.isoenen
dc.rightsAvailable to the World Wide Weben
dc.subjectshorthand universal cyclesen
dc.subjectcombinatorial generationen
dc.subjectminimal-change orderen
dc.subjectloopless algorithmen
dc.subjectefficient algorithmen
dc.subjectcombinationsen
dc.subjectmultiset permutationsen
dc.subjectbalanced parenthesesen
dc.subjectDyck wordsen
dc.subjectCatalan pathsen
dc.subjectSchroder pathsen
dc.subjectMotzkin wordsen
dc.subjectlinear-extensionsen
dc.subjectposetsen
dc.subjectconnected unit interval graphsen
dc.subjectinversionsen
dc.subjectbinary treesen
dc.subjectk-ary treesen
dc.subjectordered trees with fixed branching sequenceen
dc.subjectLyndon wordsen
dc.subjectpre-necklacesen
dc.subjecttheoretical computer scienceen
dc.subjectdiscrete mathematicsen
dc.subjectcombinatoricsen
dc.subjectbrute forcsen
dc.subjectde Bruijn cyclesen
dc.subjectbubble languagesen
dc.subjectcool-lex orderen
dc.subjectlexicographic orderen
dc.subjectcombinatorial enumerationen
dc.subjectstacker-crane problemen
dc.subjecttraveling salesman problemen
dc.subjectmiddle levelsen
dc.subjectfixed-density de Bruijn cycleen
dc.subjectfixed-contenten
dc.subject.lcshUVic Subject Index::Sciences and Engineering::Applied Sciences::Computer scienceen
dc.subject.lcshUVic Subject Index::Sciences and Engineering::Mathematicsen
dc.titleShift gray codesen
dc.typeThesisen

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
ShiftGrayCodes.pdf
Size:
4.32 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.82 KB
Format:
Item-specific license agreed upon to submission
Description: