Trimming and gluing Gray codes
Abstract
We consider the algorithmic problem of generating each subset of $[n]:=\{1,2,\ldots,n\}$ whose size is in some interval $[k,l]$, $0\leq k\leq l\leq n$, exactly once (cyclically) by repeatedly adding or removing a single element, or by exchanging a single element. For $k=0$ and $l=n$ this is the classical problem of generating all $2^n$ subsets of $[n]$ by element additions/removals, and for $k=l$ this is the classical problem of generating all $\binom{n}{k}$ subsets of $[n]$ by element exchanges. We prove the existence of such cyclic minimumchange enumerations for a large range of values $n$, $k$, and $l$, improving upon and generalizing several previous results. For all these existential results we provide optimal algorithms to compute the corresponding Gray codes in constant $\mathcal{O}(1)$ time per generated set and $\mathcal{O}(n)$ space. Rephrased in terms of graph theory, our results establish the existence of (almost) Hamilton cycles in the subgraph of the $n$dimensional cube $Q_n$ induced by all levels $[k,l]$. We reduce all remaining open cases to a generalized version of the middle levels conjecture, which asserts that the subgraph of $Q_{2k+1}$ induced by all levels $[kc,k+1+c]$, $c\in\{0,1,\ldots,k\}$, has a Hamilton cycle. We also prove an approximate version of this generalized conjecture, showing that this graph has a cycle that visits a $(1o(1))$fraction of all vertices.
 Publication:

arXiv eprints
 Pub Date:
 July 2016
 arXiv:
 arXiv:1607.08806
 Bibcode:
 2016arXiv160708806G
 Keywords:

 Mathematics  Combinatorics;
 Computer Science  Discrete Mathematics;
 Computer Science  Data Structures and Algorithms
 EPrint:
 Theoretical Computer Science 714:7495, 2018