Notația Big O: Diferență între versiuni

De la Wikipedia, enciclopedia liberă
Conținut șters Conținut adăugat
Creată prin traducerea paginii „Big O notation
Linia 1: Linia 1:

#REDIRECTEAZA [[Teoria complexității]]
[[Fișier:Big-O-notation.png|miniatura|300x300px| Exemplu de notație Big O: {{Color|#ff0000|''f''(''x'')}} ∈ O ({{Color|#0000ff|''g''(''x'')}}) deoarece există ''c''>0 (de exemplu, ''c''=1) și ''x''<sub>0</sub> (de exemplu, ''x''<sub>0</sub>=5) astfel încât {{Color|#ff0000|''f''(''x'')}} ≤ ''c'' {{Color|#0000ff|''g''(''x'')}} pentru orice ''x'' ≥ ''x''<sub>0</sub>. ]]
'''Notația Big O''' este o notație matematică care descrie [[Asymptotic analysis|comportamentul la limită]] al unei [[Funcție|funcții]] atunci când [[Argument of a function|argumentul]] tinde la o anumită valoare sau la infinit. Este una din notațiile inventate de [[Paul Bachmann]],<ref name="Bachmann">{{Citat carte|prenume=Paul|nume=Bachmann|legătură-autor=Paul Bachmann|titlu=Analytische Zahlentheorie|titlu_trad=Analytic Number Theory|limbă=de|volum=2|locul-publicării=Leipzig|editură=Teubner|dată=1894|url=https://archive.org/stream/dieanalytischeza00bachuoft#page/402/mode/2up}}</ref> [[Edmund Landau]],<ref name="Landau">{{Citat carte|prenume=Edmund|nume=Landau|legătură-autor=Edmund Landau|titlu=Handbuch der Lehre von der Verteilung der Primzahlen|editură=B. G. Teubner|dată=1909|locul-publicării=Leipzig|titlu_trad=Handbook on the theory of the distribution of the primes|limbă=de|pagină=883|url=https://archive.org/details/handbuchderlehre01landuoft}}</ref> și alții, numite colectiv '''notațiile Bachmann-Landau''' sau '''notațiile asimptotice'''.

În [[informatică]], notația Big O este folosită pentru a [[Teoria complexității|clasifica algoritmii]] în funcție de felul în care timpul lor de rulare sau cerințele lor de spațiu cresc pe măsură ce crește dimensiunea datelor de intrare.<ref name="quantumcomplexity">{{Citat web|url=http://www.austinmohr.com/Work_files/complexity.pdf|nume=Mohr|accessdate=7 June 2014|first1=Austin|pagină=2|titlu=Quantum Computing in Complexity Theory and Theory of Computation}}</ref> În [[Analytic number theory|teoria analitică a numerelor]], notația Big O este adesea folosită pentru a exprima o legătură între diferența dintre o [[Arithmetic function|funcție aritmetică]] și o aproximare mai bine înțeleasă; un exemplu celebru de astfel de diferență este termenul rest din [[teorema numerelor prime]].

Notatia Big O caracterizează funcțiile după de vitezele lor de creștere: funcții diferite cu aceeași viteză de creștere pot fi reprezentate folosind aceeași notație O.

Litera O este folosită deoarece viteza de creștere a unei funcții este numită și '''ordin al funcției'''. O descriere a unei funcții în ceea ce privește notația Big O, de obicei, oferă doar o [[Upper bound|limită superioară]] a vitezei de creștere a funcției. Cu notația Big O mai sunt asociate mai multe alte notații, folosind simbolurile {{Math|''o'', Ω, ω, și Θ}} , pentru a descrie alte tipuri de limite ale vitezelor de creștere asimptotică.

Notația Big O este folosită și în multe alte domenii pentru a furniza estimări similare.

== Definiție formală ==
Fie {{Math|''f''}} o funcție cu valori reale sau complexe și {{Math|''g''}} o funcție cu valori reale, ambele fiind definite pe unele submulțimi nemărginite ale mulțimii [[Număr real|numerelor reale pozitive]], astfel încât {{Math|''g(x)''}} să fie strict pozitivă pentru toate valorile suficient de mari ale lui {{Math|''x''}}''.''<ref name="LandauO">{{Citat carte|prenume=Edmund|nume=Landau|legătură-autor=Edmund Landau|titlu=Handbuch der Lehre von der Verteilung der Primzahlen|editură=B. G. Teubner|dată=1909|locul-publicării=Leipzig|titlu_trad=Handbook on the theory of the distribution of the primes|limbă=de|pagină=31|url=https://archive.org/stream/handbuchderlehre01landuoft#page/31/mode/2up}}</ref> Se scrie

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mo> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mtext></mrow><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mo><mi mathvariant="normal"> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </mi></mstyle></mrow> </math><math>f(x)=O(g(x))\text{ as }x\to\infty</math> <math>f(x)=O(g(x))\text{ as }x\to\infty</math> </img> <span></span>

[[If and only if|dacă și numai dacă]] pentru toate valorile suficient de mari ale lui {{Math|''x''}}, valoarea absolută a lui {{Math|''f(x)''}} este cel mult un multiplu constant pozitiv al lui {{Math|''g(x)''}}. Adică, {{Math|1=''f(x) = O(g(x))''}} dacă și numai dacă există un număr real pozitiv ''M'' și un număr real {{Math|''x<sub>0</sub>''}} astfel încât

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo></mrow><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo></mrow><mo> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mtext></mrow><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mo> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo><msub><mi> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mn></mrow></msub><mo> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </mo></mstyle></mrow> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> <math>|f(x)| \le \; M g(x)\text{ for all }x \ge x_0.</math> </img> <span></span>

În multe contexte, ipoteza că suntem interesați de viteza de creștere când variabila {{Math|''x''}} tinde la infinit este lăsată nestabilită, și se scrie mai simplu că

Notația poate fi folosită și pentru a descrie comportamentul lui {{Math|''f''}} în preajma unui număr real {{Math|''a''}} (adesea, {{Math|1=''a = 0''}}: se spune

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mo> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mtext></mrow><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x\to a</math> </mi></mstyle></mrow> </math><math>f(x)=O(g(x))\text{ as }x\to a</math> <math>f(x)=O(g(x))\text{ as }x\to a</math> </img> <span></span>

dacă și numai dacă există numere pozitive ''δ'' și ''M'' astfel încât

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo></mrow><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo></mrow><mo> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mtext></mrow><mn> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mn><mo> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo></mrow><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mo> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo></mrow><mo> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo><mi> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mi><mo> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </mo></mstyle></mrow> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> <math>|f(x)| \le \; M g(x)\text{ when } 0 < |x - a| < \delta.</math> </img> <span></span>

Întrucât {{Math|''g(x)''}} este aleasă în așa fel încât să fie nenulă, pentru valori ale lui {{Math|''x''}} [[Mathematical jargon#sufficiently large|suficient de apropiate]] de {{Math|''a''}}'','' ambele aceste definiții pot fi unificate folosind [[Limit superior|limita superioară]]:

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mo> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mtext></mrow><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi><mo stretchy="false"> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mo><mi> <math>f(x)=O(g(x))\text{ as }x \to a</math> </mi></mstyle></mrow> </math><math>f(x)=O(g(x))\text{ as }x \to a</math> <math>f(x)=O(g(x))\text{ as }x \to a</math> </img> <span></span>

dacă și numai dacă

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><munder><mo movablelimits="true"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi><mo stretchy="false"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo><mi> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi></mrow></munder><mrow><mo> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi><mo stretchy="false"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo><mi> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi><mo stretchy="false"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo></mrow><mrow><mi> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi><mo stretchy="false"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo><mi> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi><mo stretchy="false"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo></mrow></mfrac></mrow><mo> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo></mrow><mo> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo><mi mathvariant="normal"> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mi><mo> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </mo></mstyle></mrow> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> <math>\limsup_{x\to a} \left|\frac{f(x)}{g(x)}\right| < \infty.</math> </img> <span></span>

== Exemplu ==
În uzul tipic, definiția oficială a notației ''O'' nu este folosită direct; mai degrabă, notația ''O'' pentru o funcție {{Math|''f''}} se deduce din următoarele reguli de simplificare:

* Dacă {{Math|''f(x)''}} este o sumă de câțiva termeni, dacă există unul cu cea mai mare viteză de creștere, el poate fi păstrat și toți ceilalți omiși.
* Dacă {{Math|''f(x)''}} este un produs al mai multor factori, orice constantă (termen din produs care nu depinde de {{Math|''x''}}) poate fi omisă.

De exemplu, fie ''f'' ( ''x'' ) = 6 ''x'' <sup>4</sup> &nbsp; - &nbsp; 2 ''x'' <sup>3</sup> &nbsp; + &nbsp; 5 și se presupune că se dorește simplificarea acestei funcții, folosind notația ''O'', pentru a descrie viteza de creștere a acesteia când {{Math|''x''}} tinde la infinit. Această funcție este suma a trei termeni: 6''x''<sup>4</sup> , -2''x''<sup>3</sup> și 5. Din cei trei termeni, cel cu cea mai mare viteză de creștere este cel cu cel mai mare exponent în funcție de {{Math|''x''}}, și anume 6''x''<sup>4</sup>. Acum se poate aplica a doua regulă: 6 ''x'' <sup>4</sup> este un produs de 6 și ''x''<sup>4</sup> în care primul factor nu depinde de {{Math|''x''}}. Omiterea acestui factor are ca rezultat forma simplificată ''x''<sup>4</sup>. Astfel, spunem că {{Math|''f(x)''}} este un „big-O” al lui (''x''<sup>4</sup>). Matematic, putem scrie ''f'' ( ''x'' ) &nbsp; = &nbsp; ''O'' ( ''x'' <sup>4</sup> ). Se poate confirma acest calcul folosind definiția formală: fie ''f'' ( ''x'' ) &nbsp; = &nbsp; 6 ''x'' <sup>4</sup> &nbsp; - &nbsp; 2 ''x'' <sup>3</sup> &nbsp; + &nbsp; 5 și ''g'' ( ''x'' ) &nbsp; = &nbsp; ''x'' <sup>4</sup> . Aplicând [[Big O notation#Formal definition|definiția formală]] de mai sus, afirmația că ''f'' ( ''x'' ) &nbsp; = &nbsp; ''O'' ( ''x'' <sup>4</sup> ) este echivalentă cu expansiunea sa,

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M x^4</math> </mo></mrow><mi> <math>|f(x)| \le \; M x^4</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M x^4</math> </mo><mi> <math>|f(x)| \le \; M x^4</math> </mi><mo stretchy="false"> <math>|f(x)| \le \; M x^4</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M x^4</math> </mo></mrow><mo> <math>|f(x)| \le \; M x^4</math> </mo><mi> <math>|f(x)| \le \; M x^4</math> </mi><msup><mi> <math>|f(x)| \le \; M x^4</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>|f(x)| \le \; M x^4</math> </mn></mrow></msup></mstyle></mrow> </math><math>|f(x)| \le \; M x^4</math> <math>|f(x)| \le \; M x^4</math> </img> <span></span>

pentru un {{Math|''x<sub>0</sub>''}} și un {{Math|''M''}} aleși adecvat și pentru orice {{Math|''x > x<sub>0</sub>''}} . Pentru a demonstra acest lucru, fie {{Math|1=''x<sub>0</sub> = 1''}} și {{Math|1=''M = 13''}}. Atunci pentru orice {{Math|''x > x<sub>0</sub>''}}:

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mtable displaystyle="true" rowspacing="3pt"><mtr><mtd><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo></mrow><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo></mrow></mtd><mtd><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo></mrow><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo></mrow><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mtd></mtr><mtr><mtd><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup></mtd></mtr><mtr><mtd><mo> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mo><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn><msup><mi> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </mn></mrow></msup></mtd></mtr></mtable></mrow></mstyle></mrow> </math><math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\
&\le 6x^4 + 2x^4 + 5x^4\\
&= 13x^4\end{align}</math> </img> <span></span>

așa că

== Utilizare ==
Notația Big O are două domenii principale de aplicare:

* în [[matematică]] , este utilizată în mod obișnuit pentru a descrie [[Big O notation#Infinitesimal asymptotics|cât de aproape este o serie finită aproximând o anumită funcție]], în special în cazul unei [[Serie Taylor|serii Taylor]] trunchiate sau al unei [[Asymptotic expansion|dezvoltări asimptotice]]
* în [[Informatică|domeniul informaticii]], este utilă în [[Big O notation#Infinite asymptotics|analiza algoritmilor]]

În ambele aplicații, funcția {{Math|''g(x)''}} care apare în cadrul lui ''O'' (...) este de obicei aleasă așa încât să fie cât mai simplă posibil, omițând factori constanți și termeni de ordin inferior.

Există două utilizări formale apropiate, dar cu totul diferite, ale acestei notații:

* asimptotica [[Infinit|infinită]]
* asimptotica [[Infinitezimal|infinitezimală]].

Distincția aceasta există doar în practică, nu și în principiu{{Mdash}} definiția formală pentru „big O” este aceeași pentru ambele cazuri, cu limite diferite pentru argumentul funcției.

=== Asimptotica infinită ===
[[Fișier:Comparison_computational_complexity.svg|miniatura| Graficele funcțiilor utilizate în mod obișnuit în analiza algoritmilor, care arată numărul de operații {{Math|''N''}} în raport cu dimensiunea intrării {{Math|''n''}} pentru fiecare funcție ]]
Notația Big O este utilă atunci când se [[Analysis of algorithms|analizează eficiența algoritmilor]]. De exemplu, timpul (sau numărul de pași) necesar pentru a rezolva o problemă de dimensiune {{Math|''n''}} poate fi găsit a fi ''T'' ( ''n'' ) = 4 ''n'' <sup>2</sup> - 2 ''n'' + 2. Când {{Math|''n''}} crește foarte mult, termenul {{Math|''n<sup>2</sup>''}} ajunge să domine, astfel încât toți ceilalți termeni pot fi neglijați, de exemplu, atunci când {{Math|1=''n'' = 500}}, termenul {{Math|4''n''<sup>2</sup>}} este de 1000 de ori mai mare ca termenul {{Math|2''n''}}. Ignorarea acestuia din urmă ar avea un efect neglijabil asupra valorii expresiei pentru cele mai multe scopuri. Mai mult, [[Coeficient|coeficienții]] devin irelevanți dacă comparăm cu oricare alt ordin al expresiei, cum ar fi o expresie care conține un termen {{Math|''n''<sup>3</sup>}} sau {{Math|''n''<sup>4</sup>}}''.'' Chiar dacă {{Math|1=''T(n)'' = 1.000.000 ''n''<sup>2</sup>}}, dacă {{Math|1=''U(n)'' = ''n''<sup>3</sup>}}, acesta din urmă îl va depăși întotdeauna pe primul când {{Math|''n''}} crește mai mare decât 1.000.000 ({{Math|1=''T''(1.000.000) = 1.000.000<sup>3</sup> = ''U''(1.000.000)}}). În plus, numărul de pași depinde de detaliile modelului mașinii pe care rulează algoritmul, dar diferite tipuri de mașini variază de obicei doar printr-un factor constant în numărul de pași necesari pentru executarea unui algoritm. Deci, notația Big O surprinde ceea ce rămâne: se scrie fie

fie

și se spune că algoritmul are complexitate de ''ordinul'' {{Math|''n''<sup>2</sup>}}. Egalul nu mai reprezintă aici egalitate în sensul matematic normal, ci mai degrabă un „este“ mai popular, astfel încât a doua expresie este uneori considerată mai precisă (a se vedea discuția de mai jos despre [[#Semnul egal|semnul egal]]) în timp ce prima este considerată de unii ca un [[Abuse of notation|abuz de notație]].<ref name="Introduction to Algorithms">Thomas H. Cormen et al., 2001, [http://highered.mcgraw-hill.com/sites/0070131511/ Introduction to Algorithms, Second Edition]{{Necesită pagina|date=February 2016}}</ref>

=== Asimptotica infinitezimală ===
Big O poate fi folosită și pentru a descrie [[Serie Taylor|termenul de eroare]] într-o aproximare a unei funcții matematice. Termenii cei mai semnificativi sunt scriși explicit, iar termenii cel mai puțin semnificativi sunt rezumați într-un singur termen Big O. Considerăm, de exemplu, [[Exponential function#Formal definition|seria exponențială]] și două expresii ale acesteia care sunt valabile atunci când {{Math|''x''}} este mic:

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mtable displaystyle="true" rowspacing="3pt"><mtr><mtd><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi></mrow></msup></mtd><mtd><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mrow></msup><mrow><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo></mrow></mfrac></mrow><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mrow></msup><mrow><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo></mrow></mfrac></mrow><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mrow></msup><mrow><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo></mrow></mfrac></mrow><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mtext></mrow><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi></mtd></mtr><mtr><mtd><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mrow></msup><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mfrac></mrow><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo stretchy="false"> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mrow></msup><mo stretchy="false"> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mtext></mrow><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo stretchy="false"> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mtd></mtr><mtr><mtd><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo stretchy="false"> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><msup><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mrow></msup><mo stretchy="false"> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mtext></mrow><mi> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mi><mo stretchy="false"> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mo><mn> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </mn></mtd></mtr></mtable></mrow></mstyle></mrow> </math><math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> <math>\begin{align}
e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\
&=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\
&=1+x+O(x^2) &\text{as } x\to 0\\
\end{align}</math> </img> <span></span>

Cea de a doua expresie (cea cu {{Math|''O''(''x''<sup>3</sup>)}}) înseamnă că valoarea absolută a erorii {{Math|e<sup>''x''</sup> - (1 + ''x''<sup>2</sup>/2)}} este de cel mult o constantă înmulțită cu {{Math|{{!}} ''x''<sup>3</sup> {{!}}}} când {{Math|''x''}} este suficient de aproape de 0.

== Proprietăți ==
Dacă funcția {{Math|''f''}} poate fi scrisă ca o sumă finită a altor funcții, atunci cea mai rapidă creștere determină ordinul lui {{Math|''f''(''n'')}}. De exemplu,

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><msup><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn></mrow></msup><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn><msup><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn></mrow></msup><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn><msup><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn></mrow></msup><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><msup><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mn></mrow></msup><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mtext></mrow><mi> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo stretchy="false"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo><mi mathvariant="normal"> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mi><mo> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </mo></mstyle></mrow> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> <math>f(n) = 9 \log n + 5 (\log n)^4 + 3n^2 + 2n^3 = O(n^3) \qquad\text{as } n\to\infty .</math> </img> <span></span>

În special, dacă o funcție poate fi legată de un polinom în {{Math|''n''}}, atunci când {{Math|''n''}} tinde spre ''infinit'', se pot ignora termenii de ''grad mai mic'' ai polinomului. De asemenea, mulțimile {{Math|''O''(''n''<sup>''c''</sup>)}} și {{Math|''O''(''c''<sup>''n''</sup>)}} sunt foarte diferiți. Dacă ''c'' este mai mare decât unu, atunci acesta crește mult mai repede. O funcție care crește mai repede decât {{Math|''n''<sup>''c''</sup>}} pentru oricare {{Math|''c''}} se numește ''superpolinomială''. Una care crește mai lent decât orice funcție exponențială de forma {{Math|''c''<sup>''n''</sup>}} se numește ''subexponențială''. Un algoritm poate necesita timp atât superpolimonial cât și subexponențial; printre astfel de exemple se numără algoritmii cei mai rapizi cunoscuți pentru [[Factorizarea întregilor|factorizarea numerelor întregi]] și funcția {{Math|''n''<sup>log ''n''</sup>}}.

Se poate ignora orice putere a lui {{Math|''n''}} din interiorul logaritmilor. Mulțimea {{Math|''O'' (log ''n'')}} este exact același cu {{Math|''O'' (log ''n''<sup>c</sup>)}}. Logaritmii diferă numai printr-un factor constant (întrucât {{Math|1=log ''n''<sup>''c''</sup> = ''c'' log ''n''}}) și astfel notația Big O ignoră termenul. Similar, logaritmii cu diferite baze constante sunt echivalenți. Pe de altă parte, exponențialele cu baze diferite nu sunt de același ordin. De exemplu, {{Math|2<sup>''n''</sup>}} nu este același lucru cu {{Math|3<sup>''n''</sup>}}.

Schimbarea unităților poate sau nu poate afecta ordinul algoritmului rezultat. Modificarea unităților este echivalentă cu înmulțirea variabilei corespunzătoare cu o constantă oriunde apare. De exemplu, dacă un algoritm rulează în timp de ordinul lui {{Math|''n''<sup>2</sup>}}, înlocuirea {{Math|''n''}} cu {{Math|''cn''}} înseamnă că algoritmul rulează în timp de ordinul lui {{Math|''c''<sup>2</sup>''n''<sup>2</sup>}}, iar notația Big O ignoră constanta {{Math|''c''<sup>2</sup>}}. Aceasta se poate scrie ca {{Math|1=''c''<sup>2</sup>''n''<sup>2</sup> = ''O''(''n''<sup>2</sup>)}}. Dacă, totuși, un algoritm rulează în timp de ordinul lui {{Math|2<sup>''n''</sup>}}, înlocuirea lui {{Math|''n''}} cu {{Math|''cn''}} dă timp de ordinul {{Math|1=2<sup>''cn''</sup> = (2<sup>''c''</sup>)<sup>''n''</sup>}}. Aceasta nu este echivalentă cu {{Math|2<sup>''n''</sup>}} în general. Schimbarea variabilelor poate afecta, de asemenea, ordinul algoritmului rezultat. De exemplu, dacă timpul de execuție al algoritmului este {{Math|''O''(''n'')}} atunci când este măsurat în termeni de număr {{Math|''n''}} de ''cifre'' al unui număr de intrare {{Math|''x''}}, timpul său de execuție este {{Math|''O''(log ''x'')}} ca funcție de numărul de intrare ''x'' însuși, deoarece {{Math|1=''n'' = ''O''(log ''x'')}}.

=== Produsul ===

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mtext></mrow><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mn></mrow></msub><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </mo></mstyle></mrow> </math><math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)</math> </img> <span></span>
: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f\cdot O(g) = O(f g)</math> </mi><mo> <math>f\cdot O(g) = O(f g)</math> </mo><mi> <math>f\cdot O(g) = O(f g)</math> </mi><mo stretchy="false"> <math>f\cdot O(g) = O(f g)</math> </mo><mi> <math>f\cdot O(g) = O(f g)</math> </mi><mo stretchy="false"> <math>f\cdot O(g) = O(f g)</math> </mo><mo> <math>f\cdot O(g) = O(f g)</math> </mo><mi> <math>f\cdot O(g) = O(f g)</math> </mi><mo stretchy="false"> <math>f\cdot O(g) = O(f g)</math> </mo><mi> <math>f\cdot O(g) = O(f g)</math> </mi><mi> <math>f\cdot O(g) = O(f g)</math> </mi><mo stretchy="false"> <math>f\cdot O(g) = O(f g)</math> </mo></mstyle></mrow> </math><math>f\cdot O(g) = O(f g)</math> <math>f\cdot O(g) = O(f g)</math> </img> <span></span>

=== Suma ===

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mtext></mrow><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><msub><mi> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mn></mrow></msub><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo><mo stretchy="false"> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </mo></mstyle></mrow> </math><math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> <math> f_1 = O(g_1) \text{ and }
f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))</math> </img> <span></span>

Asta implică <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mn></mrow></msub><mo> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mtext></mrow><msub><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mn></mrow></msub><mo> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><msub><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mn></mrow></msub><mo> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><msub><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mn></mrow></msub><mo> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mi><mo stretchy="false"> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </mo></mstyle></mrow> </math><math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) </math> </img> <span></span> , ceea ce înseamnă că <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(g)</math> </mi><mo stretchy="false"> <math>O(g)</math> </mo><mi> <math>O(g)</math> </mi><mo stretchy="false"> <math>O(g)</math> </mo></mstyle></mrow> </math><math>O(g)</math> <math>O(g)</math> </img> <span></span> este un con convex .

=== Înmulțirea cu o constantă ===

: Fie {{Math|''k''}} o constantă. Atunci:
: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\ O(|k| g) = O(g)</math> </mi><mo stretchy="false"> <math>\ O(|k| g) = O(g)</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\ O(|k| g) = O(g)</math> </mo></mrow><mi> <math>\ O(|k| g) = O(g)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\ O(|k| g) = O(g)</math> </mo></mrow><mi> <math>\ O(|k| g) = O(g)</math> </mi><mo stretchy="false"> <math>\ O(|k| g) = O(g)</math> </mo><mo> <math>\ O(|k| g) = O(g)</math> </mo><mi> <math>\ O(|k| g) = O(g)</math> </mi><mo stretchy="false"> <math>\ O(|k| g) = O(g)</math> </mo><mi> <math>\ O(|k| g) = O(g)</math> </mi><mo stretchy="false"> <math>\ O(|k| g) = O(g)</math> </mo></mstyle></mrow> </math><math>\ O(|k| g) = O(g)</math> <math>\ O(|k| g) = O(g)</math> </img> <span></span> dacă {{Math|''k''}} este nenul.
: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mo> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mo stretchy="false"> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mo stretchy="false"> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mo stretchy="false"> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mo> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mo stretchy="false"> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mi> <math>f= O(g) \Rightarrow kf = O(g). </math> </mi><mo stretchy="false"> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo><mo> <math>f= O(g) \Rightarrow kf = O(g). </math> </mo></mstyle></mrow> <math>f= O(g) \Rightarrow kf = O(g). </math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>f= O(g) \Rightarrow kf = O(g). </math> <math>f= O(g) \Rightarrow kf = O(g). </math> </img> <span></span>

== Mai multe variabile ==
Big ''O'' (și little o, Ω, etc.) pot fi utilizate și cu mai multe variabile. Pentru a defini Big ''O'' în mod formal pentru mai multe variabile, se presupune că {{Math|''f''}} și {{Math|''g''}} sunt două funcții definite pe o anumită submulțime a lui <math>\mathbb{R}^n</math> </img> <span></span>. Se spune că

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo></mover></mrow></mrow><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mtext></mrow><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo></mover></mrow></mrow><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mtext></mrow><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo></mover></mrow></mrow><mo stretchy="false"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mo><mi mathvariant="normal"> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </mi></mstyle></mrow> </math><math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty</math> </img> <span></span>

dacă și numai dacă <ref>{{Citat carte|nume=Cormen|prenume=Thomas|nume2=Leiserson|prenume2=Charles|nume3=Rivest|prenume3=Ronald|nume4=Stein|prenume4=Clifford|titlu=Introduction to Algorithms|dată=2009|editură=MIT|pagină=53|ediție=Third}}</ref>

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mi mathvariant="normal"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mn> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mn><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mtext></mrow><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mover></mrow></mrow><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mtext></mrow><msub><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi></mrow></msub><mo> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mtext></mrow><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mrow><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mover></mrow></mrow><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mrow><mo> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mrow><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mi><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mover></mrow></mrow><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mrow><mo> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </mo></mstyle></mrow> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> <math>\exists M\,\exists C>0\text{ such that for all }\vec{x} \text{ with } x_i \ge M \text{ for some }i, |f(\vec{x})| \le C |g(\vec{x})|.</math> </img> <span></span>

În mod echivalent, condiția <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math>x_i \geq M</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>x_i \geq M</math> </mi></mrow></msub><mo> <math>x_i \geq M</math> </mo><mi> <math>x_i \geq M</math> </mi></mstyle></mrow> </math><math>x_i \geq M</math> <math>x_i \geq M</math> </img> <span></span> pentru unii <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>i</math> </mi></mstyle></mrow> </math><math>i</math> <math>i</math> </img> <span></span> poate fi înlocuită cu condiția <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo fence="false" stretchy="false"> <math>\|\vec{x}\|_{\infty} \ge M</math> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\|\vec{x}\|_{\infty} \ge M</math> </mi><mo stretchy="false"> <math>\|\vec{x}\|_{\infty} \ge M</math> </mo></mover></mrow></mrow><msub><mo fence="false" stretchy="false"> <math>\|\vec{x}\|_{\infty} \ge M</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi mathvariant="normal"> <math>\|\vec{x}\|_{\infty} \ge M</math> </mi></mrow></msub><mo> <math>\|\vec{x}\|_{\infty} \ge M</math> </mo><mi> <math>\|\vec{x}\|_{\infty} \ge M</math> </mi></mstyle></mrow> </math><math>\|\vec{x}\|_{\infty} \ge M</math> <math>\|\vec{x}\|_{\infty} \ge M</math> </img> <span></span> , unde cu <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo fence="false" stretchy="false"> <math>\|\vec{x}\|_{\infty}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\|\vec{x}\|_{\infty}</math> </mi><mo stretchy="false"> <math>\|\vec{x}\|_{\infty}</math> </mo></mover></mrow></mrow><msub><mo fence="false" stretchy="false"> <math>\|\vec{x}\|_{\infty}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi mathvariant="normal"> <math>\|\vec{x}\|_{\infty}</math> </mi></mrow></msub></mstyle></mrow> </math><math>\|\vec{x}\|_{\infty}</math> <math>\|\vec{x}\|_{\infty}</math> </img> <span></span> se notează [[Chebyshev norm|norma Cebîșev]]. De exemplu, afirmația

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mo> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><msup><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mn></mrow></msup><mo> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><msup><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mn></mrow></msup><mo> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mtext></mrow><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mo><mi mathvariant="normal"> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </mi></mstyle></mrow> </math><math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty</math> </img> <span></span>

spune că există constantele {{Math|''C''}} și {{Math|''M''}} astfel încât

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo fence="false" stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><msub><mo fence="false" stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi mathvariant="normal"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi></mrow></msub><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo></mrow><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo></mrow><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo></mrow><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo><mi> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo></mrow><mo> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </mo></mstyle></mrow> </math><math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,</math> </img> <span></span>

unde {{Math|''g''(''n'', ''m'')}} se definește ca

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mo> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mo> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><msup><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mn></mrow></msup><mo> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><msup><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mn></mrow></msup><mo> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mo> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mi> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mi><mo stretchy="false"> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo><mo> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </mo></mstyle></mrow> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>f(n,m) = n^2 + m^3 + g(n,m).</math> <math>f(n,m) = n^2 + m^3 + g(n,m).</math> </img> <span></span>

Această definiție permite ca toate coordonatele lui<math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\vec{x}</math> </mi><mo stretchy="false"> <math>\vec{x}</math> </mo></mover></mrow></mrow></mstyle></mrow> </math><math>\vec{x}</math> <math>\vec{x}</math> </img> <span></span> să crească până la infinit. În special, afirmația

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mo> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mo> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><msup><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi></mrow></msup><mo stretchy="false"> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mtext></mrow><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mo> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi><mo stretchy="false"> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mo><mi mathvariant="normal"> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </mi></mstyle></mrow> </math><math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty</math> </img> <span></span>

( de exemplu, <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi mathvariant="normal"> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi mathvariant="normal"> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi mathvariant="normal"> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mi> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mi><mo> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </mo></mstyle></mrow> </math><math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> <math>\exists C\,\exists M\,\forall n\,\forall m\dots</math> </img> <span></span> ) este destul de diferită de

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mo> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mo stretchy="false"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mo> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mo stretchy="false"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mo> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mo stretchy="false"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><msup><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi></mrow></msup><mo stretchy="false"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mtext></mrow><mi> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi><mo stretchy="false"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mo><mi mathvariant="normal"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </mi></mstyle></mrow> </math><math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty</math> </img> <span></span>

( de exemplu, <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi mathvariant="normal"> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi mathvariant="normal"> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi mathvariant="normal"> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mi> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mi><mo> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </mo></mstyle></mrow> </math><math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> <math>\forall m\,\exists C\,\exists M\,\forall n\dots</math> </img> <span></span> ).

Sub această definiție, submulțimea pe care este definită o funcție este semnificativă atunci când se generalizează afirmațiile de la contextul univariabilă la cel multivariabilă. De exemplu, dacă <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m)=1</math> </mi><mo stretchy="false"> <math>f(n,m)=1</math> </mo><mi> <math>f(n,m)=1</math> </mi><mo> <math>f(n,m)=1</math> </mo><mi> <math>f(n,m)=1</math> </mi><mo stretchy="false"> <math>f(n,m)=1</math> </mo><mo> <math>f(n,m)=1</math> </mo><mn> <math>f(n,m)=1</math> </mn></mstyle></mrow> </math><math>f(n,m)=1</math> <math>f(n,m)=1</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(n,m)=n</math> </mi><mo stretchy="false"> <math>g(n,m)=n</math> </mo><mi> <math>g(n,m)=n</math> </mi><mo> <math>g(n,m)=n</math> </mo><mi> <math>g(n,m)=n</math> </mi><mo stretchy="false"> <math>g(n,m)=n</math> </mo><mo> <math>g(n,m)=n</math> </mo><mi> <math>g(n,m)=n</math> </mi></mstyle></mrow> </math><math>g(n,m)=n</math> <math>g(n,m)=n</math> </img> <span></span> , atunci <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo stretchy="false"> <math>f(n,m)=O(g(n,m))</math> </mo><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo> <math>f(n,m)=O(g(n,m))</math> </mo><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo stretchy="false"> <math>f(n,m)=O(g(n,m))</math> </mo><mo> <math>f(n,m)=O(g(n,m))</math> </mo><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo stretchy="false"> <math>f(n,m)=O(g(n,m))</math> </mo><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo stretchy="false"> <math>f(n,m)=O(g(n,m))</math> </mo><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo> <math>f(n,m)=O(g(n,m))</math> </mo><mi> <math>f(n,m)=O(g(n,m))</math> </mi><mo stretchy="false"> <math>f(n,m)=O(g(n,m))</math> </mo><mo stretchy="false"> <math>f(n,m)=O(g(n,m))</math> </mo></mstyle></mrow> </math><math>f(n,m)=O(g(n,m))</math> <math>f(n,m)=O(g(n,m))</math> </img> <span></span> dacă se restrâng <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f</math> </mi></mstyle></mrow> </math><math>f</math> <math>f</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g</math> </mi></mstyle></mrow> </math><math>g</math> <math>g</math> </img> <span></span> la <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>[1,\infty)^2</math> </mo><mn> <math>[1,\infty)^2</math> </mn><mo> <math>[1,\infty)^2</math> </mo><mi mathvariant="normal"> <math>[1,\infty)^2</math> </mi><msup><mo stretchy="false"> <math>[1,\infty)^2</math> </mo><mrow class="MJX-TeXAtom-ORD"><mn> <math>[1,\infty)^2</math> </mn></mrow></msup></mstyle></mrow> </math><math>[1,\infty)^2</math> <math>[1,\infty)^2</math> </img> <span></span> , dar nu dacă acestea sunt definite pe <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>[0,\infty)^2</math> </mo><mn> <math>[0,\infty)^2</math> </mn><mo> <math>[0,\infty)^2</math> </mo><mi mathvariant="normal"> <math>[0,\infty)^2</math> </mi><msup><mo stretchy="false"> <math>[0,\infty)^2</math> </mo><mrow class="MJX-TeXAtom-ORD"><mn> <math>[0,\infty)^2</math> </mn></mrow></msup></mstyle></mrow> </math><math>[0,\infty)^2</math> <math>[0,\infty)^2</math> </img> <span></span> .

Aceasta nu este singura generalizare a funcțiilor Big O la funcții multivariabilă, iar în practică există o anumită inconsistență în alegerea definiției. <ref>{{Citat web|url=http://people.cis.ksu.edu/~rhowell/asymptotic.pdf|nume=Howell|accessdate=2015-04-23|first1=Rodney|titlu=On Asymptotic Notation with Multiple Variables}}</ref>

== Chestiuni de notație ==

=== Semnul egal ===
Afirmația {{Math|''f''(''x'')}} este {{Math|''O''(''g''(''x''))}}, așa cum este definită mai sus, se scrie de obicei ca {{Math|1=''f''(''x'') = ''O''(''g''(''x''))}}. Unii consideră că acest lucru este un [[Abuse of notation|abuz de notație]], deoarece utilizarea semnului egal ar putea fi înșelătoare, deoarece sugerează o simetrie, pe care această afirmație nu o are. După cum spune [[Nicolaas Govert de Bruijn|de Bruijn]], este adevărat că {{Math|1=''O''(''x'') = ''O''(''x''<sup>2</sup>)}}, dar nu și că {{Math|1=''O''(''x''<sup>2</sup>) = ''O''(''x'')}}.<ref>{{Citat carte|nume=[[N. G. de Bruijn]]|titlu=Asymptotic Methods in Analysis|locul-publicării=Amsterdam|editură=North-Holland|an=1958|pagini=5–7|url=https://books.google.com/books?id=_tnwmvHmVwMC&pg=PA5&vq=%22The+trouble+is%22|isbn=978-0-486-64221-5}}</ref> [[Donald E. Knuth|Knuth]] denumește astfel de afirmații „egalități unidirecționale”, deoarece dacă s-ar inversa cele două părți, „am putea deduce lucruri ridicole cum ar fi {{Math|1=''n'' = ''n''<sup>2</sup>}} din identitățile {{Math|1=''n'' = ''O''(''n''<sup>2</sup>)}}și {{Math|1=''n''<sup>2</sup> = ''O''(''n''<sup>2</sup>)}}.” <ref name="Concrete Mathematics">{{Citat carte|nume=Graham|prenume=Ronald|legătură-autor=Ronald Graham|prenume2=Donald|nume2=Knuth|legătură-autor2=Donald Knuth|nume3=Patashnik|prenume3=Oren|legătură-autor3=Oren Patashnik|titlu=Concrete Mathematics|locul-publicării=Reading, Massachusetts|editură=Addison–Wesley|ediție=2|dată=1994|pagină=446|url=https://books.google.com/books?id=pntQAAAAMAAJ|isbn=978-0-201-55802-9}}</ref>

Din aceste motive, ar fi mai precis să folosim [[Set notation|notația mulțimilor]] și să scriem {{Math|''f''(''x'') ∈ ''O''(''g''(''x''))}}, considerând {{Math|''O''(''g''(''x''))}} ca clasă a tuturor funcțiilor {{Math|''h''(''x'')}} astfel încât {{Math|{{!}} ''h''(''x'') {{!}} ≤ ''C'' {{!}} ''g''(''x'') {{!}}}} pentru o constantă {{Math|''C''}}''.''<ref name="Concrete Mathematics">{{Citat carte|nume=Graham|prenume=Ronald|legătură-autor=Ronald Graham|prenume2=Donald|nume2=Knuth|legătură-autor2=Donald Knuth|nume3=Patashnik|prenume3=Oren|legătură-autor3=Oren Patashnik|titlu=Concrete Mathematics|locul-publicării=Reading, Massachusetts|editură=Addison–Wesley|ediție=2|dată=1994|pagină=446|url=https://books.google.com/books?id=pntQAAAAMAAJ|isbn=978-0-201-55802-9}}</ref> Cu toate acestea, utilizarea semnului egal este obișnuită. Knuth a subliniat că „matematicienii folosesc în mod obișnuit semnul = așa cum folosesc cuvântul «este» în limba engleză: Aristotel este un om, dar un om nu este neapărat Aristotel.”<ref>{{Citat revistă|nume=Donald Knuth|dată=June–July 1998|titlu=Teach Calculus with Big O|url=http://www.ams.org/notices/199806/commentary.pdf|journal=[[Notices of the American Mathematical Society]]|volum=45|număr=6|pagină=687}} ([http://www-cs-staff.stanford.edu/~knuth/ocalc.tex Unabridged version])</ref>

=== Alți operatori aritmetici ===
Notația Big O poate fi utilizată și în combinație cu alți operatori aritmetici în ecuații mai complicate. De exemplu, cu {{Math|''h''(''x'') + ''O''(''f''(''x''))}} se notează colecția de funcții având creșterea {{Math|''h''(''x'')}} plus o parte a cărei creștere este limitată la {{Math|''f''(''x'')}}. Prin urmare,

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mo> <math>g(x) = h(x) + O(f(x))</math> </mo><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mo> <math>g(x) = h(x) + O(f(x))</math> </mo><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mi> <math>g(x) = h(x) + O(f(x))</math> </mi><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo><mo stretchy="false"> <math>g(x) = h(x) + O(f(x))</math> </mo></mstyle></mrow> </math><math>g(x) = h(x) + O(f(x))</math> <math>g(x) = h(x) + O(f(x))</math> </img> <span></span>

exprimă același lucru ca și

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mo> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mo> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mi> <math>g(x) - h(x) = O(f(x))\,.</math> </mi><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mo stretchy="false"> <math>g(x) - h(x) = O(f(x))\,.</math> </mo><mo> <math>g(x) - h(x) = O(f(x))\,.</math> </mo></mstyle></mrow> <math>g(x) - h(x) = O(f(x))\,.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>g(x) - h(x) = O(f(x))\,.</math> <math>g(x) - h(x) = O(f(x))\,.</math> </img> <span></span>

==== Exemplu ====
Să presupunem că se dezvoltă un [[algoritm]] care să funcționeze pe o mulțime de {{Math|''n''}} elemente. Dezvoltatorii săi sunt interesați să găsească o funcție {{Math|''T''(''n'')}} care să exprime cât timp va dura rularea algoritmului (în unele măsurători arbitrare ale timpului) în termeni de număr de elemente din mulțimea de intrare. Algoritmul funcționează apelând mai întâi o subrutină pentru sortarea elementelor din mulțime și efectuarea propriilor operații. Sortarea are o complexitate în timp cunoscută de {{Math|''O''(''n''<sup>2</sup>)}}, iar după executarea subrutinei algoritmul trebuie să mai ruleze încă {{Math|55''n''<sup>3</sup> + 2''n'' + 10}} pași înainte de a se termina. Astfel, complexitatea în timp a algoritmului poate fi exprimată ca {{Math|1=''T''(''n'') = 55 ''n''<sup>3</sup> + ''O''(''n''<sup>2</sup>).}} Aici termenii {{Math|2''n'' + 10}} sunt subsumați în cadrul lui {{Math|''O''(''n''<sup>2</sup>)}} cu creștere mai rapidă. Din nou, această utilizare ignoră o parte din semnificația formală a simbolului „=”, dar permite utilizarea notației Big O ca un substitut convenabil.

=== Utilizări multiple ===
În utilizarea mai complicată, ''O'' (...) poate să apară în diferite locuri într-o ecuație, chiar și de mai multe ori pe fiecare parte. De exemplu, următoarele sunt valabile pentru <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>n\to\infty</math> </mi><mo stretchy="false"> <math>n\to\infty</math> </mo><mi mathvariant="normal"> <math>n\to\infty</math> </mi></mstyle></mrow> </math><math>n\to\infty</math> <math>n\to\infty</math> </img> <span></span>

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>(n+1)^2 = n^2 + O(n)</math> </mo><mi> <math>(n+1)^2 = n^2 + O(n)</math> </mi><mo> <math>(n+1)^2 = n^2 + O(n)</math> </mo><mn> <math>(n+1)^2 = n^2 + O(n)</math> </mn><msup><mo stretchy="false"> <math>(n+1)^2 = n^2 + O(n)</math> </mo><mrow class="MJX-TeXAtom-ORD"><mn> <math>(n+1)^2 = n^2 + O(n)</math> </mn></mrow></msup><mo> <math>(n+1)^2 = n^2 + O(n)</math> </mo><msup><mi> <math>(n+1)^2 = n^2 + O(n)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>(n+1)^2 = n^2 + O(n)</math> </mn></mrow></msup><mo> <math>(n+1)^2 = n^2 + O(n)</math> </mo><mi> <math>(n+1)^2 = n^2 + O(n)</math> </mi><mo stretchy="false"> <math>(n+1)^2 = n^2 + O(n)</math> </mo><mi> <math>(n+1)^2 = n^2 + O(n)</math> </mi><mo stretchy="false"> <math>(n+1)^2 = n^2 + O(n)</math> </mo></mstyle></mrow> </math><math>(n+1)^2 = n^2 + O(n)</math> <math>(n+1)^2 = n^2 + O(n)</math> </img> <span></span>
: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><msup><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mn><mrow class="MJX-TeXAtom-ORD"><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo></mrow><mn> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mn></mrow></msup><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><msup><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mrow class="MJX-TeXAtom-ORD"><mn> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mn></mrow></msup><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><msup><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mn></mrow></msup><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo><msup><mi> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mn><mrow class="MJX-TeXAtom-ORD"><mo> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo></mrow><mn> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mn></mrow></msup><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </mo></mstyle></mrow> </math><math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})</math> </img> <span></span>
: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msup><mi> <math>n^{O(1)} = O(e^n).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>n^{O(1)} = O(e^n).</math> </mi><mo stretchy="false"> <math>n^{O(1)} = O(e^n).</math> </mo><mn> <math>n^{O(1)} = O(e^n).</math> </mn><mo stretchy="false"> <math>n^{O(1)} = O(e^n).</math> </mo></mrow></msup><mo> <math>n^{O(1)} = O(e^n).</math> </mo><mi> <math>n^{O(1)} = O(e^n).</math> </mi><mo stretchy="false"> <math>n^{O(1)} = O(e^n).</math> </mo><msup><mi> <math>n^{O(1)} = O(e^n).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>n^{O(1)} = O(e^n).</math> </mi></mrow></msup><mo stretchy="false"> <math>n^{O(1)} = O(e^n).</math> </mo><mo> <math>n^{O(1)} = O(e^n).</math> </mo></mstyle></mrow> <math>n^{O(1)} = O(e^n).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>n^{O(1)} = O(e^n).</math> <math>n^{O(1)} = O(e^n).</math> </img> <span></span>

Semnificația acestor afirmații este următoarea: pentru ''orice'' funcție care satisface fiecare ''O'' (...) din partea stângă, există ''câteva'' funcții care satisfac fiecare ''O'' (...) din partea dreaptă, astfel încât substituind toate aceste funcții, ecuația face ca cele două părți să fie egale. De exemplu, a treia ecuație de mai sus înseamnă: „Pentru orice funcție {{Math|1=''f''(''n'') = ''O''(1)}}, există o funcție {{Math|1=''g''(''n'') = ''O''(e<sup>''n''</sup>)}} astfel încât {{Math|1=''n''<sup>''f''(''n'')</sup> = ''g''(''n'')}}.” În ceea ce privește „notația mulțimilor” de mai sus, înțelesul este că clasa de funcții reprezentată de partea stângă este o submulțime a clasei de funcții reprezentate de partea dreaptă. În această utilizare, „=” este un simbol formal care, spre deosebire de utilizarea obișnuită a lui „=”, nu este o [[Symmetric relation|relație simetrică]]. Astfel, de exemplu, {{Math|1=''n''<sup>''O''(1)</sup> = ''O''(e<sup>''n''</sup>)}} nu implică și afirmația falsă {{Math|1=''O''(e<sup>''n''</sup>) = ''n''<sup>''O''(1)</sup>}}

Big O constă doar dintr-un „O” majuscul. Spre deosebire de notațiile cu nume grecești Bachmann-Landau, nu are nevoie de un simbol special. Cu toate acestea, variantele caligrafice frecvent utilizate, cum ar fi <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mi class="MJX-tex-caligraphic" mathvariant="script"> <math>\mathcal{O}</math> </mi></mrow></mrow></mstyle></mrow> </math><math>\mathcal{O}</math> <math>\mathcal{O}</math> </img> <span></span> , sunt disponibile în sistemele [[LaTeX]] și în sisteme de fonturi derivate.<ref>{{Citat web|url=https://texblog.org/2014/06/24/big-o-and-related-notations-in-latex/|nume=Tom|date=24 June 2014|lucrare=texblog|titlu=Big O and related notations in LaTeX}}</ref>

== Ordinul de mărime al unor funcții comune ==
Mai jos sunt enumerate clase de funcții care se întâlnesc frecvent când se analizează timpul de funcționare al unui algoritm. În fiecare caz, {{Math|''c''}} este o constantă pozitivă și {{Math|''n''}} crește fără limitări. Funcțiile cu o creștere mai lentă sunt în general enumerate mai întâi.
{| class="wikitable"
!Notație
!Nume
!Exemple
|-
|<math>O(1)</math>
|[[Complexitate în timp|constantă]]
|Determinarea dacă un număr binar este par sau impar; Calculul lui <math>(-1)^n</math>; Utilizarea unei [[Lookup table|tabele de căutare]] de dimensiuni constante
|-
|<math>O(\log \log n)</math>
|dublu logaritmică
|Numărul de comparații folosit pentru a găsi un element folosind [[Interpolation search|căutarea prin interpolare]] într-un tabel sortat de valori uniform distribuite
|-
|<math>O(\log n)</math>
|[[Complexitate în timp|logaritmică]]
|Găsirea unui element într-un tablou sortat cu [[căutare binară]] sau cu un [[Tree data structure|arbore]] de căutare echilibrat, precum și toate operațiile pe un [[Binomial heap|heap binomial]]
|-
|<math>O((\log n)^c)</math><br /><br /><math>\scriptstyle c>1</math>
|[[Complexitate în timp|polilogaritmică]]
|Ordonarea lanțurilor de matrice poate fi rezolvată în timp polilogaritmic pe o [[RAM paralel|mașină cu acces aleator paralel]].
|-
|<math>O(n^c)</math><br /><br /><math>\scriptstyle 0<c<1</math>
|putere fracționară
|Căutarea într-un [[K-d tree|arbore k-d]]
|-
|<math>O(n)</math>
|[[Complexitate în timp|liniară]]
|Găsirea unui element într-o listă neordonată sau într-un tablou neordonat; adunarea a doi întregi pe {{Math|''n''}} biți prin [[Sumator (electronică)|sumatoare]] cu transport.
|-
|<math>O(n\log^* n)</math>
|n [[log-star]] n
|Efectuarea de triangulații ale unui poligon simplu folosind algoritmul lui Seidel, sau algoritmul union–find. <math>\log^*(n) =
\begin{cases}
0, & \text{if }n \leq 1 \\
1 + \log^*(\log n), & \text{if }n>1
\end{cases}</math>
|-
|<math>O(n\log n)=O(\log n!)</math>
|[[Complexitate în timp|linearitmică]], logliniară, sau cvasiliniară
|Efecturea unei [[Fast Fourier transform|transformări Fourier rapide]]; Cea mai rapidă [[Comparison sort|sortare cu comparație]]; [[heapsort]] and [[merge sort]]
|-
|<math>O(n^2)</math>
|[[Complexitate în timp|pătratică]]
|Înmulțirea a două numere cu {{Math|''n''}} cifre printr-un algoritm simplu; algoritmi de sortare simpli, cum ar fi [[bubble sort]], [[selection sort]] și [[insertion sort]]; limita (în cel mai rău caz) a unor algoritmi de regulă mai rapizi, ca [[quicksort]], [[Shellsort]], și [[tree sort]]
|-
|<math>O(n^c)</math>
|[[Complexitate în timp|polinomială]] sau algebrică
|Parsarea unor [[Tree-adjoining grammar|gramatici cu arbori adjuncți]]; [[Matching (graph theory)|cuplajul]] maxim pentru [[Graf bipartit|grafuri bipartite]]; găsirea [[Determinant (matematică)|determinantului]] prin [[LU decomposition|descompunere LU]]
|-
|<math>L_n[\alpha,c] = e^{(c+o(1)) (\ln n)^\alpha (\ln \ln n)^{1-\alpha}}</math><br /><br /><math>\scriptstyle 0 < \alpha < 1</math>
|[[L-notation|Notația L]] sau[[Complexitate în timp|subexponențială]]
|Factorizarea unui număr folosind [[Quadratic sieve|ciurul pătratic]] sau [[Number field sieve|ciurul algebric]]
|-
|<math>O(c^n)</math><br /><br /><math>\scriptstyle c>1</math>
|[[Complexitate în timp|exponențtială]]
|Găsirea soluției (exacte) a [[Problema comis-voiajorului|problemei comis-voiajorului]] folosind [[Dynamic programming|programare dinamică]]; aflarea dacă două afirmații logice sunt echivalente folosind [[Brute-force search|căutarea cu forță brută]]
|-
|<math>O(n!)</math>
|[[Factorial|factorială]]
|Rezolvarea [[Problema comis-voiajorului|problemei comis-voiajorului]] prin căutarea cu forță brută; generarea tuturor permutațiilor nerestricționate ale unei [[Partially ordered set|mulțimi parțial ordonate]]; găsirea [[Determinant (matematică)|determinantului]] prin [[Teorema lui Laplace (algebră)|dezvoltare Laplace]]; enumerarea [[Bell number|tuturor partițiilor unei mulțimi]]
|}
Afirmația <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n)=O(n!)</math> </mi><mo stretchy="false"> <math>f(n)=O(n!)</math> </mo><mi> <math>f(n)=O(n!)</math> </mi><mo stretchy="false"> <math>f(n)=O(n!)</math> </mo><mo> <math>f(n)=O(n!)</math> </mo><mi> <math>f(n)=O(n!)</math> </mi><mo stretchy="false"> <math>f(n)=O(n!)</math> </mo><mi> <math>f(n)=O(n!)</math> </mi><mo> <math>f(n)=O(n!)</math> </mo><mo stretchy="false"> <math>f(n)=O(n!)</math> </mo></mstyle></mrow> </math><math>f(n)=O(n!)</math> <math>f(n)=O(n!)</math> </img> <span></span> este uneori slăbită la <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n)=O\left(n^n\right)</math> </mi><mo stretchy="false"> <math>f(n)=O\left(n^n\right)</math> </mo><mi> <math>f(n)=O\left(n^n\right)</math> </mi><mo stretchy="false"> <math>f(n)=O\left(n^n\right)</math> </mo><mo> <math>f(n)=O\left(n^n\right)</math> </mo><mi> <math>f(n)=O\left(n^n\right)</math> </mi><mrow><mo> <math>f(n)=O\left(n^n\right)</math> </mo><msup><mi> <math>f(n)=O\left(n^n\right)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(n)=O\left(n^n\right)</math> </mi></mrow></msup><mo> <math>f(n)=O\left(n^n\right)</math> </mo></mrow></mstyle></mrow> </math><math>f(n)=O\left(n^n\right)</math> <math>f(n)=O\left(n^n\right)</math> </img> <span></span> pentru a obține formule mai simple pentru complexitatea asimptotică. Pentru orice <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>k>0</math> </mi><mo> <math>k>0</math> </mo><mn> <math>k>0</math> </mn></mstyle></mrow> </math><math>k>0</math> <math>k>0</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>c>0</math> </mi><mo> <math>c>0</math> </mo><mn> <math>c>0</math> </mn></mstyle></mrow> </math><math>c>0</math> <math>c>0</math> </img> <span></span> . <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(n^c(\log n)^k)</math> </mi><mo stretchy="false"> <math>O(n^c(\log n)^k)</math> </mo><msup><mi> <math>O(n^c(\log n)^k)</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>O(n^c(\log n)^k)</math> </mi></mrow></msup><mo stretchy="false"> <math>O(n^c(\log n)^k)</math> </mo><mi> <math>O(n^c(\log n)^k)</math> </mi><mo> <math>O(n^c(\log n)^k)</math> </mo><mi> <math>O(n^c(\log n)^k)</math> </mi><msup><mo stretchy="false"> <math>O(n^c(\log n)^k)</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>O(n^c(\log n)^k)</math> </mi></mrow></msup><mo stretchy="false"> <math>O(n^c(\log n)^k)</math> </mo></mstyle></mrow> </math><math>O(n^c(\log n)^k)</math> <math>O(n^c(\log n)^k)</math> </img> <span></span> este o submulțime a lui <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(n^{c+\varepsilon })</math> </mi><mo stretchy="false"> <math>O(n^{c+\varepsilon })</math> </mo><msup><mi> <math>O(n^{c+\varepsilon })</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>O(n^{c+\varepsilon })</math> </mi><mo> <math>O(n^{c+\varepsilon })</math> </mo><mi> <math>O(n^{c+\varepsilon })</math> </mi></mrow></msup><mo stretchy="false"> <math>O(n^{c+\varepsilon })</math> </mo></mstyle></mrow> </math><math>O(n^{c+\varepsilon })</math> <math>O(n^{c+\varepsilon })</math> </img> <span></span> pentru orice <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> \varepsilon >0</math> </mi><mo> <math> \varepsilon >0</math> </mo><mn> <math> \varepsilon >0</math> </mn></mstyle></mrow> </math><math> \varepsilon >0</math> <math> \varepsilon >0</math> </img> <span></span> , deci poate fi considerat ca un polinom de grad mai mare.

== Notații asimptotice asociate ==
Big ''O'' este cea mai frecvent folosită notație asimptotică pentru compararea funcțiilor. Împreună cu alte notații asociate, ea formează familia notațiilor Bachmann-Landau.

=== Notația Little-o ===
Intuitiv, afirmația „{{Math|''f''(''x'')}} este {{Math|''o''(''g''(''x''))}}” (a se citi {{Math|''f''(''x'')}} este little-o de {{Math|''g''(''x'')}} înseamnă că {{Math|''g''(''x'')}} crește mult mai rapid decât {{Math|''f''(''x'')}}. Fie {{Math|''f''}} ca înainte o funcție cu valori reale sau complexe și {{Math|''g''}} o funcție cu valori reale, ambele fiind definite pe unele submulțimi nemărginite ale [[Număr real|numerelor reale pozitive]], astfel încât {{Math|''g''(''x'')}} să fie strict pozitivă pentru toate valorile suficient de mari ale lui {{Math|''x''}}''.'' Se scrie

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mo> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mtext></mrow><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mo><mi mathvariant="normal"> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </mi></mstyle></mrow> </math><math>f(x)=o(g(x))\text{ as }x\to\infty</math> <math>f(x)=o(g(x))\text{ as }x\to\infty</math> </img> <span></span>

dacă pentru orice constantă pozitivă {{Math|''ε''}} există o constantă {{Math|''N''}} astfel încât

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo></mrow><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mo stretchy="false"> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mo stretchy="false"> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo></mrow><mo> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mo stretchy="false"> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mo stretchy="false"> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mtext></mrow><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mo> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo><mi> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mi><mo> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </mo></mstyle></mrow> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> <math>|f(x)|\leq\varepsilon g(x)\qquad\text{ for all }x\geq N~.</math> </img> <span></span> <ref name="Landausmallo">{{Citat carte|prenume=Edmund|nume=Landau|legătură-autor=Edmund Landau|titlu=Handbuch der Lehre von der Verteilung der Primzahlen|editură=B. G. Teubner|dată=1909|locul-publicării=Leipzig|titlu_trad=Handbook on the theory of the distribution of the primes|limbă=de|pagină=61|url=https://archive.org/stream/handbuchderlehre01landuoft#page/61/mode/2up}}</ref>

De exemplu, avem

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>2x = o(x^2) </math> </mn><mi> <math>2x = o(x^2) </math> </mi><mo> <math>2x = o(x^2) </math> </mo><mi> <math>2x = o(x^2) </math> </mi><mo stretchy="false"> <math>2x = o(x^2) </math> </mo><msup><mi> <math>2x = o(x^2) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>2x = o(x^2) </math> </mn></mrow></msup><mo stretchy="false"> <math>2x = o(x^2) </math> </mo></mstyle></mrow> </math><math>2x = o(x^2) </math> <math>2x = o(x^2) </math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>1/x = o(1).</math> </mn><mrow class="MJX-TeXAtom-ORD"><mo> <math>1/x = o(1).</math> </mo></mrow><mi> <math>1/x = o(1).</math> </mi><mo> <math>1/x = o(1).</math> </mo><mi> <math>1/x = o(1).</math> </mi><mo stretchy="false"> <math>1/x = o(1).</math> </mo><mn> <math>1/x = o(1).</math> </mn><mo stretchy="false"> <math>1/x = o(1).</math> </mo><mo> <math>1/x = o(1).</math> </mo></mstyle></mrow> </math><math>1/x = o(1).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>1/x = o(1).</math> <math>1/x = o(1).</math> </img> <span></span>

Diferența dintre [[#Definiție formală|definiția]] anterioară pentru notația big-O și definiția aceasta a lui little-o este că, în timp ce prima trebuie să fie adevărată pentru ''cel puțin o'' constantă {{Math|''M''}}, aceasta din urmă trebuie să fie valabilă pentru ''orice'' constantă pozitivă {{Math|''ε''}} , oricât de mică ar fi.<ref name="Introduction to Algorithms">Thomas H. Cormen et al., 2001, [http://highered.mcgraw-hill.com/sites/0070131511/ Introduction to Algorithms, Second Edition]{{Necesită pagina}}</ref> În acest fel, notația little-o face o ''afirmație mai puternică'' decât notația big-O corespunzătoare: orice funcție care este little-o a lui {{Math|''g''}} este de asemenea big O al lui ''g'', dar nu orice funcție care este big-O al lui {{Math|''g''}} este și little-o de {{Math|''g''}}. De exemplu, <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>2x^2 = O(x^2) </math> </mn><msup><mi> <math>2x^2 = O(x^2) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>2x^2 = O(x^2) </math> </mn></mrow></msup><mo> <math>2x^2 = O(x^2) </math> </mo><mi> <math>2x^2 = O(x^2) </math> </mi><mo stretchy="false"> <math>2x^2 = O(x^2) </math> </mo><msup><mi> <math>2x^2 = O(x^2) </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>2x^2 = O(x^2) </math> </mn></mrow></msup><mo stretchy="false"> <math>2x^2 = O(x^2) </math> </mo></mstyle></mrow> </math><math>2x^2 = O(x^2) </math> <math>2x^2 = O(x^2) </math> </img> <span></span> dar <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>2x^2 \neq o(x^2). </math> </mn><msup><mi> <math>2x^2 \neq o(x^2). </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>2x^2 \neq o(x^2). </math> </mn></mrow></msup><mo> <math>2x^2 \neq o(x^2). </math> </mo><mi> <math>2x^2 \neq o(x^2). </math> </mi><mo stretchy="false"> <math>2x^2 \neq o(x^2). </math> </mo><msup><mi> <math>2x^2 \neq o(x^2). </math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>2x^2 \neq o(x^2). </math> </mn></mrow></msup><mo stretchy="false"> <math>2x^2 \neq o(x^2). </math> </mo><mo> <math>2x^2 \neq o(x^2). </math> </mo></mstyle></mrow> </math><math>2x^2 \neq o(x^2). </math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>2x^2 \neq o(x^2). </math> <math>2x^2 \neq o(x^2). </math> </img> <span></span>

Deoarece {{Math|''g''(''x'')}} este nenul, sau cel puțin devine nenul dincolo de un anumit punct, relația {{Math|''f''(''x'')&nbsp;{{=}}&nbsp;''o''(''g''(''x''))}} este echivalentă cu

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><munder><mo movablelimits="true"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mi><mo stretchy="false"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo><mi mathvariant="normal"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mi></mrow></munder><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mi><mo stretchy="false"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo><mi> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mi><mo stretchy="false"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo></mrow><mrow><mi> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mi><mo stretchy="false"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo><mi> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mi><mo stretchy="false"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo></mrow></mfrac></mrow><mo> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mo><mn> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </mn></mstyle></mrow> </math><math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0</math> </img> <span></span> (și așa a definit, de fapt, Landau <ref name="Landausmallo">{{Citat carte|prenume=Edmund|nume=Landau|legătură-autor=Edmund Landau|titlu=Handbuch der Lehre von der Verteilung der Primzahlen|editură=B. G. Teubner|dată=1909|locul-publicării=Leipzig|titlu_trad=Handbook on the theory of the distribution of the primes|limbă=de|pagină=61|url=https://archive.org/stream/handbuchderlehre01landuoft#page/61/mode/2up}}</ref> notația little-o).

Little-o respectă o serie de operații aritmetice. De exemplu,

: dacă {{Mvar|c}} este o constantă nenulă și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f = o(g)</math> </mi><mo> <math>f = o(g)</math> </mo><mi> <math>f = o(g)</math> </mi><mo stretchy="false"> <math>f = o(g)</math> </mo><mi> <math>f = o(g)</math> </mi><mo stretchy="false"> <math>f = o(g)</math> </mo></mstyle></mrow> </math><math>f = o(g)</math> <math>f = o(g)</math> </img> <span></span> atunci <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>c \cdot f = o(g)</math> </mi><mo> <math>c \cdot f = o(g)</math> </mo><mi> <math>c \cdot f = o(g)</math> </mi><mo> <math>c \cdot f = o(g)</math> </mo><mi> <math>c \cdot f = o(g)</math> </mi><mo stretchy="false"> <math>c \cdot f = o(g)</math> </mo><mi> <math>c \cdot f = o(g)</math> </mi><mo stretchy="false"> <math>c \cdot f = o(g)</math> </mo></mstyle></mrow> </math><math>c \cdot f = o(g)</math> <math>c \cdot f = o(g)</math> </img> <span></span> , și
: dacă <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f = o(F)</math> </mi><mo> <math>f = o(F)</math> </mo><mi> <math>f = o(F)</math> </mi><mo stretchy="false"> <math>f = o(F)</math> </mo><mi> <math>f = o(F)</math> </mi><mo stretchy="false"> <math>f = o(F)</math> </mo></mstyle></mrow> </math><math>f = o(F)</math> <math>f = o(F)</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g = o(G)</math> </mi><mo> <math>g = o(G)</math> </mo><mi> <math>g = o(G)</math> </mi><mo stretchy="false"> <math>g = o(G)</math> </mo><mi> <math>g = o(G)</math> </mi><mo stretchy="false"> <math>g = o(G)</math> </mo></mstyle></mrow> </math><math>g = o(G)</math> <math>g = o(G)</math> </img> <span></span> atunci <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f \cdot g = o(F \cdot G).</math> </mi><mo> <math> f \cdot g = o(F \cdot G).</math> </mo><mi> <math> f \cdot g = o(F \cdot G).</math> </mi><mo> <math> f \cdot g = o(F \cdot G).</math> </mo><mi> <math> f \cdot g = o(F \cdot G).</math> </mi><mo stretchy="false"> <math> f \cdot g = o(F \cdot G).</math> </mo><mi> <math> f \cdot g = o(F \cdot G).</math> </mi><mo> <math> f \cdot g = o(F \cdot G).</math> </mo><mi> <math> f \cdot g = o(F \cdot G).</math> </mi><mo stretchy="false"> <math> f \cdot g = o(F \cdot G).</math> </mo><mo> <math> f \cdot g = o(F \cdot G).</math> </mo></mstyle></mrow> </math><math> f \cdot g = o(F \cdot G).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math> f \cdot g = o(F \cdot G).</math> <math> f \cdot g = o(F \cdot G).</math> </img> <span></span>

De asemenea, satisface o relație de tranzitivitate:

: dacă <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f = o(g)</math> </mi><mo> <math> f = o(g)</math> </mo><mi> <math> f = o(g)</math> </mi><mo stretchy="false"> <math> f = o(g)</math> </mo><mi> <math> f = o(g)</math> </mi><mo stretchy="false"> <math> f = o(g)</math> </mo></mstyle></mrow> </math><math> f = o(g)</math> <math> f = o(g)</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> g = o(h)</math> </mi><mo> <math> g = o(h)</math> </mo><mi> <math> g = o(h)</math> </mi><mo stretchy="false"> <math> g = o(h)</math> </mo><mi> <math> g = o(h)</math> </mi><mo stretchy="false"> <math> g = o(h)</math> </mo></mstyle></mrow> </math><math> g = o(h)</math> <math> g = o(h)</math> </img> <span></span> atunci <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f = o(h).</math> </mi><mo> <math> f = o(h).</math> </mo><mi> <math> f = o(h).</math> </mi><mo stretchy="false"> <math> f = o(h).</math> </mo><mi> <math> f = o(h).</math> </mi><mo stretchy="false"> <math> f = o(h).</math> </mo><mo> <math> f = o(h).</math> </mo></mstyle></mrow> </math><math> f = o(h).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math> f = o(h).</math> <math> f = o(h).</math> </img> <span></span>

=== Notația Big Omega ===
Există două definiții foarte răspândite și incompatibile ale afirmației

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mo> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo><mo> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </mo></mstyle></mrow> </math><math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),</math> </img> <span></span>

unde {{Math|''a''}} este un număr real, ∞ sau -∞, unde {{Math|''f''}} și {{Math|''g''}} sunt funcții reale definite într-o vecinătate a lui {{Math|''a''}} și unde {{Math|''g''}} este pozitivă în această vecinătate.

Primul (cronologic) este folosită în [[Analytic number theory|teoria numerelor analitice]], iar cealaltă în [[teoria complexității]]. Când se întâlnesc cele două subiecte, această situație este generatoare de confuzie.

==== Definiția Hardy-Littlewood ====
În 1914, [[Godfrey Harold Hardy]] și [[John Edensor Littlewood]] au introdus noul simbol <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega</math> </mi></mstyle></mrow> </math><math>\Omega</math> <math>\Omega</math> </img> <span></span> , <ref name="HL">{{Citat revistă|nume=Hardy|nume2=Littlewood|prenume=G. H.|prenume2=J. E.|dată=1914|titlu=Some problems of diophantine approximation: Part II. The trigonometrical series associated with the elliptic ϑ-functions|url=http://projecteuclid.org/download/pdf_1/euclid.acta/1485887376|journal=Acta Mathematica|volum=37|pagină=225|doi=10.1007/BF02401834}}</ref> care este definit după cum urmează:

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mo> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><munder><mo movablelimits="true"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi></mrow></munder><mrow><mo> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo></mrow><mrow><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo></mrow></mfrac></mrow><mo> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo></mrow><mo> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mo><mn> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </mn></mstyle></mrow> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> <math>f(x)=\Omega(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \left|\frac{f(x)}{g(x)}\right|> 0.</math> </img> <span></span>

Prin urmare <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))</math> </mo><mo> <math>f(x)=\Omega(g(x))</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))</math> </mo></mstyle></mrow> </math><math>f(x)=\Omega(g(x))</math> <math>f(x)=\Omega(g(x))</math> </img> <span></span> este negarea lui <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=o(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))</math> </mo><mi> <math>f(x)=o(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))</math> </mo><mo> <math>f(x)=o(g(x))</math> </mo><mi> <math>f(x)=o(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))</math> </mo><mi> <math>f(x)=o(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))</math> </mo><mi> <math>f(x)=o(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=o(g(x))</math> </mo><mo stretchy="false"> <math>f(x)=o(g(x))</math> </mo></mstyle></mrow> </math><math>f(x)=o(g(x))</math> <math>f(x)=o(g(x))</math> </img> <span></span> .

În 1916, aceiași autori au introdus cele două noi simboluri <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_R</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\Omega_R</math> </mi></mrow></msub></mstyle></mrow> </math><math>\Omega_R</math> <math>\Omega_R</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_L</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\Omega_L</math> </mi></mrow></msub></mstyle></mrow> </math><math>\Omega_L</math> <math>\Omega_L</math> </img> <span></span> , definite astfel: <ref name="HL2"> GH Hardy și JE Littlewood, "Contribuția la teoria funcției zeta Riemann și teoria distribuirii primelor", ''[[Acta Mathematica]]'' , vol. 41, 1916. </ref>

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mo> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><msub><mi mathvariant="normal"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi></mrow></msub><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><munder><mo movablelimits="true"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi></mrow></munder><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo></mrow><mrow><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo></mrow></mfrac></mrow><mo> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mo><mn> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </mn></mstyle></mrow> </math><math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0</math> </img> <span></span> ;

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mo> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><msub><mi mathvariant="normal"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi></mrow></msub><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><munder><mo movablelimits="true"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi></mrow></munder><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo></mrow><mrow><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mi> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mi><mo stretchy="false"> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo></mrow></mfrac></mrow><mo> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mo><mn> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </mn></mstyle></mrow> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> <math>f(x)=\Omega_L(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\liminf_{x \to \infty} \frac{f(x)}{g(x)}< 0. </math> </img> <span></span>

Aceste simboluri au fost folosite de [[Edmund Landau]], cu aceleași semnificații, în 1924.<ref name="landau"> E. Landau, "De la Anzahl der Gitterpunkte in gewissen Bereichen." NAChR. Gesell. Wiss. Gott. Math-Phys. Kl. 1924, 137-150. </ref> După Landau, notațiile nu au fost niciodată folosite din nou exact așa; <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_R</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\Omega_R</math> </mi></mrow></msub></mstyle></mrow> </math><math>\Omega_R</math> <math>\Omega_R</math> </img> <span></span> a devenit <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_+</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\Omega_+</math> </mo></mrow></msub></mstyle></mrow> </math><math>\Omega_+</math> <math>\Omega_+</math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_L</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\Omega_L</math> </mi></mrow></msub></mstyle></mrow> </math><math>\Omega_L</math> <math>\Omega_L</math> </img> <span></span> a devenit <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_-</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\Omega_-</math> </mo></mrow></msub></mstyle></mrow> </math><math>\Omega_-</math> <math>\Omega_-</math> </img> <span></span> .  

<sup class="noprint Inline-Template Template-Fact" data-ve-ignore="true" style="white-space:nowrap;">&#x5B; ''<nowiki><span title="This claim needs references to reliable sources. (December 2018)">citare necesară</span></nowiki>'' &#x5D;</sup>

Aceste trei simboluri <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega, \Omega_+, \Omega_-</math> </mi><mo> <math>\Omega, \Omega_+, \Omega_-</math> </mo><msub><mi mathvariant="normal"> <math>\Omega, \Omega_+, \Omega_-</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\Omega, \Omega_+, \Omega_-</math> </mo></mrow></msub><mo> <math>\Omega, \Omega_+, \Omega_-</math> </mo><msub><mi mathvariant="normal"> <math>\Omega, \Omega_+, \Omega_-</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\Omega, \Omega_+, \Omega_-</math> </mo></mrow></msub></mstyle></mrow> </math><math>\Omega, \Omega_+, \Omega_-</math> <math>\Omega, \Omega_+, \Omega_-</math> </img> <span></span> , precum și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_\pm(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_\pm(g(x))</math> </mo><mi> <math>f(x)=\Omega_\pm(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_\pm(g(x))</math> </mo><mo> <math>f(x)=\Omega_\pm(g(x))</math> </mo><msub><mi mathvariant="normal"> <math>f(x)=\Omega_\pm(g(x))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>f(x)=\Omega_\pm(g(x))</math> </mo></mrow></msub><mo stretchy="false"> <math>f(x)=\Omega_\pm(g(x))</math> </mo><mi> <math>f(x)=\Omega_\pm(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_\pm(g(x))</math> </mo><mi> <math>f(x)=\Omega_\pm(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_\pm(g(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega_\pm(g(x))</math> </mo></mstyle></mrow> </math><math>f(x)=\Omega_\pm(g(x))</math> <math>f(x)=\Omega_\pm(g(x))</math> </img> <span></span> (ceea ce înseamnă că atât <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_+(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_+(g(x))</math> </mo><mi> <math>f(x)=\Omega_+(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_+(g(x))</math> </mo><mo> <math>f(x)=\Omega_+(g(x))</math> </mo><msub><mi mathvariant="normal"> <math>f(x)=\Omega_+(g(x))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>f(x)=\Omega_+(g(x))</math> </mo></mrow></msub><mo stretchy="false"> <math>f(x)=\Omega_+(g(x))</math> </mo><mi> <math>f(x)=\Omega_+(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_+(g(x))</math> </mo><mi> <math>f(x)=\Omega_+(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_+(g(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega_+(g(x))</math> </mo></mstyle></mrow> </math><math>f(x)=\Omega_+(g(x))</math> <math>f(x)=\Omega_+(g(x))</math> </img> <span></span> cât și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_-(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_-(g(x))</math> </mo><mi> <math>f(x)=\Omega_-(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_-(g(x))</math> </mo><mo> <math>f(x)=\Omega_-(g(x))</math> </mo><msub><mi mathvariant="normal"> <math>f(x)=\Omega_-(g(x))</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>f(x)=\Omega_-(g(x))</math> </mo></mrow></msub><mo stretchy="false"> <math>f(x)=\Omega_-(g(x))</math> </mo><mi> <math>f(x)=\Omega_-(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_-(g(x))</math> </mo><mi> <math>f(x)=\Omega_-(g(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega_-(g(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega_-(g(x))</math> </mo></mstyle></mrow> </math><math>f(x)=\Omega_-(g(x))</math> <math>f(x)=\Omega_-(g(x))</math> </img> <span></span> sunt satisfăcute), sunt acum utilizate în prezent în [[Analytic number theory|teoria numerelor analitice]] . <ref name="Ivic"> Aleksandar Ivić. Funcția zeta Riemann, capitolul 9. John Wiley & Sons 1985. </ref> <ref> Gérald Tenenbaum, Introducere în teoria numărului analitic și probabilistic, capitolul I.5. Societatea Americana de Matematica, Providence RI, 2015. </ref>

===== Exemple simple =====
Avem

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi mathvariant="normal"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo stretchy="false"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mn> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mn><mo stretchy="false"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mo stretchy="false"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo stretchy="false"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi mathvariant="normal"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo stretchy="false"> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mo> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </mo></mstyle></mrow> </math><math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),</math> </img> <span></span>

și mai precis

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mi><mo> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><mi> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mi><mo> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><msub><mi mathvariant="normal"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo></mrow></msub><mo stretchy="false"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><mn> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mn><mo stretchy="false"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><mo stretchy="false"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><mi> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mi><mo stretchy="false"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><mi mathvariant="normal"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mi><mo stretchy="false"> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo><mo> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </mo></mstyle></mrow> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> <math>\sin x=\Omega_\pm(1)\ (x\rightarrow\infty).</math> </img> <span></span>

Avem

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mn> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mn><mo> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi mathvariant="normal"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo stretchy="false"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mn> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mn><mo stretchy="false"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mo stretchy="false"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo stretchy="false"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mi mathvariant="normal"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mi><mo stretchy="false"> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo><mo> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </mo></mstyle></mrow> </math><math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),</math> </img> <span></span>

și mai precis

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mi><mo> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mi> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mi><mo> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mn> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mn><mo> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><msub><mi mathvariant="normal"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo></mrow></msub><mo stretchy="false"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mn> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mn><mo stretchy="false"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mo stretchy="false"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mi> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mi><mo stretchy="false"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mi mathvariant="normal"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mi><mo stretchy="false"> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo><mo> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </mo></mstyle></mrow> </math><math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);</math> </img> <span></span>

dar

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mi><mo> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mi> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mi><mo> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mn> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mn><mo> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><msub><mi mathvariant="normal"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo></mrow></msub><mo stretchy="false"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mn> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mn><mo stretchy="false"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mo stretchy="false"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mi> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mi><mo stretchy="false"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mi mathvariant="normal"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mi><mo stretchy="false"> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo><mo> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </mo></mstyle></mrow> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> <math>\sin x+1\not=\Omega_-(1)\ (x\rightarrow\infty).</math> </img> <span></span>

==== Definiția Knuth ====
În 1976, [[Donald E. Knuth|Donald Knuth]] a publicat o lucrare pentru a justifica utilizarea simbolului <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega</math> </mi></mstyle></mrow> </math><math>\Omega</math> <math>\Omega</math> </img> <span></span> pentru a descrie o proprietate mai puternică. Knuth a scris: „Pentru toate aplicațiile pe care le-am văzut până acum în domeniul informaticii, o cerință mai puternică [...] este mult mai potrivită”. El a definit

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mo> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi mathvariant="normal"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mo> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mi><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo><mo stretchy="false"> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </mo></mstyle></mrow> </math><math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))</math> </img> <span></span>

cu comentariul: „Deși am schimbat definiția dată de Hardy și a Littlewood pentru <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega</math> </mi></mstyle></mrow> </math><math>\Omega</math> <math>\Omega</math> </img> <span></span> , mă simt justificat în acest sens, deoarece definiția lor nu este deloc folosită pe scară largă și pentru că există și alte modalități de a spune ceea ce vor ei să spună în cazurile relativ rare în care se aplică definiția lor.”<ref name="knuth"> Donald Knuth. " [http://www.phil.uu.nl/datastructuren/10-11/knuth_big_omicron.pdf Big Omicron și mare Omega și mare Theta] ", SIGACT News, aprilie-iunie 1976, 18-24. </ref>

=== Familia de notații Bachmann-Landau ===
{| class="wikitable"
!Notația
!Nume<ref name="knuth">Donald Knuth. "[http://www.phil.uu.nl/datastructuren/10-11/knuth_big_omicron.pdf Big Omicron and big Omega and big Theta]", SIGACT News, Apr.-June 1976, 18–24.</ref>
!Descriere
!Definiție formală
!Limit Definition<ref name="Balcázar">{{Citat revistă|nume=Balcázar|nume2=Gabarró|prenume=José L.|prenume2=Joaquim|titlu=Nonuniform complexity classes specified by lower and upper bounds|url=http://archive.numdam.org/article/ITA_1989__23_2_177_0.pdf|journal=RAIRO – Theoretical Informatics and Applications – Informatique Théorique et Applications|volum=23|număr=2|pagină=180|language=en|issn=0988-3754|access-date=14 March 2017}}</ref><ref name="Cucker">{{Citat carte|nume=Cucker|prenume=Felipe|nume2=Bürgisser|prenume2=Peter|titlu=Condition: The Geometry of Numerical Algorithms|dată=2013|editură=Springer|locul-publicării=Berlin, Heidelberg|isbn=978-3-642-38896-5|pagini=467–468|capitol=A.1 Big Oh, Little Oh, and Other Comparisons|doi=10.1007/978-3-642-38896-5}}</ref><ref name="Wild">{{Citat revistă|nume=Vitányi|nume2=Meertens|prenume=Paul|prenume2=Lambert|legătură-autor=Paul Vitanyi|legătură-autor2=Lambert Meertens|dată=April 1985|titlu=Big Omega versus the wild functions|url=http://www.kestrel.edu/home/people/meertens/publications/papers/Big_Omega_contra_the_wild_functions.pdf|journal=ACM SIGACT News|volum=16|număr=4|pagini=56–59|doi=10.1145/382242.382835}}</ref><ref name="knuth" /><ref name="HL">{{Citat revistă|nume=Hardy|nume2=Littlewood|prenume=G. H.|prenume2=J. E.|dată=1914|titlu=Some problems of diophantine approximation: Part II. The trigonometrical series associated with the elliptic ϑ-functions|url=http://projecteuclid.org/download/pdf_1/euclid.acta/1485887376|journal=Acta Mathematica|volum=37|pagină=225|doi=10.1007/BF02401834}}</ref>
|-
|<math>f(n) = o(g(n))</math>
|Small O; Small Oh
|{{Mvar|f}} este dominată de {{Mvar|g}} asimptotic
|<math>\forall k>0 \; \exists n_0 \; \forall n>n_0 \; |f(n)| < k\cdot g(n)</math>
|<math>\lim_{n \to \infty} \frac{f(n)}{g(n)} = 0</math>
|-
|<math>f(n) = O(g(n))</math>
|Big O; Big Oh; Big Omicron
|<math>|f|</math> este mărginită superior de {{Mvar|g}} (până la un factor constant) asimptotic
|<math>\exists k>0 \; \exists n_0 \; \forall n>n_0 \; |f(n)| \leq k\cdot g(n)</math>
|<math>\limsup_{n \to \infty} \frac{\left|f(n)\right|}{g(n)} < \infty</math>
|-
|<math>f(n) = \Theta(g(n))</math>
|Big Theta
|{{Mvar|f}} este mărginită atât superior cât și inferior de {{Mvar|g}} asimptotic
|<math>\exists k_1>0 \; \exists k_2>0 \; \exists n_0 \; \forall n>n_0</math><math>k_1\cdot g(n) \leq f(n) \leq k_2\cdot g(n)</math>
|<math>f(n) = O(g(n))</math> and <math>f(n) = \Omega(g(n))</math> (Knuth version)
|-
|<math>f(n)\sim g(n)</math>
|De ordinul lui
|{{Mvar|f}} este egal cu {{Mvar|g}} asimptotic
|<math>\forall \varepsilon>0\;\exists n_0\;\forall n>n_0\;\left|{f(n) \over g(n)}-1\right|<\varepsilon</math>
|<math>\lim_{n \to \infty} {f(n) \over g(n)} = 1</math>
|-
|<math>f(n) = \Omega(g(n))</math>
|Big Omega în teoria numerelor (Hardy–Littlewood)
|<math>|f|</math> nu este dominată de {{Mvar|g}} asimptotic
|<math>\exists k>0 \; \forall n_0 \; \exists n>n_0 \; |f(n)| \geq k\cdot g(n)</math>
|<math>\limsup_{n \to \infty} \left|\frac{f(n)}{g(n)}\right| > 0 </math>
|-
|<math>f(n) = \Omega(g(n))</math>
|Big Omega în teoria complexității (Knuth)
|{{Mvar|f}} este mărginit inferior de {{Mvar|g}} asimptotic
|<math>\exists k>0 \; \exists n_0 \; \forall n>n_0 \; f(n) \geq k\cdot g(n)</math>
|<math>\liminf_{n \to \infty} \frac{f(n)}{g(n)} > 0 </math>
|-
|<math>f(n) = \omega(g(n))</math>
|Small Omega
|{{Mvar|f}} domină {{Mvar|g}} asimptotic
|<math>\forall k>0 \; \exists n_0 \; \forall n>n_0 \ |f(n)| > k\cdot |g(n)|</math>
|<math>\lim_{n \to \infty} \left|\frac{f(n)}{g(n)}\right| = \infty</math>
|}
Definițiile limitelor presupun <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(n) \neq 0</math> </mi><mo stretchy="false"> <math>g(n) \neq 0</math> </mo><mi> <math>g(n) \neq 0</math> </mi><mo stretchy="false"> <math>g(n) \neq 0</math> </mo><mo> <math>g(n) \neq 0</math> </mo><mn> <math>g(n) \neq 0</math> </mn></mstyle></mrow> </math><math>g(n) \neq 0</math> <math>g(n) \neq 0</math> </img> <span></span> pentru {{Mvar|n}} suficient de mare. Tabelul este (parțial) sortat de la cel mai mic la cel mai mare, în sensul că o, O, Θ, ~, Ω (versiunea lui Knuth), ω pe funcții corespund cu <, ≤, ≈, =, ≥, > pe dreapta reală <ref name="Wild">{{Citat revistă|nume=Vitányi|nume2=Meertens|prenume=Paul|prenume2=Lambert|legătură-autor=Paul Vitanyi|legătură-autor2=Lambert Meertens|dată=April 1985|titlu=Big Omega versus the wild functions|url=http://www.kestrel.edu/home/people/meertens/publications/papers/Big_Omega_contra_the_wild_functions.pdf|journal=ACM SIGACT News|volum=16|număr=4|pagini=56–59|doi=10.1145/382242.382835}}</ref> (versiunea Hardy-Littlewood a lui Ω nu corespunde însă unei astfel de descrieri).

Informatica folosește Big ''O'', bog Theta Θ, little ''o'', omega &#x3C9; și notația Big Omega Ω a lui Knuth. <ref>{{Introduction to Algorithms|edition=2|pages=41–50}}</ref> Teoria analitică a numerelor utilizează adesea big ''O'', small ''o'', Big Omega Ω a lui Hardy-Littlewood (cu sau fără indicele +, - sau ±) și notațiile <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\sim</math> </mo></mstyle></mrow> </math><math>\sim</math> <math>\sim</math> </img> <span></span>.<ref name="Ivic"> Aleksandar Ivić. Funcția zeta Riemann, capitolul 9. John Wiley & Sons 1985. </ref> Notația small omega ω nu este utilizată la fel de des în analiză.<ref>for example it is omitted in: {{Citat web|url=http://www.math.uiuc.edu/~ajh/595ama/ama-ch2.pdf|nume=Hildebrand|accessdate=14 March 2017|publisher=Math 595, Fall 2009|first1=A.J.|lucrare=Asymptotic Methods in Analysis|titlu=Asymptotic Notations}}</ref>

=== Utilizați în informatică ===
În mod informal, în special în domeniul informaticii, notația big ''O'' poate fi folosită oarecum diferit pentru a descrie o legătură asimptotică strânsă unde notația Theta Θ ar putea fi mai potrivită într-un anumit context. De exemplu, atunci când se analizează o funcție {{Math|1=''T''(''n'') = 73''n''<sup>3</sup> + 22''n''<sup>2</sup> + 58}}, toate afirmațiile următoare sunt în general acceptabile, dar limite mai stricte (cum ar fi numerele 2 și 3 de mai jos) sunt de obicei preferate în locul limitelor mai relaxate (cum ar fi numărul 1 de mai jos).

# {{Math|1=''T''(''n'') = ''O''(''n''<sup>100</sup>)}}
# {{Math|1=''T''(''n'') = ''O''(''n''<sup>3</sup>)}}
# {{Math|1=''T''(''n'') = Θ(''n''<sup>3</sup>)}}

Afirmațiile echivalente în română sunt:

# {{Math|''T''(''n'')}} crește asymptotic nu mai repede decât {{Math|''n''<sup>100</sup>}}
# {{Math|''T''(''n'')}} crește asymptotic nu mai repede decât {{Math|''n''<sup>3</sup>}}
# {{Math|''T''(''n'')}} crește asimptotic la fel de repede ca {{Math|''n''<sup>3</sup>}}.

Deci, în timp ce toate cele trei afirmații sunt adevărate, în fiecare din ele există progresiv mai multe informații. În unele domenii, cu toate acestea, notația Big O (numărul 2 din listele de mai sus) ar fi folosită mai frecvent decât notația Big Theta (punctele 3 din listele de mai sus). De exemplu, dacă {{Math|''T''(''n'')}} reprezintă timpul de funcționare a algoritmului nou dezvoltat pentru dimensiunea de intrare {{Math|''n''}}, inventatorii și utilizatorii algoritmului ar putea fi mai înclinați să pună o limită asimptotică superioară timpului cât va dura funcționarea lui, fără a face vreo afirmație explicită despre limita inferioară asimptotică.

=== Alte notații ===
În cartea lor ''[[Introduction to Algorithms|Introducere în algoritmi]]'', [[Thomas H. Cormen|Cormen]], [[Charles E. Leiserson|Leiserson]], [[Ronald Rivest|Rivest]] și [[Clifford Stein|Stein]] iau în considerare mulțimea funcțiilor {{Math|''f''}} care satisfac

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mi> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mo> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mi> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mi> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mi> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mi> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mi mathvariant="normal"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mi><mo stretchy="false"> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo><mo> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </mo></mstyle></mrow> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> <math> f(n) = O(g(n))\ (n\rightarrow\infty).</math> </img> <span></span>

Într-o notație corectă, această mulțime poate fi, de exemplu, numită {{Math|''O''(''g'')}}, unde

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(g) = \{ f :</math> </mi><mo stretchy="false"> <math>O(g) = \{ f :</math> </mo><mi> <math>O(g) = \{ f :</math> </mi><mo stretchy="false"> <math>O(g) = \{ f :</math> </mo><mo> <math>O(g) = \{ f :</math> </mo><mo fence="false" stretchy="false"> <math>O(g) = \{ f :</math> </mo><mi> <math>O(g) = \{ f :</math> </mi><mo> <math>O(g) = \{ f :</math> </mo></mstyle></mrow> </math><math>O(g) = \{ f :</math> <math>O(g) = \{ f :</math> </img> <span></span> există constante pozitive {{Math|''c''}} și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math>n_0</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>n_0</math> </mn></mrow></msub></mstyle></mrow> </math><math>n_0</math> <math>n_0</math> </img> <span></span> astfel încât <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>0 \le f(n) \le cg(n)</math> </mn><mo> <math>0 \le f(n) \le cg(n)</math> </mo><mi> <math>0 \le f(n) \le cg(n)</math> </mi><mo stretchy="false"> <math>0 \le f(n) \le cg(n)</math> </mo><mi> <math>0 \le f(n) \le cg(n)</math> </mi><mo stretchy="false"> <math>0 \le f(n) \le cg(n)</math> </mo><mo> <math>0 \le f(n) \le cg(n)</math> </mo><mi> <math>0 \le f(n) \le cg(n)</math> </mi><mi> <math>0 \le f(n) \le cg(n)</math> </mi><mo stretchy="false"> <math>0 \le f(n) \le cg(n)</math> </mo><mi> <math>0 \le f(n) \le cg(n)</math> </mi><mo stretchy="false"> <math>0 \le f(n) \le cg(n)</math> </mo></mstyle></mrow> </math><math>0 \le f(n) \le cg(n)</math> <math>0 \le f(n) \le cg(n)</math> </img> <span></span> pentru toți <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>n \ge n_0 \}</math> </mi><mo> <math>n \ge n_0 \}</math> </mo><msub><mi> <math>n \ge n_0 \}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math>n \ge n_0 \}</math> </mn></mrow></msub><mo fence="false" stretchy="false"> <math>n \ge n_0 \}</math> </mo></mstyle></mrow> </math><math>n \ge n_0 \}</math> <math>n \ge n_0 \}</math> </img> <span></span> . <ref>{{Citat carte|isbn=978-0-262-53305-8|nume=Thomas H. Cormen|nume2=Charles E. Leiserson|nume3=Ronald L. Rivest|titlu=Introduction to Algorithms|locul-publicării=Cambridge/MA|editură=MIT Press|ediție=3rd|an=2009|pagină=47|citat=When we have only an asymptotic upper bound, we use O-notation. For a given function ''g''(''n''), we denote by ''O''(''g''(''n'')) (pronounced “big-oh of ''g'' of ''n''” or sometimes just “oh of ''g'' of ''n''”) the set of functions ''O''(''g''(''n'')) = { ''f''(''n'') : there exist positive constants ''c'' and ''n''<sub>0</sub> such that 0 ≤ ''f''(''n'') ≤ ''cg''(''n'') for all ''n'' ≥ ''n''<sub>0</sub><nowiki>}</nowiki>}}</ref>

Autorii afirmă că folosirea operatorului de egalitate (=) pentru a nota apartenența la mulțime, în locul operatorului de apartenență încetățenit (∈) este un abuz de notație, dar acest lucru are avantaje.<ref name="clrs3">{{Citat carte|isbn=978-0-262-53305-8|nume=Thomas H. Cormen|nume2=Charles E. Leiserson|nume3=Ronald L. Rivest|titlu=Introduction to Algorithms|locul-publicării=Cambridge/MA|editură=MIT Press|ediție=3rd|an=2009|pagină=45|citat=Because ''θ''(''g''(''n'')) is a set, we could write "''f''(''n'') ∈ ''θ''(''g''(''n''))" to indicate that ''f''(''n'') is a member of ''θ''(''g''(''n'')). Instead, we will usually write ''f''(''n'') = ''θ''(''g''(''n'')) to express the same notion. You might be confused because we abuse equality in this way, but we shall see later in this section that doing so has its advantages.}}</ref> Într-o ecuație sau inegalitate, folosirea unei notații asimptotice reprezintă o funcție anonimă din mulțimea {{Math|''O''(''g'')}}, care elimină termenii de ordin inferior și ajută la reducerea aglomerării inutile în ecuații, de exemplu: <ref>{{Citat carte|isbn=978-0-262-53305-8|nume=Thomas H. Cormen|nume2=Charles E. Leiserson|nume3=Ronald L. Rivest|titlu=Introduction to Algorithms|locul-publicării=Cambridge/MA|editură=MIT Press|ediție=3rd|an=2009|pagină=49|citat=When the asymptotic notation stands alone (that is, not within a larger formula) on the right-hand side of an equation (or inequality), as in n = O(n²), we have already defined the equal sign to mean set membership: n ∈ O(n²). In general, however, when asymptotic notation appears in a formula, we interpret it as standing for some anonymous function that we do not care to name. For example, the formula 2''n''<sup>2</sup> + 3''n'' + 1 = 2''n''<sup>2</sup> + ''θ''(''n'') means that 2''n''<sup>2</sup> + 3''n'' + 1 = 2''n''<sup>2</sup> + ''f''(''n''), where ''f''(''n'') is some function in the set ''θ''(''n''). In this case, we let ''f''(''n'') = 3''n'' + 1, which is indeed in ''θ''(''n''). Using asymptotic notation in this manner can help eliminate inessential detail and clutter in an equation.}}</ref>

: <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mn><msup><mi> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mn></mrow></msup><mo> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo><mn> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mn><mi> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mi><mo> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo><mn> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mn><mo> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo><mn> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mn><msup><mi> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mi><mrow class="MJX-TeXAtom-ORD"><mn> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mn></mrow></msup><mo> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo><mi> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mi><mo stretchy="false"> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo><mi> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mi><mo stretchy="false"> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo><mo> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </mo></mstyle></mrow> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> <math xmlns="http://www.w3.org/1998/Math/MathML"> </math><math> 2n^2 + 3n + 1=2n^2 + O(n).</math> <math> 2n^2 + 3n + 1=2n^2 + O(n).</math> </img> <span></span>

=== Extensii la notațiile Bachmann-Landau ===
O altă notație folosită uneori în domeniul informaticii este Õ (citiți ''soft-O''): {{Math|1=''f''(''n'') = ''Õ''(''g''(''n''))}} este o prescurtare pentru {{Math|1=''f''(''n'') = ''O''(''g''(''n'') log ''k'' ''g''(''n''))}} pentru un anume {{Math|''k''}}. În esență, este o notație Big O, ignorând factorii logaritmici, deoarece efectele ratei de creștere a unei alte funcții superlogaritmice indică o explozie a ratei de creștere pentru parametrii de intrare de dimensiuni mari, care este mai importantă pentru a prezice relele performanțe efectele mai fine cu care contribuie de factorul (factorii) de creștere logaritmică. Această notație este adesea folosită pentru a evita „pierderea în amănunte” în cadrul vitezelor de creștere care sunt declarate ca fiind prea strâns mărginite pentru chestiunea relevantă (întrucât {{Math|log<sup>''k''</sup> ''n''}} este întotdeauna {{Math|''o''(''n''<sup>ε</sup>)}} pentru orice constantă {{Math|''k''}} și orice {{Math|ε > 0}}).

De asemenea, [[L-notation|notația L]], definită ca

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi></mrow></msub><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><msup><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mn> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mn><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><msup><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi></mrow></msup><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi><msup><mo stretchy="false"> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mrow class="MJX-TeXAtom-ORD"><mn> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mn><mo> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mo><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </mi></mrow></msup></mrow></msup></mstyle></mrow> </math><math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}</math> </img> <span></span>

este convenabilă pentru funcțiile care sunt între [[Complexitate în timp|polinomială]] și [[Complexitate în timp|exponențială]] în termeni de <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\ln n</math> </mi><mo> <math>\ln n</math> </mo><mi> <math>\ln n</math> </mi></mstyle></mrow> </math><math>\ln n</math> <math>\ln n</math> </img> <span></span> .

== Generalizări și utilizări conexe ==
Generalizarea funcțiilor care iau valori în orice [[spațiu vectorial normat]] este simplă (înlocuind valoarea absolută cu norma), unde {{Math|''f''}} și {{Math|''g''}} nu este nevoie săi aibă valori în același spațiu. O generalizare a funcțiilor {{Math|''g''}} cu valori în orice [[Topological group|grup topologic]] este de asemenea posibilă. „Procesul de limitare” {{Math|''x''→''x''<sub>0</sub>}} poate fi și el generalizat prin introducerea unei [[Filter base|baze de filtrare]] arbitrare, adică a [[Net (mathematics)|rețelelor]] direcționate {{Math|''f''}} și {{Math|''g''}}. Notația {{Math|''o''}} poate fi folosită pentru a defini [[Derivată|derivate]] și [[Differentiability|diferențiabilitatea]] în spații destul de generale, precum și echivalența (asimptotică) a funcțiilor,

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f\sim g \iff (f-g) \in o(g) </math> </mi><mo> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mi> <math> f\sim g \iff (f-g) \in o(g) </math> </mi><mo stretchy="false"> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mo stretchy="false"> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mi> <math> f\sim g \iff (f-g) \in o(g) </math> </mi><mo> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mi> <math> f\sim g \iff (f-g) \in o(g) </math> </mi><mo stretchy="false"> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mo> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mi> <math> f\sim g \iff (f-g) \in o(g) </math> </mi><mo stretchy="false"> <math> f\sim g \iff (f-g) \in o(g) </math> </mo><mi> <math> f\sim g \iff (f-g) \in o(g) </math> </mi><mo stretchy="false"> <math> f\sim g \iff (f-g) \in o(g) </math> </mo></mstyle></mrow> </math><math> f\sim g \iff (f-g) \in o(g) </math> <math> f\sim g \iff (f-g) \in o(g) </math> </img> <span></span>

care este o [[relație de echivalență]] și o noțiune mai restrictivă decât relația „{{Math|''f''}} este {{Math|Θ(''g'')}}” de mai sus. (Se reduce la {{Math|1=lim ''f''/''g'' = 1}} dacă {{Math|''f''}} și {{Math|''g''}} sunt funcții cu valoare reală pozitivă.) De exemplu, {{Math|2''x''}} este {{Math|Θ(''x'')}}, dar {{Math|2''x'' - ''x''}} nu este {{Math|''o''(''x'')}}.

== Istorie (notații Bachmann-Landau, Hardy și Vinogradov) ==
Simbolul O a fost introdus pentru prima dată de teoreticianul numerelor [[Paul Bachmann]] în 1894, în al doilea volum al cărții sale {{Lang|de|Analytische Zahlentheorie}} („[[Analytic number theory|Teoria analitică a numerelor]]”), al cărei prim volum (care nu conținea încă notația Big O) a fost publicat în 1892.<ref name="Bachmann">{{Citat carte|prenume=Paul|nume=Bachmann|legătură-autor=Paul Bachmann|titlu=Analytische Zahlentheorie|titlu_trad=Analytic Number Theory|limbă=de|volum=2|locul-publicării=Leipzig|editură=Teubner|dată=1894|url=https://archive.org/stream/dieanalytischeza00bachuoft#page/402/mode/2up}}</ref> Teoreticianul numerelor [[Edmund Landau]] a adoptat-o și, astfel, a fost inspirat să introducă în 1909 notația o; <ref name="Landau">{{Citat carte|prenume=Edmund|nume=Landau|legătură-autor=Edmund Landau|titlu=Handbuch der Lehre von der Verteilung der Primzahlen|editură=B. G. Teubner|dată=1909|locul-publicării=Leipzig|titlu_trad=Handbook on the theory of the distribution of the primes|limbă=de|pagină=883|url=https://archive.org/details/handbuchderlehre01landuoft}}</ref> aici ambele sunt numite acum simboluri Landau. Aceste notații au fost folosite în matematica aplicată în anii 1950 pentru analiza asimptotică.<ref>{{Citat carte|titlu=Asymptotic Expansions|nume=Erdelyi|prenume=A.|an=1956|isbn=978-0-486-60318-6}}</ref> Simbolul <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega</math> </mi></mstyle></mrow> </math><math>\Omega</math> <math>\Omega</math> </img> <span></span> (în sensul „nu este {{Math|''o''}} de”) a fost introdus în 1914 de Hardy și Littlewood.<ref name="HL">{{Citat revistă|nume=Hardy|nume2=Littlewood|prenume=G. H.|prenume2=J. E.|dată=1914|titlu=Some problems of diophantine approximation: Part II. The trigonometrical series associated with the elliptic ϑ-functions|url=http://projecteuclid.org/download/pdf_1/euclid.acta/1485887376|journal=Acta Mathematica|volum=37|pagină=225|doi=10.1007/BF02401834}}</ref> Hardy și Littlewood au introdus, de asemenea, în 1918 simbolurile <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_R</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\Omega_R</math> </mi></mrow></msub></mstyle></mrow> </math><math>\Omega_R</math> <math>\Omega_R</math> </img> <span></span> („dreapta”) și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_L</math> </mi><mrow class="MJX-TeXAtom-ORD"><mi> <math>\Omega_L</math> </mi></mrow></msub></mstyle></mrow> </math><math>\Omega_L</math> <math>\Omega_L</math> </img> <span></span> („stânga”), <ref name="HL2"> GH Hardy și JE Littlewood, "Contribuția la teoria funcției zeta Riemann și teoria distribuirii primelor", ''[[Acta Mathematica]]'' , vol. 41, 1916. </ref> precursori ai simbolurilor moderne <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_+</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\Omega_+</math> </mo></mrow></msub></mstyle></mrow> </math><math>\Omega_+</math> <math>\Omega_+</math> </img> <span></span> („nu este mai mică decât small {{Math|''o''}} de”) și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_-</math> </mi><mrow class="MJX-TeXAtom-ORD"><mo> <math>\Omega_-</math> </mo></mrow></msub></mstyle></mrow> </math><math>\Omega_-</math> <math>\Omega_-</math> </img> <span></span> („nu este mai mare decât small {{Math|''o''}} de”). Astfel, simbolurile Omega (cu semnificațiile lor originale) sunt uneori denumite și „simboluri Landau”. Această notație <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega</math> </mi></mstyle></mrow> </math><math>\Omega</math> <math>\Omega</math> </img> <span></span> a devenit frecvent folosită în teoria numerelor cel puțin din anii 1950.<ref name="titchmarsh"> EC Titchmarsh, Teoria funcției Zeta Riemann (Oxford, Clarendon Press, 1951) </ref> În anii 1970, Big O a fost popularizată în domeniul informaticii de către [[Donald E. Knuth|Donald Knuth]], care a introdus notația aferentă Theta și a propus o altă definiție pentru notația Omega.<ref name="knuth"> Donald Knuth. " [http://www.phil.uu.nl/datastructuren/10-11/knuth_big_omicron.pdf Big Omicron și mare Omega și mare Theta] ", SIGACT News, aprilie-iunie 1976, 18-24. </ref>

Landau nu a folosit niciodată Theta mare și simboluri omega-mic.

Simbolurile lui Hardy erau (din punct de vedere al notației ''O'' moderne)

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f \preccurlyeq g\iff f \in O(g) </math> </mi><mo> <math> f \preccurlyeq g\iff f \in O(g) </math> </mo><mi> <math> f \preccurlyeq g\iff f \in O(g) </math> </mi><mo stretchy="false"> <math> f \preccurlyeq g\iff f \in O(g) </math> </mo><mi> <math> f \preccurlyeq g\iff f \in O(g) </math> </mi><mo> <math> f \preccurlyeq g\iff f \in O(g) </math> </mo><mi> <math> f \preccurlyeq g\iff f \in O(g) </math> </mi><mo stretchy="false"> <math> f \preccurlyeq g\iff f \in O(g) </math> </mo><mi> <math> f \preccurlyeq g\iff f \in O(g) </math> </mi><mo stretchy="false"> <math> f \preccurlyeq g\iff f \in O(g) </math> </mo></mstyle></mrow> </math><math> f \preccurlyeq g\iff f \in O(g) </math> <math> f \preccurlyeq g\iff f \in O(g) </math> </img> <span></span>&nbsp; și &nbsp; <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f\prec g\iff f\in o(g); </math> </mi><mo> <math> f\prec g\iff f\in o(g); </math> </mo><mi> <math> f\prec g\iff f\in o(g); </math> </mi><mo stretchy="false"> <math> f\prec g\iff f\in o(g); </math> </mo><mi> <math> f\prec g\iff f\in o(g); </math> </mi><mo> <math> f\prec g\iff f\in o(g); </math> </mo><mi> <math> f\prec g\iff f\in o(g); </math> </mi><mo stretchy="false"> <math> f\prec g\iff f\in o(g); </math> </mo><mi> <math> f\prec g\iff f\in o(g); </math> </mi><mo stretchy="false"> <math> f\prec g\iff f\in o(g); </math> </mo><mo> <math> f\prec g\iff f\in o(g); </math> </mo></mstyle></mrow> </math><math> f\prec g\iff f\in o(g); </math> <math> f\prec g\iff f\in o(g); </math> </img> <span></span>

(Hardy însă nu a definit niciodată și nu a folosit notația <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\prec\!\!\prec</math> </mo><mo> <math>\prec\!\!\prec</math> </mo></mstyle></mrow> </math><math>\prec\!\!\prec</math> <math>\prec\!\!\prec</math> </img> <span></span> , nici <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\ll</math> </mo></mstyle></mrow> </math><math>\ll</math> <math>\ll</math> </img> <span></span> , așa cum s-a afirmat uneori). De asemenea, Hardy a introdus simbolurile <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\preccurlyeq </math> </mo></mstyle></mrow> </math><math>\preccurlyeq </math> <math>\preccurlyeq </math> </img> <span></span> și <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\prec </math> </mo></mstyle></mrow> </math><math>\prec </math> <math>\prec </math> </img> <span></span> (precum și alte simboluri) în tratatul său din 1910, „Orders of Infinity”, și îl folosește doar în trei lucrări (1910-1913). În cele aproape 400 de lucrări și cărți rămase, el folosește consistent simbolurile Landau O și o.

Notația lui Hardy nu mai este folosită. Pe de altă parte, în 1930,<ref> Vezi, de exemplu, "O nouă estimare pentru ''G'' ( ''n'' ) în problema lui Waring" (rusă). Doklady Akademii Nauk SSSR 5, nr. 5-6 (1934), 249-253. Tradus în limba engleză în: Lucrări selectate / Ivan Matveevič Vinogradov; pregătit de Institutul Matematic Steklov al Academiei de Științe a URSS cu ocazia aniversării a 90 de ani. Springer-Verlag, 1985. </ref> teoreticianului rus al numerelor [[Ivan Matveyevich Vinogradov|Ivan Matveievici Vinogradov]] a introdus notația lui, <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\ll</math> </mo></mstyle></mrow> </math><math>\ll</math> <math>\ll</math> </img> <span></span> , care este folosită din ce în ce mai mult în teoria numerelor în locul notației <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O</math> </mi></mstyle></mrow> </math><math>O</math> <math>O</math> </img> <span></span>. Avem

: <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f\ll g \iff f \in O(g), </math> </mi><mo> <math> f\ll g \iff f \in O(g), </math> </mo><mi> <math> f\ll g \iff f \in O(g), </math> </mi><mo stretchy="false"> <math> f\ll g \iff f \in O(g), </math> </mo><mi> <math> f\ll g \iff f \in O(g), </math> </mi><mo> <math> f\ll g \iff f \in O(g), </math> </mo><mi> <math> f\ll g \iff f \in O(g), </math> </mi><mo stretchy="false"> <math> f\ll g \iff f \in O(g), </math> </mo><mi> <math> f\ll g \iff f \in O(g), </math> </mi><mo stretchy="false"> <math> f\ll g \iff f \in O(g), </math> </mo><mo> <math> f\ll g \iff f \in O(g), </math> </mo></mstyle></mrow> </math><math> f\ll g \iff f \in O(g), </math> <math> f\ll g \iff f \in O(g), </math> </img> <span></span>

și în mod obișnuit ambele notații sunt utilizate în aceeași lucrare.

Big O reprezenta inițial „de ordinul lui” ("Ordnung", Bachmann 1894) și este așadar o literă latină. Nici Bachmann, nici Landau nu o numesc vreodată „Omicron”. Simbolul a fost considerat mult mai târziu (1976) de către Knuth drept [[omicron]] mare<ref name="knuth"> Donald Knuth. " [http://www.phil.uu.nl/datastructuren/10-11/knuth_big_omicron.pdf Big Omicron și mare Omega și mare Theta] ", SIGACT News, aprilie-iunie 1976, 18-24. </ref> probabil în legătură cu definiția sa a simbolului [[Omega (literă)|Omega]]. Nu se folosește cifra [[0 (cifră)|zero]].

== Lectură suplimentară ==

* {{Citat carte|prenume=G. H.|nume=Hardy|legătură-autor=G. H. Hardy|titlu=Orders of Infinity: The 'Infinitärcalcül' of Paul du Bois-Reymond|dată=1910|url=https://archive.org/details/ordersofinfinity00harduoft|editură=[[Cambridge University Press]]}}
* {{Citat carte|prenume=Donald|nume=Knuth|legătură-autor=Donald Knuth|titlu=Fundamental Algorithms|volum=1|serie=The Art of Computer Programming|ediție=3rd|editură=Addison–Wesley|dată=1997|isbn=978-0-201-89683-1|capitol=1.2.11: Asymptotic Representations}}
* {{Citat carte|prenume=Thomas H.|nume=Cormen|legătură-autor=Thomas H. Cormen|prenume2=Charles E.|nume2=Leiserson|legătură-autor2=Charles E. Leiserson|prenume3=Ronald L.|nume3=Rivest|legătură-autor3=Ronald L. Rivest|prenume4=Clifford|nume4=Stein|legătură-autor4=Clifford Stein|titlu=Introduction to Algorithms|ediție=2nd|editură=MIT Press and McGraw–Hill|dată=2001|isbn=978-0-262-03293-3|capitol=3.1: Asymptotic notation}}
* {{Citat carte|prenume=Michael|nume=Sipser|legătură-autor=Michael Sipser|an=1997|titlu=Introduction to the Theory of Computation|editură=PWS Publishing|isbn=978-0-534-94728-6|pagini=226–228}}
* {{Cite conference|last=Avigad|last2=Donnelly|given=Jeremy|first2=Kevin|date=2004|conference=International Joint Conference on Automated Reasoning|title=Formalizing O notation in Isabelle/HOL|url=http://www.andrew.cmu.edu/~avigad/Papers/bigo.pdf|format=PDF|doi=10.1007/978-3-540-25984-8_27}}
* {{Citat web|url=https://xlinux.nist.gov/dads/HTML/bigOnotation.html|nume=Black|accessdate=December 16, 2006|publisher=U.S. National Institute of Standards and Technology|date=11 March 2005|first1=Paul E.|editor-last=Black|editor-first=Paul E.|lucrare=Dictionary of Algorithms and Data Structures|titlu=big-O notation}}
* {{Citat web|url=https://xlinux.nist.gov/dads/HTML/littleOnotation.html|nume=Black|accessdate=December 16, 2006|publisher=U.S. National Institute of Standards and Technology|date=17 December 2004|first1=Paul E.|editor-last=Black|editor-first=Paul E.|lucrare=Dictionary of Algorithms and Data Structures|titlu=little-o notation}}
* {{Citat web|url=https://xlinux.nist.gov/dads/HTML/omegaCapital.html|nume=Black|accessdate=December 16, 2006|publisher=U.S. National Institute of Standards and Technology|date=17 December 2004|first1=Paul E.|editor-last=Black|editor-first=Paul E.|lucrare=Dictionary of Algorithms and Data Structures|titlu=Ω}}
* {{Citat web|url=https://xlinux.nist.gov/dads/HTML/omega.html|nume=Black|accessdate=December 16, 2006|publisher=U.S. National Institute of Standards and Technology|date=17 December 2004|first1=Paul E.|editor-last=Black|editor-first=Paul E.|lucrare=Dictionary of Algorithms and Data Structures|titlu=ω}}
* {{Citat web|url=https://xlinux.nist.gov/dads/HTML/theta.html|nume=Black|accessdate=December 16, 2006|publisher=U.S. National Institute of Standards and Technology|date=17 December 2004|first1=Paul E.|editor-last=Black|editor-first=Paul E.|lucrare=Dictionary of Algorithms and Data Structures|titlu=Θ}}

== Legături externe ==

* [[oeis:wiki/Growth_of_sequences|Creșterea șirurilor - OEIS (Online Encyclopedia of Integer Sequences) Wiki]]
* [https://classes.soe.ucsc.edu/classes/cmps102/Spring04/TantaloAsymp.pdf Introducere în notații asimptotice]
* [http://mathworld.wolfram.com/LandauSymbols.html Simboluri Landau]
* [http://www.perlmonks.org/?node_id=573138 Notația Big-O - la ce servește]
* [https://stackoverflow.com/questions/487258/what-is-a-plain-english-explanation-of-big-o-notation/50288253#50288253 Big O Notation explicată în engleză simplă]
[[Categorie:Pages with unreviewed translations]]

Versiunea de la 8 aprilie 2019 19:25

Exemplu de notație Big O: f(x) ∈ O (g(x)) deoarece există c>0 (de exemplu, c=1) și x0 (de exemplu, x0=5) astfel încât f(x)c g(x) pentru orice xx0.

Notația Big O este o notație matematică care descrie comportamentul la limită al unei funcții atunci când argumentul tinde la o anumită valoare sau la infinit. Este una din notațiile inventate de Paul Bachmann,[1] Edmund Landau,[2] și alții, numite colectiv notațiile Bachmann-Landau sau notațiile asimptotice.

În informatică, notația Big O este folosită pentru a clasifica algoritmii în funcție de felul în care timpul lor de rulare sau cerințele lor de spațiu cresc pe măsură ce crește dimensiunea datelor de intrare.[3] În teoria analitică a numerelor, notația Big O este adesea folosită pentru a exprima o legătură între diferența dintre o funcție aritmetică și o aproximare mai bine înțeleasă; un exemplu celebru de astfel de diferență este termenul rest din teorema numerelor prime.

Notatia Big O caracterizează funcțiile după de vitezele lor de creștere: funcții diferite cu aceeași viteză de creștere pot fi reprezentate folosind aceeași notație O.

Litera O este folosită deoarece viteza de creștere a unei funcții este numită și ordin al funcției. O descriere a unei funcții în ceea ce privește notația Big O, de obicei, oferă doar o limită superioară a vitezei de creștere a funcției. Cu notația Big O mai sunt asociate mai multe alte notații, folosind simbolurile o, Ω, ω, și Θ , pentru a descrie alte tipuri de limite ale vitezelor de creștere asimptotică.

Notația Big O este folosită și în multe alte domenii pentru a furniza estimări similare.

Definiție formală

Fie f o funcție cu valori reale sau complexe și g o funcție cu valori reale, ambele fiind definite pe unele submulțimi nemărginite ale mulțimii numerelor reale pozitive, astfel încât g(x) să fie strict pozitivă pentru toate valorile suficient de mari ale lui x.[4] Se scrie

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=O(g(x))\text{ as }x\to\infty} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

dacă și numai dacă pentru toate valorile suficient de mari ale lui x, valoarea absolută a lui f(x) este cel mult un multiplu constant pozitiv al lui g(x). Adică, f(x) = O(g(x)) dacă și numai dacă există un număr real pozitiv M și un număr real x0 astfel încât

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo></mstyle></mrow> </img>

În multe contexte, ipoteza că suntem interesați de viteza de creștere când variabila x tinde la infinit este lăsată nestabilită, și se scrie mai simplu că

Notația poate fi folosită și pentru a descrie comportamentul lui f în preajma unui număr real a (adesea, a = 0: se spune

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=O(g(x))\text{ as }x\to a} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi></mstyle></mrow> </math> </img>

dacă și numai dacă există numere pozitive δ și M astfel încât

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mn> </mn><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo> </mo><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><mo> </mo></mstyle></mrow> </img>

Întrucât g(x) este aleasă în așa fel încât să fie nenulă, pentru valori ale lui x suficient de apropiate de a, ambele aceste definiții pot fi unificate folosind limita superioară:

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=O(g(x))\text{ as }x \to a} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi></mstyle></mrow> </math> </img>

dacă și numai dacă

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><munder><mo movablelimits="true"> </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo stretchy="false"> </mo><mi> </mi></mrow></munder><mrow><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow></mfrac></mrow><mo> </mo></mrow><mo> </mo><mi mathvariant="normal"> </mi><mo> </mo></mstyle></mrow> </img>

Exemplu

În uzul tipic, definiția oficială a notației O nu este folosită direct; mai degrabă, notația O pentru o funcție f se deduce din următoarele reguli de simplificare:

  • Dacă f(x) este o sumă de câțiva termeni, dacă există unul cu cea mai mare viteză de creștere, el poate fi păstrat și toți ceilalți omiși.
  • Dacă f(x) este un produs al mai multor factori, orice constantă (termen din produs care nu depinde de x) poate fi omisă.

De exemplu, fie f ( x ) = 6 x 4   -   2 x 3   +   5 și se presupune că se dorește simplificarea acestei funcții, folosind notația O, pentru a descrie viteza de creștere a acesteia când x tinde la infinit. Această funcție este suma a trei termeni: 6x4 , -2x3 și 5. Din cei trei termeni, cel cu cea mai mare viteză de creștere este cel cu cel mai mare exponent în funcție de x, și anume 6x4. Acum se poate aplica a doua regulă: 6 x 4 este un produs de 6 și x4 în care primul factor nu depinde de x. Omiterea acestui factor are ca rezultat forma simplificată x4. Astfel, spunem că f(x) este un „big-O” al lui (x4). Matematic, putem scrie f ( x )   =   O ( x 4 ). Se poate confirma acest calcul folosind definiția formală: fie f ( x )   =   6 x 4   -   2 x 3   +   5 și g ( x )   =   x 4 . Aplicând definiția formală de mai sus, afirmația că f ( x )   =   O ( x 4 ) este echivalentă cu expansiunea sa,

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>|f(x)| \le \; M x^4} </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup></mstyle></mrow> </math> </img>

pentru un x0 și un M aleși adecvat și pentru orice x > x0 . Pentru a demonstra acest lucru, fie x0 = 1 și M = 13. Atunci pentru orice x > x0:

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mtable displaystyle="true" rowspacing="3pt"><mtr><mtd><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> <math>\begin{align}|6x^4 - 2x^3 + 5| &\le 6x^4 + |2x^3| + 5\\ &\le 6x^4 + 2x^4 + 5x^4\\ &= 13x^4\end{align}} </mo></mrow><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow></mtd><mtd><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mn> </mn></mtd></mtr><mtr><mtd><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup></mtd></mtr><mtr><mtd><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup></mtd></mtr></mtable></mrow></mstyle></mrow> </math> </img>

așa că

Utilizare

Notația Big O are două domenii principale de aplicare:

În ambele aplicații, funcția g(x) care apare în cadrul lui O (...) este de obicei aleasă așa încât să fie cât mai simplă posibil, omițând factori constanți și termeni de ordin inferior.

Există două utilizări formale apropiate, dar cu totul diferite, ale acestei notații:

Distincția aceasta există doar în practică, nu și în principiu — definiția formală pentru „big O” este aceeași pentru ambele cazuri, cu limite diferite pentru argumentul funcției.

Asimptotica infinită

Graficele funcțiilor utilizate în mod obișnuit în analiza algoritmilor, care arată numărul de operații N în raport cu dimensiunea intrării n pentru fiecare funcție

Notația Big O este utilă atunci când se analizează eficiența algoritmilor. De exemplu, timpul (sau numărul de pași) necesar pentru a rezolva o problemă de dimensiune n poate fi găsit a fi T ( n ) = 4 n 2 - 2 n + 2. Când n crește foarte mult, termenul n2 ajunge să domine, astfel încât toți ceilalți termeni pot fi neglijați, de exemplu, atunci când n = 500, termenul 4n2 este de 1000 de ori mai mare ca termenul 2n. Ignorarea acestuia din urmă ar avea un efect neglijabil asupra valorii expresiei pentru cele mai multe scopuri. Mai mult, coeficienții devin irelevanți dacă comparăm cu oricare alt ordin al expresiei, cum ar fi o expresie care conține un termen n3 sau n4. Chiar dacă T(n) = 1.000.000 n2, dacă U(n) = n3, acesta din urmă îl va depăși întotdeauna pe primul când n crește mai mare decât 1.000.000 (T(1.000.000) = 1.000.0003 = U(1.000.000)). În plus, numărul de pași depinde de detaliile modelului mașinii pe care rulează algoritmul, dar diferite tipuri de mașini variază de obicei doar printr-un factor constant în numărul de pași necesari pentru executarea unui algoritm. Deci, notația Big O surprinde ceea ce rămâne: se scrie fie

fie

și se spune că algoritmul are complexitate de ordinul n2. Egalul nu mai reprezintă aici egalitate în sensul matematic normal, ci mai degrabă un „este“ mai popular, astfel încât a doua expresie este uneori considerată mai precisă (a se vedea discuția de mai jos despre semnul egal) în timp ce prima este considerată de unii ca un abuz de notație.[5]

Asimptotica infinitezimală

Big O poate fi folosită și pentru a descrie termenul de eroare într-o aproximare a unei funcții matematice. Termenii cei mai semnificativi sunt scriși explicit, iar termenii cel mai puțin semnificativi sunt rezumați într-un singur termen Big O. Considerăm, de exemplu, seria exponențială și două expresii ale acesteia care sunt valabile atunci când x este mic:

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mtable displaystyle="true" rowspacing="3pt"><mtr><mtd><msup><mi> <math>\begin{align} e^x &=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\dotsb &\text{for all } x\\ &=1+x+\frac{x^2}{2}+O(x^3) &\text{as } x\to 0\\ &=1+x+O(x^2) &\text{as } x\to 0\\ \end{align}} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup></mtd><mtd><mo> </mo><mn> </mn><mo> </mo><mi> </mi><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mrow><mn> </mn><mo> </mo></mrow></mfrac></mrow><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mrow><mn> </mn><mo> </mo></mrow></mfrac></mrow><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mrow><mn> </mn><mo> </mo></mrow></mfrac></mrow><mo> </mo><mo> </mo></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi></mtd></mtr><mtr><mtd><mo> </mo><mn> </mn><mo> </mo><mi> </mi><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mn> </mn></mfrac></mrow><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo stretchy="false"> </mo></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mn> </mn></mtd></mtr><mtr><mtd><mo> </mo><mn> </mn><mo> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo stretchy="false"> </mo></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mn> </mn></mtd></mtr></mtable></mrow></mstyle></mrow> </math> </img>

Cea de a doua expresie (cea cu O(x3)) înseamnă că valoarea absolută a erorii ex - (1 + x2/2) este de cel mult o constantă înmulțită cu | x3 | când x este suficient de aproape de 0.

Proprietăți

Dacă funcția f poate fi scrisă ca o sumă finită a altor funcții, atunci cea mai rapidă creștere determină ordinul lui f(n). De exemplu,

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mn> </mn><mi> </mi><mo> </mo><mi> </mi><mo> </mo><mn> </mn><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo> </mo></mstyle></mrow> </img>

În special, dacă o funcție poate fi legată de un polinom în n, atunci când n tinde spre infinit, se pot ignora termenii de grad mai mic ai polinomului. De asemenea, mulțimile O(nc) și O(cn) sunt foarte diferiți. Dacă c este mai mare decât unu, atunci acesta crește mult mai repede. O funcție care crește mai repede decât nc pentru oricare c se numește superpolinomială. Una care crește mai lent decât orice funcție exponențială de forma cn se numește subexponențială. Un algoritm poate necesita timp atât superpolimonial cât și subexponențial; printre astfel de exemple se numără algoritmii cei mai rapizi cunoscuți pentru factorizarea numerelor întregi și funcția nlog n.

Se poate ignora orice putere a lui n din interiorul logaritmilor. Mulțimea O (log n) este exact același cu O (log nc). Logaritmii diferă numai printr-un factor constant (întrucât log nc = c log n) și astfel notația Big O ignoră termenul. Similar, logaritmii cu diferite baze constante sunt echivalenți. Pe de altă parte, exponențialele cu baze diferite nu sunt de același ordin. De exemplu, 2n nu este același lucru cu 3n.

Schimbarea unităților poate sau nu poate afecta ordinul algoritmului rezultat. Modificarea unităților este echivalentă cu înmulțirea variabilei corespunzătoare cu o constantă oriunde apare. De exemplu, dacă un algoritm rulează în timp de ordinul lui n2, înlocuirea n cu cn înseamnă că algoritmul rulează în timp de ordinul lui c2n2, iar notația Big O ignoră constanta c2. Aceasta se poate scrie ca c2n2 = O(n2). Dacă, totuși, un algoritm rulează în timp de ordinul lui 2n, înlocuirea lui n cu cn dă timp de ordinul 2cn = (2c)n. Aceasta nu este echivalentă cu 2n în general. Schimbarea variabilelor poate afecta, de asemenea, ordinul algoritmului rezultat. De exemplu, dacă timpul de execuție al algoritmului este O(n) atunci când este măsurat în termeni de număr n de cifre al unui număr de intrare x, timpul său de execuție este O(log x) ca funcție de numărul de intrare x însuși, deoarece n = O(log x).

Produsul

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2 = O(g_2)\, \Rightarrow f_1 f_2 = O(g_1 g_2)} </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo stretchy="false"> </mo><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>
Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f\cdot O(g) = O(f g)} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>

Suma

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math> f_1 = O(g_1) \text{ and } f_2= O(g_2)\, \Rightarrow f_1 + f_2 = O(max(g_1, g_2))} </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo stretchy="false"> </mo><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mi> </mi><mi> </mi><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>

Asta implică Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math> f_1 = O(g) \text{ and } f_2 = O(g) \Rightarrow f_1+f_2 \in O(g) } </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> , ceea ce înseamnă că Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(g)} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> este un con convex .

Înmulțirea cu o constantă

Fie k o constantă. Atunci:
Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\ O(|k| g) = O(g)} </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> dacă k este nenul.
<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Mai multe variabile

Big O (și little o, Ω, etc.) pot fi utilizate și cu mai multe variabile. Pentru a defini Big O în mod formal pentru mai multe variabile, se presupune că f și g sunt două funcții definite pe o anumită submulțime a lui </img> . Se spune că

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(\vec{x})\text{ is }O(g(\vec{x}))\text{ as }\vec{x}\to\infty} </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

dacă și numai dacă [6]

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mo> </mo><mn> </mn><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub><mo> </mo><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo></mstyle></mrow> </img>

În mod echivalent, condiția Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math>x_i \geq M} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub><mo> </mo><mi> </mi></mstyle></mrow> </math> </img> pentru unii Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>i} </mi></mstyle></mrow> </math> </img> poate fi înlocuită cu condiția Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo fence="false" stretchy="false"> <math>\|\vec{x}\|_{\infty} \ge M} </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><msub><mo fence="false" stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mi mathvariant="normal"> </mi></mrow></msub><mo> </mo><mi> </mi></mstyle></mrow> </math> </img> , unde cu Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo fence="false" stretchy="false"> <math>\|\vec{x}\|_{\infty}} </mo><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> </mi><mo stretchy="false"> </mo></mover></mrow></mrow><msub><mo fence="false" stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mi mathvariant="normal"> </mi></mrow></msub></mstyle></mrow> </math> </img> se notează norma Cebîșev. De exemplu, afirmația

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m) = n^2 + m^3 + O(n+m) \text{ as } n,m\to\infty} </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

spune că există constantele C și M astfel încât

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\forall \|(n, m)\|_{\infty} \geq M: |g(n,m)| \le C|n+m|,} </mi><mo fence="false" stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msub><mo fence="false" stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mi mathvariant="normal"> </mi></mrow></msub><mo> </mo><mi> </mi><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo> </mo><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo></mstyle></mrow> </math> </img>

unde g(n, m) se definește ca

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Această definiție permite ca toate coordonatele luiNu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mover><mi> <math>\vec{x}} </mi><mo stretchy="false"> </mo></mover></mrow></mrow></mstyle></mrow> </math> </img> să crească până la infinit. În special, afirmația

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m) = O(n^m) \text{ as } n,m\to\infty} </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

( de exemplu, Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\exists C\,\exists M\,\forall n\,\forall m\dots} </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mo> </mo></mstyle></mrow> </math> </img> ) este destul de diferită de

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\forall m\colon f(n,m) = O(n^m) \text{ as } n\to\infty} </mi><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

( de exemplu, Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\forall m\,\exists C\,\exists M\,\forall n\dots} </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mi mathvariant="normal"> </mi><mi> </mi><mo> </mo></mstyle></mrow> </math> </img> ).

Sub această definiție, submulțimea pe care este definită o funcție este semnificativă atunci când se generalizează afirmațiile de la contextul univariabilă la cel multivariabilă. De exemplu, dacă Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m)=1} </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mn> </mn></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(n,m)=n} </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi></mstyle></mrow> </math> </img> , atunci Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n,m)=O(g(n,m))} </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> dacă se restrâng Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f} </mi></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g} </mi></mstyle></mrow> </math> </img> la Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>[1,\infty)^2} </mo><mn> </mn><mo> </mo><mi mathvariant="normal"> </mi><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup></mstyle></mrow> </math> </img> , dar nu dacă acestea sunt definite pe Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>[0,\infty)^2} </mo><mn> </mn><mo> </mo><mi mathvariant="normal"> </mi><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup></mstyle></mrow> </math> </img> .

Aceasta nu este singura generalizare a funcțiilor Big O la funcții multivariabilă, iar în practică există o anumită inconsistență în alegerea definiției. [7]

Chestiuni de notație

Semnul egal

Afirmația f(x) este O(g(x)), așa cum este definită mai sus, se scrie de obicei ca f(x) = O(g(x)). Unii consideră că acest lucru este un abuz de notație, deoarece utilizarea semnului egal ar putea fi înșelătoare, deoarece sugerează o simetrie, pe care această afirmație nu o are. După cum spune de Bruijn, este adevărat că O(x) = O(x2), dar nu și că O(x2) = O(x).[8] Knuth denumește astfel de afirmații „egalități unidirecționale”, deoarece dacă s-ar inversa cele două părți, „am putea deduce lucruri ridicole cum ar fi n = n2 din identitățile n = O(n2)și n2 = O(n2).” [9]

Din aceste motive, ar fi mai precis să folosim notația mulțimilor și să scriem f(x) ∈ O(g(x)), considerând O(g(x)) ca clasă a tuturor funcțiilor h(x) astfel încât | h(x) | ≤ C | g(x) | pentru o constantă C.[9] Cu toate acestea, utilizarea semnului egal este obișnuită. Knuth a subliniat că „matematicienii folosesc în mod obișnuit semnul = așa cum folosesc cuvântul «este» în limba engleză: Aristotel este un om, dar un om nu este neapărat Aristotel.”[10]

Alți operatori aritmetici

Notația Big O poate fi utilizată și în combinație cu alți operatori aritmetici în ecuații mai complicate. De exemplu, cu h(x) + O(f(x)) se notează colecția de funcții având creșterea h(x) plus o parte a cărei creștere este limitată la f(x). Prin urmare,

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(x) = h(x) + O(f(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>

exprimă același lucru ca și

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Exemplu

Să presupunem că se dezvoltă un algoritm care să funcționeze pe o mulțime de n elemente. Dezvoltatorii săi sunt interesați să găsească o funcție T(n) care să exprime cât timp va dura rularea algoritmului (în unele măsurători arbitrare ale timpului) în termeni de număr de elemente din mulțimea de intrare. Algoritmul funcționează apelând mai întâi o subrutină pentru sortarea elementelor din mulțime și efectuarea propriilor operații. Sortarea are o complexitate în timp cunoscută de O(n2), iar după executarea subrutinei algoritmul trebuie să mai ruleze încă 55n3 + 2n + 10 pași înainte de a se termina. Astfel, complexitatea în timp a algoritmului poate fi exprimată ca T(n) = 55 n3 + O(n2). Aici termenii 2n + 10 sunt subsumați în cadrul lui O(n2) cu creștere mai rapidă. Din nou, această utilizare ignoră o parte din semnificația formală a simbolului „=”, dar permite utilizarea notației Big O ca un substitut convenabil.

Utilizări multiple

În utilizarea mai complicată, O (...) poate să apară în diferite locuri într-o ecuație, chiar și de mai multe ori pe fiecare parte. De exemplu, următoarele sunt valabile pentru Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>n\to\infty} </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>(n+1)^2 = n^2 + O(n)} </mo><mi> </mi><mo> </mo><mn> </mn><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>
Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo stretchy="false"> <math>(n+O(n^{1/2}))(n + O(\log n))^2 = n^3 + O(n^{5/2})} </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow><mn> </mn></mrow></msup><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow><mn> </mn></mrow></msup><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>
<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Semnificația acestor afirmații este următoarea: pentru orice funcție care satisface fiecare O (...) din partea stângă, există câteva funcții care satisfac fiecare O (...) din partea dreaptă, astfel încât substituind toate aceste funcții, ecuația face ca cele două părți să fie egale. De exemplu, a treia ecuație de mai sus înseamnă: „Pentru orice funcție f(n) = O(1), există o funcție g(n) = O(en) astfel încât nf(n) = g(n).” În ceea ce privește „notația mulțimilor” de mai sus, înțelesul este că clasa de funcții reprezentată de partea stângă este o submulțime a clasei de funcții reprezentate de partea dreaptă. În această utilizare, „=” este un simbol formal care, spre deosebire de utilizarea obișnuită a lui „=”, nu este o relație simetrică. Astfel, de exemplu, nO(1) = O(en) nu implică și afirmația falsă O(en) = nO(1)

Big O constă doar dintr-un „O” majuscul. Spre deosebire de notațiile cu nume grecești Bachmann-Landau, nu are nevoie de un simbol special. Cu toate acestea, variantele caligrafice frecvent utilizate, cum ar fi Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mi class="MJX-tex-caligraphic" mathvariant="script"> <math>\mathcal{O}} </mi></mrow></mrow></mstyle></mrow> </math> </img> , sunt disponibile în sistemele LaTeX și în sisteme de fonturi derivate.[11]

Ordinul de mărime al unor funcții comune

Mai jos sunt enumerate clase de funcții care se întâlnesc frecvent când se analizează timpul de funcționare al unui algoritm. În fiecare caz, c este o constantă pozitivă și n crește fără limitări. Funcțiile cu o creștere mai lentă sunt în general enumerate mai întâi.

Notație Nume Exemple
constantă Determinarea dacă un număr binar este par sau impar; Calculul lui ; Utilizarea unei tabele de căutare de dimensiuni constante
dublu logaritmică Numărul de comparații folosit pentru a găsi un element folosind căutarea prin interpolare într-un tabel sortat de valori uniform distribuite
logaritmică Găsirea unui element într-un tablou sortat cu căutare binară sau cu un arbore de căutare echilibrat, precum și toate operațiile pe un heap binomial


polilogaritmică Ordonarea lanțurilor de matrice poate fi rezolvată în timp polilogaritmic pe o mașină cu acces aleator paralel.


putere fracționară Căutarea într-un arbore k-d
liniară Găsirea unui element într-o listă neordonată sau într-un tablou neordonat; adunarea a doi întregi pe n biți prin sumatoare cu transport.
n log-star n Efectuarea de triangulații ale unui poligon simplu folosind algoritmul lui Seidel, sau algoritmul union–find.
linearitmică, logliniară, sau cvasiliniară Efecturea unei transformări Fourier rapide; Cea mai rapidă sortare cu comparație; heapsort and merge sort
pătratică Înmulțirea a două numere cu n cifre printr-un algoritm simplu; algoritmi de sortare simpli, cum ar fi bubble sort, selection sort și insertion sort; limita (în cel mai rău caz) a unor algoritmi de regulă mai rapizi, ca quicksort, Shellsort, și tree sort
polinomială sau algebrică Parsarea unor gramatici cu arbori adjuncți; cuplajul maxim pentru grafuri bipartite; găsirea determinantului prin descompunere LU


Notația L sausubexponențială Factorizarea unui număr folosind ciurul pătratic sau ciurul algebric


exponențtială Găsirea soluției (exacte) a problemei comis-voiajorului folosind programare dinamică; aflarea dacă două afirmații logice sunt echivalente folosind căutarea cu forță brută
factorială Rezolvarea problemei comis-voiajorului prin căutarea cu forță brută; generarea tuturor permutațiilor nerestricționate ale unei mulțimi parțial ordonate; găsirea determinantului prin dezvoltare Laplace; enumerarea tuturor partițiilor unei mulțimi

Afirmația Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n)=O(n!)} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> este uneori slăbită la Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(n)=O\left(n^n\right)} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mrow><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo> </mo></mrow></mstyle></mrow> </math> </img> pentru a obține formule mai simple pentru complexitatea asimptotică. Pentru orice Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>k>0} </mi><mo> </mo><mn> </mn></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>c>0} </mi><mo> </mo><mn> </mn></mstyle></mrow> </math> </img> . Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(n^c(\log n)^k)} </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> este o submulțime a lui Nu s-a putut interpreta (MathML cu fallback pe SVG sau PNG (recomandat pentru browserele moderne și uneltele de accesibilitate): Răspuns incorect („Math extension cannot connect to Restbase.”) de la serverul „http://localhost:6011/ro.wikipedia.org/v1/”:): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(n^{c+\varepsilon })} </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo> </mo><mi> </mi></mrow></msup><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> pentru orice Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> \varepsilon >0} </mi><mo> </mo><mn> </mn></mstyle></mrow> </math> </img> , deci poate fi considerat ca un polinom de grad mai mare.

Notații asimptotice asociate

Big O este cea mai frecvent folosită notație asimptotică pentru compararea funcțiilor. Împreună cu alte notații asociate, ea formează familia notațiilor Bachmann-Landau.

Notația Little-o

Intuitiv, afirmația „f(x) este o(g(x))” (a se citi f(x) este little-o de g(x) înseamnă că g(x) crește mult mai rapid decât f(x). Fie f ca înainte o funcție cu valori reale sau complexe și g o funcție cu valori reale, ambele fiind definite pe unele submulțimi nemărginite ale numerelor reale pozitive, astfel încât g(x) să fie strict pozitivă pentru toate valorile suficient de mari ale lui x. Se scrie

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=o(g(x))\text{ as }x\to\infty} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mstyle></mrow> </math> </img>

dacă pentru orice constantă pozitivă ε există o constantă N astfel încât

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo></mrow><mo> </mo><mi> </mi><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mtext> </mtext></mrow><mi> </mi><mo> </mo><mi> </mi><mo> </mo></mstyle></mrow> </img> [12]

De exemplu, avem

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>2x = o(x^2) } </mn><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>1/x = o(1).} </mn><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

Diferența dintre definiția anterioară pentru notația big-O și definiția aceasta a lui little-o este că, în timp ce prima trebuie să fie adevărată pentru cel puțin o constantă M, aceasta din urmă trebuie să fie valabilă pentru orice constantă pozitivă ε , oricât de mică ar fi.[5] În acest fel, notația little-o face o afirmație mai puternică decât notația big-O corespunzătoare: orice funcție care este little-o a lui g este de asemenea big O al lui g, dar nu orice funcție care este big-O al lui g este și little-o de g. De exemplu, Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>2x^2 = O(x^2) } </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> dar Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>2x^2 \neq o(x^2). } </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

Deoarece g(x) este nenul, sau cel puțin devine nenul dincolo de un anumit punct, relația f(x) = o(g(x)) este echivalentă cu

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><munder><mo movablelimits="true"> <math>\lim_{x \to \infty}\frac{f(x)}{g(x)}=0} </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mrow></munder><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow></mfrac></mrow><mo> </mo><mn> </mn></mstyle></mrow> </math> </img> (și așa a definit, de fapt, Landau [12] notația little-o).

Little-o respectă o serie de operații aritmetice. De exemplu,

dacă c este o constantă nenulă și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f = o(g)} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> atunci Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>c \cdot f = o(g)} </mi><mo> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> , și
dacă Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f = o(F)} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g = o(G)} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> atunci Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f \cdot g = o(F \cdot G).} </mi><mo> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

De asemenea, satisface o relație de tranzitivitate:

dacă Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f = o(g)} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> g = o(h)} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> atunci Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f = o(h).} </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

Notația Big Omega

Există două definiții foarte răspândite și incompatibile ale afirmației

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))\ (x\rightarrow a),} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

unde a este un număr real, ∞ sau -∞, unde f și g sunt funcții reale definite într-o vecinătate a lui a și unde g este pozitivă în această vecinătate.

Primul (cronologic) este folosită în teoria numerelor analitice, iar cealaltă în teoria complexității. Când se întâlnesc cele două subiecte, această situație este generatoare de confuzie.

Definiția Hardy-Littlewood

În 1914, Godfrey Harold Hardy și John Edensor Littlewood au introdus noul simbol Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega} </mi></mstyle></mrow> </math> </img> , [13] care este definit după cum urmează:

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><munder><mo movablelimits="true"> </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mrow></munder><mrow><mo> </mo><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow></mfrac></mrow><mo> </mo></mrow><mo> </mo><mn> </mn></mstyle></mrow> </img>

Prin urmare Nu s-a putut interpreta (MathML cu fallback pe SVG sau PNG (recomandat pentru browserele moderne și uneltele de accesibilitate): Răspuns incorect („Math extension cannot connect to Restbase.”) de la serverul „http://localhost:6011/ro.wikipedia.org/v1/”:): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> este negarea lui Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=o(g(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> .

În 1916, aceiași autori au introdus cele două noi simboluri Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_R} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_L} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub></mstyle></mrow> </math> </img> , definite astfel: [14]

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_R(g(x))\ (x\rightarrow\infty)\;\Leftrightarrow\;\limsup_{x \to \infty} \frac{f(x)}{g(x)}> 0} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><munder><mo movablelimits="true"> </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mrow></munder><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow></mfrac></mrow><mo> </mo><mn> </mn></mstyle></mrow> </math> </img>  ;
<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><munder><mo movablelimits="true"> </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi></mrow></munder><mrow class="MJX-TeXAtom-ORD"><mfrac><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow><mrow><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mrow></mfrac></mrow><mo> </mo><mn> </mn></mstyle></mrow> </img>

Aceste simboluri au fost folosite de Edmund Landau, cu aceleași semnificații, în 1924.[15] După Landau, notațiile nu au fost niciodată folosite din nou exact așa; Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_R} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub></mstyle></mrow> </math> </img> a devenit Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_+} </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_L} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub></mstyle></mrow> </math> </img> a devenit Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_-} </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub></mstyle></mrow> </math> </img> .  

[ <span title="This claim needs references to reliable sources. (December 2018)">citare necesară</span> ]

Aceste trei simboluri Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega, \Omega_+, \Omega_-} </mi><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub></mstyle></mrow> </math> </img> , precum și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_\pm(g(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> (ceea ce înseamnă că atât Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_+(g(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> cât și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega_-(g(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> sunt satisfăcute), sunt acum utilizate în prezent în teoria numerelor analitice . [16] [17]

Exemple simple

Avem

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x=\Omega(1)\ (x\rightarrow\infty),} </mi><mo> </mo><mi> </mi><mo> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

și mai precis

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo> </mo><mi> </mi><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Avem

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x+1=\Omega(1)\ (x\rightarrow\infty),} </mi><mo> </mo><mi> </mi><mo> </mo><mn> </mn><mo> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

și mai precis

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\sin x+1=\Omega_+(1)\ (x\rightarrow\infty);} </mi><mo> </mo><mi> </mi><mo> </mo><mn> </mn><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

dar

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo> </mo><mi> </mi><mo> </mo><mn> </mn><mo> </mo><msub><mi mathvariant="normal"> </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Definiția Knuth

În 1976, Donald Knuth a publicat o lucrare pentru a justifica utilizarea simbolului Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega} </mi></mstyle></mrow> </math> </img> pentru a descrie o proprietate mai puternică. Knuth a scris: „Pentru toate aplicațiile pe care le-am văzut până acum în domeniul informaticii, o cerință mai puternică [...] este mult mai potrivită”. El a definit

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>f(x)=\Omega(g(x))\Leftrightarrow g(x)=O(f(x))} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>

cu comentariul: „Deși am schimbat definiția dată de Hardy și a Littlewood pentru Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega} </mi></mstyle></mrow> </math> </img> , mă simt justificat în acest sens, deoarece definiția lor nu este deloc folosită pe scară largă și pentru că există și alte modalități de a spune ceea ce vor ei să spună în cazurile relativ rare în care se aplică definiția lor.”[18]

Familia de notații Bachmann-Landau

Notația Nume[18] Descriere Definiție formală Limit Definition[19][20][21][18][13]
Small O; Small Oh f este dominată de g asimptotic
Big O; Big Oh; Big Omicron este mărginită superior de g (până la un factor constant) asimptotic
Big Theta f este mărginită atât superior cât și inferior de g asimptotic and (Knuth version)
De ordinul lui f este egal cu g asimptotic
Big Omega în teoria numerelor (Hardy–Littlewood) nu este dominată de g asimptotic
Big Omega în teoria complexității (Knuth) f este mărginit inferior de g asimptotic
Small Omega f domină g asimptotic

Definițiile limitelor presupun Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>g(n) \neq 0} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mn> </mn></mstyle></mrow> </math> </img> pentru n suficient de mare. Tabelul este (parțial) sortat de la cel mai mic la cel mai mare, în sensul că o, O, Θ, ~, Ω (versiunea lui Knuth), ω pe funcții corespund cu <, ≤, ≈, =, ≥, > pe dreapta reală [21] (versiunea Hardy-Littlewood a lui Ω nu corespunde însă unei astfel de descrieri).

Informatica folosește Big O, bog Theta Θ, little o, omega ω și notația Big Omega Ω a lui Knuth. [22] Teoria analitică a numerelor utilizează adesea big O, small o, Big Omega Ω a lui Hardy-Littlewood (cu sau fără indicele +, - sau ±) și notațiile Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\sim} </mo></mstyle></mrow> </math> </img> .[16] Notația small omega ω nu este utilizată la fel de des în analiză.[23]

