考虑以下语言= {0,1},
A = {2:w包含011作为子字符串} B =正则表达式0(0 + 1)* 1
匹配的语言 设M(B)是通过使用子集构造转换N(B)而获得的DFA 删除所有不必要的状态设¬M(B)是通过交换得到的DFA MB的最终和非最终状态。设M是M(A)和¬M(B)的乘积 不必要的状态被删除。M会有多少个州? M会有多少个最终状态? M(B)有多少个州? 这个问题令人难以置信,我花了几个小时在jFlap上将这两个DFA的交集放在一起,用于A和¬B。没有成功。 谢谢。
答案 0 :(得分:0)
语言M必须满足2个条件,
1)M(A) - 必须有一个子串011
2)¬M(B) - 不应以0
开头,以1
结尾
你可以通过将语言M分为两部分来解决这个问题,
1)以0
开头,但不以1
结尾且有子串001
2)和另一个以1
开头且具有子串001
因此,M的DFA将是这样的
2-5的状态负责第1部分,6-9的状态负责第2部分