Sumas de términos Landau revisitados

10

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:

i=1nΘ(1i)=Θ(Hn)

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

i=1nci1icHn.

Ahora, ¿cómo calculamos c partir de c1,,cn ? La respuesta es, creo, que no podemos: c tiene que limitarse para todos n pero obtenemos más ci medida que n crece. No sabemos nada de ellos; ci puede muy bien depender i , por lo que no podemos suponer un salto: un finita c no pueden existir.

Además, no existe este problema sutil de qué variable tiende a infinito en el lado izquierdo - i o n ? ¿Ambos? Si n (en aras de la compatibilidad), ¿cuál es el significado de Θ(1/i) , sabiendo que 1in ? ¿No solo significa Θ(1) ? Si es así, no podemos vincular la suma mejor que Θ(n) .

¿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.i

Rafael
fuente
2
Esta pregunta sobre matemáticas es una buena lectura sobre aritmética con términos de Landau en general.
Raphael
44
ΘC = max ( c 1 , c 2 , , c n )c=min(c1,c2,,cn)C=max(c1,c2,,cn)
55
Espera, Bucky. No escribí ningún resumen con un Theta. Escribí una recurrencia con un Theta en él. ¿Realmente interpretas la recurrencia " " como algo diferente a "Hay una función tal que "? f Θ x ( x 1 / x ) t ( n ) = f ( n ) + t ( n - 1 )t(n)=Θ(1/n)+t(n1)fΘx(x1/x)t(n)=f(n)+t(n1)
JeffE
44
@Raphael No, la recurrencia no es matemáticamente la misma que la suma, ¡precisamente por la razón que usted describe! La recurrencia tiene exactamente un término Theta, que se refiere inequívocamente a una sola función.
JeffE
2
Eso no es muy intuitivo , estoy totalmente en desacuerdo, pero creo que es una cuestión de gusto y experiencia.
JeffE

Respuestas:

5

Me parece correcto en la siguiente convención:

Sn=k=1nΘ(1/k) es una notación conveniente para

Hay una (como ) tal quex f(x)Θ(1/x)x

Sn=k=1nf(k) .

Por lo tanto, el (o con la notación en esta respuesta ) que obtienes no depende realmente de .c k kcickk

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 ...ΘΘ

Aryabhata
fuente
Jup, pero cada puede tener su propia función y constante. Entonces, esta convención solo funciona con el contexto, es decir, si sabemos que los términos de Landau provienen de una definición algo "uniforme" (en y ) de los sumandos. k nΘ kn
Raphael
2
@Raphael: Parece que no tiene sentido desenrollar y luego permitir diferentes : ¡las constantes dependerán de la variable! y se convierte en un uso incorrecto de , suponiendo que la variable es (o en la respuesta anterior). Incluso si asumimos que la variable es , todavía no tiene sentido para mí. Θ Θ i k nfiΘΘikn
Aryabhata
3
En principio, todos los puede tener su propia constante, pero en el contexto particular que usted describe , está claro que cada no no tiene su propia constante. ΘΘΘ
JeffE
2
@JeffE: Correcto. Podemos tener múltiples con sus propias constantes, siempre que las constantes sean realmente constantes :-)Θ
Aryabhata
1
@JeffE Entonces, ¿por qué no escribes lo que quieres decir sino que prefieres algo ambiguo / incorrecto? Tenga en cuenta que mi respuesta actualizada ahora propone una forma de hacerlo. Agradecería comentarios sobre eso; Los votos negativos sin razón no me ayudan a entender por qué la gente parece rechazar mi punto.
Raphael
1

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

Sni=1nΘ(f(i))(1)

¿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ΘinnΘ(n)ni

Traduciendo (para el límite superior, el límite inferior funciona de manera similar), obtenemos(1)

f1,,fnΘ(f). Sni=1nfi(i)

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 1iifiifi(j)=i1jΘ(1/j)

i=0nfi(i)"="i=0nΘ(1/j)=i=0nΘ(1/i)

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)jiΘiniΘ

