Saltar ao contido

Comparación asintótica

Na Galipedia, a Wikipedia en galego.
Comparación asintótica de funcións utilizadas en informática, máis precisamente en algoritmos. Vemos por exemplo que a función exponencial () medra máis rápido que a función linear ().

En matemáticas, máis precisamente na análise, a comparación asintótica é un método para estudar a velocidade de crecemento dunha función.

Por exemplo, a función exponencial medra máis rápido que unha función linear.

A comparación asintótica tamén nos permite estudar a velocidade de calquera función en relación a unha función considerada máis "sinxela". Esta é a miúdo escollida nunha escala de referencia, xeralmente contén polo menos algunhas das chamadas funcións elementais, en particular as sumas e produtos de polinomios, exponenciais e logaritmos. A comparación faise no infinito ou nas proximidades dun punto.

O concepto de comparación asintótica úsase en física e tamén en informática, por exemplo para describir a complexidade de certos algoritmos[1]. De feito, a comparación asintótica é interesante no infinito, porque nos interesa o comportamento dun algoritmo en datos arbitrariamente grandes. Este método de comparación tamén se usa na teoría analítica de números para avaliar finamente o erro cometido ao substituír unha función irregular, como a de contar números primos, por unha función da escala escollida.

O método foi introducido polo traballo de Paul du Bois-Reymond a partir de 1872; para facilitar os cálculos e a presentación dos resultados, desenvolvéronse varias notacións, en particular por Bachmann (1894), Landau (1909), Hardy (1910), Hardy e Littlewood (1914 e 1916) e Vinogradov ( c. 1930).

Exemplos de comparación

[editar | editar a fonte]

Preponderancia. Notación o pequeno.

[editar | editar a fonte]

Sexan f e g as funcións reais definidas polas fórmulas

Ao estudar as dúas funcións, sabemos que g toma valores tan grandes como queremos preto do infinito, mentres que f só pode tomar valores entre 1 e 3. O cociente g dividido por f preto do infinito segue a aumentar e non está limitado. Neste contexto, podemos dicir que f é desprezábel en comparación con g, ou que g é preponderante en comparación con f, nas proximidades do infinito, escribimos (en notación de Landau[2], notación o pequeno):

ou (notación de Hardy, obsoleta)

Definición formal cando a función g non desaparece

[editar | editar a fonte]

Para definir formalmente esta propiedade consideramos o comportamento do cociente .

Sexa

Sexan f e g dúas funcións da variábel real x. Supoñemos que g non desaparece nunha veciñanza de a. Dicimos que f é desprezábel en comparación con g, ou que g é preponderante en comparación con f en a, e denotamos como , cando

Se o contexto está claro, non especificamos o ámbito de estudo e denotamos como: , ou mesmo . Porén, a notación sempre está asociada a un lugar a e á veciñanza deste lugar: ser desprezábel é un concepto local.

Nesta notación de Landau (ás veces tamén ), o símbolo lese como o pequeno. A notación de Hardy equivalente é . Hoxe, usamos exclusivamente a notación de Landau.

Propiedades

[editar | editar a fonte]

Polo que pode parecer un abuso da linguaxe, realizamos operacións sobre o «o  pequeno» . De feito, podemos escribir:

  •  ;
  • .

No lado esquerdo de cada fórmula os dous símbolos representan a priori diferentes funcións. A primeira fórmula lese como: "a suma de dúas funcións de orde tamén é unha función de orde ".

  • Para calquera función , tal que , temos que:

Equivalencia

[editar | editar a fonte]

Definición formal

[editar | editar a fonte]

Sexa .

Sexan f e g dúas funcións da variábel real x. Supomos que g non desaparece nunha proximidade de a. Dicimos que f é equivalente a g en a, ou que g é equivalente a f en a, e denotámolo como

, cando .

Dominación. Notación O grande.

[editar | editar a fonte]

A notación O grande de Landau denota o carácter dominado dunha función en relación a outra. Xeralmente, como Paul Bachmann que introduciu este símbolo en 1894, úsase a letra maiúscula O (do alemán Ordnung, "orde").

Definición formal

[editar | editar a fonte]

Sexan f e g dúas funcións da variábel real x. Dicimos que f está dominado por g en +∞, ou que g domina f en +∞, e denotámolo como (notación de Bachmann, 1894, ou de Landau, 1909)

ou (a notación de Hardy , 1910, obsoleta)

ou (notación de Vinogradov, década de 1930)

cando hai constantes N e C tal que

Intuitivamente, isto significa que f non medra máis rápido que g.

Do mesmo xeito, se a é un número real, escribimos

se existen constantes d > 0 e C tal que

Isto é equivalente, cando g non desaparece, a

  • Nun punto a, se f é desprezábel en comparación con g ou equivalente a g, entón está dominado por g.
  • Unha función f está limitada nunha veciñanza de a se e só se .

Ausencia de preponderancia e oscilacións

[editar | editar a fonte]

Notación Ω de Hardy e Littlewood (teoría dos números)

[editar | editar a fonte]

En 1914, Hardy e Littlewood presentaron o novo símbolo Ω [3] definido como:

.

Suponse que as funcións f e g están definidas, e g é positiva, nun contorno do infinito. Entón é a negación de .

En 1916, os mesmos autores presentaron os dous novos símbolos ΩR e ΩL [4], definidos como segue:

 ;
.

Como antes, as funcións f e g suponse que están definidas, e g é positiva, nun contorno do infinito. Entón, é a negación de , e é a negación de .


Estes tres símbolos, a saber , E , utilízanse agora habitualmente na teoría analítica de números, como o son para significar que se satisfán as dúas condicións e .

