有关常规语言的抽取引理的详细信息

时间:2010-11-14 00:23:43

标签: theory pumping-lemma

我对常规语言的抽取引理有一个小问题 - 它是否足以证明如果属于某种语言L的特定字符串无法被抽取,那么语言是不规则的?例如 - 如果我选择语言L1的形式为^ nb ^ n(ab,aabb,aaabbb ...)并且我表明字符串aabb不能被泵送并且仍然是L1的一部分,那么它是对我有效,立即得出结论L1是不规则的吗?

干杯。

4 个答案:

答案 0 :(得分:1)

是的,这就是泵浦引理的工作原理。它仅对证明的语言非常有用。满足抽水引理只是必要的,而不是足够条件的常规语言。

(Nota bene:同样适用于无背景语言和相应的泵浦引理)

答案 1 :(得分:0)

是的,这是它的工作原理,但要小心显示字符串“无法抽出”

要做到这一点,你必须将L中的字符串w分解为子字符串xyz并显示某些版本的xy ^ 1z,对于int i i> = 0导致字符串不在L中,但仍然被DFA M接受(对于M建立接受L),到达矛盾。

请注意,您无法选择y的位置,因此必须考虑它的3个可能位置。在我看来,那是关键。

答案 2 :(得分:0)

证明单个有限长度的字符串不会抽空是不够的。对于严格的论证,您还必须证明示例字符串的长度大于语言的抽取长度。通常你假设有一些抽水长度 p存在,然后构造一个长于p的字符串,不能被抽出。

答案 3 :(得分:0)

泵浦引理说: 如果语言A是常规的=>有一个数字p(泵浦长度),其中,如果s是L中的任何字符串,那么| s | > = p,然后s可以分成三段s = xyz,满足以下条件:

    对于每个i> = 0 ,
  1. xy i z为L
  2. | y |> = 0
  3. p> = | xy |
  4. 表明某种语言L不规则的正确方法是假设L有规律并试图达成矛盾。

    让我们试着证明L = {0 n 1 n } | n> = 0}不规律。 我们开始假设L是正常的。

    你可以将这种示范视为游戏:
    挑战者:他选择抽水长度p。你不能对它做任何推定。
    :轮到你了:选择代表语言不规则性的“种类”字符串。
    假设字符串的形式为0 p 1 p
    这一步中的一个好建议就是尽量限制对手的下一步行动。
    挑战者:他以0 p 1 p 的形式呈现给你一个字符串s。 你:是时候抽水了!如果您在上一步中正确选择了字符串的形式,则可以做一些假设。
    在我们的例子中,我们知道子串y只包含0(至少有一个0因为| y |> 0),因为| xy |< = p和第一个p元素是0

    现在我们证明它存在i> = 0使得xy i z不在L中。例如,对于i = 2,字符串xyyz的0比0更多,因此不是L的成员。这个案子是矛盾的。 => L不规律。

    永远不要忘记为什么抽水管不能成为L的成员。

    你可能要帮助你,但其他人可能需要这样的解释...也许^^

    干杯。