簡體   English   中英

語言{0 ^ m 1 ^ m 2 ^ n |的結果是什么? n> = 0,m> n}

[英]What is the productions for language {0^m 1^m 2^n | n>=0, m > n}

我想知道如何獲得語言{0 ^ m 1 ^ m 2 ^ n | n> = 0,m> n}。

這是我所擁有的,我不確定是否正確。 如果我錯了,請糾正我:

 S -> 01A | 0B1A | 00B11A
 A -> 2A | 2 | λ
 B -> 01

謝謝。

該語言不是上下文無關的。 對於上下文無關的語言,可以使用抽水引理來證明這一點。 您最終遇到了五種情況; 三種情況僅泵送符號0、1或2中的一種; 還有兩種情況會標出相鄰的符號。 注意,除了我們可以選擇字符串0 ^(p + 1)1 ^(p + 1)2 ^ p之外,幾乎可以做到這一點,即使跨越0和1並均勻泵送它們,您仍然會失敗m> n抽氣時進行測試。

語法比上下文無關還有更強大的語法。 我們可以為這種語言產生一般的語法。

S -> RT
R -> 0R1X | 01

X1 -> 1X

XT -> T2 | T
1T -> e

前兩個產品產生格式為0 ^ n(01)(1X)^ n T的字符串。

第三生產產生形式為0 ^ n(01)1 ^ n X ^ n T的字符串。它允許X浮動到所有1之后的右邊。

最后兩個產品產生格式為0 ^ n(01)1 ^ n 2 ^ m的字符串,m <= n。 這些使T可以“浮動”離開X,將每個X轉換為2或不轉換為零。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM