Complejidad de minimizar el tamaño de la fórmula polinómica

28

Sea f(x1,,xn) un polinomio de grado en variables sobre , donde es constante (digamos 2 o 3). Me gustaría encontrar la fórmula más pequeña para , donde "fórmula" y "tamaño de fórmula" se definen de manera obvia (por ejemplo, la fórmula más pequeña para el polinomio es ).n F 2 d f x 1 x 2 + x 1 x 3 x 1 ( x 2 + x 3 )dnF2dfx1x2+x1x3x1(x2+x3)

¿Cuál es la complejidad de este problema? ¿Es NP-hard? ¿La complejidad depende de ?d

[Más formalmente, una fórmula (también conocida como "fórmula aritmética") es un árbol binario enraizado, cada una de cuyas hojas está etiquetada con una variable de entrada o la constante 1. Todos los demás vértices del árbol están etiquetados con o . El tamaño de la fórmula es el número de hojas utilizadas. La fórmula calcula un polinomio recursivamente: vértices calculan la suma de sus hijos sobre , vértices calculan el producto. ]× + F 2 ×+×+F2×

Ashley Montanaro
fuente
1
¿No podemos reducir la prueba de identidad polinómica a este problema?
Kaveh
44
Supongo que puede haber una conexión, pero no la veo de inmediato, en particular debido a la restricción en el grado. Además, si el problema es más difícil que la prueba de identidad polinómica, sería interesante saber cuánto más difícil.
Ashley Montanaro
En su caso, ¿cómo se relaciona el número de compuertas ( s y × s) en la fórmula con el tamaño real de la fórmula? Para d = 2 , la construcción en Ehrenfeucht y Karpinski 90 parece ser relevante (ver párrafo 2XOR) para el tamaño de la fórmula de "puerta", pero tengo que pensarlo más. +×re=2
Alessandro Cosentino
Como la fórmula es un árbol binario, la definición del tamaño de la fórmula que he usado aquí (número de hojas) es igual al número de puertas (vértices internos) más uno. Pero también me interesarían los resultados de cualquier otra definición sensata del tamaño de la fórmula. No estoy seguro de ver una conexión con los resultados de Ehrenfeucht y Karpinski, ya que se trata de la complejidad de contar soluciones, en lugar de minimizar el tamaño de la fórmula ...
Ashley Montanaro
Para contar el número de ceros, primero transforman la fórmula en una equivalente, que recuerdo es mínima en términos de multiplicaciones y sumas. Sin embargo, no tengo una prueba de esta minimidad. Nuevamente, esto respondería solo el caso . d=2
Alessandro Cosentino

Respuestas:

7

Puede reducir el problema de la TAUTOLOGÍA co-NP-completa (dada una fórmula booleana, ¿es una tautología?) Al problema de minimizar el tamaño de la fórmula (ya que una fórmula es una tautología si es equivalente a VERDADERO). Además, la TAUTOLOGÍA para 3DNF (de forma análoga a SAT para 3CNF) es co-NP-completa.

Dana Moshkovitz
fuente
1
Según entiendo la pregunta, debería calcularse como un polinomio, no como una función. Quizás se necesita alguna aclaración. f
Markus Bläser
3
Hay una reducción probabilística de 3SAT a la verificación, dado un polinomio deg-3 sobre GF (2), si tiene un cero [al observar combinaciones lineales aleatorias de las cláusulas], y luego de esto a la verificación, dado un deg- 3 poli sobre GF (2), si es todo cero [restando el poli de 1].
Dana Moshkovitz
1
¡Gracias! ¿Tienes alguna idea de cuál es la situación para los polinomios de grado 2? Además (aunque esto es probablemente muy denso), estoy luchando por ver cómo un polinomio de grado 3 sobre GF (2), escrito en forma estándar, puede ser todo cero sin ser el polinomio cero. Para ser claros, me imagino que la entrada a mi problema es una descripción del polinomio en sí mismo, en lugar de una descripción de un circuito que computa el polinomio.
Ashley Montanaro
2
Gracias nuevamente por su respuesta. Sin embargo, todavía no estoy convencido de lo de cero; me parece que cualquier polinomio n-variado sobre GF (2) con términos poli (n) se puede transformar fácilmente en una forma estándar donde es obvio si el polinomio es cero o no, simplemente haciendo la sustitución y recogiendo términos. xkx
Ashley Montanaro
44
De hecho, si lo hace multilineal como lo describe, un polinomio se evalúa a cero en cada entrada si es el polinomio cero. Una prueba: seleccione un monomio M distinto de cero de grado mínimo. Poner a cero todas las demás variables. El único monomio sobreviviente es M. Al establecer los vars en M en 1, obtienes una salida distinta de cero.
Manu
4

No es exactamente la respuesta, pero con suerte ayuda:

Esta pregunta ya debería ser NP difícil para d = 2 si desea conocer la fórmula mínima para polinomios y no solo para uno. La prueba es la siguiente: existe una correspondencia uno a uno entre n fórmulas bi-lineales (fórmulas de tipo a i j x i y j ) y tensor 3 matrices, es decir, elementos en F n 2F n 2F n 2 . Tal rango de tensor de la matriz es exactamente la complejidad de multiplicación de n fórmulas bi-lineales.naijxiyjF2nF2nF2n

