¿Cuál es el significado del teorema de Barrington?

Espero que esté familiarizado con el programa de ramificación para comenzar. En aras de la exhaustividad, la siguiente es la definición de un programa de ramificación. Un BP es un gráfico acíclico dirigido cuyos nodos con un grado de salida distinto de cero están etiquetados por variables y otros nodos están etiquetados con algún valor de salida. Hay un nodo especial con cero grados de entrada que se llama nodo de inicio y otro nodo especial con cero grados de salida se llama nodo sumidero. Los bordes están etiquetados por 0 y 1 y un BP se llama determinista si cada nodo, excepto el nodo sumidero, tiene exactamente un borde etiquetado 0 y un borde etiquetado 1.

¿Cómo usamos este BP para el cálculo? Bueno, dada una entrada, uno comenzará desde el nodo de inicio, seguirá las rutas guiadas por el etiquetado de las variables de entrada y, al final, si se alcanza el nodo sumidero, luego acepta la entrada.

Ahora viene la preocupación por el tamaño. Definimos el ancho de un programa de ramificación como el ancho del nivel más grande del BP (dibuje el BP como un gráfico de nivel y descubra el tamaño del nivel más grande).

Ahora que conocemos la estructura del programa de ramificación, veamos algunas funciones y veamos cuál debe ser el tamaño de un BP si intenta calcularlo. Si hace un argumento de conteo, resulta que una función aleatoria, con alta probabilidad, necesitará un BP que sea de tamaño exponencial. Eso te hace pensar que la mayoría de las funciones tienen hugh BP informándolas. Pero crear una función explícita que necesite un tamaño súper lineal fue algo difícil. Nechiporuk lo hizo en 1966 y demostró un límite inferior [matemático] \ Omega (n ^ 2 / \ log ^ 2n) [/ matemático] para una función explícita (distinción de elementos). Y luego hubo un largo silencio.

La idea de la investigación es que si no puede probar algo, restrinja la maldita cosa e intente probar en el modelo restringido. Entonces, el siguiente movimiento fue restringir el ancho de BP. Furst et al dijeron que si mantiene el ancho de BP fijo a algo constante, entonces calcular MAJ necesita un BP enorme. En cierto sentido, la intuición es clara. Para la mayoría necesita recordar cuántos 1 y 0 ve y mantener el ancho fijo, parece que solo recuerda constantemente muchos bits de entrada en cada nivel.

Recuerde, la conjetura de Furst et al fue en 1983, casi dos décadas después del resultado de Nechiporuk. Y, como resultado, estaban equivocados. Barrington muestra que en realidad puede calcular MAJ en el programa de bifurcación de ancho-5, es decir, toda la clase [math] \ mathsf {NC} ^ 1 [/ math] está en ancho-5 BP. Bueno, el problema es que no puedes hacerlo en ancho-4. Necesita ancho -5 porque el grupo simétrico (permutación) de 5 elementos es el primer grupo de este tipo que no tiene solución. Cosas increíbles!

Consecuencias: aunque no es trivial de probar, el resultado de Cai y Furst es uno que roba el pastel donde muestra que PSPACE es serializable por LOGSPACE, es decir, cualquier lenguaje en PSPACE puede calcularse utilizando un contador (de ahí el LOGSPACE) y constante memoria.

Vea la encuesta de Boppanna y Sipser para más detalles.

More Interesting

¿Es importante tener una excelente comprensión de la informática teórica para convertirse en un mejor programador?

¿Cuál es el orden correcto para tomar cursos en línea sobre algoritmos (del MIT y Stanford) para un estudiante interesado en aspectos teóricos y teoría de la complejidad?

¿Cómo calculamos la beta de una acción? ¿Por qué diferentes fuentes informan diferentes valores?

¿Cuál es el papel de las matemáticas en la programación de computadoras?

¿Cómo obtenemos una suma de 100 agregando solo 7 números primos?

Cómo trabajar en unidades donde c = 1

¿Cuál es el enfoque más fácil para abordar los problemas de programación dinámica?

Binario (sistema de números): ¿Qué sucede si un byte tiene 16 bits en lugar de 8?

¿Cuál es el algoritmo más rápido para encontrar el número más grande en una matriz sin clasificar?

¿Qué es una prueba intuitiva de que las redes neuronales recurrentes pueden calcular cualquier función computable por una máquina Turing?

Una fábrica produce bombillas defectuosas con cierta probabilidad, p. Se sabe que p es pequeño: alrededor del 1%, pero se desconoce el valor exacto. ¿Cuál es el tamaño de muestra que tomaría para estimar el valor de p?

Cómo calcular la varianza esperada en el tiempo (t) dada una deriva y volatilidad conocidas

Dada una lista de conjuntos de 2 números, ¿cómo divide esta lista por la mitad de modo que la suma de cada uno de los números 1 y 2 para ambas mitades sea aproximadamente par?

Cómo reducir el problema del camino hamiltoniano al ciclo hamiltoniano (para demostrar que este último es NP-completo)

Puedo tomar la teoría de grafos o la combinatoria el próximo semestre. Me interesa la informática teórica. ¿Cuál sería mejor?