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.

596 Therese Berg and Harald Raffelt<br />

the currently observed <strong>in</strong>formation plus the doma<strong>in</strong> specific knowledge about<br />

the system to learn.<br />

We present the concept of Assistants us<strong>in</strong>g Anglu<strong>in</strong>’s algorithm. It might be<br />

transferred to the other learn<strong>in</strong>g algorithms <strong>in</strong> a similar manner. However, s<strong>in</strong>ce<br />

not every algorithm stores the result of all membership queries, the effect might<br />

be limited.<br />

The Assistants We present different types of assistants, which differ by the<br />

provided context <strong>in</strong>formation.<br />

Assistant 1. The first property of reactive systems that we consider is prefixclosedness.<br />

If the system enters an error state, it will never recover on further<br />

<strong>in</strong>put. So if the system enters a non-accept<strong>in</strong>g state, a s<strong>in</strong>k <strong>in</strong> the correspond<strong>in</strong>g<br />

automaton, it will never leave it. Hence, the automaton’s language is prefixclosed.<br />

In other words, prefixes of accepted str<strong>in</strong>gs are also accepted and extensions<br />

of rejected str<strong>in</strong>gs are rejected.<br />

This is used by the first Assistant which states that if a str<strong>in</strong>g is a prefix<br />

of a str<strong>in</strong>g already <strong>in</strong> OT with the entry + then the prefix-str<strong>in</strong>g will also be<br />

entered as +, without consult<strong>in</strong>g the Teacher. Similarly, a query for a str<strong>in</strong>g that<br />

is an extension of a str<strong>in</strong>g already classified as reject<strong>in</strong>g is answered negatively<br />

without consult<strong>in</strong>g the Teacher.<br />

Assistant 2. Sometimes, one deals with systems that provide a sequence of<br />

output symbols to a given sequence of <strong>in</strong>put symbols. These systems may be<br />

modeled as determ<strong>in</strong>istic f<strong>in</strong>ite state mach<strong>in</strong>es (see also Chapter 21 or Part I of<br />

this book) where the <strong>in</strong>put alphabet comprises sequences of <strong>in</strong>put symbols and<br />

the output alphabet conta<strong>in</strong>s sequences of output symbols. These systems can<br />

be understood as DFAs over an alphabet compris<strong>in</strong>g actions that are pairs of<br />

sequences of <strong>in</strong>put and output symbols. However, such an alphabet is large and<br />

the learn<strong>in</strong>g algorithm will be expensive. To elim<strong>in</strong>ate the problem we can split<br />

an edge labeled by a sequence of <strong>in</strong>put and output symbols <strong>in</strong>to a sequence of<br />

edges where each edge is labeled with a s<strong>in</strong>gle symbol, first the <strong>in</strong>put symbols<br />

and then the output symbols. In this way, the number of states <strong>in</strong>creases but<br />

thealphabetiskeptsmall.<br />

Often, these systems are determ<strong>in</strong>istic for a given <strong>in</strong>put. The system under<br />

test always produces the same output on any given sequence of <strong>in</strong>puts. So replac<strong>in</strong>g<br />

just one output symbol <strong>in</strong> a str<strong>in</strong>g of an <strong>in</strong>put-determ<strong>in</strong>istic language cannot<br />

yield another str<strong>in</strong>g of this language. An Assistant can use this knowledge to<br />

determ<strong>in</strong>e that a membership query should be answered with a − for a certa<strong>in</strong><br />

str<strong>in</strong>g if <strong>in</strong> OT the same str<strong>in</strong>g with the modification of one output symbol has<br />

the entry +.<br />

Assistant 3. The next Assistant uses the fact that the number of output<br />

events <strong>in</strong> a given situation is determ<strong>in</strong>ed, and that we wait with feed<strong>in</strong>g new<br />

<strong>in</strong>put until the system has produced all its responses. Assume that we have <strong>in</strong><br />

OT a str<strong>in</strong>g labeled + that ends with an <strong>in</strong>put symbol. Then every str<strong>in</strong>g that<br />

emerges by chang<strong>in</strong>g this <strong>in</strong>put-symbol to any output symbol, will always be<br />

rated as −. This can be checked by a further Assistant.

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

Saved successfully!

Ooh no, something went wrong!