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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

21 F<strong>in</strong>ite State Mach<strong>in</strong>es 613<br />

• λ(s, a) =λ(t, a) for each <strong>in</strong>put symbol a ∈ I ,and<br />

• δ(s, a) andδ(t, a) are <strong>in</strong> the same block.<br />

It is straight-forward to check that s and t are <strong>in</strong> the same block if and only if<br />

they are equivalent.<br />

The straight-forward solution to f<strong>in</strong>d<strong>in</strong>g this coarsest partition is to start<br />

with an <strong>in</strong>itial partition of S, where two states s and t are <strong>in</strong> the same block if<br />

and only if λ(s, a) =λ(t, a) for each <strong>in</strong>put symbol a ∈ I . Thereafter, this <strong>in</strong>itial<br />

partition is repeatedly ref<strong>in</strong>ed by the follow<strong>in</strong>g method. Take a block Bi of the<br />

current partition. Exam<strong>in</strong>e δ(s, a) foreachs∈Biand a ∈ I . Partition Bi so<br />

that s and t are <strong>in</strong> the same block if and only if δ(s, a) andδ(t, a) are<strong>in</strong>the<br />

same block of the current partition. The process is is iterated until no further<br />

ref<strong>in</strong>ements are possible. This process yields a quadratic algorithm, s<strong>in</strong>ce each<br />

ref<strong>in</strong>ement requires l<strong>in</strong>ear time, and there can be at most |S| ref<strong>in</strong>ements. A<br />

more efficient algorithm has been developed by Hopcroft ([Hop71] and [AHU74,<br />

Sec. 4.13]).<br />

21.3 Initial and Current State Uncerta<strong>in</strong>ty<br />

Chapters 1 – 4 use some basic def<strong>in</strong>itions of the conclusions that can be made<br />

from observations of a mach<strong>in</strong>e’s response to <strong>in</strong>put str<strong>in</strong>gs.<br />

The <strong>in</strong>itial state uncerta<strong>in</strong>ty describes what we know about the <strong>in</strong>itial state<br />

after apply<strong>in</strong>g an <strong>in</strong>put str<strong>in</strong>g and observ<strong>in</strong>g the result<strong>in</strong>g output str<strong>in</strong>g.<br />

Def<strong>in</strong>ition 21.2. The <strong>in</strong>itial state uncerta<strong>in</strong>ty after apply<strong>in</strong>g <strong>in</strong>put sequence<br />

x ∈ I ∗ is a partition π(x ) def<br />

= {B1, B2,...,Br } of S, such that two states s, t are<br />

<strong>in</strong> the same block Bi if and only if λ(s, x )=λ(t, x ).<br />

In other words, each block <strong>in</strong> the <strong>in</strong>itial state uncerta<strong>in</strong>ty π(x ) is the set of states<br />

from which a particular output sequence is produced <strong>in</strong> response to the <strong>in</strong>put<br />

sequence x .<br />

The current state uncerta<strong>in</strong>ty describes what we know about the current<br />

(f<strong>in</strong>al) state after hav<strong>in</strong>g applied an <strong>in</strong>put str<strong>in</strong>g and observed the result<strong>in</strong>g<br />

output str<strong>in</strong>g.<br />

Def<strong>in</strong>ition 21.3. The current state uncerta<strong>in</strong>ty after apply<strong>in</strong>g <strong>in</strong>put sequence<br />

x ∈ I ∗ is the set of subsets σ(x ) def<br />

= {δ(Bi, x ):Bi ∈ π(x )} of S.<br />

In other words, each block <strong>in</strong> the current state uncerta<strong>in</strong>ty σ(x )isthesetofstates<br />

that the mach<strong>in</strong>e can end up <strong>in</strong> after generat<strong>in</strong>g a particular output sequence<br />

<strong>in</strong> response to the <strong>in</strong>put sequence x . While the <strong>in</strong>itial state uncerta<strong>in</strong>ty is a<br />

partition, the current state uncerta<strong>in</strong>ty does not need to be a partition, but just<br />

a set of nonempty blocks<br />

21.4 Dist<strong>in</strong>guish<strong>in</strong>g Experiments<br />

Chapters 1 – 4 present algorithms that <strong>in</strong>vestigate the structure and current<br />

state of a Mealy mach<strong>in</strong>e by perform<strong>in</strong>g experiments, i.e., apply<strong>in</strong>g a sequence

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

Saved successfully!

Ooh no, something went wrong!