【问题标题】:Deterministic Finite Automata on JFLAPJFLAP 上的确定性有限自动机
【发布时间】:2019-10-30 19:50:59
【问题描述】:
我有一个 DFA 问题,我需要使用 JFLAP 为自动机创建图表。我已经成功完成了一个更简单的问题,但是我就是不知道如何解决这个问题:
“接收“1”和“2”值序列的 DFA,仅接受结果为 4 的序列。任何其他结果大于或小于 4 的组合都将被拒绝。”
字母表是 {1,2},据我所知,这些是可以接受的可能组合:
1111、22、121、112、211
任何帮助将不胜感激。谢谢。
【问题讨论】:
标签:
finite-automata
dfa
jflap
【解决方案1】:
这种有限语言的 DFA 可能看起来很像这样:
1 1 1 1
----->q----->q1----->q11----->q111----->q1111
| | | | |
| 2 | 2 | 1 | 2 | 1,2
| | | | |
V 1 V 1 V | |
q2----->q21----->q211 | |
| | | | |
| 2 | 2 | 1,2 | |
| | | | |
V | | | |
q22 | | | |
| | | | |
| 1,2 | | | | +-----+
| | | | | | | 1,2
V V V V V V |
+-------+--------+------+---------+--------->qDead----+
另一种方法是只记住当前的总和:
1
----->q0----->q1
| /|
| / |
| / |
2 | 1 / | 2
| / |
| / |
| / |
|/ |
V 1 V
q2----->q3
| /|
| / |
| / |
2 | 1 / | 2
| / |
| / |
| / |
|/ |
V 1,2 V
q4----->qDead