【发布时间】:2013-12-28 19:12:37
【问题描述】:
拥有 DFA 的图表,如何将其转换为图灵机?我是否必须找到 DFA 接受的语言,然后创建图灵机?或者有没有直接的方法?
谢谢。
【问题讨论】:
标签: theory dfa turing-machines
拥有 DFA 的图表,如何将其转换为图灵机?我是否必须找到 DFA 接受的语言,然后创建图灵机?或者有没有直接的方法?
谢谢。
【问题讨论】:
标签: theory dfa turing-machines
DFA 中的每个转换都读取输入的一个字符,跟随转换,然后移动到输入的下一个字符。读取所有输入后,如果 DFA 处于接受状态,则接受,否则拒绝。
您可以使用图灵机直接模拟。通过为 DFA 中的每个状态创建一个状态来构建图灵机的有限状态控制。对于字符 c 上 DFA 中的每个转换,将 TM 中的转换替换为在读取字符 c 时将一些任意字符写回磁带(无关紧要)然后向右移动磁带头(到磁带上的下一个位置)。然后,对于每个状态,在空白符号上引入从该状态到 TM 的接受状态或 TM 的拒绝状态的转换(基于该状态是接受还是拒绝)。该 TM 通过手动遍历输入字符串并最终在运行结束时决定是接受还是拒绝来有效地运行 DFA。
希望这会有所帮助!
【讨论】: