Soit soit un DFA pour . Sans perte de généralité, on suppose . Nous construisons un ε-NFA pour la manière suivante:D=(Q,Σ,δ,q0,F)LqS,qF∉QN=(Q∪{qS,qF},Σ,Δ,qS,{qF})L2
Trouver chaque trajet en de l' une quelconque . Pour chacun de ces chemins construisez les chemins pour (c'est-à-dire constuire toutes les "parties centrales" du chemin). Cela peut être fait efficacement. Construisez en combinant tous ces chemins, avec:Dq0f∈Fpk:q0=qk,0−→−αk,1qk,1−→−αk,2…−→−αk,iqk,i−→−−αk,i+1…−→−−αk,nkqk,nkp(i)k:qk,i−→−−αk,i+1qk,i+1−→−−αk,i+2…−→−−−αk,nk−iqk,nk−i0≤i≤nk2Δ
- (qS,ε,qk,i) pour tout comme ci-dessusi
- (qk,nk−i,ε,qF) pour tout comme ci-dessusi
L(N) est régulier par construction.
Preuve que : Soit . Par construction, nous savons que doit correspondre au moins à l'un des chemins ci-dessus. Chacun de ces chemins appartient à un chemin en , qui contient un préfixe et un suffixe supplémentaires de longueur . Choisissez comme mot décrit par ce préfixe et celui décrit par le suffixe. On trouve que , avec . Avec le même raisonnement que nous trouvons pour chaque un chemin dans . Soit la longueur de etL(N)=L2w∈L(N)wp(i)kDixyxwy∈L|x|=|y|=iw∈L2Nixyappartenant à .w . pour certaines formesp(i)kkw
Ainsi .L(N)=L2