Tenga en cuenta que ni siquiera explotamos que también puede depender de . nfin

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Θ

i=1n2i1i(i+1)Θ(i=1n1i)=Θ(Hn)

en lugar. Poniendo el fuera de la suma resulta enΘ

  • una declaración matemáticamente correcta y
  • un término simple dentro del que puede ocuparse fácilmente (que es lo que queremos aquí, ¿verdad?).Θ

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.

Rafael
fuente
Considere . Puedo definir (usando como constante), por lo tanto, por su razonamiento, ¿verdad? Pero esta suma es . f i ( n ) = i i n i i = n i O ( 1 ) = O ( n ) O ( n 2 )inifi(n)=iiini=inO(1)=O(n)O(n2)
Xodarap
@Xodarap: Por mi razonamiento, el colapso de la suma como este no funciona, porque el acoplamiento del interior s (que no se acopla a ni ) para no cambia el significado. i n nΘinn
Raphael
No los estoy acoplando a , solo estoy usando el hecho de que . (Y supongo también el hecho de que .)n i k = n k n O ( f ) = O ( n f )nink=nknO(f)=O(nf)
Xodarap
@ Xodarap: Pero no tienes una , sino una por summand. Si las funciones subyacentes usan (como factor constante), debe expandir eso y la suma termina siendo correcta. Entonces, claramente, según mi razonamiento, la regla de suma que propone no funciona mientras escribe. f i f i iffifii
Raphael
Si tengo una secuencia , cada uno de estos son (siempre que no aumenten a medida que avanza la serie). ¿Diría que agregar de ellos generará una suma ? ¿Cuál es la diferencia si en lugar de ser constantes las describo como funciones constantes ? O ( 1 ) n O ( n ) f 1 ( x ) = 5 , f 2 ( x ) = 1 , 5,1,3,2,O(1)nO(n)f1(x)=5,f2(x)=1,
Xodarap
-1

Si cada es una constante, entonces hay alguna tal que . Entonces claramente misma idea por poco o.c m a xc i : c ic m a xc i f ( i ) c m a x f ( i ) = c m a x f ( i ) = O ( f ( i ) )cicmaxci:cicmax

cif(i)cmaxf(i)=cmaxf(i)=O(f(i))

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:

  1. ¿Es delimitador haciendo el o pequeño de cada término y el o grande de cada término y luego multiplicando por aceptable? (Respuesta: sí)ninf(i)n
  2. hay algun metodo mejor? (Respuesta: no que yo sepa)

Esperemos que alguien más pueda responder el # 2 más claramente.

EDITAR: Al revisar su pregunta nuevamente, creo que está preguntando

inΘ(f(n))=Θ(nf(n)) ?

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=icmaxcii

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)ii

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,,1nn

(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

inf(i)inf(imin)=nf(imin)=no(f(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)HnnΘ ( log n ) o ( n )lognΘ(logn)o(n)

Xodarap
fuente
1) "..entonces hay algo de tal que ..." - no, no lo hay. Considere con . 2) "No creo que " - 3) . Es : eso está mal. Como , . 4) "(Respuesta: Sí)" - mientras no vea una prueba formal de ese hecho, no lo creo. Además, "multiplicar por " no es lo que sucedió en el caso expuesto. ( c i ) i N c i = i H n = o ( n ) H nΘ ( ln n ) 1 / i Θ ( 1 ) o ( 1 / n ) 1 / i 1 / n 1 / i Ω ( 1 / n )cmax(ci)iNci=iHn=o(n)HnΘ(lnn)1/iΘ(1)o(1/n)1/i1/n1/iΩ(1/n)n
Raphael
Creo que te estás perdiendo el punto. Su prueba no funciona porque es posible que no tengamos la misma en cada sumando, y ni siquiera la misma para la misma suma pero diferente . Creo que lo clavé; Redactaré una respuesta en breve. nfn
Raphael
Todavía no entiendo lo que estás diciendo, así que me alegra que lo hayas descubierto :-)
Xodarap