Hice una pregunta (semilla) sobre sumas de términos de Landau antes , tratando de evaluar los peligros del abuso de la notación asintótica en aritmética, con un éxito mixto.
Ahora, aquí nuestro gurú de la recurrencia JeffE hace esencialmente esto:
Si bien el resultado final es correcto, creo que esto está mal. ¿Por qué? Si agregamos toda la existencia de constantes implicadas (solo el límite superior), tenemos
.
Ahora, ¿cómo calculamos partir de ? La respuesta es, creo, que no podemos: tiene que limitarse para todos pero obtenemos más medida que crece. No sabemos nada de ellos; puede muy bien depender , por lo que no podemos suponer un salto: un finita no pueden existir.
Además, no existe este problema sutil de qué variable tiende a infinito en el lado izquierdo - o ? ¿Ambos? Si (en aras de la compatibilidad), ¿cuál es el significado de , sabiendo que ? ¿No solo significa ? Si es así, no podemos vincular la suma mejor que .
¿Entonces, dónde nos deja eso? ¿Es un error flagrante? ¿Una sutil? ¿O es solo el abuso habitual de la notación y no debemos mirar signos como este fuera de contexto? ¿Podemos formular una regla (rigurosamente) correcta para evaluar (ciertas) sumas de términos de Landau?
Creo que la pregunta principal es: ¿qué es ? Si lo consideramos constante (ya que está dentro del alcance de la suma), podemos construir fácilmente contraejemplos. Si no es constante, no tengo idea de cómo leerlo.
Respuestas:
Me parece correcto en la siguiente convención:
Por lo tanto, el (o con la notación en esta respuesta ) que obtienes no depende realmente de .c k kci ck k
Según esta interpretación, es cierto que .Sn=Θ(Hn)
De hecho, en la respuesta de Jeff, muestra que donde , por lo que es consistente con la interpretación anterior.f ∈ Θ ( 1 / k )T(k+1)=f(k)+T(k) f∈Θ(1/k)
La confusión parece estar surgiendo de "desenrollar" mentalmente la y presumiendo diferentes funciones para cada aparición de ...Θ∑ Θ
fuente
Creo que resolví el problema. En esencia: el uso de términos Landau desacopla la variable de la función summand de la variable en ejecución de la suma. Todavía (queremos) leerlos como idénticos, sin embargo, por lo tanto, la confusión.
Para desarrollarlo formalmente, ¿qué hace
¿realmente significa? Ahora supongo que estos dejan - no - hasta el infinito; si dejamos , cada suma se evalúa como (si los sumandos son independientes de por lo tanto, constantes), lo cual es claramente incorrecto. Aquí hay un primer obsequio que señalamos a las cosas crudas: está atado (y constante) dentro de la suma, pero ¿todavía lo dejamos ir al infinito?i n n → ∞ Θ ( n ) n iΘ i n n→∞ Θ(n) n i
Traduciendo (para el límite superior, el límite inferior funciona de manera similar), obtenemos(1)
Ahora está claro que la suma y el parámetro están desacoplados: podemos definir fácilmente para que usen como una constante. En el ejemplo de la pregunta, podemos definir y teneri f i i f i ( j ) = i ⋅ 1i i fi i fi(j)=i⋅1j∈Θ(1/j)
pero la suma original claramente no evalúa algo en . Ahora, intercambiar por , que es solo un cambio de nombre, en puede parecer extraño porque no es independiente de resp. la suma, pero si nos oponemos a eso ahora , nunca deberíamos haber usado dentro de en primer lugar (ya que eso tiene la misma extrañeza).j i Θ i n i ΘΘ(Hn)=Θ(logn) j i Θ i n i Θ
Tenga en cuenta que ni siquiera explotamos que también puede depender de . nfi n
Para concluir, la identidad propuesta es falsa. Podemos, por supuesto, acordar convenciones sobre cómo leer sumas como la abreviatura de cálculo riguroso. Sin embargo, tales convenciones serán incompatibles con la definición de los términos de Landau (junto con el abuso normal de los mismos), imposibles de entender correctamente sin contexto y al menos engañosas (para principiantes), pero eso es en última instancia una cuestión de gustos (y crueldad) ?)
Se me ocurrió que también podemos escribir exactamente lo que queremos decir y todavía hacer uso de la conveniencia de los términos de Landau. Nosotros sabemos que todos los sumandos provienen de una función común, lo que implica que los límites asintóticos utilizan las mismas constantes. Esto se pierde cuando ponemos el en la suma. Así que no lo pongamos ahí y escribamosΘ
en lugar. Poniendo el fuera de la suma resulta enΘ
Entonces, me parece que esta es una forma correcta y útil de escribir el asunto, y por lo tanto, debería preferirse a usar símbolos de Landau dentro de la suma cuando los queremos decir fuera de ella.
fuente
Si cada es una constante, entonces hay alguna tal que . Entonces claramente misma idea por poco o.c m a x ∀ c i : c i ≤ c m a x ∑ c i f ( i ) ≤ ∑ c m a x f ( i ) = c m a x ∑ f ( i ) = O ( ∑ f ( i ) )ci cmax ∀ci:ci≤cmax
Creo que el problema aquí es que . Es (ya que no hay tal que ), por lo que la suma total será . Y cada término es , lo que significa que la suma total es . Por lo tanto, no se pueden encontrar límites estrechos con este método.o ( 1 / n ) ϵ ∀ i : 1 / i > ϵ n o ( 1 / n ) = o ( 1 ) O ( 1 ) O ( n )1/i≠Θ(1) o(1/n) ϵ ∀i:1/i>ϵ no(1/n)=o(1) O(1) O(n)
Creo que tus preguntas son:
Esperemos que alguien más pueda responder el # 2 más claramente.
EDITAR: Al revisar su pregunta nuevamente, creo que está preguntando
A lo que la respuesta es sí. Sin embargo, en este caso, cada término no es de nada, por lo que ese enfoque se desmorona.Θ
EDITAR 2: Dices "considera , entonces no hay ". Inequívocamente cierto. Si dice que es una función no constante de , entonces, por definición, no es constante.c m a x c i ici=i cmax ci i
Tenga en cuenta que si lo define de esta manera, entonces no es , es . De hecho, si define "constante" como "cualquier función de ", entonces dos funciones de difieren en una "constante".Θ ( i ) Θ ( i 2 ) i icii Θ(i) Θ(i2) i i
Tal vez esta sea una manera más fácil de pensar: tenemos la secuencia . ¿Cuál es el término más pequeño en esta secuencia? Bueno, dependerá de . Entonces no podemos considerar los términos como constantes. n1,12,…,1n n
(Los informáticos a menudo están más familiarizados con big-O, por lo que podría ser más intuitivo preguntar si tiene un término constante más grande).1,…,n
Para proporcionar su prueba: deje que sea el valor más pequeño de en el rango . Entoncesf(i)1,…,n n ∑ i f(i)≥ n ∑ i f( i m i n )=nf( i m i n )=no(f(n))f(imin) f(i) 1,…,n
Se puede hacer una prueba análoga para el límite superior.
Por último, escribe que y como prueba da que . De hecho, esto es una prueba contraria: si es "más grande" que , entonces no puede ser "más pequeño" que , que es lo que se requiere para que sea . Entonces no puede ser .H n = Θ ( log n ) H n nHn=o(n) Hn=Θ(logn) Hn n Θ ( log n ) o ( n )logn Θ(logn) o(n)
fuente