Complejidad del circuito aritmético monótono de polinomios simétricos elementales?

14

El k -ésimo polinomio simétrico elemental Skn(x1,,xn) es la suma de todos los productos de distintas variables. Estoy interesado en la complejidad del circuito aritmético monótono de este polinomio. Un algoritmo de programación dinámica simple (así como la Fig. 1 a continuación) proporciona un circuito con compuertas .(nk)k(+,×)(+,×)O(kn)

Pregunta: ¿Se conoce un límite inferior de ? Ω(kn)

Un circuito está sesgado si al menos una de las dos entradas de cada puerta de producto es una variable. Tal circuito es en realidad lo mismo que la red de conmutación y rectificación (un gráfico acíclico dirigido con algunos bordes etiquetados por variables; cada ruta st proporciona el producto de sus etiquetas, y la salida es la suma de todas las rutas st). Hace ya 40 años, Markov demostró un resultado sorprendentemente ajustado: un circuito de inclinación aritmética monótono mínimo para tiene exactamente puertas de producto. El límite superior se deduce de la Fig. 1: (+,×)Skn k(nk+1)ingrese la descripción de la imagen aquí

Pero no he visto ningún intento de probar un límite tan bajo para circuitos no sesgados. ¿Es esta simplemente nuestra "arrogancia", o hay algunas dificultades inherentes observadas en el camino?

PD: Sé que las compuertas son necesarias para calcular simultáneamente todos los . Esto se deduce del límite inferior del tamaño de los circuitos booleanos monótonos que ordenan la entrada 0-1; ver página 158 del libro de Ingo Wegener . La red de clasificación AKS también implica que las compuertas son suficientes en este caso (booleano). En realidad, Baur y Strassen han demostrado ser un estricto en el tamaño del circuito aritmético no monótono para . Pero, ¿qué pasa con los circuitos aritméticos monótonos ?S n 1 , , S n n O ( n log n ) Θ ( n log n ) S n n / 2Ω(nlogn)S1n,,SnnO(nlogn)Θ(nlogn)Sn/2n

Stasys
fuente

Respuestas:

6

Uno de los retos es que si se quita la restricción "monótona", que sabemos cómo calcular estas cosas de manera eficiente. Puede calcular el valor de todos los (evaluar todos los polinomios simétricos elementales n + 1 ) en el tiempo O ( n log 2 n ) , utilizando la multiplicación polinómica basada en FFT. Por lo tanto, probar un límite inferior de Ω ( n k ) en el modelo de circuito monótono requeriría probar un Ω ( n 2 )S0n,,Snnn+1O(nlog2n)Ω(nk)Ω(n2) límite inferior en la multiplicación polinómica.

Así es cómo. Introduzca una desconocida formal y considere el polinomioy

P(y)=i=1n(1+xiy).

Tenga en cuenta que dado que las son constantes conocidas, este es un polinomio univariado con y desconocido y con grado n . Ahora puede observar que el coeficiente de y k en P ( y ) es exactamente S n k , así que para evaluar todos los S n 0 , ... , S nxiynykP(y)Skn , es suficiente calcularP(y).S0n,,SnnP(y)

Esto hace posible calcular en el tiempo O ( n lg 2 n ) : construya un árbol binario equilibrado de polinomios con los ( 1 + x i y ) en las hojas y multiplique los polinomios. Multiplicar dos polinomios de grado d lleva tiempo O ( d lg d ) utilizando técnicas FFT, por lo que obtenemos la recurrencia T ( n ) = 2 T ( n / 2 ) +P(y)O(nlg2n)(1+xiy)dO(dlgd) , que se resuelve en T ( n ) = O ( n lg 2 n ) . Por conveniencia, estoy ignorando losfactores poli ( lg lg n ) .T(n)=2T(n/2)+O(nlgn)T(n)=O(nlg2n)poly(lglgn)

Si te importa el caso donde es muy pequeño, puedes calcular S n 0 , ... , S n k en tiempo O ( n lg 2 k ) usando trucos similares, teniendo en cuenta que solo te importa el mod P ( x ) y k + 1kS0n,,SknO(nlg2k)P(x)modyk+1 (es decir, descartar todos los términos de o potencias superiores de y ).yk+1y

Por supuesto, el FFT usa sustracción, por lo que ingenuamente no se puede expresar en un circuito monótono. No sé si hay alguna otra manera de multiplicar polinomios de manera eficiente con circuitos aritméticos monótonos, pero cualquier método monótono eficiente para la multiplicación polinomial también conduce inmediatamente a un algoritmo para su problema. Entonces, los límites inferiores de su problema requieren / implican límites inferiores para la multiplicación polinómica.

DW
fuente
2
DW, gracias por recordar esta construcción! Suele atribuirse a Ben-Or, y debería haberlo mencionado. La construcción también proporciona una <i> fórmula </i> de tamaño y una profundidad de solo 3 (!) Calculando el operador S n 0 , ... , S n n (al evaluar los P ( y )O(n2)3S0n,,SnnP(y) en algún n+1puntos). Esto se usó para separar fórmulas homogéneas y no homogéneas de pequeña profundidad. Pero, como mencionas, la construcción utiliza sustancialmente la resta. Entonces, mi pregunta es: ¿qué tan "sustancial" es realmente este uso? Esto podría ser interesante también en escenarios de profundidad restringida.
Stasys
3
@Stasys: Creo que la resta es bastante crucial. Verbigracia. el límite inferior de Nisan-Wigderson en profundidad 3 circuitos homogéneos ; en circuitos homogéneos de profundidad 3, el punto es que es inútil calcular términos cuyos grados difieren del grado de la salida. Esto limita los tipos de cancelaciones que pueden ocurrir. Mientras que en la construcción de Ben-Or, para calcular , se necesita calcular un polinomio de grado n (aunque la salida tiene un grado k < n ), y luego utilizar de manera crucial la cancelación para deshacerse de los términos de grados > kSknnk<n>k . Esto no es una prueba, solo algo de intuición ...
Joshua Grochow
@Joshua: sí, sabemos que los coeficientes de la variable en el polinomio P ( y , x ) son exactamente los polinomios S n k ( x ) . Pero necesitamos Gauss (y, por lo tanto, sustracciones) para extraer estos coeficientes de los valores n + 1 de P ( y ) en n + 1 puntos distintos. Mi pregunta se refiere a si la "palabra monótona" no tiene Gauss de hecho , en este caso. (Con una respuesta adivinada - NO.) No estoy seguro de que para esto, sea suficiente deshacerse de los términos de grados >yP(y,x)Skn(x)n+1P(y)n+1 . Tenemos queencontrarestos k primeros coeficientes. >kk
Stasys