Se sabe que el rango tensor es un problema NP-duro (probablemente el rango tensor aproximado también es NP-duro). Por lo tanto, la complejidad de la multiplicación de n fórmulas bi-lineales es un problema NP-difícil3n

Klim
fuente
2
¡Gracias! Esta es una perspectiva interesante sobre el problema.
Ashley Montanaro
El siguiente teorema ayuda a pasar de muchos polinomios a un polinomio: la complejidad de LEt S (f) de un polinomio y luego la complejidad de calcular todas sus derivadas es como máximo 5S (f). Por lo tanto, los polinomios de complejidad es casi igual a la complejidad de z 1 f 1 + z 2 f 2 ... z n f nf1,f2,,fnz1f1+z2f2znfn
Klim
Si habla sobre el rango de tensor, entonces solo está contando multiplicaciones pero no sumas. El caso y solo una forma bilineal es fácil, ya que se puede calcular el rango de una forma bilineal, utilizando los teoremas de estructura mencionados en la respuesta de Ramprasad. (Las pruebas de estos teoremas son algorítmicas, vea el libro de Lidl y Niederreiter.)d=2
Markus Bläser
2

Cualquier respuesta a esto depende en gran medida del vocabulario que permita en la respuesta. Si desea su respuesta en el mismo idioma que la entrada (es decir, como un polinomio), eso lleva a un conjunto de respuestas, que es con lo que otros pósters han estado luchando.

Pero si permite que su vocabulario de respuestas se amplíe, pueden suceder cosas maravillosas. Puede ver un ejemplo en la diferenciación simbólica frente a la automática: en la diferenciación simbólica solo se permiten 'expresiones', que tienden a explotar bastante mal; En la diferenciación automática, se permiten programas en línea recta en la respuesta (incluso si la entrada era una expresión), lo que ayuda en gran medida a controlar el aumento de la expresión. Para polinomios univariados, James Davenport y yo hemos reflexionado que también necesita incluir polinomios ciclotómicos como parte de su vocabulario básico (vea las referencias de por qué estos polinomios parecen ser la única fuente real de explosión, así como los documentos que muestran varios resultados de reducibilidad entre problemas polinómicos y 3SAT).

En otras palabras, si te permites variar lo que consideras una respuesta un poco diferente de la clásica, es posible que puedas obtener una respuesta bastante diferente, es decir, una con una complejidad mucho mejor. Depende de su motivación original para hacer la pregunta, ya sea puramente teórica o con una aplicación en mente, decidir si esta variación en el vocabulario es aceptable para usted. En el entorno donde James y yo hemos estado pensando en esto (cálculo simbólico), ajustar el vocabulario para que la complejidad disminuya es perfectamente aceptable (aunque rara vez se hace).

Jacques Carette
fuente
La pregunta pide la fórmula aritmética más pequeña, que luego define claramente. Por lo tanto, no estoy seguro de que esta respuesta sea directamente relevante. Además, la respuesta anterior de Dana Moshkovitz y los comentarios asociados no responden correctamente la pregunta como ya se reconoció en los comentarios.
Raphael
El punto de mi respuesta es que el OP podría no darse cuenta de que no necesariamente están haciendo la mejor pregunta. La pregunta del OP se hace en términos muy clásicos, pero si permite una pequeña desviación de eso, obtiene respuestas bastante diferentes, lo que podría haber sido bastante inesperado. Entiendo tu comentario, pero siento que el voto negativo es un poco duro.
Jacques Carette
¿Podría corregir el primer párrafo de su respuesta para dejar en claro que la pregunta aún no se ha respondido correctamente? Me preocupaba que la gente pudiera ser engañosa.
Raphael
1
@Raphael: hecho. Y aclaró las cosas aún más.
Jacques Carette
0

La minimización general del circuito / fórmula es ciertamente más difícil que la prueba de identidad, ya que el tamaño mínimo de fórmula de cualquier identidad es simplemente cero. En cuanto a cuánto más difícil, no tengo una respuesta definitiva, pero tal vez los "algoritmos de reconstrucción" estudiados en circuitos / fórmulas aritméticas podrían ser algo así.

En estos casos, le dan una caja negra y le dicen que es una fórmula en alguna clase (digamos un circuito de profundidad 3 ). El objetivo es construir una representación de la caja negra en (algo parecido a) C . Por lo general, la mayoría de los resultados de reconstrucción suponen pruebas de identidad de caja negra para la clase, la aleatoriedad y, a veces, otros tipos de consultas. Tales algoritmos de reconstrucción están disponibles para ciertas clases restringidas de circuitos, pero no para todas las clases para las que conocemos PIT de blackbox. Shpilka y Yehudayoff tienen una encuesta fantástica (pdf) sobre circuitos aritméticos, y uno de los capítulos trata completamente sobre algoritmos de reconstrucción.do3do

re

re=2X1X2+X3X4 4+..+X2k-1X2k+

Ramprasad
fuente
Gracias por tus comentarios. Lamentablemente, no veo cómo usar estas ideas para resolver el problema original.
Ashley Montanaro