我正在试着理解在Pumping引理的每个应用中使用的这个'神奇的'数字'n'是什么。经过几个小时的研究,我来到了以下网站:http://elvis.rowan.edu/~nlt/TheoryNotes/PumpingLemma.pdf
说明
是的 最长的一个字符串可以没有循环。最大的n可以 是的,虽然对某些特定的语言来说可能更小。
根据我的理解,如果有语言L,那么L的泵浦长度是有限状态自动机中识别L的状态量。这是真的吗?
如果是,那么上面的最后一行究竟是什么意思“虽然某些特定语言可能会更小”?在我脑海里乱七八糟。有人可以清理一下吗?
答案 0 :(得分:5)
州政府不承认某种语言。 DFA通过接受语言中的单词集而不是其他单词来识别语言。 DFA有很多州。
如果有一个常规语言L,可以通过抽取引理建模,它将具有属性n。
对于具有s状态的DFA,为了使其接受L,s必须是> = n。
最后一行仅表明有些语言的s大于n,而不是等于。
这可能更适合https://cstheory.stackexchange.com/或https://cs.stackexchange.com/(不太确定我自己的价值)。
注意:琐碎的是,并非所有具有足够状态的DFA都会接受该语言。此外,语言通过抽取引理的事实并不意味着它是常规的(但是失败意味着肯定不是)。
另请注意,FA和DFA之间的语言更改 - 这有点松懈,但由于NDFA具有与DFA相同的功能,并且DFA更易于编写和理解,因此使用DFA进行证明。
编辑我将举一个常规语言的例子,这样你就可以看到u,v,w,z和n的概念。然后我们将讨论s。
L = xy^nz, n > 2 (i.e. xyyz, xyyyz, xyyyyz)
u = xy
v = y
w = z
n = 4
因此:
|z| = 3: xyz (i = 0) Not in L, but |z| < n
|z| = 4: xyyz (i = 1)
|z| = 5: xyyyz (i = 2)
etc
因此,它是由抽水引理建模的。 DFA至少需要4个州。所以让我们想一个。
-> State 1: x
State 1:
-> State 2: y
State 2:
-> State 3: y
State 3:
-> State 3: y
-> State 4: z
State 4:
Accepting state
Terminating state
按预期,有4个州。不能用更少的东西来做,正如n = 4所期望的那样。在这种情况下,这个例子非常简单,所以我认为你不能构建一个超过4个状态的那个(但是如果需要那就没关系)
答案 1 :(得分:0)
我认为有一种可能性是当你有一个无法到达状态的FA。 FA有s状态,但1无法访问,因此识别L的所有字符串将由(s-1)= n个状态组成,因此n<s
。