找出哪些是正规的语言

问题描述:

Regular language 找出哪些是正规的语言

我的观点/回答是,如果y是aregular设置,那么会退出DFA,它接受年。在L1中存在y = x^n的条件,即x将属于L1,因为y被DFA接受。那么x^n也是x,所以L1是规则的。现在L2 - >这里的条件是x = y^n。这里y被DFA接受,所以y^n等于x,所以x可以被DFA接受。这使得L1和L2都正常

我的论点是否正确?

+0

答案有问题,因为'y'不是一个集合。 – melpomene

+0

我不遵循你的论点。如果有一个接受x^n的DFA,那并不意味着它也必须接受x。 – melpomene

这个问题似乎很不妥。例如,如果我们取A = {a},那么L1是语言{a},L2是语言a *,它们都是常规的。如果我们选择A = a * b,那么L1 = a * b(这是规则的)并且L2 = {(a n b)m | m,n ≥ 0},这是不规则的(使用抽象引理)。换句话说,答案取决于答案的选择。

+0

所以没有任何选项是正确的? – Anjo

+0

如果A = a * b,则L2 =(a * b)*当然是规则的。详情请参阅我的回答。 – chazisop

+1

@chazisop你确定吗?直觉上,L_2是通过选择A中的单个字符串并复制它们几次获得的语言。因此,你不会在L_2中使用aabab,因为A中没有固定的字符串,你可以选择并复制两次以获得aabab。 – templatetypedef