Utilizați în informatică

În mod informal, în special în domeniul informaticii, notația big O poate fi folosită oarecum diferit pentru a descrie o legătură asimptotică strânsă unde notația Theta Θ ar putea fi mai potrivită într-un anumit context. De exemplu, atunci când se analizează o funcție T(n) = 73n3 + 22n2 + 58, toate afirmațiile următoare sunt în general acceptabile, dar limite mai stricte (cum ar fi numerele 2 și 3 de mai jos) sunt de obicei preferate în locul limitelor mai relaxate (cum ar fi numărul 1 de mai jos).

  1. T(n) = O(n100)
  2. T(n) = O(n3)
  3. T(n) = Θ(n3)

Afirmațiile echivalente în română sunt:

  1. T(n) crește asymptotic nu mai repede decât n100
  2. T(n) crește asymptotic nu mai repede decât n3
  3. T(n) crește asimptotic la fel de repede ca n3.

Deci, în timp ce toate cele trei afirmații sunt adevărate, în fiecare din ele există progresiv mai multe informații. În unele domenii, cu toate acestea, notația Big O (numărul 2 din listele de mai sus) ar fi folosită mai frecvent decât notația Big Theta (punctele 3 din listele de mai sus). De exemplu, dacă T(n) reprezintă timpul de funcționare a algoritmului nou dezvoltat pentru dimensiunea de intrare n, inventatorii și utilizatorii algoritmului ar putea fi mai înclinați să pună o limită asimptotică superioară timpului cât va dura funcționarea lui, fără a face vreo afirmație explicită despre limita inferioară asimptotică.

Alte notații

În cartea lor Introducere în algoritmi, Cormen, Leiserson, Rivest și Stein iau în considerare mulțimea funcțiilor f care satisfac

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mi mathvariant="normal"> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Într-o notație corectă, această mulțime poate fi, de exemplu, numită O(g), unde

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O(g) = \{ f :} </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mo fence="false" stretchy="false"> </mo><mi> </mi><mo> </mo></mstyle></mrow> </math> </img> există constante pozitive c și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math>n_0} </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub></mstyle></mrow> </math> </img> astfel încât Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> <math>0 \le f(n) \le cg(n)} </mn><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img> pentru toți Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>n \ge n_0 \}} </mi><mo> </mo><msub><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msub><mo fence="false" stretchy="false"> </mo></mstyle></mrow> </math> </img> . [24]

Autorii afirmă că folosirea operatorului de egalitate (=) pentru a nota apartenența la mulțime, în locul operatorului de apartenență încetățenit (∈) este un abuz de notație, dar acest lucru are avantaje.[25] Într-o ecuație sau inegalitate, folosirea unei notații asimptotice reprezintă o funcție anonimă din mulțimea O(g), care elimină termenii de ordin inferior și ajută la reducerea aglomerării inutile în ecuații, de exemplu: [26]

<mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mn> </mn><mi> </mi><mo> </mo><mn> </mn><mo> </mo><mn> </mn><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mn> </mn></mrow></msup><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </img>

