繁体   English   中英

常规,可确定的图灵和可识别的图灵是什么意思?

[英]what does regular, Turing-decidable and Turing-recognisable mean?

我知道这个问题已经提过,但是老实说我不清楚。

我目前正在对计算理论进行研究,并且使用术语“证明一种语言是可确定的,可识别的或常规的”。

用最简单的术语来说,它们实际上是什么意思,我们如何证明这些东西?

我们在谈论一种语言 大号 超过一个字母 适马 , 意思就是 L是Sigma *的子集 大号 由单词组成,单词由 适马 )。

大号 可以决定的
表示存在图灵机 Ť ,这样 Ť 停止并接受任何输入的单词 欧米茄 停止并拒绝输入的任何单词 欧米茄不在L中

大号 被认可
表示存在图灵机 Ť ,这样 Ť 停止并接受任何输入的单词 欧米茄 停止或不停止 (但不停止并接受!) 欧米茄不在L中

有关差异 ,另请参见MathExchange上的识别与可确定。

大号 定期
意思是 大号 可以由正则表达式创建。 重要的是要注意,理论计算机科学中的这些正则表达式与PERL或Java等编程语言中已知的RegEx功能有所不同。 实际上,这些RegExes确实比正则表达式更强大(不知道这是否是正确的英语术语)。

正则表达式的一个很好的定义在这里给出:

对于字母 适马

  • 空集 小量 (空集和空词)是一个正则表达式
  • 一种 对于任何 Sigma中的a (来自字母的任何字母)是一个正则表达式
  • 如果 R1 R2 是正则表达式,这些也是正则表达式:
    • R1和R2 (含义 R1 要么 R2
    • R1与R2串联 (表示 R1 R2
    • R1 * (含义 R1 ,重复次数不限 R1 或空词 小量

除了正则表达式,别无其他。

我们如何证明类似的东西?

图灵机

为了证明可判定性或可识别性,通常最容易为图灵机提供所需的属性。 由于Church-Turing的论点 ,任何编程语言都像Turing机器一样强大。 因此,在我的课程中,以编程语言或伪代码提供算法是完全可以接受的。

请注意,任何可识别的语言也是可以确定的(但反之亦然)。

常用表达

为了证明规则性,大多数时候最简单的就是提供一个构造该语言的正则表达式。 有时需要证明正则表达式确实能够正确构建 大号 ,通常不太难(通常很明显)。

在许多讲座中,都有关于正则表达式的约定,该约定允许使用更直观,更短(但不更强大)的语法。

知道常规语言正是有限自动机可以识别的语言可能会很有趣。 注意,任何常规语言也是可判定的(因此可识别的)。

为了反驳常规性,我只想提及常规语言激进式引理

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM