Smallest Suffixient Sets as a Repetitiveness Measure
Navarro, Romana, Urbina
A suffixient set is a novel combinatorial object that captures the essential information of repetitive strings in a way that, provided with a random access mechanism, supports various forms of pattern matching. In this paper, we study the size $Ï$ of the smallest suffixient set as a repetitiveness measure: we place it between known measures and study its sensitivity to various string operations. As a corollary of our results, we give a simple online algorithm to compute smallest suffixient sets.
academic
Conjuntos Suficientes Mínimos como Medida de Repetitividad
Este artículo estudia las propiedades de los conjuntos suficientes (suffixient sets) como una nueva medida de repetitividad. Los conjuntos suficientes capturan información esencial de cadenas repetitivas y soportan diversos mecanismos de búsqueda de patrones con acceso aleatorio. El artículo investiga profundamente las características del tamaño χ del conjunto suficiente mínimo como medida de repetitividad: lo posiciona entre medidas conocidas, estudia su sensibilidad a diversas operaciones de cadenas. Como producto secundario de los resultados de investigación, el artículo presenta un algoritmo en línea simple para calcular el conjunto suficiente mínimo.
Con la aparición de grandes colecciones de cadenas similares (como datos del genoma humano), cómo representar y consultar eficientemente cadenas altamente repetitivas se convierte en un desafío clave. Por ejemplo, el plan europeo "1+ Million Genomes" tiene como objetivo secuenciar más de un millón de genomas humanos, requiriendo aproximadamente 750TB de espacio de almacenamiento en datos sin procesar, pero utilizando la alta similitud entre genomas, el espacio de almacenamiento puede comprimirse dos órdenes de magnitud.
Se han propuesto múltiples medidas de repetitividad, desde cotas inferiores abstractas hasta medidas relacionadas con compresores de texto específicos. Para el tamaño χ del conjunto suficiente recientemente propuesto, la investigación existente solo conoce:
γ = O(χ) (γ es el tamaño del atractor de cadena mínimo)
χ = O(r̄) (r̄ es el número de rachas de letras iguales en la BWT de la cadena inversa)
Sin embargo, aún falta una comprensión más profunda de χ como medida de repetitividad, particularmente:
Establecer la relación directa entre χ y el número de rachas de BWT r: Demostrar que χ = O(r) (en lugar del anterior χ = O(r̄)), y en ciertas familias de cadenas demostrar que χ = o(v) (v es el tamaño mínimo de análisis léxico), estableciendo así que χ es estrictamente menor que r
Análisis de sensibilidad de operaciones de cadenas:
Demostrar que χ crece O(1) al añadir/anteponer un carácter
Demostrar que cualquier operación de edición o rotación puede hacer que χ crezca Ω(log n)
Demostrar que la inversión de cadenas puede hacer que χ crezca Ω(√n)
Caracterización completa de cadenas de Fibonacci: Caracterizar completamente los únicos 2 conjuntos suficientes mínimos de tamaño 4 de cadenas de Fibonacci, y demostrar que todas las subcadenas de palabras episturmian satisfacen χ ≤ σ + 2
Incomparabilidad con medidas de tipo copy-paste: Demostrar que χ es incomparable con la mayoría de medidas de tipo copy-paste (z, z_no, z_e, z_end, v, g, g_rl, c)—existen familias de cadenas donde χ es estrictamente más pequeño, y también familias donde χ es estrictamente más grande
Algoritmo en línea simple: Proponer un algoritmo en línea extremadamente simple, modificando el algoritmo de construcción del árbol de sufijos de Ukkonen, que calcula el conjunto suficiente mínimo en O(n) espacio y O(n) tiempo en el peor caso
Subcadena right-maximal: Una subcadena x es right-maximal si existen al menos dos símbolos distintos a, b ∈ Σ tales que xa y xb son ambos subcadenas de w
Right-extension: Para cada subcadena right-maximal x, sus right-extensions son subcadenas de la forma xa, denotadas como E_r(w)
Super-maximal extension: Una right-extension que no es sufijo de ninguna otra right-extension, denotada como S_r(w), cuyo tamaño se denota como sre(w)
Conjunto suficiente: Un conjunto S ⊆ 1..n es un conjunto suficiente de w si para cada right-extension x ∈ E_r(w), existe j ∈ S tal que x es sufijo de w1..j
Conjunto suficiente mínimo: Un conjunto suficiente S es mínimo si existe una biyección pos: S_r(w) → S tal que cada x ∈ S_r(w) es sufijo de w1..pos(x)
Medida χ: Para w ∈ Σ* y ∈/Fw,sedefineχ(w)=∣S∣,dondeSeselconjuntosuficientemıˊnimodew
Una secuencia de De Bruijn binaria de orden k contiene todas las cadenas binarias de longitud k exactamente una vez
Longitud n = 2^k + (k-1)
Lema 5: sre(w) = 2^k = Ω(n) para cualquier w ∈ dB(k)
Cota inferior Ω(log n) para operaciones de edición (Lema 6):
Usar la secuencia de De Bruijn lexicográficamente mínima w = a^k b a^{k-2} b x a b^k a^{k-1}:
Inserción: sre(w) - sre(w') = 2^k - 2
Sustitución: sre(w) - sre(w') = 2^k - 3
Eliminación: sre(w) - sre(w') = 2^k - 4
Rotación: sre(w) - sre(w') = 2^k - 2
Cota inferior Ω(√n) para inversión (Lema 7):
Construir w_k = ∏_^{k-1} c a^i b a^{k-i-1} #_i a^i b a^{k-i-1} $_i:
Modificar el algoritmo de construcción en línea del árbol de sufijos de Ukkonen, manteniendo simultáneamente el conjunto suficiente mínimo mientras se procesa cada carácter.
Árbol de Sufijos Mejorado: Añadir marcas en los nodos del árbol de sufijos, marcando las posiciones de super-maximal right-extensions.
Manejo de Tres Casos al Añadir Carácter c:
s tiene un nodo hijo etiquetado con c (Caso 1):
Solo descender al nuevo s
Sin necesidad de actualizar marcas
s tiene ≥2 nodos hijos, sin etiqueta c (Caso 2):
Crear un nuevo nodo hoja de s (etiqueta c)
Marcar el nodo hijo c de s
Desmarcar el nodo hijo c de s' (si está marcado)
s tiene solo un nodo hijo (etiqueta a≠c) (Caso 3):
Marcar los dos nodos hijos de s (a y c)
Desmarcar el nodo hijo c de s' (si está marcado)
Desmarcar el nodo hijo a de s'' (si está marcado), donde s'' es el primer nodo en la cadena de sufijos que tiene otro nodo hijo b≠a
Complejidad:
Espacio: O(n)
Tiempo: O(n) (en el modelo RAM transdicotómico, con tamaño de alfabeto polinomial)
Teorema 1: Existe un algoritmo que procesa el texto T de izquierda a derecha, y después de procesar el prefijo T1..n, determina el conjunto suficiente mínimo de T1..n, utilizando O(n) espacio y O(n) tiempo en el peor caso.
Nota: Este artículo es un trabajo teórico, cuyas contribuciones principales son resultados teóricos y algoritmos, sin una sección de evaluación experimental en el sentido tradicional. Los "experimentos" del artículo se verifican a través de pruebas matemáticas y ejemplos constructivos.
Pruebas Constructivas: Demostrar la solidez de las cotas mediante la construcción de familias específicas de cadenas (como secuencias de De Bruijn, cadenas de Fibonacci)
Construcción de Contraejemplos: Mostrar la corrección de los resultados teóricos mediante ejemplos concretos (como el Ejemplo 1 con w_3)
Verificación de Código: Los autores mencionan en los agradecimientos el uso del código de Cenzato et al. para calcular conjuntos suficientes mínimos, utilizado para proponer y verificar hipótesis
Caracterización Completa de Medida: A través del análisis de cotas superior e inferior y resultados de separación, posiciona exactamente χ en la jerarquía de medidas
Cotas Ajustadas: A través de pruebas constructivas (como secuencias de De Bruijn, cadenas de Fibonacci) demuestra la solidez de las cotas
Análisis Multidimensional: Estudia χ desde múltiples ángulos incluyendo sensibilidad, familias especiales de cadenas, y relaciones con otras medidas
Establecimiento de Relación Directa: Demostrar que χ = O(r) en lugar del anterior χ = O(r̄) es una caracterización más natural
Análisis Fino: La caracterización completa de los conjuntos suficientes mínimos de cadenas de Fibonacci (Lema 11) demuestra capacidad de análisis combinatorio profundo
Algoritmo Conciso: Simplifica el cálculo complejo de conjuntos suficientes a una modificación elegante del algoritmo de Ukkonen
Sin Pruebas en Datos Reales: El artículo es completamente teórico, sin experimentos en datos reales (como datos de genomas)
Rendimiento del Algoritmo Desconocido: Aunque se proporciona un algoritmo O(n), los tiempos de ejecución reales y constantes de espacio son desconocidos
Sin Comparación con Herramientas Existentes: No hay comparación detallada de rendimiento con la implementación de Cenzato et al. 5
28 Navarro et al., "Ordered parsings", IEEE TIT 2021
Investigación de Sensibilidad:
1 Akagi et al., "Sensitivity of string compressors", Information and Computation 2023
15 Giuliani et al., "Bit catastrophes for BWT", Theory of Computing Systems 2025
Evaluación General: Este es un artículo teórico de alta calidad que realiza un análisis profundo y completo de los conjuntos suficientes como medida de repetitividad. Las contribuciones principales incluyen establecer la relación directa entre χ y r, análisis de sensibilidad, caracterización exacta de familias especiales de cadenas, e un algoritmo en línea conciso. El análisis teórico del artículo es riguroso, las pruebas son detalladas, y la escritura es clara. Las principales insuficiencias son la falta de verificación experimental y el problema de alcanzabilidad sin resolver. El artículo establece una base sólida para la investigación teórica de conjuntos suficientes, y los problemas abiertos propuestos guiarán direcciones de investigación futura. Se recomienda que trabajos posteriores se enfoquen en evaluación de rendimiento en datos reales y resolución del problema de alcanzabilidad.