Extensii la notațiile Bachmann-Landau

O altă notație folosită uneori în domeniul informaticii este Õ (citiți soft-O): f(n) = Õ(g(n)) este o prescurtare pentru f(n) = O(g(n) log k g(n)) pentru un anume k. În esență, este o notație Big O, ignorând factorii logaritmici, deoarece efectele ratei de creștere a unei alte funcții superlogaritmice indică o explozie a ratei de creștere pentru parametrii de intrare de dimensiuni mari, care este mai importantă pentru a prezice relele performanțe efectele mai fine cu care contribuie de factorul (factorii) de creștere logaritmică. Această notație este adesea folosită pentru a evita „pierderea în amănunte” în cadrul vitezelor de creștere care sunt declarate ca fiind prea strâns mărginite pentru chestiunea relevantă (întrucât logk n este întotdeauna o(nε) pentru orice constantă k și orice ε > 0).

De asemenea, notația L, definită ca

Nu s-a putut interpreta (MathML cu fallback pe SVG sau PNG (recomandat pentru browserele moderne și uneltele de accesibilitate): Răspuns incorect („Math extension cannot connect to Restbase.”) de la serverul „http://localhost:6011/ro.wikipedia.org/v1/”:): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi> <math>L_n[\alpha,c]=e^{(c+o(1))(\ln n)^\alpha(\ln\ln n)^{1-\alpha}}} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><msup><mi> </mi><mrow class="MJX-TeXAtom-ORD"><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mn> </mn><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msup><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo> </mo><mi> </mi><msup><mo stretchy="false"> </mo><mrow class="MJX-TeXAtom-ORD"><mn> </mn><mo> </mo><mi> </mi></mrow></msup></mrow></msup></mstyle></mrow> </math> </img>

este convenabilă pentru funcțiile care sunt între polinomială și exponențială în termeni de Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>\ln n} </mi><mo> </mo><mi> </mi></mstyle></mrow> </math> </img> .

Generalizări și utilizări conexe

Generalizarea funcțiilor care iau valori în orice spațiu vectorial normat este simplă (înlocuind valoarea absolută cu norma), unde f și g nu este nevoie săi aibă valori în același spațiu. O generalizare a funcțiilor g cu valori în orice grup topologic este de asemenea posibilă. „Procesul de limitare” xx0 poate fi și el generalizat prin introducerea unei baze de filtrare arbitrare, adică a rețelelor direcționate f și g. Notația o poate fi folosită pentru a defini derivate și diferențiabilitatea în spații destul de generale, precum și echivalența (asimptotică) a funcțiilor,

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f\sim g \iff (f-g) \in o(g) } </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>

care este o relație de echivalență și o noțiune mai restrictivă decât relația „f este Θ(g)” de mai sus. (Se reduce la lim f/g = 1 dacă f și g sunt funcții cu valoare reală pozitivă.) De exemplu, 2x este Θ(x), dar 2x - x nu este o(x).

Istorie (notații Bachmann-Landau, Hardy și Vinogradov)

Simbolul O a fost introdus pentru prima dată de teoreticianul numerelor Paul Bachmann în 1894, în al doilea volum al cărții sale Analytische Zahlentheorie („Teoria analitică a numerelor”), al cărei prim volum (care nu conținea încă notația Big O) a fost publicat în 1892.[1] Teoreticianul numerelor Edmund Landau a adoptat-o și, astfel, a fost inspirat să introducă în 1909 notația o; [2] aici ambele sunt numite acum simboluri Landau. Aceste notații au fost folosite în matematica aplicată în anii 1950 pentru analiza asimptotică.[27] Simbolul Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega} </mi></mstyle></mrow> </math> </img> (în sensul „nu este o de”) a fost introdus în 1914 de Hardy și Littlewood.[13] Hardy și Littlewood au introdus, de asemenea, în 1918 simbolurile Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_R} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub></mstyle></mrow> </math> </img> („dreapta”) și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_L} </mi><mrow class="MJX-TeXAtom-ORD"><mi> </mi></mrow></msub></mstyle></mrow> </math> </img> („stânga”), [14] precursori ai simbolurilor moderne Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_+} </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub></mstyle></mrow> </math> </img> („nu este mai mică decât small o de”) și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><msub><mi mathvariant="normal"> <math>\Omega_-} </mi><mrow class="MJX-TeXAtom-ORD"><mo> </mo></mrow></msub></mstyle></mrow> </math> </img> („nu este mai mare decât small o de”). Astfel, simbolurile Omega (cu semnificațiile lor originale) sunt uneori denumite și „simboluri Landau”. Această notație Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi mathvariant="normal"> <math>\Omega} </mi></mstyle></mrow> </math> </img> a devenit frecvent folosită în teoria numerelor cel puțin din anii 1950.[28] În anii 1970, Big O a fost popularizată în domeniul informaticii de către Donald Knuth, care a introdus notația aferentă Theta și a propus o altă definiție pentru notația Omega.[18]

Landau nu a folosit niciodată Theta mare și simboluri omega-mic.

Simbolurile lui Hardy erau (din punct de vedere al notației O moderne)

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f \preccurlyeq g\iff f \in O(g) } </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo></mstyle></mrow> </math> </img>   și   Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f\prec g\iff f\in o(g); } </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

(Hardy însă nu a definit niciodată și nu a folosit notația Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\prec\!\!\prec} </mo><mo> </mo></mstyle></mrow> </math> </img> , nici Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\ll} </mo></mstyle></mrow> </math> </img> , așa cum s-a afirmat uneori). De asemenea, Hardy a introdus simbolurile Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\preccurlyeq } </mo></mstyle></mrow> </math> </img> și Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\prec } </mo></mstyle></mrow> </math> </img> (precum și alte simboluri) în tratatul său din 1910, „Orders of Infinity”, și îl folosește doar în trei lucrări (1910-1913). În cele aproape 400 de lucrări și cărți rămase, el folosește consistent simbolurile Landau O și o.

Notația lui Hardy nu mai este folosită. Pe de altă parte, în 1930,[29] teoreticianului rus al numerelor Ivan Matveievici Vinogradov a introdus notația lui, Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mo> <math>\ll} </mo></mstyle></mrow> </math> </img> , care este folosită din ce în ce mai mult în teoria numerelor în locul notației Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math>O} </mi></mstyle></mrow> </math> </img> . Avem

