简体   繁体   English

具有不确定性图灵机的上下文相关语言

[英]Context sensitive language with non deterministic turing machine

how can i show a language is context sensitive with a non deterministic turing machine? 如何使用非确定性图灵机显示语言对上下文敏感?

i know that a language that is accepted by a Linear bound automaton (LBA ) is a context -sensitive language. 我知道线性绑定自动机(LBA)接受的语言是上下文相关的语言。 And a LBA is a non-deterministic turing machine. LBA是一种不确定的图灵机。

Any idea how can i relate all these and show that a language is context sensitive? 我知道如何将所有这些联系起来并表明一种语言是上下文相关的吗?

This is not an exact answer, but since the context-sensitive languages are precisely those accepted by a linear-bounded automaton (a TM with O(n) space on its tape), the context-sensitive languages are precisely those in DSPACE(n). 这不是一个确切的答案,但是由于上下文相关的语言恰好是线性有界自动机(磁带上带O(n)空间的TM)所接受的语言,因此上下文相关的语言恰恰是DSPACE(n )。 Moreover, we know that NTIME(n) = DSPACE(n) . 此外,我们知道NTIME(n)= DSPACE(n) This means that if you can find a linear-time NTM that decides membership in some language L, that language must be context-sensitive. 这意味着,如果您可以找到确定某种语言L的成员资格的线性时间NTM,则该语言必须是上下文相关的。 However, there still might be a context-sensitive language that does not have a linear-time NTM (I don't know whether there is a definitive answer to this or whether this is an open problem), so this is not an exact characterization. 但是,仍然可能有上下文敏感的语言没有线性时间NTM(我不知道对此是否有明确的答案,或者这是否是一个开放的问题),因此这不是精确的描述。 。

Hope this helps! 希望这可以帮助!

As templatetypedef's answer has some flaws (which I will point out in a second in a comment), I give a quick answer to your question: 由于templatetypedef的答案存在一些缺陷(我将在下一秒钟的评论中指出),因此,我快速回答了您的问题:

The language is context sensitive if (and only if) you can give a nondeterministic turing machine using linear space that defines L. 当(且仅当)您可以使用定义L的线性空间提供不确定的图灵机时,该语言才是上下文敏感的。

Let L = { a^nb^na^n } for an arbitrary integer n; 对于任意整数n,令L = {a ^ nb ^ na ^ n}; a^n here means n concatenations of the symbol a. 这里的a ^ n表示符号a的n个串联。 This is a typical context sensitive language. 这是一种典型的上下文相关语言。 Instead of giving a CSG, you can give a LBA to show that L is context sensitive: 除了提供CSG之外,您还可以提供LBA来表明L是上下文相关的:

The turing machine M 'guesses' (thanks to nondeterminism) n [in other words you may say 'every branch of the nondeterministic search tree tries out another n], and then checks whether the input matches a^nb^na^n. 图灵机M“猜测”(由于不确定性)n [换句话说,您可以说“不确定性搜索树的每个分支都尝试另一个n”],然后检查输入是否匹配a ^ nb ^ na ^ n。 You need log n cells to store n, the matching might need (if implemented trivially) another log n cells. 您需要log n个单元格来存储n个,匹配可能需要(如果很简单地实现)另一个log n个单元格。 As n + 2log n < 2n, this machine needs only linear space, and is therefore an LBA, hence L is context sensitive. 当n + 2log n <2n时,该机器仅需要线性空间,因此是LBA,因此L是上下文相关的。

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

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