Êîíå÷íûå ïðåîáðàçîâàòåëè. ×àñòü 2. Àëåêñåé Ñîðîêèí 1 Ñâîéñòâà çàìêíóòîñòè. Òåîðåìà 1. 1. Àâòîìàòíûå ÿçûêè çàìêíóòû îòíîñèòåëüíî êîíå÷íûõ ïðåîáðàçîâàíèé. 2. Êîíòåêñòíî-ñâîáîäíûå ÿçûêè çàìêíóòû îòíîñèòåëüíî êîíå÷íûõ ïðåîáðàçîâàíèé. Äîêàçàòåëüñòâî. 1. Ïóñòü L àâòîìàòíûé ÿçûê, çàäàâàåìûé êîíå÷íûì àâòîìàòîì A = hQ, Σ, ∆, q0, F i ñ îäíîáóêâåííûìè ïåðåõîäàìè. Ïóñòü T = hQ0 , Σ, Σ0 , ∆0 , q00 , F 0 i êîíå÷íûé ïðåîáðàçîâàòåëü, ψ çàäàâàåìîå èì ïðåîáðàçîâàíèå, ïðè÷¼ì L0 = ψ(L). Äîêàæåì àâòîìàòíîñòü ÿçûêà L0. Ìîæíî ñ÷èòàòü, ÷òî äëÿ âñÿêîãî ïåðåõîäà (hq1 , xi → hq2 , x0 i) ∈ ∆0 âûïîëíÿåòñÿ ñîîòíîøåíèå |x| + |x0 | = 1. Ðàññìîòðèì àâòîìàò M = hQ × Q0, Σ0, ∆00, (q0, q00 ), F × F 0i, ãäå ìíîæåñòâî ∆00 çàäà¼òñÿ ñëåäóþùèì îáðàçîì: • Åñëè (hq1 , xi → q2 ) ∈ ∆ è (hq10 , xi → hq20 , εi) ∈ ∆0 , x ∈ Σ, òî (h(q1 , q10 ), εi → (q2 , q20 )) ∈ ∆00 . • Åñëè (hq10 , εi → hq20 , x0 i ∈ ∆0 , x0 ∈ Σ0 , òî äëÿ âñåõ q ∈ Q âûïîëíÿåòñÿ (h(q, q10 ), x0 i → (q, q20 )) ∈ ∆00 . h(q1 , q10 ), u0 i `M h(q2 , q20 ), εi ↔ ∃u ∈ Σ∗ (hq1 , ui `A hq2 , εi ∧ hq10 , u, εi `T hq20 , ε, u0 i) Óòâåðæäåíèå 1. Äîêàçàòåëüñòâî. ⇒ Èíäóêöèÿ ïî ÷èñëó ïåðåõîäîâ. Áàçà î÷åâèäíà. Ïóñòü ïîñëåäíèé ïåðåõîä èìåë âèä h(q3, q30 ), εi → (q2, q20 ), òîãäà èìååì h(q1, q10 ), u0i `M h(q3 , q30 ), εi. Ïî ïðåäïîëîæåíèþ èíäóêöèè ïîëó÷àåì, ÷òî íàéä¼òñÿ ñëîâî v , òàêîå ÷òî hq1, vi `A hq3, εi è hq10 , v, εi `T hq30 , ε, u0i. Êðîìå òîãî, ïî ïîñòðîåíèþ èìååì, ÷òî íàéä¼òñÿ a ∈ Σ, òàêîå ÷òî (hq3, ai → q2) ∈ ∆ è (hq30 , ai → hq20 , εi) ∈ ∆0. Îòñþäà âûòåêàåò, ÷òî hq1, vai `A hq2, εi è hq10 , va, εi `T hq20 , ε, u0i, òî åñòü â êà÷åñòâå v ìîæíî âçÿòü ua. Ïóñòü òåïåðü ïîñëåäíèé ïåðåõîä èìåë âèä h(q3, q30 ), x0i → (q2, q20 ), òîãäà ïî ïîñòðîåíèþ èìååì q3 = q2 è h(q1, q10 ), v0i `M h(q2, q30 ), εi, ãäå v0x0 = u0, à òàêæå (hq30 , εi → hq20 , x0 i) ∈ ∆0 . Ïî ïðåäïîëîæåíèþ èíäóêöèè ïîëó÷àåì, ÷òî íàéä¼òñÿ ñëîâî v, òàêîå ÷òî hq1, vi `A hq2, εi è hq30 , v, εi `T hq20 , ε, v0i. Îòñþäà ñëåäóåò, ÷òî hq1 , vi `A hq2 , εi è hq10 , v, εi `T hq20 , ε, v 0 x0 i, òî åñòü ìîæíî âçÿòü u = v . ⇐ Èíäóêöèÿ ïî |u| + |v| è |u|. Áàçà èíäóêöèè î÷åâèäíà, íà øàãå èíäóêöèè íóæíî ðàññìîòðåòü ïîñëåäíèé ïåðåõîä â ïðåîáðàçîâàòåëå T , ïîñëå ÷åãî âîñïîëüçîâàòüñÿ ïðåäïîëîæåíèåì èíäóêöèè è îïðåäåëåíèåì àâòîìàòà M . Äåòàëè ïðåäîñòàâëÿþòñÿ ÷èòàòåëþ. 1 Òàêèì îáðàçîì, óñëîâèå ∃(q, q0) ∈ F ×F 0(h(q0, q00 ), u0i `M h(q, q0), εi) ðàâíîñèëüíî êîíúþíêöèè óñëîâèé ∃q ∈ F ((hq0, ui `A hq, εi) è ∃q0 ∈ F 0((hq00 , u, εi `A hq0, ε, u0i) äëÿ íåêîòîðîãî ñëîâà u. Îòñþäà î÷åâèäíûì îáðàçîì ñëåäóåò äîêàçûâàåìîå óòâåðæäåíèå. 2. Ïóñòü L êîíòåêñòíî-ñâîáîäíûé ÿçûê, çàäàâàåìûé êîíòåêñòíî-ñâîáîäíîé ãðàììàòèêîé G = hN, Σ, P, Si â íîðìàëüíîé ôîðìå Õîìñêîãî. Ïóñòü T = hQ, Σ, Σ0, ∆, q0 , F i êîíå÷íûé ïðåîáðàçîâàòåëü, ψ çàäàâàåìîå èì ïðåîáðàçîâàíèå, ïðè÷¼ì L0 = ψ(L). Äîêàæåì, ÷òî L0 ÿâëÿåòñÿ êîíòåêñòíî-ñâîáîäíûì ÿçûêîì. Ìîæíî ñ÷èòàòü, ÷òî äëÿ âñÿêîãî ïåðåõîäà (hq1, xi → hq2, x0i) ∈ ∆0 âûïîëíÿåòñÿ ñîîòíîøåíèå |x| + |x0| = 1. Ïîëîæèì G0 = hQ × N × Q ∪ S 0, Σ0, P 0, S 0i, ãäå P 0 çàäà¼òñÿ ñëåäóþùèì îïðåäåëåíèåì: • Äëÿ êàæäîãî ïðàâèëà (A → BC) ∈ P è ïðîèçâîëüíûõ ñîñòîÿíèé q1 , q2 , q3 ìíîæåñòâî P 0 ñîäåðæèò ïðàâèëî hq1, A, q2i → hq1, B, q3ihq3, C, q2i. • Äëÿ êàæäîãî ïðàâèëà (A → a), a ∈ Σ è êàæäîãî ïåðåõîäà hq1 , ai → hq2 , εi ìíîæåñòâî P 0 ñîäåðæèò ïðàâèëî hq1, A, q2i → ε. • Äëÿ êàæäîãî ïåðåõîäà hq1 , εi → hq2 , a0 i è ïðîèçâîëüíûõ íåòåðìèíàëà A è ñîñòîÿíèÿ q ìíîæåñòâî P 0 ñîäåðæèò ïðàâèëî hq, A, q2i → hq, A, q1ia0 • Äëÿ âñåõ çàâåðøàþùèõ ñîñòîÿíèé q ∈ F ìíîæåñòâî P 0 ñîäåðæèò ïðàâèëî S 0 → hq0 , S, qi. hq1 , A, q2 i `G u0 ⇔ ∃u((A `G u) ∧ hq1 , u, εi `T hq2 , ε, u0 i. Óòâåðæäåíèå 2. 0 Äîêàçàòåëüñòâî. ⇒ Èíäóêöèÿ ïî äëèíå âûâîäà. Áàçà èíäóêöèè ñëåäóåò èç îïðåäåëåíèÿ ãðàììàòèêè G0. Íà øàãå èíäóêöèè íóæíî ðàçîáðàòü ñàìîå âåðõíåå ïðàâèëî âûâîäà â äåðåâå âûâîäà u0 èç hq1, A, q2i. ⇐ Èíäóêöèÿ ïî äëèíå ñëîâ u è u0 . Áàçà èíäóêöèè äëÿ ñëó÷àÿ |u| = |u0 | = 0 ëåãêî ïðîâåðÿåòñÿ. Òåïåðü äîêàæåì øàã èíäóêöèè, ïóñòü âíà÷àëå |u| = 1, òîãäà ïðè |u0| = 0 óòâåðæäåíèå ñëåäóåò èç îïðåäåëåíèÿ ãðàììàòèêè G0. Ïóñòü |u| = 1, |u0 | > 0, òîãäà áåç îãðàíè÷åíèÿ îáùíîñòè ìîæíî ñ÷èòàòü, ÷òî u0 = v 0 a0 è hq1 , u, εi `T hq3 , ε, v 0 i, à òàêæå (hq3 , εi → hq2 , a0 i) ∈ ∆. Ïî ïðåäïîëîæåíèþ èíäóêöèè è ïîñòðîåíèþ ãðàììàòèêè G0 ïîëó÷àåì, ÷òî hq1, A, q3i `G v0 è hq1, A, q2i → hq1 , A, q3 ia0 , ÷òî ïðèâîäèò ê òðåáóåìîìó óòâåðæäåíèþ.  ñëó÷àå |u| > 2 èìååì, ÷òî íàéä¼òñÿ òàêîå ïðåäñòàâëåíèå u = u1u2, u0 = u01u02, ñîñòîÿíèå q3 è ïðàâèëî (A → BC) ∈ P , ÷òî B `G u1 , C `G u2 , hq1 , u1 , εi `T hq3 , ε, u01 i è hq3 , u2 , εi `T hq2 , ε, u02 i. Îòñþäà ñëåäóåò, ÷òî (hq1 , A, q2 i → hq1 , B, q3 ihq3 , C, q2 i) ∈ P 0 , à òàêæå hq1 , B, q3 i `G u01 è hq3 , C, q2 i `G u02 . Âûâîä hq1 , A, q2 i ` hq1 , B, q3 ihq3 , C, q2 i → v1 v2 äà¼ò òðåáóåìîå óòâåðæäåíèå. Òåïåðü óòâåðæäåíèå òåîðåìû ñëåäóåò èç ÷åòâ¼ðòîãî ïóíêòà îïðåäåëåíèÿ ãðàììàòèêè G0 è îïðåäåëåíèÿ êîíòåêñòíî-ñâîáîäíîé ãðàììàòèêè è ðàöèîíàëüíîãî ïðåîáðàçîâàíèÿ. Äàííàÿ òåîðåìà ìîæåò áûòü äîêàçàíà è ïðîùå ñ èñïîëüçîâàíèåì òåîðåìû Íèâà. 0 0 0 2 Îáîçíà÷èì ÷åðåç Bk ÿçûê ïðàâèëüíûõ ñêîáî÷íûõ ïîñëåäîâàòåëüíîñòåé c k òèïàìè ñêîáîê. Ôîðìàëüíî, ÿçûê Bk çàäà¼òñÿ ãðàììàòèêîé S → a1Sa1S | . . . | ak Sak S | ε. (Õîìñêèé-Ùþòöåíáåðæå, ñëàáàÿ ôîðìà) Âñÿêèé êîíòåêñòíî-ñâîáîäíûé ÿçûê ìîæíî ïîëó÷èòü ðàöèîíàëüíûì ïðåîáðàçîâàíèåì èç ÿçûêà Bk äëÿ íåêîòîðîãî íàòóðàëüíîãî k. Äîêàçàòåëüñòâî. Ïóñòü L êîíòåêñòíî-ñâîáîäíûé ÿçûê, ðàñïîçíàâàåìûé ÌÏ-àâòîìàòîì M = hQ, Σ, Γ, ∆, q0, F i. Ìîæíî ñ÷èòàòü, ÷òî äëÿ âñÿêîãî ïåðåõîäà (hq1, x, αi → hq2 , βi) ∈ ∆ âûïîëíÿåòñÿ óñëîâèå |α| + |β| = 1. Ïîëîæèì k = |Γ| è áóäåì ñ÷èòàòü, ÷òî Γ = {A1, . . . , Ak }. Îáîçíà÷èì Γ = {Ai | Ai ∈ Γ}. Ïîñòðîèì êîíå÷íûé ïðåîáðàçîâàòåëü T = hQ, Γ ∪ Γ, Σ, ∆0, q0, F i, ãäå ∆0 ñòðîèòñÿ ïî ñëåäóþùåìó àëãîðèòìó: • Åñëè (hq1 , x, Ai i → hq2 , εi) ∈ ∆, òî (hq1 , Ai i → hq2 , xi) ∈ ∆0 . • Åñëè (hq1 , x, εi → hq2 , Ai i) ∈ ∆, òî (hq1 , Ai i → hq2 , xi) ∈ ∆0 . Íåòðóäíî äîêàçàòü, ÷òî óñëîâèÿ hq1, u, εi `M hq2, ε, εi è ∃w! ∈ Bk (hq1, w, εi `T hq2 , ε, ui) ÿâëÿþòñÿ ðàâíîñèëüíûìè. Îòñþäà ïîëó÷àåì, ÷òî ST (Bk ) = L(M ), ÷òî è òðåáîâàëîñü. (Õîìñêèé-Ùþòöåíáåðæå, ñèëüíàÿ ôîðìà) Âñÿêèé êîíòåêñòíî-ñâîáîäíûé ∗ ÿçûê L ∈ Σ ïðåäñòàâèì â âèäå L = Bk ∩ R, ãäå R àâòîìàòíûé ÿçûê, äëÿ íåêîòîðîãî íàòóðàëüíîãî k. Äîêàçàòåëüñòâî. Ïóñòü φ1 : Σ∗ → Σ0∗, φ2 : Σ0∗ → Σ00∗ ãîìîìîðôèçìû, R1 ⊆ Σ∗, R2 ⊆ Σ0∗ àâòîìàòíûå ÿçûêè. Òîãäà íàéäóòñÿ àâòîìàòíûé ÿçûê R ⊆ Σ∗ è ãîìîìîðôèçì φ : Σ∗ → Σ00∗ , òàêèå ÷òî äëÿ âñÿêîãî ÿçûêà L ⊆ Σ∗ âûïîëíÿåòñÿ ñîîòíîøåíèå φ(L ∩ R) = φ2 (φ1 (L ∩ R1 ) ∩ R2 ). Äîêàçàòåëüñòâî. Äîñòàòî÷íî ïîëîæèòü φ = φ2 ◦ φ1, R = R1 ∩ φ−1 1 (R2 ). Ââåä¼ì ñêîáî÷íûé àëôàâèò A = {a1, a1, . . . , ak , ak }.  ñèëó òåîðåìû Íèâà è ñëàáîé ôîðìû òåîðåìû Õîìñêîãî-Øþòöåíáåðæå íàéäóòñÿ àëôàâèò Γ, àâòîìàòíûé ÿçûê R0 ⊆ Γ∗ è íåóäëèíÿþùèå ãîìîìîðôèçìû ψ1 : Γ∗ → A∗ , ψ2 : Γ∗ → Σ∗ , òàêèå ÷òî L = ψ2 (ψ1−1 (Bk ) ∩ R0 ). Ïî äîêàçàííîé ëåììå äîñòàòî÷íî ïîäîáðàòü òàêîå íàòóðàëüíîå ÷èñëî l, àâòîìàòíûé ÿçûê R00 è ãîìîìîðôèçì ψ, ÷òî ψ1−1(Bk ) = ψ(Bl ) ∩ R00. Ïóñòü Γ = {a11, . . . , a1m , b11, . . . , b1n , . . . , ak1, . . . , akm , bk1, . . . , bkn , c1, . . . , cr } è ψ1(aij ) = ai , ψ1 (bij ) = ai , ψ1 (cj ) = ε. Ïîëîæèì A0 = {aijk , aijk | i 6 k, j 6 mi , k 6 ni } ∪ {di , di | i 6 r}, ψ(aijk = aij , ψ(ai jk) = bi k, ψ(di ) = c1 , ψ(di ) = ε. Ïóñòü ÿçûê R ñîñòîèò èç âñåõ ñëîâ â àëôàâèòå A0, ñîäåðæàùèõ áóêâû di è di òîëüêî â ïîäñëîâàõ âèäà didi, î÷åâèäíî, åãî ìîæíî çàäàòü êîíå÷íûì àâòîìàòîì. Îáîçíà÷èì ÷åðåç Bl ÿçûê ñêîáî÷íûõ ïîñëåäîâàòåëüíîñòåé íàä àëôàâèòîì A0 è äîêàæåì, ÷òî ψ(Bl ∪ R) = ψ1−1(Bk ). Âêëþ÷åíèå ñëåâà íàïðàâî î÷åâèäíî ñëåäóåò èç òîãî, ÷òî ïðè êîìïîçèöèè ψ1 ◦ φ ñêîáêè îäíîãî è òîãî æå òèïà ïåðåõîäÿò ëèáî â Òåîðåìà 2 . Òåîðåìà 3 . Ëåììà 1. 1 1 k 3 k ñêîáêè îäíîãî è òîãî æå òèïà, ëèáî îäíîâðåìåííî ïåðåõîäÿò â ïóñòîå ñëîâî. Îáðàòíîå âêëþ÷åíèå ïðîâåðÿåòñÿ íåïîñðåäñòâåííî. 4