DFA的过渡Monoid成员资格


9

给定完整的DFA,我们可以为每个定义函数的集合,并使用,。我们可以将此概念推广为单词和,其中表示函数组成。此外,我们将表示为而是单半体。A=(Q,Γ,δ,F)faa∈Γfa:Q→Qfa(q)=δ(q,a)w=a1,⋯,amfw=fa1∘⋯∘fam∘G={fw∣w∈Γ∗}G

[ 在标准教科书中,通常称为过渡monoid,但在此我为了清晰起见而复制了该定义。]G

问题是,给定一个函数,我们可以确定(理想情况下是多项式时间),如果是这种情况(即,存在使得),则是否是多项式长,还是可以指数长? f:Q→Qf∈Gwf=fww

[我想这样的词确实可能成倍地长,但是我正在寻找一个简单的例子。]

Answers:


9

可判定性

这是可以决定的。仅存在有限多个可能的功能,所以可以建模此作为一个图可达性问题,每个功能一个顶点和边缘,如果存在使得。然后,测试函数是否在简化为测试从在图形中是否可到达。您可以使用广度优先找到最短的此类单词。但是,运行时间在可能是指数的。f:Q→Qg→h一个∈ΓH=F一个∘GGGGFϵ问

字长

最短的单词可能会成倍增长。这是此类DFA的示例。令为前素数。这样,状态将为形式其中和。使用一元字母和转换函数定义DFA,并给出函数通过p1个,…,pķķ(一世,X)一世∈{1个,…,ķ}X一世∈{0,1个,…,p一世-1个}Γ={0}δ((一世,X),0=(一世,X+1个模p一世)F0:问→问

f0(i,x)=(i,x+1modpi).

现在考虑函数由下式给出g:Q→Q

g(i,x)=(i,x−1modpi).

可以使用中文余数定理证明其中,而是最短的此类单词。此外,,因此在呈指数增长。g=f0nn=p1×p2×⋯×pk−10n|Q|=p1+⋯+pknQ

因此,没有希望输出这种单词的多项式时间算法。但是,这仍然为确定是否在中提供了多项式时间算法的可能性。gG

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.