锁定老帖子 主题:探讨一下数据驻留模型
该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-04-28
Trustno1 写道 inshua 写道 不是我喜欢挥舞这玩意儿, 我真不懂等价在哪儿, 假如 lambda 演算不支持中断或其它可以驻留的形式, 它能解决的问题域就和图灵机的问题域完全不同. 如果目标问题域都不同, 还谈什么等价. 我不知道 monad 算 lambda 演算还是算 lambda 演算的一个补丁, 但是号称纯函数语言的 haskell 确实依靠他解决 io 问题, 而 io 问题可以算是中断问题的代表. 谁和你说图林机解决IO问题来着? 那么现在命令式语言解决 io 问题所依据的是什么理论 |
|
返回顶楼 | |
发表时间:2008-04-28
inshua 写道 Trustno1 写道 inshua 写道 不是我喜欢挥舞这玩意儿, 我真不懂等价在哪儿, 假如 lambda 演算不支持中断或其它可以驻留的形式, 它能解决的问题域就和图灵机的问题域完全不同. 如果目标问题域都不同, 还谈什么等价. 我不知道 monad 算 lambda 演算还是算 lambda 演算的一个补丁, 但是号称纯函数语言的 haskell 确实依靠他解决 io 问题, 而 io 问题可以算是中断问题的代表. 谁和你说图林机解决IO问题来着? 那么现在命令式语言解决 io 问题所依据的是什么理论 同学,如果大学的算法课没学好也没啥大不了的,google总会吧. http://zh.wikipedia.org/wiki/%E5%9B%BE%E7%81%B5%E6%9C%BA 引用 开始的时候将输入符号串w=w0w1....wn-1 从左到右依此填在纸带的第0,1,....,n-1 号格子上, 其他格子保持空白(即填以空白符)。 M 的读写头指向第 0 号格子, M 处于状态 q0。
图灵只是说把初始状态放在格子上,至于怎么放?用铅笔橡皮,还是磁头磁盘,他没说,他也不关心他的模型里也没有关于这部分的设备那个纸带上的读写头只是操纵已经放上格子的符号与如何放上w0w1...wn-1这一串符号无关,,图灵只关心它的机器在放上这些符号以后,怎么做工作而已. 这跟lambda算子的原理是一样的,lambda算子说,给定一个lambda表达式,我就能如何如何。至于你怎么给定,不是它关心的事情. |
|
返回顶楼 | |
发表时间:2008-04-28
Trustno1 写道 inshua 写道 Trustno1 写道 inshua 写道 不是我喜欢挥舞这玩意儿, 我真不懂等价在哪儿, 假如 lambda 演算不支持中断或其它可以驻留的形式, 它能解决的问题域就和图灵机的问题域完全不同. 如果目标问题域都不同, 还谈什么等价. 我不知道 monad 算 lambda 演算还是算 lambda 演算的一个补丁, 但是号称纯函数语言的 haskell 确实依靠他解决 io 问题, 而 io 问题可以算是中断问题的代表. 谁和你说图林机解决IO问题来着? 那么现在命令式语言解决 io 问题所依据的是什么理论 同学,如果大学的算法课没学好也没啥大不了的,google总会吧. http://zh.wikipedia.org/wiki/%E5%9B%BE%E7%81%B5%E6%9C%BA 引用 开始的时候将输入符号串w=w0w1....wn-1 从左到右依此填在纸带的第0,1,....,n-1 号格子上, 其他格子保持空白(即填以空白符)。 M 的读写头指向第 0 号格子, M 处于状态 q0。
图灵只是说把初始状态放在格子上,至于怎么放?用铅笔橡皮,还是磁头磁盘,他没说,他也不关心他的模型里也没有关于这部分的设备那个纸带上的读写头只是操纵已经放上格子的符号与如何放上w0w1...wn-1这一串符号无关,,图灵只关心它的机器在放上这些符号以后,怎么做工作而已. 这跟lambda算子的原理是一样的,lambda算子说,给定一个lambda表达式,我就能如何如何。至于你怎么给定,不是它关心的事情. 在国内 wiki 打不开. 你的解释很贴切, 但似乎和问题无关. 我的看法是这样的, 现在图灵机可以有格子放东西, 而 lambda 演算没有这个格子. 有这个格子就意味着它可以将程序挂起, 在适当的时机再恢复现场, 这样就可以解决 io 问题. 而没有这个格子就没有办法挂起再恢复. |
|
返回顶楼 | |
发表时间:2008-04-28
inshua 写道 Trustno1 写道 inshua 写道 Trustno1 写道 inshua 写道 不是我喜欢挥舞这玩意儿, 我真不懂等价在哪儿, 假如 lambda 演算不支持中断或其它可以驻留的形式, 它能解决的问题域就和图灵机的问题域完全不同. 如果目标问题域都不同, 还谈什么等价. 我不知道 monad 算 lambda 演算还是算 lambda 演算的一个补丁, 但是号称纯函数语言的 haskell 确实依靠他解决 io 问题, 而 io 问题可以算是中断问题的代表. 谁和你说图林机解决IO问题来着? 那么现在命令式语言解决 io 问题所依据的是什么理论 同学,如果大学的算法课没学好也没啥大不了的,google总会吧. http://zh.wikipedia.org/wiki/%E5%9B%BE%E7%81%B5%E6%9C%BA 引用 开始的时候将输入符号串w=w0w1....wn-1 从左到右依此填在纸带的第0,1,....,n-1 号格子上, 其他格子保持空白(即填以空白符)。 M 的读写头指向第 0 号格子, M 处于状态 q0。
图灵只是说把初始状态放在格子上,至于怎么放?用铅笔橡皮,还是磁头磁盘,他没说,他也不关心他的模型里也没有关于这部分的设备那个纸带上的读写头只是操纵已经放上格子的符号与如何放上w0w1...wn-1这一串符号无关,,图灵只关心它的机器在放上这些符号以后,怎么做工作而已. 这跟lambda算子的原理是一样的,lambda算子说,给定一个lambda表达式,我就能如何如何。至于你怎么给定,不是它关心的事情. 在国内 wiki 打不开. 你的解释很贴切, 但似乎和问题无关. 我的看法是这样的, 现在图灵机可以有格子放东西, 而 lambda 演算没有这个格子. 有这个格子就意味着它可以将程序挂起, 在适当的时机再恢复现场, 这样就可以解决 io 问题. 而没有这个格子就没有办法挂起再恢复. 同学你知不知道什么叫停机状态? 在图灵机上,读写头要么一直读写要么停机也就是计算完毕,没有所谓的挂起状态。 |
|
返回顶楼 | |
发表时间:2008-04-28
Trustno1 写道 同学你知不知道什么叫停机状态? 在图灵机上,读写头要么一直读写要么停机,没有所谓的挂起状态。 话虽如此, 用这个方式可以实现一个死循环, 实现挂起和恢复. |
|
返回顶楼 | |
发表时间:2008-04-28
inshua 写道 话虽如此, 用这个方式可以实现一个死循环, 实现挂起和恢复. 当然如果你觉得你能实现这个模型也没关系,那么你就用图灵机实现一个看看咯. |
|
返回顶楼 | |
发表时间:2008-04-28
Trustno1 写道 既然如此,那么你就用图灵机实现一个看看咯. 概念上是可行的. 我也不懂具体该怎么写. |
|
返回顶楼 | |
发表时间:2008-04-28
inshua 写道 Trustno1 写道 既然如此,那么你就用图灵机实现一个看看咯. 概念上是可行的. 我也不懂具体该怎么写. 如果是一个死循环,那么就是图林机无法停机,在当前接受串下你无法停止读写头,你又如何挂起?就算你挂起了吧,然后输入新的串了,但是读写头还是在老的状态转移函数里死循环,你又如何读新的输入串? 可行就要拿出了一个可行的证据出来。否则这个世界上任何事情就太便宜了,我还说超光速可行呢就是我不知道怎么具体造一艘超光速飞船. |
|
返回顶楼 | |
发表时间:2008-04-28
Trustno1 写道 inshua 写道 话虽如此, 用这个方式可以实现一个死循环, 实现挂起和恢复. 如果是一个死循环,那么就是图林机无法停机,你无法停止读写头,你又如何挂起?当然如果你觉得你能挂起也没关系,那么你就用图灵机实现一个看看咯. 无法停机不要紧, 它就一直运行好了, 这是 main loop, 当然, 它可以探测停机条件然后结束. 对了, 图灵机的格子可否接受外界影响? |
|
返回顶楼 | |
发表时间:2008-04-28
inshua 写道 无法停机不要紧, 它就一直运行好了, 这是 main loop, 当然, 它可以探测停机条件然后结束. 对了, 图灵机的格子可否接受外界影响? 第一可以很明确的告诉你,能否判定一个图灵机是否停机是一个不可能的问题,要么它自个停下来,要么一直算下去.这叫halting problem,这是图灵当年就证明过的 第二,图灵机的格子只受初始给定状态和读写头的影响. |
|
返回顶楼 | |