如何解决这种上下文无关语法

时间:2012-10-31 04:22:40

标签: automation context-free-grammar pushdown-automaton

提供无上下文语法
  

{ w | w 是{a,b,c,d} *的一个元素,因此#的一个+#的b =#的c +#的D}

     

我如何处理这个问题......?

1 个答案:

答案 0 :(得分:3)

这个怎么样:

S -> A C S     
S -> A S C                   
S -> S A C                 

S -> C A S     
S -> C S A                   
S -> S C A

S -> 
A -> a|b
C -> c|d

(可能有更优雅的解决方案......)

至于如何接近这些,在我看来,关键洞察力通常在分组(这里是A和C),但我认为最好的学习方法是看很多例子并尝试了很多问题 - 例如this one