簡體   English   中英

為什么不是CFG?

[英]Why is this not CFG?

盡管這是重新定義, 我還是在設計PDA方面進行討論。

現在,我知道我錯了,因為這是一個廣為人知的示例,但是下面的PDA設計在哪里出錯呢?

我想接受語言{a^nb^nc^n: n>=0}

每次遇到a ,我將兩個1推入堆棧,將b彈出一個,將c彈出一個,然后檢查是否有空堆棧。 我將轉換函數(最小值)定義為:

(q0, a, Z) = (q0, 11Z)
(q0, a, 1) = (q0, 111)
(q0, b, 1) = (q1, delta)
(q1, c, 1) = (q2, delta)
(q2, delta, Z) = (q-Final, Z) (epsilon move)

Z is empty stack

此PDA不接受這種語言嗎?

您的PDA接受以下語言:

{a^n b^i c^j; n >= 0 and i + j = 2n}

與上述語言的子集{a^nb^nc^n: n>=0} ,特別是當i = nj = n

暫無
暫無

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

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