Nu s-a putut interpreta (eroare de sintaxă): {\displaystyle <mrow class="MJX-TeXAtom-ORD"><mstyle displaystyle="true" scriptlevel="0"><mi> <math> f\ll g \iff f \in O(g), } </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo> </mo><mi> </mi><mo stretchy="false"> </mo><mi> </mi><mo stretchy="false"> </mo><mo> </mo></mstyle></mrow> </math> </img>

și în mod obișnuit ambele notații sunt utilizate în aceeași lucrare.

Big O reprezenta inițial „de ordinul lui” ("Ordnung", Bachmann 1894) și este așadar o literă latină. Nici Bachmann, nici Landau nu o numesc vreodată „Omicron”. Simbolul a fost considerat mult mai târziu (1976) de către Knuth drept omicron mare[18] probabil în legătură cu definiția sa a simbolului Omega. Nu se folosește cifra zero.

Lectură suplimentară

  • Hardy, G. H. (). Orders of Infinity: The 'Infinitärcalcül' of Paul du Bois-Reymond. Cambridge University Press. 
  • Knuth, Donald (). „1.2.11: Asymptotic Representations”. Fundamental Algorithms. The Art of Computer Programming. 1 (ed. 3rd). Addison–Wesley. ISBN 978-0-201-89683-1. 
  • Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (). „3.1: Asymptotic notation”. Introduction to Algorithms (ed. 2nd). MIT Press and McGraw–Hill. ISBN 978-0-262-03293-3. 
  • Sipser, Michael (). Introduction to the Theory of Computation. PWS Publishing. pp. 226–228. ISBN 978-0-534-94728-6. 
  • Avigad, Jeremy; Donnelly, Kevin (). Formalizing O notation in Isabelle/HOL (PDF). International Joint Conference on Automated Reasoning. doi:10.1007/978-3-540-25984-8_27. 
  • Black, Paul E. (). Black, Paul E., ed. „big-O notation”. Dictionary of Algorithms and Data Structures. U.S. National Institute of Standards and Technology. Accesat în . 
  • Black, Paul E. (). Black, Paul E., ed. „little-o notation”. Dictionary of Algorithms and Data Structures. U.S. National Institute of Standards and Technology. Accesat în . 
  • Black, Paul E. (). Black, Paul E., ed. „Ω”. Dictionary of Algorithms and Data Structures. U.S. National Institute of Standards and Technology. Accesat în . 
  • Black, Paul E. (). Black, Paul E., ed. „ω”. Dictionary of Algorithms and Data Structures. U.S. National Institute of Standards and Technology. Accesat în . 
  • Black, Paul E. (). Black, Paul E., ed. „Θ”. Dictionary of Algorithms and Data Structures. U.S. National Institute of Standards and Technology. Accesat în . 

