Д. М. Ицыксон. Вводный курс. Лекция 1
Upcoming SlideShare
Loading in...5
×
 

Д. М. Ицыксон. Вводный курс. Лекция 1

on

  • 5,620 views

 

Statistics

Views

Total Views
5,620
Views on SlideShare
606
Embed Views
5,014

Actions

Likes
0
Downloads
3
Comments
0

4 Embeds 5,014

http://logic.pdmi.ras.ru 2639
http://compsciclub.ru 1954
http://www.compsciclub.ru 420
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Д. М. Ицыксон. Вводный курс. Лекция 1 Д. М. Ицыксон. Вводный курс. Лекция 1 Presentation Transcript

    • ËÈÊÁÅÇ Ëåêöèÿ 1: Òåîðåìà î ðåêóððåíòíûõ îöåíêàõ. Ìàøèíû Òüþðèíãà. Îñíîâû òåîðèè âû÷èñëèìîñòè. Îñíîâû òåîðèè ñëîæíîñòè âû÷èñëåíèé. Äìèòðèé Èöûêñîí ÏÎÌÈ ÐÀÍ 23 ñåíòÿáðÿ 2007 1 / 41
    • Ïëàí • Òåîðåìà î ðåêóððåíòíûõ îöåíêàõ • Ìàøèíû Òüþðèíãà • Ýëåìåíòû òåîðèè âû÷èñëèìîñòè: ðàçðåøèìûå è ïåðå÷èñëèìûå ÿçûêè • Ýëåìåíòû òåîðèè ñëîæíîñòè: êëàññû P, LOGSPACE, NP. NP-ïîëíîòà. 2 / 41
    • Ëèòåðàòóðà 1 Í. Ê. Âåðåùàãèí, À. Øåíü. Âû÷èñëèìûå ôóíêöèè. 2 À.Êèòàåâ, À.Øåíü, Ì.Âÿëûé. Êëàññè÷åñêèå è êâàíòîâûå âû÷èñëåíèÿ. 3 Ò. Êîðìåí, ×. Ëåéçåðñîí, Ð. Ðèâåñò. Àëãîðèòìû. Ïîñòðîåíèå è àíàëèç. 4 C.H. Papadimitriou. Computational complexity. 3 / 41
    • Âîïðîñ Âîïðîñ Âñå çíàþò, ÷òî • Ïîëèíîìèàëüíûå àëãîðèòìû ýôôåêòèâíû; • Íåèçâåñòíî ýôôåêòèâíîãî àëãîðèòìà ðàçëîæåíèÿ íàòóðàëüíîãî ÷èñëà íà ìíîæèòåëè. Ðàññìîòðèì ñëåäóþùèé àëãîðèòì ðàçëîæåíèÿ ÷èñëà n íà ìíîæèòåëè: √ • Ïåðåáèðàåì âñå 2 ≤ k ≤ n; • Åñëè n äåëèòñÿ íà k , òî n = k · k . n √ Ñëîæíîñòü àëãîðèòìà íå ïðåâîñõîäèò n · n ≤ n2 , ò.å. ïîëèíîìèàëüíà îò n.  ÷åì ïðîáëåìà? 4 / 41
    • Îòâåò Îòâåò Ñëîæíîñòü àëãîðèòìà èçìåðÿåòñÿ êàê ôóíêöèÿ îò äëèíû çàïèñè âõîäíûõ äàííûõ. ×èñëî n çàïèñûâàåòñÿ l = log10 n çíàêàìè. n2 = 102 log10 n = 102l  ýêñïîíåíòà îò l . Îïðåäåëåíèå Ñëîæíîñòü àëãîðèòìà â õóäøåì ñëó÷àå, êàê ôóíêöèÿ îò äëèíû âõîäà n  ýòî ìàêñèìóì âðåìåíè ðàáîòû ïî âñåì âõîäàì äëèíû n. Ñëîæíîñòü àëãîðèòìîâ îáû÷íî èçìåðÿþò àñèìïòîòè÷åñêè: • Îïåðàöèè èñïîëíÿþòñÿ ðàçëè÷íîå âðåìÿ è òî÷íîé êîíñòàíòû íèêòî íå çíàåò Õîðîøèé ëè àëãîðèòì, åñëè åãî ñëîæíîñòü n + C ? • Äà, îí ëèíåéíûé! • À åñëè C îïåðàöèé âûïîëíÿåòñÿ 1000 ëåò? 5 / 41
    • O , o , Ω, Θ Îáîçíà÷åíèÿ Ôóíêöèè f , g : N → R+ • f (n) = O(g (n)), åñëè ∃c > 0∃n0 ∀n > n0 , f (n) < cg (n); f (n) • f (n) = o(g (n)), åñëè lim = 0; n→∞ g (n) • f (n) = Ω(g (n)), åñëè ∃c > 0∃n0 ∀n > n0 , f (n) > cg (n); • f (n) = Θ(g (n)), åñëè ∃c1 , c2 > 0∃n0 ∀n > n0 , c1 g (n) < f (n) < c2 g (n); f (n) = O(g (n)) f (n) = Θ(g (n)) ⇐⇒ g (n) = O(f (n)) 6 / 41
    • Ïîëåçíî çíàòü • f (n), g (n)  ìíîãî÷ëåíû, deg f = deg g =⇒ f = Θ(g ); • f (n), g (n)  ìíîãî÷ëåíû, deg f < deg g =⇒ f = o(g ); • log2 n = o(nk ); • log2 n = Θ(loga n) = Θ( êîëè÷åñòâî öèôð â ÷èñëå n); • nk = o(2n ); • nk = o(nlog n ). 7 / 41
    • Ïðèìåð: ñîðòèðîâêà ôîí-Íåéìàíà Àëãîðèòì 1 Îòñîðòèðîâàòü ïåðâóþ ïîëîâèíó ìàññèâà; 2 Îòñîðòèðîâàòü âòîðóþ ïîëîâèíó ìàññèâà; 3 Ðåçóëüòàò ñëèòü. Àíàëèç ñëîæíîñòè • Ñëèÿíèå óïîðÿäî÷åííûõ ìàññèâîâ Θ(n); • Ðåêóððåíòíîå ñîîòíîøåíèå: T (n) = 2T ( n 2 ) + Θ(n). 8 / 41
    • Òåîðåìà î ðåêóððåíòíûõ îöåíêàõ Òåîðåìà   d, n=1 T (n) = n  aT ( ) + Θ(nα ), n > 1 b 1 Åñëè α < logb a, òî T (n) = Θ(nlogb a ); 2 Åñëè α = logb a, òî T (n) = Θ(nlogb a log n); 3 Åñëè α > logb a, òî T (n) = Θ(nα ). Ïðèìåðû 1 T (n) = 9T ( n 3 ) + n: log3 9 = 2, T (n) = Θ(n2 ); 2 T (n) = 2T ( n 2 ) + cn: log2 2 = 1, T (n) = Θ(n log n); 3 3 3 T (n) = 2T ( n 2 ) + cn 2 : log2 2 = 1, T (n) = Θ(n 2 ). 9 / 41
    • Èäåÿ äîêàçàòåëüñòâà Äëÿ ïðîñòîòû ñ÷èòàåì, ÷òî n = b k , T (n) = aT ( b ) + cnα . n n α = a(aT ( n ) + c( n )α ) + cnα T (n) = aT ( b ) + cn b2 b = c(n α + a nα + a2 nα + · · · + ak nα ) b α b 2α b kα = cnα (1 + ( ba ) + ( ba )2 + · · · + ( ba )k ) α α α 1 α < logb a ⇐⇒ a > b α ⇐⇒ ba > 1. α T (n) = Θ(nα ( ba )k ) = Θ(ak ) = Θ(alogb n ) = Θ(alogb a·loga n ) = α Θ(nlogb a ); 2 α = logb a ⇐⇒ a = b α ⇐⇒ ba = 1. α T (n) = Θ(nα k) = Θ(nα logb n) = Θ(nlogb a log n); 3 α > logb a ⇐⇒ a < b α ⇐⇒ a bα < 1. T (n) = Θ(nα ). 10 / 41
    • Ìîäåëè âû÷èñëåíèé Çà÷åì îíè íóæíû • Ìàòåìàòè÷åñêîå îïðåäåëåíèå ïîíÿòèÿ àëãîðèòì; • Ñòðîãîå îïðåäåëåíèå ñëîæíîñòè àëãîðèòìà; • Âîçìîæíîñòü ÷òî-òî äîêàçûâàòü ïðî âñå àëãîðèòìû. Äîêàçûâàòü íåâîçìîæíîñòü àëãîðèòìà. Êàêèå Âû çíàåòå ìîäåëè âû÷èñëåíèÿ? ß çíàþ: λ-èñ÷èñëåíèå, ìàøèíà Òüþðèíãà, ÐÀÌ-ìàøèíà, ìàøèíà Ïîñòà, íîðìàëüíûå àëãîðèòìû Ìàðêîâà... Ïî÷òè ëþáîé ÿçûê ïðîãðàììèðîâàíèÿ ìîæåò âûñòóïàòü â ðîëè ìîäåëè âû÷èñëåíèÿ, åñëè åñòü âîçìîæíîñòü èñïîëüçîâàòü íåîãðàíè÷åííîå êîëè÷åñòâî ïàìÿòè. 11 / 41
    • Îñíîâíûå îïðåäåëåíèÿ Àëôàâèò Àëôàâèò  ýòî íåêîòîðîå êîíå÷íîå ìíîæåñòâî ñèìâîëîâ. Ñòàíäàðòíîå îáîçíà÷åíèå: Σ. Ñëîâà â àëôàâèòå Ñëîâî  ýòî êîíå÷íàÿ ïîñëåäîâàòåëüíîñòü ñèìâîëîâ. Åñëè Σ  àëôàâèò, òî Σ∗  ìíîæåñòâî âñåõ ñëîâ â àëôàâèòå. Íàïðèìåð: Σ = {a, b}, òî Σ∗ = {λ, a, b, aa, ab, ba, bb, aaa, . . . }, ãäå λ  ïóñòîå ñëîâî. 12 / 41
    • ßçûêè è ôóíêöèè ßçûê ßçûêîì íàä àëôàâèòîì Σ íàçûâàåòñÿ ïîäìíîæåñòâî Σ∗ . Ïðèìåðû ÿçûêîâ ßçûê ïðîñòûõ ÷èñåë, ÿçûê ÷åòíûõ ÷èñåë, ÿçûê äâóäîëüíûõ ãðàôîâ, ÿçûê âûïîëíèìûõ ôîðìóë â ÊÍÔ è ò.ä. Ñîãëàøåíèå Ñ÷èòàåì, ÷òî ëþáîé àëãîðèòì ëèáî ïðîâåðÿåò ïðèíàäëåæíîñòü âõîäíîãî ñëîâà íåêîòîðîìó ÿçûêó, ëèáî âû÷èñëÿåò çíà÷åíèå ôóíêöèè Σ∗ → Σ∗ . 13 / 41
    • Ìàøèíà Òüþðèíãà • Áåñêîíå÷íàÿ â îäíó ñòîðîíó ëåíòà, ðàçäåëåííàÿ íà ÿ÷åéêè.  ñàìîé ëåâîé ÿ÷åéêå íàïèñàí ñèìâîë . • Q  êîíå÷íîå ìíîæåñòâî ñîñòîÿíèé. q0 ∈ Q  íà÷àëüíîå ñîñòîÿíèå. qf ∈ Q  êîíå÷íîå ñîñòîÿíèå. • Σ  àëôàâèò ñèìâîëîâ, êîòîðûå ìîãóò áûòü çàïèñàíû íà ëåíòå. , ”_” ∈ Σ. • Ãîëîâêà ìàøèíû óêàçûâàåò íà îäíó èç ÿ÷ååê ëåíòû • Ïðàâèëî ïåðåõîäà: δ : Σ × Q → Σ × Q × {→, ←, •} • Ñîãëàñíî ïðàâèëó ïåðåõîäà ìàøèíà ïî ñèìâîëó, íà êîòîðûé óêàçûâàåò ãîëîâêà, è ïî òåêóùåìó ñîñòîÿíèþ, ïèøåò íà ýòî ìåñòî íîâûé ñèìâîë, ïåðåõîäèò â íîâîå ñîñòîÿíèå è, âîçìîæíî, ñäâèãàåò ãîëîâêó íà 1 ñèìâîë âëåâî èëè âïðàâî. • Íà÷èíàåò ðàáîòó â ñîñòîÿíèè q0 , ãîëîâêà óêàçûâàåò íà ïåðâûé ñèìâîë. Çàêàí÷èâàåò â ñîñòîÿíèè qf . 14 / 41
    • Ïðèìåð Ïðèáàâëåíèå åäèíè÷êè â 2-îé ñèñòåìå ñ÷èñëåíèÿ Äëÿ ïðîñòîòû ñ÷èòàåì, ÷òî ÷èñëî çàïèñàíî çàäîì íàïåðåä. • (q0 , 0) → (qf , 1, •); • (q0 , 1) → (q0 , 0, →); • (q0 , _) → (qf , 1, •). 15 / 41
    • Ïðèìåð Ïðèáàâëåíèå åäèíè÷êè â 2-îé ñèñòåìå ñ÷èñëåíèÿ Òåïåðü ÷èñëî çàïèñàíî íîðìàëüíî • (q0 , 0) → (q0 , 0, →); • (q0 , 1) → (q0 , 1, →); • (q0 , _) → (q1 , _, ←); • (q1 , 0) → (qf , 1, •); • (q1 , 1) → (q1 , 0, ←); • (q1 , ) → (q2 , , →); • (q2 , 0) → (q3 , 1, →); • (q3 , 0) → (q3 , 0, →); • (q3 , _) → (qf , 0, •). 16 / 41
    • Ìàøèíà Òüþðèíãà Âõîä ìàøèíû Òüþðèíãà  òî, ÷òî çàïèñàíî íà ëåíòå. Çà âõîäîì ñëåäóåò áåñêîíå÷íîå ÷èñëî ïðîáåëîâ. Âûõîä ìàøèíû Òüþðèíãà  òî, ÷òî çàïèñàíî íà ëåíòå ïîñëå òîãî, êàê ìàøèíà ïðèøëà â êîíå÷íîå ñîñòîÿíèå. Åñëè ìàøèíà Òüþðèíãà ïðîâåðÿåò ïðèíàäëåæíîñòü ÿçûêó, òî óäîáíî èìåòü äâà êîíå÷íûõ ñîñòîÿíèÿ: qyes è qno . Ìàøèíà Òüþðèíãà ìîæåò: • çàêîí÷èòü ðàáîòó; • ðàáîòàòü áåñêîíå÷íî. 17 / 41
    • Ñëîæíîñòíûå ïàðàìåòðû Âðåìÿ • Âðåìåíåì ðàáîòû ìàøèíû Òüþðèíãà íà âõîäå x íàçûâàåì êîëè÷åñòâî øàãîâ, êîòîðîå ìàøèíà äåëàåò, ÷òîáû ïðèéòè â êîíå÷íîå ñîñòîÿíèå. • Âðåìåííîé ñëîæíîñòüþ ìàøèíû Òüþðèíãà íàçûâàåì ìàêñèìóì ïî âñåì âõîäàì äëèíû n âðåìåíè ðàáîòû ìàøèíû íà ýòèõ âõîäàõ. Ïàìÿòü • Ñëîæíîñòüþ ïî ïàìÿòè ðàáîòû ìàøèíû Òüþðèíãà íà âõîäå x íàçûâàåì êîëè÷åñòâî ÿ÷ååê, â êîòîðûõ ïîáûâàëà ãîëîâêà ìàøèíû. • Åìêîñòíîé ñëîæíîñòüþ ìàøèíû Òüþðèíãà íàçûâàåì ìàêñèìóì ïî âñåì âõîäàì äëèíû n ñëîæíîñòè ïî ïàìÿòè ðàáîòû ìàøèíû íà ýòèõ âõîäàõ. 18 / 41
    • Ìíîãîëåíòî÷íàÿ ìàøèíà Òüþðèíãà Åñòü k ëåíò, ãîëîâêà åñòü íà êàæäîé ëåíòå. Ïðàâèëî ïåðåõîäà: δ : Σk × Q → Σk × Q × {→, ←, •}k Ôàêò Ïî ëþáîé ìíîãîëåíòî÷íîé ìàøèíå Òüþðèíãà ìîæíî ïîñòðîèòü îäíîëåíòî÷íóþ ìàøèíó Òüþðèíãà, âû÷èñëÿþùóþ òó æå ôóíêöèþ. Ïðè÷åì ñëîæíîñòíûå õàðàêòåðèñòèêè ýòîé ìàøèíû áóäóò ëèøü â ïîëèíîì ðàç õóæå. Çàìå÷àíèå Èíîãäà óäîáíî ñ÷èòàòü, ÷òî ìàøèíà ñíàáæåíà ñïåöèàëüíîé âõîäíîé ëåíòîé, äîñòóïíîé òîëüêî äëÿ ÷òåíèÿ è âûõîäíîé ëåíòîé, äîñòóïíîé äëÿ çàïèñè, íî áåç èñïðàâëåíèé. 19 / 41
    • Íåäåòåðìèíèðîâàííàÿ ìàøèíà Òüþðèíãà • Ïðàâèëà ïåðåõîäà íåîäíîçíà÷íû. Âîçìîæíî, ÷òî ñóùåñòâóåò íåñêîëüêî ïðàâèë äëÿ îäíîé ïàðû (ñèìâîë, ñîñòîÿíèå); • ÍÌÒ ïðèíèìàåò ñëîâî x , åñëè ñóùåñòâóåò ïîñëåäîâàòåëüíîñòü ëåãàëüíûõ øàãîâ, ïðèâîäÿùèõ â ñîñòîÿíèå qyes ; • Îïðåäåëåíèå íå ñèììåòðè÷íî îòíîñèòåëüíî îòâåòîâ yes è no ; • Ìîæíî ñ÷èòàòü, ÷òî ìàøèíà ñíàáæåíà äîïîëíèòåëüíîé ëåíòîé, äîñòóïíîé òîëüêî äëÿ ÷òåíèÿ ñëåâà íàïðàâî. Íà ýòîé ëåíòå çàïèñàíà ïîäñêàçêà (êàêîå èç ïðàâèë ñåé÷àñ ïðèìåíÿòü). Ìàøèíà ïðèíèìàåò x , åñëè ñóùåñòâóåò ïîäñêàçêà, ñ êîòîðîé îíà ïîïàäåò â ñîñòîÿíèå qyes ; • Ìîæíî äîêàçàòü, ÷òî åñëè íåêîòîðàÿ ÍÌÒ ïðîâåðÿåò ïðèíàäëåæíîñòü ÿçûêó L, òî ñóùåñòâóåò è äåòåðìèíèðîâàííàÿ ÌÒ, ïðîâåðÿþùàÿ ïðèíàäëåæíîñòü ÿçûêó L. 20 / 41
    • Ñëîæíîñòíûå ïàðàìåòðû ÍÌÒ Âðåìÿ è ïàìÿòü ÍÌÒ ñ÷èòàþòñÿ, êàê ìàêñèìóì ïî âñåì âàðèàíòàì ïðèìåíåíèÿ ïðàâèëà äî ïðèõîäà â êîíå÷íîå ñîñòîÿíèå. Åñëè ìàøèíà íå îñòàíàâëèâàåòñÿ ïðè êàêîì-òî âûáîðå ïðàâèë, òî âðåìÿ ðàáîòû ñ÷èòàåòñÿ áåñêîíå÷íûì. 21 / 41
    • Òåçèñ ×åð÷à-Òüþðèíãà Ëþáîé àëãîðèòì ìîæíî ðåàëèçîâàòü â âèäå ìàøèíû Òüþðèíãà. 22 / 41
    • Ýëåìåíòû òåîðèè âû÷èñëèìîñòè • Ìàøèíó Òüþðèíãà ìîæíî çàïèñàòü: àëôàâèò, ñîñòîÿíèÿ, ïðàâèëà... Êàæäîé ÌÒ ñîîòâåòñòâóåò ñòðî÷êà â íåêîòîðîì àëôàâèòå. • Ìàøèí Òüþðèíãà ñ÷åòíîå ÷èñëî. • Óíèâåðñàëüíàÿ ìàøèíà Òüþðèíãà. Ñóùåñòâóåò òàêàÿ ìàøèíà Òüþðèíãà U , êîòîðàÿ ïî çàïèñè ìàøèíû Òüþðèíãà M è âõîäó x ìîäåëèðóåò ïîâåäåíèå ìàøèíû M íà âõîäå x . Ïðè ýòîì ñëîæíîñòíûå ïàðàìåòðû ìàøèíû U íå áîëåå, ÷åì â ïîëèíîì îò çàïèñè M è |x| õóæå. 23 / 41
    • Ðàçðåøèìûå è ïåðå÷èñëèìûå ÿçûêè Σ  àëôàâèò, L ⊂ Σ∗  ÿçûê. ßçûê L íàçûâàåòñÿ àëãîðèòìè÷åñêè ðàçðåøèìûì, åñëè ñóùåñòâóåò òàêàÿ ìàøèíà Òüþðèíãà M , ÷òî x ∈ L ⇐⇒ M(x) îñòàíàâëèâàåòñÿ â ñîñòîÿíèè qyes x ∈ L ⇐⇒ M(x) îñòàíàâëèâàåòñÿ â ñîñòîÿíèè qno ßçûê L íàçûâàåòñÿ ïåðå÷èñëèìûì, åñëè ñóùåñòâóåò òàêàÿ ìàøèíà Òüþðèíãà M , ÷òî x ∈ L ⇐⇒ M(x) îñòàíàâëèâàåòñÿ â ñîñòîÿíèè qyes x ∈ L ⇐⇒ M(x) íå îñòàíàâëèâàåòñÿ 24 / 41
    • Ïðîñòåéøèå ñâîéñòâà Ëåììà 1 Ëþáîé ðàçðåøèìûé ÿçûê ÿâëÿåòñÿ ïåðå÷èñëèìûì. Äîñòàòî÷íî ñîñòîÿíèå qno çàìåíèòü íà q∞ è äîáàâèòü ïðàâèëà (q∞ , ∗) → (q∞ , ∗, →) Ëåììà 2 ßçûê L  ïåðå÷èñëèì ⇐⇒ ñóùåñòâóåò ÌÒ M , êîòîðàÿ, ðàáîòàÿ íà ïóñòîì âõîäå, ðàíî èëè ïîçäíî íàïå÷àòàåò ëþáîé ýëåìåíò ÿçûêà L áåç ïîâòîðåíèé. (Ìàøèíà M ìîæåò ðàáîòàòü áåñêîíå÷íî äîëãî). ⇐ Ìàøèíà M áóäåò æäàòü, ïîêà M íàïå÷àòàåò ñëîâî x . ⇒ M ìîäåëèðóåò M : 1 øàã íà ïåðâîì âõîäå, 2 øàãà íà ïåðâîì, 2 øàãà íà âòîðîì, 3 øàãà íà ïåðâîì, âòîðîì, òðåòüåì, 4 øàãà... 25 / 41
    • Âîïðîñû Ñóùåñòâóþò ëè íåïåðå÷èñëèìûå ÿçûêè? Ñóùåñòâóþò, òàê êàê ìàøèí Òüþðèíãà ñ÷åòíî, à ÿçûêîâ êîíòèíóóì. Íåêîíñòðóêòèâíîå äîêàçàòåëüñòâî Ñóùåñòâóþò ëè àëãîðèòìè÷åñêè íåðàçðåøèìûå, íî ïåðå÷èñëèìûå ÿçûêè? Äà. 26 / 41
    • Ïðèìåð íåïåðå÷èñëèìîãî ÿçûêà • Âñå çàïèñè ìàøèí Òüþðèíãà ìîæíî ïåðåíóìåðîâàòü ñ ïîìîùüþ àëãîðèòìà. • Çàïèñü < n > îáîçíà÷àåò ÌÒ ñ íîìåðîì n. • Ðàññìîòðèì ÿçûê L = {n| < n > íå îñòàíàâëèâàåòñÿ íà âõîäå n} • Ïóñòü L ïåðå÷èñëèì àëãîðèòìîì ñ íîìåðîì k . • Åñëè k ∈ L, òî < k > íå îñòàíàâëèâàåòñÿ íà k =⇒ < k > íå ïåðå÷èñëÿåò L. • Åñëè k ∈ L, òî < k > îñòàíàâëèâàåòñÿ íà k =⇒ < k > íå ïåðå÷èñëÿåò L. • Ïðîòèâîðå÷èå. Çíà÷èò L íå ïåðå÷èñëÿåòñÿ íèêàêèì àëãîðèòìîì. • L  àëãîðèòìè÷åñêè íåðàçðåøèì. 27 / 41
    • Ïðèìåð ïåðå÷èñëèìîãî, íî íå ðàçðåøèìîãî ÿçûêà • L = {n| < n > îñòàíàâëèâàåòñÿ íà âõîäå n}; • L íåðàçðåøèì, òàê êàê èíà÷å è ÿçûê L áûë áû ðàçðåøèìûì; • L ïåðå÷èñëèì: ìîäåëèðóåì ìàøèíó < n > íà âõîäå n è æäåì, ïîêà îíà îñòàíîâèòñÿ. 28 / 41
    • Êîììåíòàðèé • Çàäà÷à îñòàíîâêè ÌÒ: ïî ÌÒ è åå âõîäó îïðåäåëèòü, îñòàíîâèòñÿ îíà èëè íåò. Ýòà çàäà÷à àëãîðèòìè÷åñêè íåðàçðåøèìà; • Ìåòîä äîêàçàòåëüñòâà: äèàãîíàëèçàöèÿ; • Âñå ðåçóëüòàòû îá àëãîðèòìè÷åñêîé íåðàçðåøèìîñòè èñïîëüçóþò íåðàçðåøèìîñòü çàäà÷è îñòàíîâêè ÌÒ. Âåëèêàÿ òåîðåìà Ôåðìà Åñëè áû çàäà÷à îñòàíîâêè áûëà áû ðàçðåøèìà, òî ìîæíî áûëî áû äîêàçàòü Âåëèêóþ òåîðåìó Ôåðìà òàê: 1 Ìàøèíà M íà ïóñòîì âõîäå ïåðåáèðàåò âñå x, y , z, n ∈ N, n > 2 è îñòàíàâëèâàåòñÿ, åñëè x n + y n = z n . 2 Óçíàåì, îñòàíàâëèâàåòñÿ ëè ìàøèíà M íà ïóñòîì âõîäå. 29 / 41
    • Ýëåìåíòû òåîðèè ñëîæíîñòè âû÷èñëåíèé Êëàññ P ßçûê L ïðèíàäëåæèò êëàññó P, åñëè äëÿ íåãî ñóùåñòâóåò àëãîðèòì, âðåìÿ ðàáîòû êîòîðîãî ïîëèíîìèàëüíî îò äëèíû âõîäíûõ äàííûõ, êîòîðûé ðàñïîçíàåò ýòîò ÿçûê. P  êëàññ ôóíêöèé, âû÷èñëèìûõ çà ïîëèíîìèàëüíîå âðåìÿ Ïðèíÿòî ñ÷èòàòü, ÷òî çàäà÷è, äëÿ êîòîðûõ ñóùåñòâóåò ïîëèíîìèàëüíûé àëãîðèòì, ðåàëüíî ðåøàòü íà ïðàêòèêå. Õîòÿ ýòî íå âñåãäà òàê... 30 / 41
    • LogSpace ⊆ P • LogSpace  ýòî êëàññ ÿçûêîâ, êîòîðûå ðàñïîçíàþòñÿ ìàøèíàìè, êîòîðûå èñïîëüçóþò O(log n) ïàìÿòè. (Âõîä è âûõîä íå ñ÷èòàþòñÿ, ìîæíî ñ÷èòàòü, ÷òî äëÿ íèõ åñòü îòäåëüíàÿ ëåíòà). • Äîêàæåì, ÷òî LogSpace ⊆ P. • Êîíôèãóðàöèÿ ÌÒ: ñîäåðæèìîå ëåíò, òåêóùåå ñîñòîÿíèå, ïîëîæåíèå ãîëîâêè. • Ó LogSpace-ìàøèíû ñîñòîÿíèé |Q| = O(1); • ïîëîæåíèé ãîëîâêè O(n2 ); • ñîäåðæèìîãî ëåíò: |Σ|c log n = O(nc ); • Èòîãî: O(nc+2 ) êîíôèãóðàöèè. • Åñëè äâå êîíôèãóðàöèè ïîâòîðèëèñü, òî ìàøèíà íå çàêîí÷èò ðàáîòó. • Âûâîä: âðåìÿ ðàáîòû òàêîé ìàøèíû ïîëèíîìèàëüíî. 31 / 41
    • Êëàññû NP è NP • R  áèíàðíîå îòíîøåíèå, ò.å. R ⊆ Σ∗ × Σ∗ ; • R íàçûâàåòñÿ ïîëèíîìèàëüíî îãðàíè÷åííûì, åñëè ∃k ∀x, y , (x, y ) ∈ R =⇒ |y | < |x|k ; • R íàçûâàåòñÿ ïîëèíîìèàëüíî ïðîâåðÿåìûì, åñëè ñóùåñòâóåò ïîëèíîìèàëüíûé àëãîðèòì, êîòîðûé ïî (x, y ) ïðîâåðÿåò, âåðíî ëè, ÷òî (x, y ) ∈ R . • Çàäà÷à ïîèñêà, àññîöèèðîâàííàÿ ñ R : ïî x íàéòè y òàê, ÷òîáû (x, y ) ∈ R . • ßçûê, àññîöèèðîâàííûé ñ R : L = {x|∃y : (x, y ) ∈ R}. • NP  êëàññ çàäà÷ ïîèñêà, àññîöèèðîâàííûõ c ïîëèíîìèàëüíî ïðîâåðÿåìûìè è ïîëèíîìèàëüíî îãðàíè÷åííûìè îòíîøåíèÿìè. • NP  êëàññ ÿçûêîâ. 32 / 41
    • Ïðèìåðû ïîëèíîìèàëüíî îãðàíè÷åííûõ è ïðîâåðÿìûõ îòíîøåíèé 1 RSAT : ïàðû (ôîðìóëà â ÊÍÔ, åå âûïîëíÿþùèé íàáîð). ((x ∨ y ) ∧ (¬x ∨ ¬y ), [x → 1, y → 0]) ∈ RSAT 2 RHAM : ïàðû (ãðàô, åãî Ãàìèëüòîíîâ ïóòü); 3 RCLIQUE : ïàðû (ãðàô + ÷èñëî k , åãî êëèêà ðàçìåðà k ); 4 R3−COLORIG : ïàðû (ãðàô, ðàñêðàñêà åãî âåðøèí â 3 öâåòà ïðàâèëüíûì îáðàçîì); 33 / 41
    • P vs NP Ïðåäëîæåíèå: P ⊆ NP Åñëè L ∈ P, ìîæíî ðàññìîòðåòü R = {(x, λ), x ∈ L}, ãäå λ  ïóñòîå ñëîâî. Çàìå÷àíèå: ÿçûê L ∈ NP ìîæåò áûòü ðàñïîçíàí ïîëèíîìèàëüíîé ÍÌÒ Âòîðóþ ÷àñòü îòíîøåíèÿ R ìîæíî èñïîëüçîâàòü, êàê ïîäñêàçêó ê ÍÌÒ. Ïîëèíîìèàëüíîñòü ñëåäóåò èç ïîëèíîìèàëüíîé ïðîâåðÿåìîñòè R . Îòêðûòûé âîïðîñ: ÿâëÿåòñÿ ëè âêëþ÷åíèå P ⊆ NP ñòðîãèì 34 / 41
    • Ñâåäåíèÿ Ñâåäåíèå ïî Ëåâèíó Çàäà÷à ïîèñêà R1 ñâîäèòñÿ ê çàäà÷å ïîèñêà R2 , åñëè ñóùåñòâóþò òàêèå ïîëèíîìèàëüíûå àëãîðèòìû f è g , ÷òî • ∃yR1 (x, y ) ⇐⇒ ∃zR2 (f (x), z); • R1 (x, g (x, y )) ⇐⇒ R2 (f (x), y ). Ñâåäåíèå ïî Êóêó Çàäà÷à ïîèñêà R1 ñâîäèòñÿ ê çàäà÷å ïîèñêà R2 , åñëè çàäà÷ó ïîèñêà R1 ìîæíî ðåøèòü çà ïîëèíîìèàëüíîå âðåìÿ, ïðè óñëîâèè, ÷òî çàäà÷ó R2 ìû óìååì ðåøàòü çà 1 øàã. Ëåììà Åñëè R1 ñâîäèòñÿ ê R2 , òî åñëè R2 ìîæíî ðåøèòü çà ïîëèíîìèàëüíîå âðåìÿ, òî è R1 ìîæíî ðåøèòü çà ïîëèíîìèàëüíîå âðåìÿ. 35 / 41
    • NP-òðóäíûå çàäà÷è Îïðåäåëåíèå Çàäà÷à ïîèñêà R íàçûâàåòñÿ NP-òðóäíîé, åñëè âñå çàäà÷è ïîèñêà èç NP ñâîäÿòñÿ ê íåé. Çàäà÷à ïîèñêà R íàçûâàåòñÿ NP-ïîëíîé, åñëè îíà NP-òðóäíà è ïðèíàäëåæèò NP. 36 / 41
    • Çàäà÷à îá îãðàíè÷åííîé îñòàíîâêå Îïðåäåëèì îòíîøåíèå RBH : (< M, x, 11 . . . 1 >, y ) ∈ RBH ⇐⇒ ÌÒ M íà âõîäå (x, y ) t øòóê îñòàíàâëèâàåòñÿ çà íå áîëåå, ÷åì t øàãîâ â ïðèíèìàþùåì ñîñòîÿíèè (qyes ). Òåîðåìà: RBH åñòü NP-ïîëíàÿ • RBH ∈ NP, òàê êàê ìîæíî ïðîâåðèòü çà ïîëèíîìèàëüíîå âðåìÿ ìîäåëèðîâàíèåì; • RBH ïîëèíîìèàëüíî îãðàíè÷åííî: |y | < t ; • Ïóñòü R ∈ NP, ïóñòü A  ïðîâåðÿþùàÿ Ìàøèíà Òüþðèíãà, îãðàíè÷åííàÿ ïîëèíîìîì nk . • Ñâåäåíèå: x →< A, x, 11 . . . 1 > nk øòóê 37 / 41
    • Òåîðåìà Êóêà-Ëåâèíà RSAT åñòü NP-ïîëíàÿ Èäåÿ äîêàçàòåëüñòâà: ñ ïîìîùüþ ÊÍÔ ôîðìóë êîäèðóåòñÿ ìàøèíà Òüþðèíãà, øàãè ìàøèíû Òüþðèíãà. È çàäà÷à îá îãðàíè÷åííîé îñòàíîâêå RBH ñâîäèòñÿ ê RSAT . 38 / 41
    • Ñâåäåíèå äëÿ ÿçûêîâ Ñâåäåíèå ïî Êàðïó ßçûê L1 ñâîäèòñÿ ê ÿçûêó L2 , åñëè ñóùåñòâóåò ïîëèíîìèàëüíî âû÷èñëèìàÿ ôóíêöèÿ f , ÷òî x ∈ L1 ⇐⇒ f (x) ∈ L2 . Îïðåäåëåíèå ßçûê L íàçûâàåòñÿ NP  òðóäíûì, åñëè ëþáîé ÿçûê èç NP ñâîäèòñÿ ê íåìó. È NP -ïîëíûì, åñëè îí ê òîìó æå ïðåíàäëåæèò NP. Çàìå÷àíèå Ñâåäåíèå ïî Ëåâèíó äëÿ çàäà÷ ïîèñêà âëå÷åò ñâåäåíèå ïî Êàðïó äëÿ ÿçûêîâ. Çíà÷èò, ÿçûê âûïîëíèìûõ ôîðìóë SAT ÿâëÿåòñÿ NP -ïîëíûì. 39 / 41
    • Îò çàäà÷ ïîèñêà ê ÿçûêàì RSAT ñâîäèòñÿ ïî Êóêó ê SAT Åñëè ôîðìóëà ϕ âûïîëíèìà, òî âûïîëíèìà ëèáî ϕ[x → 1], ëèáî ϕ[x → 0]. Âûáèðàåì ïðàâèëüíîå çíà÷åíèå ïåðåìåííîé x è ïîäñòàâëÿåì åãî. Çàìå÷àíèå: íå âñåãäà çàäà÷à ïîèñêà ñâîäèòñÿ ê ÿçûêó Ïðèìåð: ïðîâåðèòü ÷èñëî íà ïðîñòîòó ìîæíî çà ïîëèíîìèàëüíîå âðåìÿ, à ðàñêëàäûâàòü íà ìíîæèòåëè áûñòðî íèêòî íå óìååò. 40 / 41
    • Óïðàæíåíèÿ è çàäà÷è 1 Äîêàæèòå, ÷òî íåò àëãîðèòìà, êîòîðûé îïðåäåëÿë áû, çàêîí÷èò ëè ÌÒ ðàáîòó íà ïóñòîì âõîäå. 2 Ñóùåñòâóåò ëè àëãîðèòì, ïðîâåðÿþùèé, ðàáîòàåò ëè äàííàÿ ÌÒ ïîëèíîìèàëüíîå âðåìÿ èëè íåò? 3 Äîêàæèòå, ÷òî íå ñóùåñòâóåò àëãîðèòìà, êîòîðûé îïðåäåëèë áû ïî ÌÒ M îïðåäåëèë áû, ÿâëÿåòñÿ ëè ïîñëåäîâàòåëüíîñòü M(1), M(2), M(3) . . . ïåðèîäè÷åñêîé ñ íåêîòîðîãî ìåñòà. 4 Äîêàæèòå NP-ïîëíîòó ìîäèôèöèðîâàííîé çàäà÷è îá îãðàíè÷åííîé îñòàíîâêå: (< M, x >, y ) ∈ RBH , åñëè ÌÒ M îñòàíàâëèâàåòñÿ â ïðèíèìàþùåì ñîñòîÿíèè çà íå áîëåå, ÷åì |x|2 øàãîâ. 41 / 41