Teorema principală

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Teorema principală (în engleză master theorem), cunoscută și sub numele de master teorema și teorema profesorului, este o teoremă referitoare la „ analiza algoritmilor care oferă o soluție asimptotică unei familii de relații de recurență . A fost expusă pentru prima dată de Jon Bentley , Dorothea Haken și James B. Saxe în 1980, unde a fost descrisă ca o metodă unificată [1] pentru o familie de recurență. [2] Numele acestei teoreme a fost popularizat de celebrul manual Introducere în algoritmi de către Cormen , Leiserson , Rivest și Stein . Nu oferă o soluție la toate relațiile posibile de recurență, iar generalizarea acesteia este teorema Akra-Bazzi .

În mod informal, teorema afirmă că dat o relație de recurență în formă cu Și , în unele cazuri se poate obține o soluție prin comparare cu funcție . De sine este asimptotic polinomial mai mic (adică mai mic cu cel puțin un factor polinomial ) asa de ; dacă cele două funcții au asimptotic aceeași magnitudine atunci ; în cele din urmă, dacă este suficient de regulat și polinomial mai mare atunci . Cazurile în care este asimptotic mai mare sau mai mic decât într-un mod non-polinomial. [3]

Afirmație

Se dă o relație de recurență sub forma [4]

unde este Și sunt constante și poate fi interpretat ca fie ( partea întreagă ) este la fel ( toată partea superioară ).

Apoi funcția este delimitat asimptotic conform unuia dintre următoarele trei cazuri:

  1. dacă există o constantă astfel încât , asa de ;
  2. de sine asa de ;
  3. dacă există o constantă astfel încât și există o constantă și un întreg astfel încât , asa de . [5]

Demonstrație

Lemă

Suma definit pe puterile de , unde este Și sunt constante și este non-negativ, are respectiv un comportament asimptotic:

  1. sub ipoteza cazului 1 al teoremei principale, ;
  2. sub ipoteza cazului 2 al teoremei principale, ;
  3. sub ipoteza cazului 3 al teoremei principale, dacă există o constantă și un întreg astfel încât , asa de .

Demonstrație

Cazul 1

Pentru cazul 1, ipoteza implică

care a înlocuit în conduce la

.

Colectând factorii comuni, simplificând și însumând seriile geometrice trunchiate rezultate, avem

.

Atâta timp cât Și sunt constante, da

,

și prin faptul că, din moment ce este o constantă,

care împreună dau

de aici teza.

Cazul 2

Similar cazului 1, pentru cazul 2 presupune ipoteza

care a înlocuit în conduce la

.

Procedăm similar cu cazul precedent, totuși seria trunchiată obținută nu este o serie geometrică, ci o serie cu termeni constanți

de aici teza.

Cazul 3

Aplicând iterativ ori ipoteza regularității cazului 3, avem

pentru valori suficient de mari de . Prin urmare, această condiție se aplică tuturor, dar cel mult un număr constant de termeni, pentru care nu este suficient de mare. În mod similar cu cazurile anterioare, acesta este substituit în definiția lui , primind

unde este reprezintă termenii menționați anterior pentru care inegalitatea nu se menține. Prin adăugarea seriei geometrice pe care o avem

și din moment ce definiția lui conține într-o sumă non-negativă, avem și . Combinând cele două limitări asimptotice, avem . [6]

Dovada teoremei principale

În cazul particular în care este definit numai pe puterile exacte ale , analizând arborele recursiv în raport cu relația de recurență observăm că [7]

.

Prin urmare, aplicând lema demonstrată mai sus, validitatea teoremei principale este imediat obținută în cazul particular în care este definit pe puterile lui . Acest lucru, evident, nu este suficient pentru a demonstra teorema, dar poate fi extins la cazul general, luând în considerare cazul în care apar părți superioare sau inferioare întregi .

În cazul unui număr întreg superior, atunci când se analizează arborele de recurență la apelul j- - lea argumentul ia forma

.

Întrucât din definiția întregii părți superioare avem , primesti

.

Din aceasta se observă că , apoi la profunzimea recursivității costul problemei este limitat de o constantă. Generalizăm apoi prima ecuație pentru arbitrar, nu mai este limitat la puterile

și putem continua să studiem suma. Al treilea caz continuă exact în același mod ca al treilea caz al lemei. Pentru al doilea caz, din definiția lui O-mare și amintind expresia lui avem că există o constantă și un întreg astfel încât, pentru

.

Limita asimptotică obținută ne permite apoi să procedăm în același mod ca în cazul 2 al lemei. Pentru primul caz, într-un mod similar cu ceea ce tocmai s-a făcut, se arată că

ceea ce ne permite apoi să procedăm într-un mod similar cu cazul 1 al lemei. Aceasta completează dovada teoremei principale în cazul unui număr întreg superior, în cazul numărului întreg inferior proba este analogă. [8]

Generalizări

Al doilea caz al teoremei principale poate fi generalizat prin substituirea doar a ipotezei sale particulare, pentru unii și teza . [9] După cum vedem, cazul non-general este pentru .

Teorema Akra-Bazzi generalizează teorema principală, sub ipoteze adecvate, pentru relațiile de recurență în formă .

Exemple

Cazul 1

Să se dea următoarea relație de recurență:

Da, da , Și . Atunci De cand când ε = 1 , este posibil să se aplice cazul 1 al teoremei master care obține soluția

Cazul 2

Acum să se dea relația de recurență:

in care , Și . Fiind și , cazul 2 din Teorema Maestră se menține , conducând la soluție

Cazul 3

În cele din urmă, relația de recurență este dată:

in care , Și . Fiind și , în care ε ≈ 0,2, cazul 3 al teoremei master poate fi aplicat numai dacă condiția de regularitate este valabilă pentru . Pentru n suficient de mare avem pentru . În consecință, soluția recurenței este

Notă

  1. ^ Acesta este sensul original al termenului stăpân în nume.
  2. ^ Jon Louis Bentley , Dorothea Haken și James B. Saxe , O metodă generală pentru rezolvarea recidivelor de divizare și cucerire , în ACM SIGACT News , vol. 12, nr. 3, septembrie 1980, pp. 36–44, DOI : 10.1145 / 1008861.1008865 .
  3. ^ Cormen și colab. , pp. 94-95 .
  4. ^ Având în vedere un algoritm recursiv asociat cu relația de recurență, cantitățile implicate pot fi interpretate ca:
    • este dimensiunea intrării;
    • este numărul de apeluri recursive către algoritm;
    • este dimensiunea apelului recursiv (adică porțiunea problemei inițiale reprezentată în fiecare subproblemă);
    • este funcția de cost a subdiviziunii problemei și a fazei de reconstrucție a soluției.
  5. ^ Cormen și colab. , p. 94 .
  6. ^ Cormen și colab. , pp. 100-102 .
  7. ^ Cormen și colab. , pp. 98-100 .
  8. ^ Cormen și colab. , pp. 103-106 .
  9. ^ Goodrich & Tamassia , pp. 268-270 .

Bibliografie

Elemente conexe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT