Алексеев - Сложность алгоритмов (1123759), страница 8
Текст из файла (страница 8)
pOSTROIM MNOVESTWO Da WSEHSLEDOW, KOTORYE MOGUT POLU^ITXSQ PRI RABOTE M NA SLOWAH WIDAax 2 A W TO^KE i, RAZDELQ@]EJ a I x. pUSTX SLED qi1 qi2 qi3 : : : qis 2 Da.rASSMOTRIM RABOTU MA[INY M SLEWA OT RAZDELQ@]EJ TO^KI. oNA ODNOZNA^NO OPREDELQETSQ SLOWOM a I TEMI SOSTOQNIQMI qi2 ; qi4 ; : : : ; W KOTORYHNAHODITSQ MA[INA, KOGDA GOLOWKA WOZWRA]AETSQ NA LEWU@ ZONU ^EREZTO^KU i. pO USLOWI@ s 6 c. eSLI s | ^ETNO, TO MA[INA OSTANAWLIWAETSQSLEWA OT TO^KI i.
w \TOM SLU^AE K POSLEDOWATELXNOSTI qi1 qi2 qi3 PRIPI[EM+, ESLI M OSTANAWLIWAETSQ W SOSTOQNII "PRINQTX", I PRIPI[EM ;,ESLI M OSTANAWLIWAETSQ W SOSTOQNII "OTWERGNUTX". tAK KAK s 6 c,TO WOZMOVNYH SLEDOW KONE^NOE ^ISLO I RAZNYH WOZMOVNYH MNOVESTWDa TAKVE KONE^NOE ^ISLO. tOGDA UTWERVDENIE TEOREMY WYTEKAET IZSLEDU@]EJ LEMMY.lEMMA. eSLI Da = Db TO OSTATO^NYE QZYKI La = Lb SOWPADA@TdOKAZATELXSTWO pUSTX x - L@BOE SLOWO IZ A. rASSMOTRIM RABOTU M NA SLOWAH ax I bx.
pUSTX qi1 qi2 qi3 : : : qis I qj1 qj2 : : : qjm | SLEDYW TO^KAH, RAZDELQ@]IH a I x, b I x. zAMETIM, ^TO RABOTA SPRAWA OTRAZDELQ@]IH TO^EK ODNOZNA^NO OPREDELQETSQ SLOWOM x I SOSTOQNIQMIqi1 qi3 qi5 : : : I qj1 qj3 qj5 : : : , W KOTORYH GOLOWKA PEREHODIT ^EREZ RAZDELQ@]IE TO^KI WPRAWO. pRI \TOM qi1 I qj1 ODNOZNA^NO OPREDELQ@TSQ PO a Ib. tAK KAK Da = Db, TO qi1 = qj1 I RABOTA SPRAWA POSLE PERWOGO PEREHODA ^EREZ RAZDELQ@]IE TO^KI PROISHODIT ODINAKOWO. tOGDA qi2 = qj2 .oPQTX, TAK KAK Da = Db, TO qi3 = qj3 I OPQTX RABOTA SPRAWA PROISHODITODINAKOWO.
pOSLEDOWATELXNO POLU^AEM, ^TO s = m I qir = qjr DLQ WSEHr = 1; 2; : : : ; s. eSLI s NE^ETNO, TO POSLE PEREHODA WPRAWO W SOSTOQNIIqis W OBOIH SLU^AQH RABOTA SPRAWA BUDET ODINAKOWOJ I, SLEDOWATELXNO,M OSTANOWITSQ W ODNOM I TOM VE SOSTOQNII. eSLI s ^ETNO, TO MA[INAW OBOIH SLU^AQH OSTANOWITSQ SLEWA OT RAZDELQ@]EJ TO^KI, PRI^EM WODNOM I TOM VE SOSTOQNII, POSKOLXKU Da = Db I SLED qi1 qi2 : : : qis W OBOIHMNOVESTWAH DOPOLNEN ODNIM I TEM VE ZNAKOM + ILI ;.
tAKIM OBRAZOM,M PRINIMAET SLOWO ax TOGDA I TOLXKO TOGDA, KOGDA ONA PRINIMAETSLOWO bx, TO ESTX LIBO OBA SLOWA WHODQT W L, LIBO OBA NE WHODQT W L.pO\TOMU La = Lb. |TIM DOKAZANA LEMMA, A WMESTE S NEJ I TEOREMA.,-.|. (C,,)..,-..42dOKAVEM TEPERX NESKOLXKO LEMM, KOTORYE ISPOLXZUEM W SLEDU@]EJ TEOREME.lEMMA. pUSTX A = fa1; a2; : : : ; arg ALFAWIT b1; b2; : : : ; bnRAZNYE SLOWA W \TOM ALFAWITE li DLINA SLOWA bi I lmax = maxi litOGDA lmax > c log2 n GDE c > 0 NEKOTORAQ KONSTANTA ZAWISQ]AQTOLXKO OT rdOKAZATELXSTWO wSE n SLOW IME@T DLINU, NE PREWOSHODQ]U@lmax. nO WSEGO TAKIH SLOW MENX[E, ^EM rlmax +1 (SM. LEMMU).
pO\TOMUn 6 rlmax +1, lmax > logr n ; 1 > c1 logr n = logc12 r log2 n. lEMMA DOKAZANA.lEMMAP. pRIUSLOWIQH LEMMY SU]ESTWUET KONSTANTA c > 0nTAKAQ ^TO i=1 li > cn log2 ndOKAZATELXSTWO ~ISLO WSEH pSLOWDLINYMENX[EJ, ^EM b 21 logr ncb 12 logr nc 6 r 12 logr n = n. pO\TOMU SREDI SLOW bi NE MENEE,NE PREWOSHODITr^EM n ; pn SLOW, IME@T DLINU NE MENX[E ^EM b 12 logr nc. pO\TOMUnXpli > (n ; n)b 12 logr nc > cn log2 n|,,,||.|,..,..i=1DLQ NEKOTOROJ KONSTANTY c.lEMMA. pUSTX POSLEDOWATELXNOSTX n1; n2; : : : ; nk; : : : NE OGRANI^ENA SWERHU tOGDA IZ NEE MOVNO WYDELITX PODPOSLEDOWATELXNOSTXni1 ; ni2 ; : : : TAKU@ ^TO DLQ L@BOGO s I WSEH 1 6 j < is WYPOLNQETSQ-.,nj < nisdOKAZATELXSTWO pERWYM \LEMENTOM PODPOSLEDOWATELXNOSTIWOZXMEM n1.
pUSTX UVE WYBRANY ni1 ; ni2 ; : : : ; nir . tOGDA, PROSMATRIWAQ\LEMENTY PO PORQDKU POSLE nir , W KA^ESTWE O^EREDNOGO \LEMENTA WYBIRAEM PERWYJ \LEMENT nir+1 , BOLX[IJ, ^EM nir . eSLI WSE \LEMENTY njISHODNOJ POSLEDOWATELXNOSTI S j = 1; 2; : : : ; i2 ; 1 MENX[E, ^EM nir , TO,POSKOLXKU nir+1 > nir , A WSE \LEMENTY MEVDU nir I nir +1 NE PREWOSHODQTnir , TO WSE \LEMENTY nj S j = 1; 2; : : : ; ir+1 ; 1 MENX[E, ^EM nir +1.
tAKIMOBRAZOM PO INDUKCII PROWERQETSQ TREBUEMOE SWOJSTWO. tO, ^TO nir +1 SU]ESTWUET, SLEDUET IZ NEOGRANI^ENNOSTI ISHODNOJ POSLEDOWATELXNOSTI.oBOZNA^IM ^EREZ M (ab) SLED PRI RABOTE MA[INY tX@RINGA MNA SLOWE ab W TO^KE, RAZDELQ@]EJ a I b.lEMMA. pUSTX a; b; c NEKOTORYE SLOWA I PUSTX M (ajbc) =M (abjc) tOGDA PRI RABOTE M NA SLOWE ac SLEWA I SPRAWA OT TO^KIRAZDELQ@]EJ a I c MA[INA RABOTAET TAK VE KAK NA SOOTWETSTWU@]IH ^ASTQH PRI RABOTE NA abcdOKAZATELXSTWO rASSMOTRIM RABOTU MA[INY M NA SLOWE abcTOLXKO NA 2 ^ASTQH LENTY: SLEWA I SPRAWA OT b. pOSKOLXKU M (ajbc) =..|.,,,..43-M (abjc), TO PRI WYBRASYWANII ^ASTI LENTY, NA KOTOROJ ZAPISANO b, ISKLEIWANII OSTAW[IHSQ ^ASTEJ KORREKTNO "SKLEIWA@TSQ" I PROCESSYRABOTY M NA \TIH ^ASTQH.tEOREMA. pUSTX MA[INA tX@RINGA M RASPOZNAET QZYK L ApUSTX dM (n) MAKSIMALXNAQ DLINA SLEDOW W TO^KAH 1; 2; : : : ; n PRIRABOTE MA[INY M NA WSEH SLOWAH a A DLINY n A TM (n)MAKSIMALXNOE WREMQ WY^ISLENIQ ^ISLO [AGOW MA[INY M NA SLOWAHDLINY n IZ A tOGDA ESLI WYPOLNQETSQ HOTQ BY ODNO IZ DWUH USLOWIJA dM (n) = o(log n) B TM (n) = o(n log n) TO L REGULQRNYJ QZYKdOKAZATELXSTWO TEOREMY (OT PROTIWNOGO).
dOPUSTIM, ^TO L |NE REGULQRNYJ QZYK. tOGDA PO TEOREME dM (n) NEOGRANI^ENNAQ POSLEDOWATELXNOSTX. pO LEMME IZ NEE MOVNO WYDELITX PODPOSLEDOWATELXNOSTXn1; n2; : : : TAKU@, ^TOdM (n) < dM (ni)(14)DLQ WSEH n < ni (i = 1; 2; : : : ):lEMMA. pUSTX n1; n2; : : : UDOWLETWORQ@T I ai SLOWO DLINYni NA KOTOROM DOSTIGAETSQ dM (ni) tOGDA PRI RABOTE M NA SLOWEai ODIN I TOT VE SLED W TO^KAH 1; 2; : : : ; ni NE MOVET POWTORQTXSQBOLEE ^EM RAZAdOKAZATELXSTWO pREDPOLOVIM, ^TO ai = abcd I M (ajbcd) =M (abjcd) = M (abcjd), GDE a, b, c | NE PUSTYE SLOWA. pRI RABOTE MNA SLOWE ai ESTX SLEDY DLINY dM (ni).
pO KRAJNEJ MERE ODIN TAKOJ SLEDLIBO NE LEVIT WNUTRI b, LIBO NE LEVIT WNUTRI c. tOGDA PO LEMME ONSOHRANITSQ PRI RABOTE M LIBO NA SLOWE acd, LIBO NA SLOWE abd, NO\TO PROTIWORE^IT TOMU, ^TO dM (n) < dM (ni) DLQ WSEH n < ni. lEMMADOKAZANA.iZ \TOJ LEMMY POLU^AEM, ^TO PRI RABOTE M NA SLOWE ai W TO^KAH 1; 2; : : : ; ni IMEETSQ NE MENEE n2i RAZNYH SLEDOW. tOGDA PO LEMMAMdM (ni) > c log2 n2i , I SUMMA DLIN \TIH RAZNYH SLEDOW, A ZNA^IT IWREMQ RABOTY MA[INY M , NE MENX[E, ^EM cni log2 n2i , GDE c - NEKOTORAQKONSTANTA.
eSLI WYPOLNENO USLOWIE A) ILI B) IZ TEOREMY, TO POLU^AEM PROTIWORE^IE. sLEDOWATELXNO, OT PROTIWNOGO, POLU^AEM, ^TO PRIWYPOLNENII USLOWIQ A) ILI B) QZYK L REGULQREN. tEOREMA DOKAZANA.sLEDSTWIE. eSLI dM (n) = o(log n) ILI TM (n) = o(n log n) TOSU]ESTWUET MA[INA tX@RINGA AWTOMAT N RASPOZNA@]AQ TOT VEQZYK L DLQ KOTOROJ dN (n) = 1 TN (n) = n + 1.|,(|).:);),|( ),.|.2..,(,),,.44kLASSY P I NPoPREDELENIE.
pUSTX ALGORITM OSU]ESTWLQET PREOBRAZOWANIE ' :! B SLOW W ALFAWITE A W SLOWA W ALFAWITE B . tOGDA \TOT ALGORITM NAZYWAETSQ POLINOMIALXNYM (ILI IME@]IM POLINOMIALXNU@SLOVNOSTX), ESLI SU]ESTWUET POLINOM p(n) TAKOJ, ^TO DLQ L@BOGO NATURALXNOGO n WREMQ RABOTY ALGORITMA NA L@BOM WHODNOM SLOWE DLINY nNE PREWOSHODIT p(n). (pRI \TOM MOVNO S^ITATX, ^TO WSE KO\FFICIENTYW p(n) NEOTRICATELXNY, TO ESTX p(n) WOZRASTA@]AQ FUNKCIQ.)oPREDELENIE. zADA^EJ RASPOZNAWANIQ NAZYWAETSQ L@BOE OTOBRAVENIE ' : A ! f\DA", \NET"g.s L@BOJ ZADA^EJ RASPOZNAWANIQ ' MOVNO SWQZATX QZYK L' ASLEDU@]IM OBRAZOM: a 2 L' () ' : a ! \DA".
i OBRATNO, L@BOJ QZYKMOVNO RASSMATRIWATX KAK ZADA^U RASPOZNAWANIQ.oPREDELENIE. kLASS P |\TO KLASS WSEH QZYKOW (ZADA^ RASPOZNAWANIQ), DLQ KAVDOGO IZ KOTORYH SU]ESTWUET RASPOZNA@]IJ ALGORITMS POLINOMIALXNOJ SLOVNOSTX@.oPREDELENIE. bUDEMGOWORITX, ^TO QZYK L1 A POLINOMIALXNOSWODITSQ K QZYKU L2 B , ESLI SU]ESTWUET POLINOMIALXNYJ ALGORITM(NAPRIMER, MA[INA tX@RINGA) ' : A ! B , TAKOJ ^TO '(a) 2 L2 ()a 2 L1.tEOREMA. pUSTX L1 A L2 B L2 2 P I L1 POLINOMIALXNOSWODITSQ K L2 tOGDA L1 2 PdOKAZATELXSTWO. pO USLOWI@ SU]ESTWU@T MA[INY tX@RINGAM1 I M2 TAKIE, ^TO M1 POLINOMIALXNO SWODIT L1 K L2, A M2 S POLINOMIALXNOJ SLOVNOSTX@ RASPOZNAET L2. rASSMOTRIM MA[INU tX@RINGAM = M2(M1).
tOGDA M : A ! f\DA", \NET"g, PRI^EM DLQ L@BOGO SLOWAa 2 A IMEEMM (a) = \DA" () M2(M1(a)) = \DA" () M1(a) 2 L2 () a 2 L1;TO ESTX M RASPOZNAET QZYK L1. pO USLOWI@ WREMQ RABOTY (^ISLO [AGOW)MA[IN M1 I M2 NA WHODNYH SLOWAH DLINY n NE PREWOSHODIT p1 (n) Ip2(n), GDE p1; p2 | POLINOMY. tOGDA WREMQ RABOTY M NA SLOWE a DLINYn NE PREWOSHODIT p1 (n) + p2(jM1(a)j); GDE jM1(a)j | DLINA SLOWA M1(a).tAK KAK MA[INA tX@RINGA M1 NA KAVDOM [AGE MOVET UWELI^IWATXDLINU SLOWA NE BOLEE ^EM NA 1, TO jM1(a)j 6 n + p1(n) I WREMQ RABOTYM NA a NE PREWOSHODIT p1(n) + p2(n + p1(n)) = p3(n), GDE p3 | POLINOM. (zDESX S^ITAETSQ, ^TO WSE KO\FFICIENTY W p2 NEOTRICATELXNYI, SLEDOWATELXNO, p2 (n) | NEUBYWA@]AQ FUNKCIQ). tAKIM OBRAZOM MRASPOZNAET QZYK L1 S POLINOMIALXNOJ SLOVNOSTX@.
tEOREMA DOKAZANA.A,.,.45|TA TEOREMA POZWOLQET POLU^ATX POLINOMIALXNYE ALGORITMY DLQODNIH ZADA^ RASPOZNAWANIQ IZ IME@]IHSQ POLINOMIALXNYH ALGORITMOW DLQ DRUGIH ZADA^ PROSTO PUTEM POLINOMIALXNOGO SWEDENIQ ODNIHZADA^ K DRUGIM.k SOVALENI@, DLQ BOLX[INSTWA ZADA^, WOZNIKA@]IH NA PRAKTIKE,POKA NE IZWESTNO, WHODQT LI ONI W KLASS P , NO PO^TI WSE TAKIE ZADA^IOKAZYWA@TSQ W DRUGOM KLASSE, KOTORYJ OBOZNA^A@T NP .oPREDELENIE. qZYK L A (ZADA^A RASPOZNAWANIQ) WHODIT WKLASS NP , ESLI I TOLXKO ESLI SU]ESTWU@T ALFAWIT B , POLINOM q(n)I PREDIKAT Q(x; y) : A B ! fI, Lg TAKIE, ^TO Q(x; y) 2 P I DLQL@BOGO SLOWA a 2 A WYPOLNQETSQ:a 2 L () 9b 2 B (jbj 6 q(jaj)&Q(a; b))(ZDESX jaj I jbj |DLINA SLOW a I b).sLOWO b NAZYWA@T SERTIFIKATOM DLQ SLOWA a, A ALGORITM, RASPOZNA@]IJ PREDIKAT Q(a; b), | ALGORITMOM PROWERKI SERTIFIKATA.tAKIM OBRAZOM, ESLI a 2 L (W ZADA^E RASPOZNAWANIQ DLQ WHODA a OTWET\DA"), TO DOLVNO SU]ESTWOWATX BYSTROE PODTWERVDENIE DLQ \TOGO, TOESTX DOLVEN SU]ESTWOWATX PODTWERVDA@]IJ \TO SERTIFIKAT b (NEBOLX[OJ DLINY) I BYSTRYJ SPOSOB PODTWERDITX, ^TO \TO DEJSTWITELXNOPODHODQ]IJ SERTIFIKAT.
eSLI VE a 2= L, TO PO OPREDELENI@ W \TOMSLU^AE NI^EGO NE TREBUETSQ. tAKIM OBRAZOM, OTWETY \DA" I \NET"ZDESX NE SIMMETRI^NY. zAMETIM TAKVE, ^TO DLQ SLU^AQ a 2 L LI[XUTWERVDAETSQ SU]ESTWOWANIE SERTIFIKATA b, NO NI^EGO NE GOWORITSQO SLOVNOSTI EGO NAHOVDENIQ (ESLI W B IMEETSQ r BUKW I jaj = n,TO jbj 6 q(n) I ^ISLO TAKIH SLOW b NE MENX[E, ^EM rq(n), TO ESTX\KSPONENCIALXNO ZAWISIT OT n).rASSMOTRIM PRIMERY QZYKOW IZ NP .klika. wHOD L@BOJ NEORIENTIROWANNYJ GRAF G I NATURALXNOE ^ISLO k.wOPROS sU]ESTWUET LI W GRAFE G KLIKA RAZMERA k, TO ESTX kWER[IN TAKIH, ^TO L@BAQ PARA IZ NIH SOEDINENA REBROM?bOLEE STROGO, MY DOLVNY ZADATX WHODNOJ ALFAWIT A I SPOSOBPREDSTAWLENIQ GRAFOW W \TOM ALFAWITE. mOVNO, NAPRIMER, S^ITATX,^TO A = f0; 1; ; g I GRAF ZADAETSQ MATRICEJ SMEVNOSTI (IZ 0 I 1),KOTORAQ ZATEM WYPISYWAETSQ W ODNO SLOWO PODRQD PO STROKAM MATRICYS RAZDELITELEM ; MEVDU STROKAMI MATRICY.uTWERVDENIE.
klika 2 NPdOKAZATELXSTWO w KA^ESTWE SERTIFIKATA b DLQ WHODA a BUDEMBRATX SPISOK IZ k WER[IN, SOSTAWLQ@]IH KLIKU. o^EWIDNO, jbj 6 jaj.::..46pREDIKAT Q BUDET OBOZNA^ATX, ^TO DANNYE WER[INY ZADA@T KLIKU WDANNOM GRAFE I \TIH WER[IN ROWNO k. dLQ RASPOZNAWANIQ SPRAWEDLIWOSTI TAKOGO SWOJSTWA Q LEGKO POSTROITX ALGORITM SO SLOVNOSTX@, NEPREWOSHODQ]EJ POLINOMA OT SUMMARNOJ DLINY KODA GRAFA a I SERTIFIKATA b.gamilxtonow cikl (gc). wHOD L@BOJ NEORIENTIROWANNYJ GRAF G.wOPROS sU]ESTWUET LI W GRAFE G GAMILXTONOW CIKL, TO ESTXCIKL, PROHODQ]IJ ^EREZ KAVDU@ WER[INU ROWNO 1 RAZ?uTWERVDENIE. gc 2 NPdOKAZATELXSTWO sERTIFIKATOM ZDESX QWLQETSQ POSLEDOWATELXNOSTX IZ WER[IN v1; v2; : : : ; vm .