Is there a reset sequence? - MathOverflow most recent 30 from http://mathoverflow.net2013-06-19T11:00:11Zhttp://mathoverflow.net/feeds/question/38437http://www.creativecommons.org/licenses/by-nc/2.5/rdfhttp://mathoverflow.net/questions/38437/is-there-a-reset-sequenceIs there a reset sequence?Bill Thurston2010-09-12T02:37:59Z2010-11-11T17:45:38Z
<p>There is a question someone (I'm hazy as to who) told me years ago. I found it fascinating for a time, but then I forgot about it, and I'm out of touch with any subsequent developments. Can anyone better identify the problem or fill in the history, and say whether it's still unsolved? It's a challenging question if I've gotten it right. Here it is:</p>
<p>Suppose you have some kind of machine with two buttons, evidently designed by people with poor instinct for UI. The machine has many states in which the buttons do different things.
Here are the assumptions:</p>
<ol>
<li><p>There is no periodic quotient of the state space: no way to label states by an n-cycle so that both buttons advance the label by 1 mod n.</p></li>
<li><p>It is not reversible: there are situations when two states merge into one.</p></li>
<li><p>It's ergodic: you can get from any state to any other state by some sequence of buttons.</p></li>
</ol>
<p>Now suppose its dinky little LCD is faded or broken, so you can't actually tell what the state it's in. Is there necessarily a universal reset code, a sequence that will get you to a known state no matter where you start?
(Formally, this is a finite state automaton, or an action of the free 2-generator semigroup on a finite set, and asks whether some element acts as a constant map).</p>
http://mathoverflow.net/questions/38437/is-there-a-reset-sequence/38440#38440Answer by S. Carnahan for Is there a reset sequence?S. Carnahan2010-09-12T03:17:22Z2010-09-12T03:17:22Z<p>I believe you are referring to the <a href="http://en.wikipedia.org/wiki/Road_coloring_problem" rel="nofollow">Road coloring theorem</a>. It was solved <a href="http://arxiv.org/abs/0709.0099" rel="nofollow">in this preprint</a>.</p>
http://mathoverflow.net/questions/38437/is-there-a-reset-sequence/38441#38441Answer by sleepless in beantown for Is there a reset sequence?sleepless in beantown2010-09-12T03:26:05Z2010-09-26T01:30:05Z<p>I've played with this problem in real life with a TiVo, wanting it to go to sleep (a low power consumption state) without having to turn on the monitor to watch as its states changed. The TiVo, or any remote, uses an alphabet size of at least as many buttons as there are on the remote control. However, a little hunting on wikipedia shows that <a href="http://en.wikipedia.org/wiki/Reset_sequence" rel="nofollow">"Synchronizing Word"</a> is where "reset sequence" leads to.</p>
<p>For $n$-state DFAs over a $k$-letter input alphabet in which all state transitions preserve the cyclic order of the states, an algorithm by David Eppstein finds a synchronizing word in $O(n^3+kn^2)$ time and $O(n^2)$ space. The name of that paper is <a href="http://www.ics.uci.edu/~eppstein/pubs/Epp-SJC-90.pdf" rel="nofollow">"Reset Sequences for Monotonic Automata" </a>.</p>
<p>Finding and estimating the length of the "reset sequence" for a Deterministic Finite Automaton has been studied since the 1960's. The Černý conjecture posits $(n-1)^2$ as the upper bound of for the length of the shortest synchronizing word, for any $n$-state complete DFA (a DFA with complete state transition graph).</p>
<p>The way you've posed your question sets $k=2$, since the transitions can only be labeled by the two buttons as input, thus the Deterministic Finite Automaton underlying your question will have a directed graph with at most two outbound arcs at each state.</p>
http://mathoverflow.net/questions/38437/is-there-a-reset-sequence/38443#38443Answer by umar for Is there a reset sequence?umar2010-09-12T03:56:41Z2010-09-12T03:56:41Z<p>I think this <a href="http://www.cs.princeton.edu/~schapire/papers/homing.pdf" rel="nofollow">paper</a> by Rob Schapire and Ron Rivest on "homing sequences" in deterministic finite state automata might contain the answer to your question. From the paper:</p>
<p>"Informally, a homing sequence is a sequence of inputs that, when fed to the machine, is guaranteed to 'orient' the learner: the outputs produced in executing the homing sequence completely determine the state reached by the automaton at the end of the homing sequence ... Every finite-state machine has a homing sequence."</p>
<p>Admittedly, I haven't read the paper carefully enough to be sure that the problem it studies exactly matches your formulation, but at a high-level it seems closely related.</p>