07.01.2013 Views

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1 Hom<strong>in</strong>g and Synchroniz<strong>in</strong>g Sequences 25<br />

i.e., a trivial synchroniz<strong>in</strong>g sequence). In this application, the state space is<br />

{0, 1} k and typically very big. Rho, Somenzi and Pixley [RSP93] suggested a<br />

more practical algorithm for this special case based on b<strong>in</strong>ary decision diagrams<br />

(BDDs).<br />

1.4 Complexity<br />

This section shows two hardness results for related problems. First, Section 1.4.1<br />

shows that it is NP-hard to f<strong>in</strong>d a shortest hom<strong>in</strong>g or synchroniz<strong>in</strong>g sequence.<br />

Second, Section 1.4.2 shows that it is PSPACE-complete to determ<strong>in</strong>e if there<br />

is a hom<strong>in</strong>g or synchroniz<strong>in</strong>g sequence when the <strong>in</strong>itial state is known to be <strong>in</strong><br />

a specified subset Q ⊆ S of the states.<br />

1.4.1 Comput<strong>in</strong>g Shortest Hom<strong>in</strong>g and Synchroniz<strong>in</strong>g Sequences Is<br />

NP-hard<br />

If a hom<strong>in</strong>g or synchroniz<strong>in</strong>g sequence is go<strong>in</strong>g to be used <strong>in</strong> practice, it is natural<br />

to ask for it to be as short as possible. We saw <strong>in</strong> Section 1.3.1 that we can always<br />

f<strong>in</strong>d a hom<strong>in</strong>g sequence of length at most n(n−1)/2 if one exists and the mach<strong>in</strong>e<br />

is m<strong>in</strong>imized, and Sections 1.3.2 and 1.3.3 expla<strong>in</strong> how to f<strong>in</strong>d synchroniz<strong>in</strong>g<br />

or hom<strong>in</strong>g sequences of length O(n 3 ), for general mach<strong>in</strong>es. The algorithms<br />

for comput<strong>in</strong>g these sequences run <strong>in</strong> polynomial time. But the algorithms of<br />

Section 1.3.5 that compute m<strong>in</strong>imal-length hom<strong>in</strong>g and synchroniz<strong>in</strong>g sequences<br />

are exponential. In this section, we expla<strong>in</strong> this exponential runn<strong>in</strong>g time by<br />

prov<strong>in</strong>g that the problems of f<strong>in</strong>d<strong>in</strong>g hom<strong>in</strong>g and synchroniz<strong>in</strong>g sequences of<br />

m<strong>in</strong>imal length are significantly harder than those of f<strong>in</strong>d<strong>in</strong>g just any sequence:<br />

the problems are NP-hard, mean<strong>in</strong>g they are unlikely to have polynomial-time<br />

algorithms.<br />

The Reduction S<strong>in</strong>ce only decision problems can be NP-complete, formally<br />

it does not make sense to talk about NP-completeness of comput<strong>in</strong>g hom<strong>in</strong>g or<br />

sequences. Instead, we look at the decision version of the problems: is there a<br />

sequence of length at most k?<br />

Theorem 1.21 ([Epp90]). The follow<strong>in</strong>g problems, tak<strong>in</strong>g as <strong>in</strong>put a Mealy mach<strong>in</strong>e<br />

M and a positive <strong>in</strong>teger k, are NP-complete:<br />

(1) Does M have a hom<strong>in</strong>g sequence of length ≤ k?<br />

(2) Does M have a synchroniz<strong>in</strong>g sequence of length ≤ k?<br />

Proof. To show that the problems belong to NP, note that a nondeterm<strong>in</strong>istic<br />

algorithm easily guesses a sequence of length ≤ k (where k is polynomial <strong>in</strong> the<br />

size of the mach<strong>in</strong>e) and verifies that it is hom<strong>in</strong>g or synchroniz<strong>in</strong>g <strong>in</strong> polynomial<br />

time.<br />

To show that the problems are NP-hard, we reduce from the NP-complete<br />

problem 3SAT [GJ79]. Recall that <strong>in</strong> a boolean formula, a literal is either a

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!