Como se señaló aquí antes, el ejemplo de Tardos claramente refuta la prueba; proporciona una función monótona, que concuerda con CLIQUE en T0 y T1, pero que se encuentra en P. Esto no sería posible si la prueba fuera correcta, ya que la prueba también se aplica a este caso. Sin embargo, ¿podemos señalar el error? Aquí está, de una publicación en el blog de Lipton, lo que parece ser el lugar donde falla la prueba:
El error único es un punto sutil en la prueba del Teorema 6, es decir, en el Paso 1, en la página 31 (y también 33, donde se discute el caso doble), una afirmación aparentemente obvia de que contiene todas las cláusulas correspondientes contenidas en , etc., parece incorrecto. C N F ′ ( g )C′solCnorteF′( g)
Para explicar esto con más detalle, necesitamos entrar en el método de prueba y aproximación de Berg y Ulfberg, que reafirma la prueba original de Razborov de la complejidad monótona exponencial para CLIQUE en términos de interruptores DNF / CNF. Así es como lo veo:
Para cada nodo / compuerta de un circuito lógico (que contiene compuertas OR / AND binarias solamente), una forma normal conjuntiva , una forma normal disyuntiva y los aproximadores y son adjunto. y son simplemente las formas normales disyuntivas y conjuntivas correspondientes de la salida de la puerta. y también son formas disyuntivas y conjuntivas, pero de algunas otras funciones, "aproximando" la salida de la puerta. Sin embargo, se requiere que tengan un número limitado de variables en cada monomio paraβ C N F ( g ) D N F ( g ) C k g D r g C N F D N F D r g C k g D r g C k gsolβCNF(g)DNF(g)CkgDrgCNFDNFDrgCkgDrg(menor que una constante r) y en cada cláusula para (menor que una constante k).Ckg
Existe la noción de un "error" introducido con esta aproximación. ¿Cómo se calcula este error? Solo estamos interesados en algún conjunto T0 de entradas en el que nuestra función total toma el valor 0, y T1 de entradas en las que nuestra función total toma el valor 1 (una "promesa"). Ahora, en cada puerta, observamos solo las entradas de T0 y T1, que se calculan correctamente (tanto por como por , que representan la misma función: salida de la puerta en ) en la salida de la puerta , y mira cuántos errores / errores hay para yC N F ( g ) g β C k g D r g C k g D r g C k g C k g D r gDNF(g)CNF(g)gβCkgDrg, comparado con eso. Si la puerta es una conjunción, entonces la salida de la puerta podría calcular más entradas de T0 correctamente (pero las entradas calculadas correctamente de T1 posiblemente disminuyan). Para , que se define como una conjunción simple, no hay nuevos errores en todas estas entradas. Ahora, se define como un interruptor CNF / DNF de , por lo que puede haber una serie de nuevos errores en T0, provenientes de este interruptor. También en T1, no hay nuevos errores en : cada error debe estar presente en cualquiera de las entradas de compuerta, y de manera similar en , el interruptor no introduce nuevos errores en T1. El análisis para la puerta OR es dual.CkgDrgCkgCkgDrg
Por lo tanto, el número de errores para los aproximadores finales está limitado por el número de puertas en , multiplicado por el número máximo posible de errores introducidos por un interruptor CNF / DNF (para T0) o por un interruptor DNF / CNF (para T1). Pero el número total de errores tiene que ser "grande" en al menos un caso (T0 o T1), ya que esta es una propiedad de formas normales conjuntivas positivas con cláusulas delimitadas por , que fue la idea clave de la prueba original de Razborov (Lemma 5 en el periódico de Blum).kβk
Entonces, ¿qué hizo Blum para lidiar con las negaciones (que se empujan al nivel de las entradas, por lo que el circuito todavía contiene solo puertas binarias OR / AND)?β
Su idea es preformar los conmutadores CNF / DNF y DNF / CNF de manera restrictiva, solo cuando todas las variables son positivas. Entonces los interruptores funcionarían EXACTAMENTE como en el caso de Berg y Ulfberg, introduciendo la misma cantidad de errores. Resulta que este es el único caso que debe considerarse.
Entonces, sigue las líneas de Berg y Ulfberg, con algunas distinciones. En lugar de adjuntar , , y a cada puerta del circuito , adjunta sus modificaciones, , , y , es decir, las formas normales disyuntivas y conjuntivas "reducidas", que definió como diferentes de yD N F ( g ) C k g D r g g β C N F ′ ( g ) D N F ′ ( g ) C ′ k g D ′ r g C N F ( g ) D N F ( g ) C ′ r g D ′ rCNF(g)DNF(g)CkgDrggβCNF′(g)DNF′(g)C′kgD′rgCNF(g)DNF(g)por "regla de absorción", eliminando variables negadas de todos los monomios / cláusulas mixtas (también utiliza para este propósito la operación indicada por R, eliminando algunos monomios / cláusulas por completo; como discutimos antes, su definición algo informal de R no es realmente el problema , R se puede precisar para que se aplique en cada puerta, pero lo que se elimina depende no solo de las dos entradas anteriores, sino de todo el circuito que conduce a esa puerta), y sus aproximadores y , que él también presentó.C′rgD′rg
Concluye, en el Teorema 5, que para una función monótona, la reducción de y realmente calculará 1 y 0 en los conjuntos T1 y T0, en el nodo raíz (cuya salida es la salida de toda la función en ). Este teorema es, creo, correcto. D N F ′ g 0 βCNF′DNF′g0β
Ahora viene el conteo de errores. Creo que los errores en cada nodo deben calcularse comparando y reducidos (que ahora son posiblemente dos funciones diferentes), a y como él los definió. Las definiciones de los aproximadores definen las definiciones de y (Paso 1) al mezclar variables con las negadas, pero cuando trata con variables positivas, usa el interruptor como en el caso de Berg y Ulfberg (Paso 2). Y, de hecho, en el Paso 2 introducirá la misma cantidad de posibles errores que antes (es el mismo interruptor y todas las variables involucradas son positivas).D N F ′ ( g ) C ′ r g D ′ k g C N F ′ D N F ′CNF′(g)DNF′(g)C′rgD′kgCNF′DNF′
Pero la prueba es incorrecta en el Paso 1. Creo que Blum confunde , , que realmente proviene, tal como los definió, de aproximadores anteriores (para puertas , ), con partes positivas de y . Hay una diferencia, y por lo tanto, la declaración " contiene todavía todas las cláusulas contenidas en antes de la aproximación de la puerta g que usa una cláusula en o " parece ser mal en general.γ 2 h 1 h 2 C N F ′ β ( h 1 ) C N F ′ β ( h 2 ) C ′ g C N F ′ β ( g ) γ ′ 1 γ ′ 2γ1γ2h1h2CNF′β(h1)CNF′β(h2)C′gCNF′β(g)γ′1γ′2