Rozšíření konečných automatů II Automaty s c-kroky IB102 Automaty a gramatiky, 14.10.2019 1/19 Definice 2.46. Nedeterministický konečný automat s č-kroky je M = (Q, Z, S, q0, F), kde význam všech složek je stejný jako v definici N FA s výjimkou přechodové funkce S. Ta je definována jako totální zobrazení í:Qx(Iu {e}) -> 2°. Rozšířená přechodová funkce Definujeme funkci D£ : Q 2° následujícím předpisem. D£(p) je nejmenší množina X c Q taková, že platí: ■ peX, ■ pokud q e X a r e 5(q, e), pak také r e X. Rozšíření funkce D£ na množiny stavů: pro Y c Q položíme De{Y)= U IB102 Automaty a gramatiky, 14.10.2019 2/19 Příklad - výpočet Dt IB102 Automaty a gramatiky, 14.10.2019 3/19 Definice rozšířené přechodové funkce 5 : Q x Z* -> 2° ■ ô(q,s) = D£(q), mS{q,wa) = {Jp€${qjW) D£(S{p, a)). Lemma 2.47. V přechodovém grafu automatu M existuje cesta p-i A ... A pm A Qi 4 ... 4 c/n, kde m,n>1,ael, právě když qv, g %>i,a). Jazyk přijímaný automatem .M s e-kroky definujeme L(M) = {w e Z* | 5(qo, w)nF^ 0}. IB102 Automaty a gramatiky, 14.10.2019 4/19 Příklad - výpočet rozšířené přechodové funkce pro automat s e-kroky IB102 Automaty a gramatiky, 14.10.2019 5/19 Ekvivalence automatů s e-kroky a NFA Věta 2.48. Ke každému NFA M = (Q, 51,8, q0, F) s č-kroky existuje ekvivalentní NFA (bez č-kroků). Důkaz. Konstrukce M = (Q, Z, 7, g0> G) bez č-kroků: a) = a) pro každé q g Q, a g Z G= í F pokud D£(q0) n F = 0 \ Fu{q0} jinak Korektnost: Dokážeme, že pro libovolné p g Q, 1/1/ g Z+ platí (5(p51/1/) = ^(p51/1/) (indukcí vzhledem k délce slova w). Algoritmus: IB102 Automaty a gramatiky, 14.10.2019 Uzáverové vlastnosti regulárních jazyků Věta 2.49. a 2.51. Třída regulárních jazyků je uzavřená na sjednocení, průnik, rozdíl a komplement. Důkaz, synchronní paralelní kompozice automatů + komplement. □ Příklad. U = {a1 b1'd | 2/ > j > 0} L2 = {a}*.{b}* L3 = {anbn | n > 0} /.1 n /_2 = /-s Jazyk /_2 je regulární, L3 není regulární =4> L1 není regulární. IB102 Automaty a gramatiky, 14.10.2019 7/19 Věta 2.52. Třída regulárních jazyků je uzavřená na zřetězení. Důkaz. Nechť L-i a L2 jsou regulární jazyky, rozpoznávané N FA M1 =(Q1,Z1,51,qf1,F1)aM2 = (Q2,5l2,52,Q2,/=2), kdeQi nQ2 = 0. Definujeme N FA s e-kroky © M2 = ^ u Q2, £1 u 5Z2,5, q^, F2), kde 5 = <$! U 0, q0 e /, qn £ F ■ a , Q/) je definováno pro každé 0 < / < n taková, že ■ w lze rozdělit na n částí w = ...vn tak, že ■ Vj g L(5(q,-_i, Q,)) pro každé 0 < / < n. Slovo e je akceptováno také tehdy, je-li / n F ^ 0. IB102 Automaty a gramatiky, 14.10.2019 19/19