Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 数学和算法 > 计算系统 >
Mathematica > 数学和算法 > 离散数学 > 计算系统 >

TuringMachine

TuringMachine[rule, init, t]
产生一个列表,表示带有指定规则,即从出初始条件 init 以步长 t 变化的图灵机(turing machine)的简化。
TuringMachine[rule, init]
给出 init 每一步简化的结果。
  • 对于一维图灵机(Turing machine),TuringMachine 简化的每一步由 {{s, x, dx}, {a1, a2, ...}} 的形式给出,头以状态 s,带中的单元具有值 ai,头的坐标 x 是以相对 ai,并相对于它的初始位置位移为 dx
  • 如果 dx 省略图灵机(Turing machine)的初始条件,它的值是 0
  • 对一个 d 维图灵机(Turing machine),带指定为一个 d 维的数组,并且坐标 x 和相对位置dx 是长度d 的列表。
  • 一个图灵机(Turing machine)的规则设定可以通过形式 {si, ai}->{spi, api, offi} 的列表给出,可以带有下列元素:
si头的状态
ai头下单元的值
spi头的新的状态
api头下单元的新值
offi头移动的偏移
  • 状态和单元值是整数模式,或其他表达式,单个单元值不能是列表。
  • 在一维情况下,每个位移 offi 是一个单一整数;在多维情况下,它是一个整数列表。
  • 当状态和单元值分别设置为1 到 s 及0到 k-1范围内的整数,下列可以在 rule 中设定:
n2 态 2 色带有数量 n 的机器
{n,s}s状态, 2色带有数量 n的机器
{n,s,k}s状态, k色带有数量 n 的机器
{n,s,k,r}允许位移 offi 在范围 -r+r (包括 0)
{n,s,k,{r1,r2,...,rd}}d 维机器,带有 +/-r_1, +/-r_2, ... 的位移
{n,s,k,{{off1},{off2},...}}允许指定位移的机器
rule给出带有明确给定规则的机器
  • 图灵机(Turing machine )的数量的规则可以指定下面:
2态 2色 机器4096
sk 色 机器(2 s k)^(s k)
sk 色 范围 r 的机器(2 r s k)^(s k)
二维 sk 色机器(4 s k)^(s k)
  • 如果机器关于它本身的配置,没有设置任何规则,则它的配置不会发生改变。
  • 初始条件 init 的典型形式可以如下:
{s,{{},0}}在 0 秒的一个一维带上,状态 s 的头部
{s,{{a1,a2,...},0}}限制 ai 的区域,在一个无限带内
{{s,x},{{a1,a2,...},0}}初始坐标 x 的 头部的限制区域
{{s,...},{{a1,...},{b1,...}}}bi 的重复背景
{{s,...},{a1,a2,...}}假定循环的有限带
  • TuringMachine[rule, init, t] 生成一个长度为 t+1 的变化序列。
2 态2 色机器2506,带有4秒的单带:
In[1]:=
Click for copyable input
Out[1]=
 
2 态2 色机器2506,带有无限的空白带:
In[1]:=
Click for copyable input
Out[1]=
绘制带的连续配置:
In[2]:=
Click for copyable input
Out[2]=
 
将"注入" 状态信息放入带内:
In[1]:=
Click for copyable input
Out[1]=
以红色的方块显示头的位置:
In[2]:=
Click for copyable input
Out[2]=
 
给出一系列转变规则的机器:
In[1]:=
Click for copyable input
Out[1]=
6 的新功能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team