Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. ...
-
Upload
arthur-chandler -
Category
Documents
-
view
217 -
download
5
Transcript of Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. ...
![Page 1: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/1.jpg)
Incorporating Delta Rules
Peter Černo
![Page 2: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/2.jpg)
About
Suppose we have a sample computation for (delta) clearing restarting automata.
Suppose that the inferred automaton accepts some wrong words.
There are two ways how to restrict the resulting inferred language: We can increase k – the length of contexts. We can change the sample computation
by incorporating some delta rules.
![Page 3: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/3.jpg)
Example 1
Consider the following sample computation:¢ abababababababab $ ⊢M ¢ abababababababb $ ⊢M¢ abababababbabb $ ⊢M ¢ abababbabbabb $ ⊢M¢ abbabbabbabb $ ⊢M ¢ abbabbabbab $ ⊢M¢ abbabbabab $ ⊢M ¢ abbababab $ ⊢M¢ abababab $ ⊢M ¢ abababb $ ⊢M¢ abbabb $ ⊢M ¢ abbab $ ⊢M¢ abab $ ⊢M ¢ abb $ ⊢M ¢ ab $ ⊢M ¢ λ $ accept .
We can collect 15 reductions.
![Page 4: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/4.jpg)
Example 1
For k = 4 we get the following instructions: ({¢ab, abab}, a, {b$, babb}), ({¢a, abba}, b, {b$, bab$, baba}), (¢, ab, $).
For the resulting 4-cl-RA-automaton M the following holds:L(M) ∩ {(ab)n | n>0} = {(ab)2m | m≥0}. However, this does not work for
smaller k.
![Page 5: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/5.jpg)
Example 1
For k = 3 we get the following instructions: ({¢ab, bab}, a, {b$, bab}), ({¢a, bba}, b, {b$, bab}), (¢, ab, $).
Now the resulting 3-cl-RA-automaton M accepts the wrong word ababab : ababab ⊢M abbab ⊢M abab ⊢M abb ⊢M ab ⊢M λ.
We blame the instruction (¢ab, a, bab) which caused the reduction: ababab ⊢M abbab.
![Page 6: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/6.jpg)
Idea
Why? The instruction reduced the wrong word ababab to the correct word abbab. abbab is ok – it is in the sample
computation. Idea: Let us replace the instruction:
({¢ab, bab}, a, {b$, bab})by the delta instruction: ({¢ab, bab}, a → Δ, {b$, bab}).
How does the sample computation change?
![Page 7: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/7.jpg)
Idea
The modified sample computation is now:¢ abababababababab $ ⊢M ¢ abababababababΔb $ ⊢M¢ abababababΔbabΔb $ ⊢M ¢ abababΔbabΔbabΔb $ ⊢M¢ abΔbabΔbabΔbabΔb $ ⊢M ¢ abΔbabΔbabΔbab $ ⊢M¢ abΔbabΔbabab $ ⊢M ¢ abΔbababab $ ⊢M¢ abababab $ ⊢M ¢ abababΔb $ ⊢M¢ abΔbabΔb $ ⊢M ¢ abΔbab $ ⊢M¢ abab $ ⊢M ¢ abΔb $ ⊢M ¢ ab $ ⊢M ¢ λ $ accept .
Unfortunately, it does not help us if k = 3.
![Page 8: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/8.jpg)
Idea
Consider the following sample reduction: abababΔb ⊢M abΔbabΔb
As you can see, this reduction also works with the word ababab : ababab ⊢M abΔbabbecause the length of contexts is k = 3.
Is there any other way how to modify the instruction ({¢ab, bab}, a, {b$, bab}) ?
Yes, it is.
![Page 9: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/9.jpg)
Revised Idea
It is not enough to replace a single letter a : ({¢ab, bab}, a → Δ, {b$, bab}).
We have two simple choices for two letters: ({¢ab, bab}, ab → Δ, {$, ab}), ({¢a, ba}, ba → Δ, {b$, bab}).
We move one letter from the context to the rule and thus extend the context horizon.
In the following we show how does the sample computation change in both cases.
![Page 10: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/10.jpg)
Case 1
If we use ({¢ab, bab}, ab → Δ, {$, ab}) we get the following new sample computation:¢ abababababababab $ ⊢M ¢ abababababababΔ $ ⊢M¢ abababababΔabΔ $ ⊢M ¢ abababΔabΔabΔ $ ⊢M ¢ abΔabΔabΔabΔ $ ⊢M ¢ abΔabΔabΔab $ ⊢M ¢ abΔabΔabab $ ⊢M ¢ abΔababab $ ⊢M ¢ abababab $ ⊢M ¢ abababΔ $ ⊢M ¢ abΔabΔ $ ⊢M ¢ abΔab $ ⊢M ¢ abab $ ⊢M ¢ abΔ $ ⊢M ¢ ab $ ⊢M ¢ λ $ accept .
![Page 11: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/11.jpg)
Case 1
For k = 3 we get the following instructions: ({¢ab, Δab}, Δ, {$, ab$, aba}), ({¢ab, bab}, ab → Δ, {$, abΔ}), (¢, ab, $).
For the resulting 3-cl-RA-automaton M the following holds:L(M) = {(ab)2m | m≥0} ∪ {λ} .Note that the symbol Δ codes the
letter b from the original sample computation.
![Page 12: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/12.jpg)
Case 2
If we use ({¢a, ba}, ba → Δ, {b$, bab}) we get the following new sample computation:¢ abababababababab $ ⊢M ¢ ababababababaΔb $ ⊢M ¢ ababababaΔbaΔb $ ⊢M ¢ ababaΔbaΔbaΔb $ ⊢M ¢ aΔbaΔbaΔbaΔb $ ⊢M ¢ aΔbaΔbaΔbab $ ⊢M ¢ aΔbaΔbabab $ ⊢M ¢ aΔbababab $ ⊢M ¢ abababab $ ⊢M ¢ ababaΔb $ ⊢M ¢ aΔbaΔb $ ⊢M ¢ aΔbab $ ⊢M ¢ abab $ ⊢M¢ aΔb $ ⊢M ¢ ab $ ⊢M ¢ λ $ accept .
![Page 13: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/13.jpg)
Case 2
For k = 3 we get the following instructions: ({¢a, Δba}, Δ, {b$, bab}), ({¢a, aba}, ba → Δ, {b$, baΔ}), (¢, ab, $).
For the resulting 3-cl-RA-automaton M the same formula holds:L(M) = {(ab)2m | m≥0} ∪ {λ} .Again the symbol Δ codes the
letter b from the original sample computation.
![Page 14: Peter Černo. Suppose we have a sample computation for (delta) clearing restarting automata. Suppose that the inferred automaton accepts some wrong.](https://reader036.fdocuments.in/reader036/viewer/2022083005/56649f0d5503460f94c2199a/html5/thumbnails/14.jpg)
Some Remarks
Note that the for k < 3 the previous algorithm does not work.
It is also not obvious how to replace more letters or even more instructions without disturbing the sample computation.
The question is whether we can do these replacements in some automated way?
Is this idea applicable to other examples?