Está claro que en cada unha destas definicións podemos substituír por –∞ ou por un número real.

Temos

e máis precisamente,

Temos

e máis precisamente,

porén,

Dúas definicións incompatíbeis

[editar | editar a fonte]

É importante subliñar o feito de escribir

ten dúas definicións incompatíbeis en matemáticas, ambas as dúas moi estendidas, unha na teoría analítica de números, que acabamos de presentar, a outra na teoría da complexidade dos algoritmos. Cando estas dúas disciplinas se atopan, é probábel que esta situación cree unha grande confusión.

Usando comparacións

[editar | editar a fonte]

Expansións limitadas

[editar | editar a fonte]

En matemáticas, moitas veces é importante botar un ollo no termo de erro dunha aproximación. Esta notación úsase especialmente cando se trata de expansións limitadas e cálculos equivalentes. Por exemplo, a expansión da función exponencial de orde 2 tamén se pode escribir como:

para expresar o feito de que o erro, a diferenza , é insignificante para Cando tende cara a 0.

Hai que ter en conta que o número de operandos neste tipo de escritura debe estar limitado por unha constante que non dependa da variábele: por exemplo a afirmación é obviamente falso se as elipses ocultan un número de termos que non está limitado cando x varía.

Escala de comparación

[editar | editar a fonte]

Aquí temo unha lista de categorías de funcións que se usan habitualmente na análise. A variábel (denotada aquí como n) tende cara +∞ e c é unha constante real arbitraria. Cando c é unha constante maior que 1, as funcións aparecen nesta lista en orde de magnitude ascendente.

notación grande como moito
O(1) módulo aumentado en unha constante
O(log(n)) logarítmica
O() (polilogarítmica se c é enteira positiva)
O(n) linear
O(n log(n)) ás veces chamada «linearítmica»
O() ás veces chamada «cuasi linear»
O() cadrática
O() (polinomial se c é enteira positiva)
O() (exponencial se c é positiva, ás veces chamada «xeométrica»)
O(n!) factorial

O() e O() son moi diferentes. Este último permite un crecemento moito máis rápido, para calquera constante c > 1. Dise que unha función que medra máis rápido que calquera polinomio é superpolinomial. Unha función que medra máis lentamente que calquera exponencial dise que é subexponencial. Hai funcións que son superpolinomiais e subexponenciais, como a función nlog(n).

Teña en conta tamén que O(log n) é exactamente o mesmo que O(log(nc)), xa que estes dous logaritmos son múltiplos entre si por un factor constante e a notación O grande "ignora» constantes multiplicativas. Do mesmo xeito, os logaritmos en diferentes bases constantes son equivalentes.

A lista anterior é útil debido á seguinte propiedade: se unha función f é unha suma de funcións, e se unha das funcións da suma medra máis rápido que as outras, entón determina a orde de crecemento de f(n).

Exemplo:

se
entón .

Que podemos ler como "efe de n é da orde de n ao cubo".

Función de varias variábeis

[editar | editar a fonte]

Esta notación tamén se pode usar con funcións de varias variábeis:

A escrita: cando
corresponde coa proposición :

Para algúns, esta notación abusa do símbolo da igualdade, xa que parece violar o axioma da igualdade: "cousas iguais á mesma cousa son iguais entre si» (noutras palabras, con esta notación, a igualdade xa non é unha relación de equivalencia). Mais tamén podemos considerar que na escrita

a notación "=O" designa un único operador, en cuxa escritura o signo "=" non ten existencia propia independente (e en particular non designa unha relación de equivalencia). Neste caso xa non hai ningún abuso de notación, pero obviamente aínda existe o risco de confusión.

A familia de notacións Landau O, o, Ω, ω, Θ, ~

[editar | editar a fonte]
Notación Nome Descrición informal Cando , a partir dun certo rango... Definición rigurosa

ou

O grande O (Omicron grande)

A función |f | está limitada pola función |g| asintóticamente, dentro dun facrtor

para un k > 0

ou

Omega grande Dúas definicións :

En teoría de números :f non é desprezábel ante g

En teoría de números:

para un k > 0 e para un conxunto de números

En teoría de números :

En teoría de algoritmos :

f esta minorizada por g (ata un factor) (ou f domina g)

En teoría de algoritmos :

para un k > 0

En teoría de algoritmos :

ou

da orde de Theta grande As funcións f e g son da mesma orde de tamaño asintótico

para un k1 > 0, e un k2 > 0


ou

o pequeno f é desprezábel ante g asintóticamente , independentemente de > 0 (fixado).
Omega pequeno f domina g asintóticamente para todo k > 0
equivalent a f é aproximativamente igual a g asintóticamente , independentemente de > 0 (fixé).

Despois da notación O grande, as notacións Θ e Ω son as máis usadas en computación; a notación o pequeno é común en matemáticas pero máis rara en informática. O ω é pouco usado.

  1. algorithmique cours avec 957 exercices et 158 problemes. 
  2. (en alemán) Edmund Landau, Handbuch der Lehre von der Verteilung der Primzahlen, Berlin 1909, p. 883.
  3. (en inglés) G. H. Hardy et J. E. Littlewood, « Some problems of Diophantine approximation », Acta Mathematica, vol. 37, 1914, p. 225
  4. (en inglés) G. H. Hardy et J. E. Littlewood, « Contribution to the theory of the Riemann zeta-function and the theory of the distribution of primes », Acta Mathematica, vol. 41, 1916.

Véxase tamén

[editar | editar a fonte]

Outros artigos

[editar | editar a fonte]

Ligazóns externas

[editar | editar a fonte]
  • Big-O Cheat Sheet, un sitio que enumera unha clasificación de complexidades algorítmicas por dominio.