[英]Theory: Is the given language context free or not?
在最近的測試中,我被要求識別以下語言是否與上下文無關:
據我說,它是上下文無關的,並且可以被以下上下文無關的語法接受,其中S是起始符號,Y是非終結符:
但是,我的回答被認為是錯誤的,因此顯然該語言不是上下文無關的。
我對自己的回答充滿信心,但回答使我感到困惑。 我的理解正確嗎? 如果我錯過了什么,請告訴我。
該語言不是上下文無關的語言! 您的語法是錯誤的!
根據語言描述,后綴0
s應當小於1
s且前綴為0
s。 但是使用語法,您可能會生成錯誤的字符串,如下所示:
步驟1:始終將S
替換為S0
步驟2:現在將S
替換為Y
S --> S0 --> S00 --> S000 --> Y000
現在您可以將Y
替換為^
(nul),得到000
,該字符串不是您的語言。
將Y
替換為0Y1
然后將Y
替換為^
:
Y000 ---> 0Y1000 ---> 01000
01000
字符串不是語言。 因此,您的語法不會產生相同的語言。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.