Fast algorithms to generate restricted classes of strings under rotation

Date

2018-01-29

Authors

Sawada, Joseph James

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

A necklace is a representative of an equivalence class of k-ary strings under rotation. Efficient algorithms for generating (i.e., listing) necklaces have been known for some time. Many applications, however, require a restricted class of necklaces for which no efficient generation algorithm previously existed. This dissertation addresses this problem by developing fast algorithms to generate the following restricted classes of necklaces: (a) unlabeled necklaces, (b) fixed density necklaces, (c) necklaces where the number of each alphabet symbol is fixed, (d) chord diagrams, (e) necklaces which avoid a particular Lyndon substring, and (f) bracelets. An analysis for each algorithm (a), (b), (e), and (f) shows that the amount of computation is proportional to the number of strings produced. Experimental results give a strong indication that the algorithms for (c) and (d) also achieve this time bound. In addition, a new derivation of the known formula for counting chord diagrams is presented, along with a linear time algorithm to generate a basis for the n-th homogeneous component of the free Lie algebra.

Description

Keywords

Algorithms, Computer programming

Citation