2015-05-09 68 views
0

我试图找到在{A,B}与NA(W)和NB(W)在语言

L = {白:(以下语言正则表达式确定性有限自动机正则表达式NA(W)+ NB(W))模3 < 2}

我想拆分此成:

L1 = {瓦特:(NA(W)+ NB(W))模3 = 0}

L2 = {w:(na(w)+ nb(w))mod3 = 1}

然后用L1联盟L2解决。

我想我已经用 (B * AB * AB * AB *)*

但是解决娜(W)MOD 3 = 0,我不知道如何处理呐(W) + na(b)和mod 3的两个条件< 2在一个单一的正则表达式中

回答

1

假设na(w)表示w中出现的数量,表示您的字母表{a,b}表示na (w)+ nb(w)是w的长度。

所以问题是接受长度为3k或3k + 1的{a,b}上的字符串语言。此语言的正则表达式是

((a|b)(a|b)(a|b))*(a|b|empty)