为什么是 {a^n a^n | n >= 0} 正则?
Why is {a^n a^n | n >= 0} regular?
我理解 {a^n b^n | n >= 0}
不规则的原因和证明。
Why is {a^nb^n | n >= 0} not regular?
我的一个习题的解法是:{a^n a^n | n >= 0}
正则。我怎样才能证明这个论点?
是,语言{an an | n >= 0} 是常规语言。为了证明某种语言是正则的,可以画出它的dfa/regular表达式。您可以按如下方式为这种语言做驱动:
因为“a<sup>n</sup>a<sup>n</sup>
for n >= 0
”是相同的如“a<sup>2n</sup>
for n >=0”,即 "set of all string contests of even number of symbol a
" 即常规 — 正则表达式是 (aa)*
.
注意,正则表达式只能用于正则语言,因此证明 {an an | n >= 0} 是一种常规语言。 DFA 将是:
我建议您阅读这篇文章 why languages like {an bn | n >= 0} are not regular。
首先将定义更改为等效的 L = {a^2n | n >= 0}
。现在观察任何属于 L
的字符串都是 2 a
的倍数。然后将该定义更改为 (aa)*
,这是一个 正则表达式 ,因为它仅使用原语来表达常规语言 - 单个字符 (a
)、连接 (aa
) 和 Kleene 星 (*
)。现在你完成了。
我理解 {a^n b^n | n >= 0}
不规则的原因和证明。
Why is {a^nb^n | n >= 0} not regular?
我的一个习题的解法是:{a^n a^n | n >= 0}
正则。我怎样才能证明这个论点?
是,语言{an an | n >= 0} 是常规语言。为了证明某种语言是正则的,可以画出它的dfa/regular表达式。您可以按如下方式为这种语言做驱动:
因为“a<sup>n</sup>a<sup>n</sup>
for n >= 0
”是相同的如“a<sup>2n</sup>
for n >=0”,即 "set of all string contests of even number of symbol a
" 即常规 — 正则表达式是 (aa)*
.
注意,正则表达式只能用于正则语言,因此证明 {an an | n >= 0} 是一种常规语言。 DFA 将是:
我建议您阅读这篇文章 why languages like {an bn | n >= 0} are not regular。
首先将定义更改为等效的 L = {a^2n | n >= 0}
。现在观察任何属于 L
的字符串都是 2 a
的倍数。然后将该定义更改为 (aa)*
,这是一个 正则表达式 ,因为它仅使用原语来表达常规语言 - 单个字符 (a
)、连接 (aa
) 和 Kleene 星 (*
)。现在你完成了。