解释图灵机的计算

时间:2017-10-05 16:51:20

标签: turing-machines state-diagram

我在解释这个图灵机实际上做了什么时遇到了一些麻烦(即,我不确定如何用简单的英语解释它。)

enter image description here

我相信我已经使用我给出的转换表正确创建了状态图(尽管不是100%)。

从我所看到的情况来看,只要输入格式为

,TM就会在接受状态(q2)停止

(a || b || B)*Ba*c(a || b || c || B)*

任意数量的ab和空白(但没有c),后跟至少一个空白,任意数量的{{ 1}},只有一个a。自从我们在找到第一个c后离开之后,任何事情都会发生。

我想我的问题是

a)我的工作到目前为止是否正确?和

b)是否对此图灵机有更有意义的解释(即比我在c中停止输入的描述更丰富。)

1 个答案:

答案 0 :(得分:0)

一些观察结果:

  1. q0从左到右读取,不会更改磁带,并在碰到c时停止。
  2. q1从左到右读取,交换a和b,当它看到B时停止,当它击中a时转身。
  3. TM暂停的唯一方法是if
    • 磁带位于初始磁带位置右侧的某个位置
    • 在q1中,从右到左的最后一次传递仅看到b,并且只留下c的左边第一个c和最右边的B之间的一个。
  4. q1将c的左边第一个c和最右边b之间的所有内容更改为b最终
  5. 鉴于初始磁带配置> BxBycz,机器将始终在配置中停止> BxB(a ^ | y |)cz。它接受包含c。

    的任何字符串

    您的状态图与表格不一致,表格中定义了过渡函数,因此f(q1,a)=(q0,b,L)和f(q1,b)=(q1,a,L) ,但你的图表显示f(q1,a)=(q1,a,L)和f(q1,b)=(q0,b,L)。

相关问题