play
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
play [2018/11/13 15:44] – liyong | play [2018/11/14 13:50] (current) – liyong | ||
---|---|---|---|
Line 32: | Line 32: | ||
1 | 1 | ||
</ | </ | ||
- | When the learner constructs a conjectured NBA, it will ask an equivalence query for the conjecture. | + | When the learner constructs a conjectured NBA, it will ask an equivalence query for the following |
- | In this case, you can answer a counterexample, | + | |
< | < | ||
Resolving equivalence query for hypothesis (# | Resolving equivalence query for hypothesis (# | ||
Line 58: | Line 57: | ||
4 -> 0 [label="" | 4 -> 0 [label="" | ||
} | } | ||
+ | |||
+ | </ | ||
+ | You can get the following graphical view of above dot text on the webpage [[http:// | ||
+ | |||
+ | |||
+ | {{: | ||
+ | |||
+ | The above output automaton is clearly not the right conjecture. | ||
+ | In this case, you can answer a counterexample, | ||
+ | < | ||
0 | 0 | ||
Now you have to input a counterexample for inequivalence. | Now you have to input a counterexample for inequivalence. | ||
Line 95: | Line 104: | ||
0 | 0 | ||
</ | </ | ||
- | This time we receive the right conjectured NBA and reply with positive answer to the learner, which means that the learner has completed its learning task. | + | This time we receive the following |
< | < | ||
Resolving equivalence query for hypothesis (# | Resolving equivalence query for hypothesis (# | ||
Line 114: | Line 123: | ||
} | } | ||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Above automaton is the right conjecture accepting the language {a, | ||
+ | Thus we can reply with a positive answer to the learner, which means that the learner has completed the learning task. | ||
+ | < | ||
1 | 1 | ||
Congratulations! Learning completed... | Congratulations! Learning completed... | ||
</ | </ | ||
- | Following command allows the user to see more details about the storage of the membership queries when using the table-based L< | + | Following command allows the user to see more details about the learning procedure. |
< | < | ||
java -jar ROLL.jar play -periodic -v 2 | java -jar ROLL.jar play -periodic -v 2 | ||
+ | </ | ||
+ | Besides the output conjectures, | ||
+ | Moreover, the log also shows the counterexample analysis information as described in paper [6]. | ||
+ | |||
+ | The complete log information of an execution of above command is given as follows. | ||
+ | < | ||
+ | PLAYING, | ||
+ | |||
+ | 2018/11/13 16:11:13 [ info] ROLL for interactive play... | ||
+ | Please input the number of letters (' | ||
+ | 2 | ||
+ | Please input the 1th letter: | ||
+ | a | ||
+ | Please input the 2th letter: | ||
+ | b | ||
+ | Initializing learning... | ||
+ | Is w-word (ϵ, a) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, b) in the unknown languge: 1/0 | ||
+ | 1 | ||
+ | Is w-word (ϵ, ba) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, bb) in the unknown languge: 1/0 | ||
+ | 1 | ||
+ | Table/Tree is both closed and consistent | ||
+ | Leading Learner: | ||
+ | || (ϵ, ϵ) | | ||
+ | ============= | ||
+ | ϵ || - | | ||
+ | ============= | ||
+ | a || - | | ||
+ | b || - | | ||
+ | |||
+ | Progress Learner for ϵ: | ||
+ | || ϵ | | ||
+ | ========= | ||
+ | ϵ || - | | ||
+ | b || + | | ||
+ | ========= | ||
+ | a || - | | ||
+ | ba || - | | ||
+ | bb || + | | ||
+ | |||
+ | Resolving equivalence query for hypothesis (# | ||
+ | Is following automaton the unknown automaton: 1/0? | ||
+ | digraph { | ||
+ | 0 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 0 -> 2 [label=" | ||
+ | 0 -> 3 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 0 -> 1 [label=" | ||
+ | 1 [label=" | ||
+ | 1 -> 2 [label=" | ||
+ | 1 -> 3 [label=" | ||
+ | 1 -> 1 [label=" | ||
+ | 2 [label=" | ||
+ | 2 -> 2 [label=" | ||
+ | 2 -> 3 [label=" | ||
+ | 2 -> 1 [label=" | ||
+ | 3 [label=" | ||
+ | 3 -> 2 [label=" | ||
+ | 3 -> 1 [label=" | ||
+ | 4 [label="", | ||
+ | 4 -> 0 [label="" | ||
+ | } | ||
+ | |||
+ | 0 | ||
+ | Now you have to input a counterexample for inequivalence. | ||
+ | please input stem: | ||
+ | b | ||
+ | You input a stem: b | ||
+ | please input loop: | ||
+ | ab | ||
+ | You input a loop: ab | ||
+ | Current FDFA: | ||
+ | // | ||
+ | digraph { | ||
+ | 0 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 1 [label="", | ||
+ | 1 -> 0 [label="" | ||
+ | } | ||
+ | |||
+ | // | ||
+ | digraph { | ||
+ | 0 [label=" | ||
+ | 0 -> 1 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 1 [label=" | ||
+ | 1 -> 1 [label=" | ||
+ | 1 -> 0 [label=" | ||
+ | 2 [label="", | ||
+ | 2 -> 0 [label="" | ||
+ | } | ||
+ | |||
+ | Analyzing counterexample for FDFA learner... | ||
+ | Is w-word (b, ab) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | DFA D_{u$v} for counterexample (u, v): | ||
+ | digraph Automaton { | ||
+ | rankdir = LR; | ||
+ | 0 [shape=doublecircle, | ||
+ | 0 -> 7 [label=" | ||
+ | 1 [shape=circle, | ||
+ | 1 -> 6 [label=" | ||
+ | 2 [shape=circle, | ||
+ | 2 -> 7 [label=" | ||
+ | 3 [shape=circle, | ||
+ | initial [shape=plaintext, | ||
+ | initial -> 3 | ||
+ | 3 -> 4 [label=" | ||
+ | 3 -> 5 [label=" | ||
+ | 4 [shape=circle, | ||
+ | 4 -> 1 [label=" | ||
+ | 5 [shape=circle, | ||
+ | 5 -> 2 [label=" | ||
+ | 5 -> 3 [label=" | ||
+ | 6 [shape=doublecircle, | ||
+ | 6 -> 1 [label=" | ||
+ | 7 [shape=circle, | ||
+ | 7 -> 0 [label=" | ||
+ | } | ||
+ | |||
+ | Counterexample not in target: b$ab | ||
+ | final counterexample for the FDFA learner: b$ab | ||
+ | normalized factorization: | ||
+ | Is w-word (ϵ, ab) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Starting counterexample analysis in the learner (1,2) ... | ||
+ | Is w-word (ϵ, b) in the unknown languge: 1/0 | ||
+ | 1 | ||
+ | Is w-word (ϵ, b) in the unknown languge: 1/0 | ||
+ | 1 | ||
+ | Is w-word (ϵ, bb) in the unknown languge: 1/0 | ||
+ | 1 | ||
+ | Is w-word (ϵ, ab) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, bab) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, bbb) in the unknown languge: 1/0 | ||
+ | 1 | ||
+ | Is w-word (ϵ, aa) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, aab) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, ab) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Is w-word (ϵ, abb) in the unknown languge: 1/0 | ||
+ | 0 | ||
+ | Finished counterexample analysis in the learner... | ||
+ | Table/Tree is both closed and consistent | ||
+ | Leading Learner: | ||
+ | || (ϵ, ϵ) | | ||
+ | ============= | ||
+ | ϵ || - | | ||
+ | ============= | ||
+ | a || - | | ||
+ | b || - | | ||
+ | |||
+ | Progress Learner for ϵ: | ||
+ | || ϵ | b | | ||
+ | ============= | ||
+ | ϵ || - | + | | ||
+ | b || + | + | | ||
+ | a || - | - | | ||
+ | ============= | ||
+ | ba || - | - | | ||
+ | bb || + | + | | ||
+ | aa || - | - | | ||
+ | ab || - | - | | ||
+ | |||
+ | Resolving equivalence query for hypothesis (# | ||
+ | Is following automaton the unknown automaton: 1/0? | ||
+ | digraph { | ||
+ | 0 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 0 -> 1 [label=" | ||
+ | 0 -> 2 [label=" | ||
+ | 0 -> 0 [label=" | ||
+ | 1 [label=" | ||
+ | 1 -> 1 [label=" | ||
+ | 1 -> 2 [label=" | ||
+ | 2 [label=" | ||
+ | 2 -> 1 [label=" | ||
+ | 3 [label="", | ||
+ | 3 -> 0 [label="" | ||
+ | } | ||
+ | |||
+ | 1 | ||
+ | Congratulations! Learning completed... | ||
</ | </ | ||
play.1542095065.txt.gz · Last modified: 2018/11/13 15:44 by liyong