Estoy construyendo una biblioteca Coq para la notación Big-O . Naturalmente, me gustaría que fuera lo más general posible. La página de Wikipedia sobre la notación Big-O dice
La generalización a funciones que toman valores en cualquier espacio vectorial normado es sencilla (sustituyendo los valores absolutos por las normas)
Por supuesto, no hay citas en línea. Mi intento de hacerlo dio como resultado lo siguiente:
Definition big_O (f g : V -> V) : Prop :=
∃ k : K, 0 < k ∧ exists n0 : K, 0 < n0 ∧ ∀ n : V, n0 ≤ ∥n∥ -> ∥f n∥ ≤ k * ∥g n∥.
Lo que se traduce en lo siguiente en lenguaje informal:
Definición 1. Dado un espacio vectorial $V$ con (semi)norma $\lVert-\rVert$ sobre un campo totalmente ordenado $(K,\leq)$ y funciones $f,g:V\to V$ decimos que $f\in O(g)$ si existe algún tipo de valor positivo $k$ y $n_0$ en $K$ tal que para todos los vectores $n\in V$ con $n_0 \leq \lVert n\rVert$ , $\rVert f(n)\rVert\leq k\cdot\lVert g(n)\rVert$ .
Sin embargo, me parece que la siguiente definición es algo más elegante y general:
Definition big_O (f g : V -> V) : Prop :=
∃ k : K, k ≠ 0 ∧ ∃ n0 : V, ∀ n : V, ∥n0∥ ≤ ∥n∥ -> ∥f n∥ ≤ ∥k · g n∥.
Lo que se traduce en lo siguiente:
Definición 2. Dado un espacio vectorial $V$ con (semi)norma $\lVert-\rVert$ sobre un campo totalmente ordenado $(K,\leq)$ y funciones $f,g:V\to V$ decimos que $f\in O(g)$ si existe algún tipo de $k$ y algunos $n_0$ en $V$ tal que para todos los vectores $n\in V$ con $\lVert n_0\rVert \leq \lVert n\rVert$ , $\lVert f(n)\rVert\leq \lVert k\cdot g(n)\rVert$ .
Así que creo que tengo algunas preguntas:
- ¿Alguien tiene una buena referencia para la generalización a los espacios vectoriales?
- ¿Crees que estas definiciones son equivalentes? ¿Alguna prueba o contraejemplo?
- Esto es algo basado en la opinión, pero ¿algún argumento para usar uno u otro?
1 votos
Toma $K = \mathbb{R}$ , $V = 0$ , $f=1$ , $g=0$ . Entonces $f \in O(g)$ es verdadera según la definición 1 (tome cualquier $n_0 > 0$ y entonces la conclusión es vacuamente verdadera) pero falsa según la definición 2.
0 votos
Creo que hay una definición razonable para los espacios vectoriales topológicos $V$ , $W$ y mapas $f,g \colon V \to W$ pero no lo recuerdo. No veo por qué quieres mapas $f \colon V \to V$ en un único espacio vectorial.
1 votos
La notación estándar define lo que significa " $f(x)=O(g(x))$ como $x\to a$ ", donde $a$ es un elemento en la terminación del espacio original, y mientras $a$ a menudo se entiende por el contexto y se deja de lado, es una parte integral del concepto. Ahora bien, todo esto tiene una generalización directa a los mapas de espacios topológicos a espacios vectoriales normados, que creo que es a lo que se refiere la Wikipedia. Decidir cuál es su $a$ es, y usted es bueno para ir.
0 votos
@BenMcKay No estoy casado con la idea de que sean mapas de ida y vuelta a un único espacio. De hecho, creo que pueden ser $f:V\to W$ et $g:V\to U$ siempre y cuando $W,U$ son sobre el mismo campo.
0 votos
@EmilJerábek ¿Puedes ampliar la respuesta o proporcionar una referencia? Me temo que no veo la "generalización directa", que es el objetivo de la pregunta.