我理解为什么{a^n b^n | n >= 0}
不规律的原因和证据。
Why is {a^nb^n | n >= 0} not regular?
我的一个练习的解决方案是:{a^n a^n | n >= 0}
是常规的。我怎样才能证明这一论点?
答案 0 :(得分:4)
是的,语言{a n a n | n> = 0} 是常规语言。要证明某些语言是常规的,您可以绘制其dfa /正则表达式。你可以按照以下方式驾驶这种语言:
因为“anan
的{{1}}”与“n >= 0
的n> = 0”相同,而且是“偶数个符号{{的所有字符串竞赛的集合” 1}}“是常规的 - 正则表达式为a2n
。
注意,正则表达式只适用于常规语言,因此证明{a n a n | n> = 0}是常规语言。和DFA将是:
答案 1 :(得分:1)
首先将定义更改为等效L = {a^2n | n >= 0}
。现在观察属于L
的任何字符串只是2 a
s的倍数。然后将该定义更改为(aa)*
,这是一个正则表达式,因为它只使用基元来表达常规语言 - 单个字符(a
),连接(aa
)和Kleene星(*
)。现在你已经完成了。