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.

24 Sven Sandberg<br />

b<br />

s1<br />

a<br />

s2<br />

b<br />

s3<br />

a<br />

a, b<br />

s1, s2<br />

s1, s2<br />

s2<br />

a<br />

a b<br />

a<br />

s1, s2, s3<br />

s1, s3<br />

b<br />

s1, s2, s3<br />

Fig. 1.6. A mach<strong>in</strong>e and its correspond<strong>in</strong>g synchroniz<strong>in</strong>g tree. Note that the rightmost<br />

and leftmost nodes of the tree have been made leaves due to rule (3b) of Def<strong>in</strong>ition 1.18.<br />

S<strong>in</strong>ce the lowest leaf is labeled with a s<strong>in</strong>gleton s2, the path lead<strong>in</strong>g to it from the root<br />

<strong>in</strong>dicates a shortest synchroniz<strong>in</strong>g sequence, aba.<br />

It is possible to replace condition (3b) of Def<strong>in</strong>ition 1.18 with a stronger one,<br />

allow<strong>in</strong>g to prune the tree more: stipulate that a node becomes a leaf also if its<br />

label is a superset of some node of smaller depth. This clearly works, because if<br />

P ⊆ Q ⊆ S are the node labels, then δ(P, x ) ⊆ δ(Q, x ) for all sequences x .The<br />

drawback is that it can be more costly to test this condition.<br />

The hom<strong>in</strong>g tree is used analogously to compute shortest hom<strong>in</strong>g sequences.<br />

Def<strong>in</strong>ition 1.20. The hom<strong>in</strong>g tree (for a Mealy mach<strong>in</strong>e) is a rooted tree<br />

where edges are labeled with <strong>in</strong>put symbols and nodes with current state uncerta<strong>in</strong>ties<br />

(i.e., sets of sets of states), satisfy<strong>in</strong>g the follow<strong>in</strong>g conditions.<br />

(1) Each non-leaf has exactly |I | outgo<strong>in</strong>g edges, labeled with different <strong>in</strong>put<br />

symbols.<br />

(2) Each node is labeled with σ(x ), where x is the sequence of <strong>in</strong>put symbols<br />

occurr<strong>in</strong>g as edge labels on the path from the root to the node.<br />

(3) A node is a leaf iff:<br />

(a) either each block of its label is a s<strong>in</strong>gleton set,<br />

(b) or it has the same label as a node of smaller depth. ⊓⊔<br />

Condition (3b) can be strengthened <strong>in</strong> a similar way for the hom<strong>in</strong>g tree as<br />

for the synchroniz<strong>in</strong>g tree. Here we turn a node <strong>in</strong>to a leaf also if each block of<br />

its label is a superset of some block <strong>in</strong> the label of another node at a smaller<br />

depth.<br />

The hom<strong>in</strong>g tree method was <strong>in</strong>troduced by Gill [Gil61] and the synchroniz<strong>in</strong>g<br />

tree method has been described by Hennie [Hen64]. Synchroniz<strong>in</strong>g sequences are<br />

sometimes used <strong>in</strong> test generation for circuits without a reset (a reset, here,<br />

would be an <strong>in</strong>put symbol that takes every state to one and the same state,

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

Saved successfully!

Ooh no, something went wrong!