Legături externe

  1. ^ a b Bachmann, Paul (). Analytische Zahlentheorie [Analytic Number Theory] (în germană). 2. Leipzig: Teubner. 
  2. ^ a b Landau, Edmund (). Handbuch der Lehre von der Verteilung der Primzahlen [Handbook on the theory of the distribution of the primes] (în germană). Leipzig: B. G. Teubner. p. 883. 
  3. ^ Mohr, Austin. „Quantum Computing in Complexity Theory and Theory of Computation” (PDF). p. 2. Accesat în . 
  4. ^ Landau, Edmund (). Handbuch der Lehre von der Verteilung der Primzahlen [Handbook on the theory of the distribution of the primes] (în germană). Leipzig: B. G. Teubner. p. 31. 
  5. ^ a b Thomas H. Cormen et al., 2001, Introduction to Algorithms, Second Edition[necesită pagina] Eroare la citare: Etichetă <ref> invalidă; numele "Introduction to Algorithms" este definit de mai multe ori cu conținut diferit
  6. ^ Cormen, Thomas; Leiserson, Charles; Rivest, Ronald; Stein, Clifford (). Introduction to Algorithms (ed. Third). MIT. p. 53. 
  7. ^ Howell, Rodney. „On Asymptotic Notation with Multiple Variables” (PDF). Accesat în . 
  8. ^ N. G. de Bruijn (). Asymptotic Methods in Analysis. Amsterdam: North-Holland. pp. 5–7. ISBN 978-0-486-64221-5. 
  9. ^ a b Graham, Ronald; Knuth, Donald; Patashnik, Oren (). Concrete Mathematics (ed. 2). Reading, Massachusetts: Addison–Wesley. p. 446. ISBN 978-0-201-55802-9. 
  10. ^ Donald Knuth (). „Teach Calculus with Big O” (PDF). Notices of the American Mathematical Society. 45 (6): 687.  (Unabridged version)
  11. ^ Tom (). „Big O and related notations in LaTeX”. texblog. 
  12. ^ a b Landau, Edmund (). Handbuch der Lehre von der Verteilung der Primzahlen [Handbook on the theory of the distribution of the primes] (în germană). Leipzig: B. G. Teubner. p. 61. 
  13. ^ a b c Hardy, G. H.; Littlewood, J. E. (). „Some problems of diophantine approximation: Part II. The trigonometrical series associated with the elliptic ϑ-functions”. Acta Mathematica. 37: 225. doi:10.1007/BF02401834. 
  14. ^ a b GH Hardy și JE Littlewood, "Contribuția la teoria funcției zeta Riemann și teoria distribuirii primelor", Acta Mathematica , vol. 41, 1916.
  15. ^ E. Landau, "De la Anzahl der Gitterpunkte in gewissen Bereichen." NAChR. Gesell. Wiss. Gott. Math-Phys. Kl. 1924, 137-150.
  16. ^ a b Aleksandar Ivić. Funcția zeta Riemann, capitolul 9. John Wiley & Sons 1985.
  17. ^ Gérald Tenenbaum, Introducere în teoria numărului analitic și probabilistic, capitolul I.5. Societatea Americana de Matematica, Providence RI, 2015.
  18. ^ a b c d e Donald Knuth. " Big Omicron și mare Omega și mare Theta ", SIGACT News, aprilie-iunie 1976, 18-24. Eroare la citare: Etichetă <ref> invalidă; numele "knuth" este definit de mai multe ori cu conținut diferit
  19. ^ Balcázar, José L.; Gabarró, Joaquim. „Nonuniform complexity classes specified by lower and upper bounds” (PDF). RAIRO – Theoretical Informatics and Applications – Informatique Théorique et Applications (în engleză). 23 (2): 180. ISSN 0988-3754. Accesat în . 
  20. ^ Cucker, Felipe; Bürgisser, Peter (). „A.1 Big Oh, Little Oh, and Other Comparisons”. Condition: The Geometry of Numerical Algorithms. Berlin, Heidelberg: Springer. pp. 467–468. doi:10.1007/978-3-642-38896-5. ISBN 978-3-642-38896-5. 
  21. ^ a b Vitányi, Paul; Meertens, Lambert (aprilie 1985). „Big Omega versus the wild functions” (PDF). ACM SIGACT News. 16 (4): 56–59. doi:10.1145/382242.382835. 
  22. ^ Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford () [1990]. Introduction to Algorithms⁠(d) (ed. 2nd). MIT Press and McGraw-Hill. pp. 41–50. ISBN 0-262-03293-7. 
  23. ^ for example it is omitted in: Hildebrand, A.J. „Asymptotic Notations” (PDF). Asymptotic Methods in Analysis. Math 595, Fall 2009. Accesat în . 
  24. ^ Thomas H. Cormen; Charles E. Leiserson; Ronald L. Rivest (). Introduction to Algorithms (ed. 3rd). Cambridge/MA: MIT Press. p. 47. ISBN 978-0-262-53305-8. When we have only an asymptotic upper bound, we use O-notation. For a given function g(n), we denote by O(g(n)) (pronounced “big-oh of g of n” or sometimes just “oh of g of n”) the set of functions O(g(n)) = { f(n) : there exist positive constants c and n0 such that 0 ≤ f(n) ≤ cg(n) for all nn0} 
  25. ^ Thomas H. Cormen; Charles E. Leiserson; Ronald L. Rivest (). Introduction to Algorithms (ed. 3rd). Cambridge/MA: MIT Press. p. 45. ISBN 978-0-262-53305-8. Because θ(g(n)) is a set, we could write "f(n) ∈ θ(g(n))" to indicate that f(n) is a member of θ(g(n)). Instead, we will usually write f(n) = θ(g(n)) to express the same notion. You might be confused because we abuse equality in this way, but we shall see later in this section that doing so has its advantages. 
  26. ^ Thomas H. Cormen; Charles E. Leiserson; Ronald L. Rivest (). Introduction to Algorithms (ed. 3rd). Cambridge/MA: MIT Press. p. 49. ISBN 978-0-262-53305-8. When the asymptotic notation stands alone (that is, not within a larger formula) on the right-hand side of an equation (or inequality), as in n = O(n²), we have already defined the equal sign to mean set membership: n ∈ O(n²). In general, however, when asymptotic notation appears in a formula, we interpret it as standing for some anonymous function that we do not care to name. For example, the formula 2n2 + 3n + 1 = 2n2 + θ(n) means that 2n2 + 3n + 1 = 2n2 + f(n), where f(n) is some function in the set θ(n). In this case, we let f(n) = 3n + 1, which is indeed in θ(n). Using asymptotic notation in this manner can help eliminate inessential detail and clutter in an equation. 
  27. ^ Erdelyi, A. (). Asymptotic Expansions. ISBN 978-0-486-60318-6. 
  28. ^ EC Titchmarsh, Teoria funcției Zeta Riemann (Oxford, Clarendon Press, 1951)
  29. ^ Vezi, de exemplu, "O nouă estimare pentru G ( n ) în problema lui Waring" (rusă). Doklady Akademii Nauk SSSR 5, nr. 5-6 (1934), 249-253. Tradus în limba engleză în: Lucrări selectate / Ivan Matveevič Vinogradov; pregătit de Institutul Matematic Steklov al Academiei de Științe a URSS cu ocazia aniversării a 90 de ani. Springer-Verlag, 1985.